@charset "UTF-8";
/*==================================================
4.page
==================================================*/
.l-case{
	width:100%;
	margin:0;
	padding:0;
	background:url(../../img/index/top-midashi-line.png) left top 78px no-repeat transparent;
	background-size:0 auto;
	margin-top:100px;
}
.l-case__inner{
	max-width:1020px;
	width:100%;
	margin:0 auto;
	padding:0 10px;
	text-align: left;
	position: relative;
}
.l-case__ttl{
	display:inline-block;
	text-align: left;
}
.l-case__ttl h2{
	font-size:3.4rem;
	line-height:1.75;
	letter-spacing: 0.2em;
	font-weight:600;
	position: relative;
}
.l-case__ttl h2:before{
	content: '';
	background: url(../../img/index/top-midashi.png) no-repeat;
	background-size: contain;
	height: 1em;
	width: 1em;
	top: -0.5rem;
	position: absolute;
	z-index: -1;
}
.l-case__ttl h2:after{
	content: '';
	background: url(../../img/index/top-midashi.png) no-repeat;
	background-size: contain;
	height: 1em;
	width: 1em;
	top: -0.5rem;
  right: -1.7rem;
	position: absolute;
	z-index: -1;
}
.l-case__ttl p{
	font-size:2.0rem;
	line-height:1.75;
	letter-spacing: 0.05em;
	font-weight:500;
	color:#008C3B;
	text-align: right;
	padding-right:10px;
	font-family: 'Noto Sans JP', sans-serif;
}





@media all and (max-width: 767px) {
	.l-case{
		width:100%;
		padding:0;
		background:url(../../img/index/top-midashi-line.png) left top 13.6vw no-repeat transparent;
		background-size:0 auto;
		margin-top: 18vw;
	}
	.l-case__inner{
		max-width:1020px;
		width:100%;
		margin:0 auto;
		padding:0 2.66vw;
		text-align: left;
		position: relative;
	}
	.l-case__ttl{
		display:inline-block;
		text-align: left;
	}
	.l-case__ttl h2{
		font-size:5.86vw;
		line-height:1.75;
		letter-spacing: 0.2em;
		font-weight:600;
		position: relative;
	}
	.l-case__ttl h2:before{
		content: '';
		background: url(../../img/index/top-midashi.png) no-repeat;
		background-size: contain;
		height: 1em;
		width: 1em;
		top: -0.5rem;
		position: absolute;
		z-index: -1;
	}
	.l-case__ttl h2:after{
		content: '';
		background: url(../../img/index/top-midashi.png) no-repeat;
		background-size: contain;
		height: 1em;
		width: 1em;
		top: -0.5rem;
		right: 1rem;
		position: absolute;
		z-index: -1;
	}
	.l-case__ttl p{
		font-size:3.73vw;
		line-height:1.75;
		letter-spacing: 0.05em;
		font-weight:500;
		color:#008C3B;
		text-align: right;
		padding-right:4vw;
		font-family: 'Noto Sans JP', sans-serif;
	}
	

	
}


.l-intro{
	width:100%;
	margin:0;
	padding:0;
	background:url(../../img/index/top-midashi-line.png) left top 78px no-repeat transparent;
	background-size:0 auto;
	margin-top:100px;
}
.l-intro__inner{
	max-width:1020px;
	width:100%;
	margin:0 auto;
	padding:0 10px;
	text-align: left;
	position: relative;
}
.l-intro__ttl{
	display:inline-block;
	text-align: left;
}
.l-intro__ttl h2{
	font-size:3.4rem;
	line-height:1.75;
	letter-spacing: 0.2em;
	font-weight:600;
	position: relative;
}
.l-intro__ttl h2:before{
	content: '';
	background: url(../../img/index/top-midashi.png) no-repeat;
	background-size: contain;
	height: 1em;
	width: 1em;
	top: -0.5rem;
	position: absolute;
	z-index: -1;
}
.l-intro__ttl h2:after{
	content: '';
	background: url(../../img/index/top-midashi.png) no-repeat;
	background-size: contain;
	height: 1em;
	width: 1em;
	top: -0.5rem;
  right: -1.7rem;
	position: absolute;
	z-index: -1;
}
.l-intro__ttl p{
	font-size:2.0rem;
	line-height:1.75;
	letter-spacing: 0.05em;
	font-weight:500;
	color:#008C3B;
	text-align: right;
	padding-right:0;
	position:relative;
	left:30px;
	font-family: 'Noto Sans JP', sans-serif;
}

.l-intro__table{
	width:100%;
	margin-top:100px;
}
.l-intro__table > p{
	line-height:0;
}
.l-intro__table > p img{
	max-width:100%;
	width:100%;
}
.l-intro__table.-type01{
	background: url(../../img/case/list-bg01_pc.png) top center no-repeat;
	background-size: 1687px 511px;
	height:511px;
}
.l-intro__table.-type02{
	background: url(../../img/case/list-bg02_pc.png) top center no-repeat;
	background-size: 1680px 511px;
	height:511px;
}
.l-intro__table.-type03{
	background: url(../../img/case/list-bg03_pc.png) top center no-repeat;
	background-size: 1687px 511px;
	height:511px;
}
.l-intro__table.-type04{
	background: url(../../img/case/list-bg04_pc.png) top center no-repeat;
	background-size: 1662px 511px;
	height:511px;
}

.l-intro__left{
	width:37.5%;
	position: relative;
	top: 180px;
}
.l-intro__right{
	width:37.5%;
	position: relative;
	top: 180px;
	float:right;
}
.l-intro__table__ttl{
	font-size:2.8rem;
	line-height:1.75;
	letter-spacing: 0.2em;
	color:#005B25;	
	font-weight:bold;
	background: url(../../img/case/h3-midashi.png) left center no-repeat;
	background-size: 64px auto;
}
.l-intro__table__message{
	font-size:1.6rem;
	line-height:1.6;
	letter-spacing: 0.08em;
	font-family: 'Noto Sans JP', sans-serif;
	padding-top:15px;
	text-align: left;
}

@media all and (max-width: 767px) {
	.l-intro{
		width:100%;
		padding:0;
		background:url(../../img/index/top-midashi-line.png) left top 13.6vw no-repeat transparent;
		background-size:0 auto;
		margin-top: 18vw;
	}
	.l-intro__inner{
		max-width:1020px;
		width:100%;
		margin:0 auto;
		padding:0 2.66vw;
		text-align: left;
		position: relative;
	}
	.l-intro__ttl{
		display:inline-block;
		text-align: left;
	}
	.l-intro__ttl h2{
		font-size:5.86vw;
		line-height:1.75;
		letter-spacing: 0.2em;
		font-weight:600;
		position: relative;
	}
	.l-intro__ttl h2:before{
		content: '';
		background: url(../../img/index/top-midashi.png) no-repeat;
		background-size: contain;
		height: 1em;
		width: 1em;
		top: -0.5rem;
		position: absolute;
		z-index: -1;
	}
	.l-intro__ttl h2:after{
		content: '';
		background: url(../../img/index/top-midashi.png) no-repeat;
		background-size: contain;
		height: 1em;
		width: 1em;
		top: -0.5rem;
		right: 1rem;
		position: absolute;
		z-index: -1;
	}
	.l-intro__ttl p{
		font-size:3.73vw;
		line-height:1.75;
		letter-spacing: 0.05em;
		font-weight:500;
		color:#008C3B;
		text-align: right;
		padding-right:4vw;
		font-family: 'Noto Sans JP', sans-serif;
	}
}

.l-case__modal_trigger {
    width:100%;
    margin:90px auto 90px;
    padding:0;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}

.l-case__modal_trigger li {
    max-width: 320px;
    width: 32%;
    overflow: hidden;
    margin: 0 2% 40px 0;
}
.l-case__modal_trigger li:nth-child(3n) {
    margin-right: 0;
}
.l-case__modal_trigger li span {
    /*border-radius: 30px 0 30px 0;*/
    cursor: pointer;
    position: relative;
    overflow: hidden;
    display: block;
    transition-duration: 0.5s;
}
.l-case__modal_trigger li span img {
    border-radius: 30px 0 30px 0;
}
.l-case__modal_trigger li span::before {
    content: "";
    display: inline-block;
    width: 100%;
    height: 100%;
    background: #468f74;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    position: absolute;
    left: 0;
    top: 100%;
    z-index: -1;
    opacity: 0;
		border-radius: 30px 0 30px 0;
}
.l-case__modal_trigger li span:hover::before {
  -webkit-animation: slideRightBg ease .2s forwards;
          animation: slideRightBg ease .2s forwards;
}
.l-case__modal_btn h3 {
    margin: 13px 0;
    font-size: 1.7rem;
    font-family: 'Noto Sans JP', sans-serif;
    color: #00682a;
}
.l-case__modal_trigger li span:hover img {
    width: 100%;
    cursor: pointer;
    filter: blur(3px);
    transition-duration: 0.5s;
    opacity: 0.6;
}

@-webkit-keyframes slideRightBg {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

@keyframes slideRightBg {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

.l-case__modal_box {
  display: none;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9999;
}
.l-case__flex {
    display: flex;
    align-items: start;
    justify-content: space-between;
}
.l-case__flex span {
    width: 48%;
		position:relative;
}
.l-case__flex img {
    max-width: 442px;
    width: 100%;
		margin:0 auto;
}
.l-case__flex span.-before:after {
	content: '';
	background: url(../../img/case/img-before.png) no-repeat;
	background-size: contain;
	height: 36px;
	width: 76px;
	position: absolute;
	z-index: 2;
	top:5px;
	right:5px;	
}
.l-case__flex span.-after:after {
	content: '';
	background: url(../../img/case/img-after.png) no-repeat;
	background-size: contain;
	height: 36px;
	width: 76px;
	position: absolute;
	z-index: 2;
	top:5px;
	right:5px;	
}
.l-case__modal_bg {
  background-color: rgba(70, 143, 116, 0.6);
  height: 100%;
  width: 100%;
}

.l-case__modal_inner {
    background-color: #fff;
    left: 50%;
    padding: 40px;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    max-width: 1000px;
    width: 90%;
    box-sizing: border-box;
    border-radius: 20px;
    box-shadow: 1px 1px 5px 2px rgba(0,0,0,0.3);
}

.l-case__modal_close {
    cursor: pointer;
    position: absolute;
    right: 33px;
    top: 10px;
    font-size: 4rem;
}
.l-case__modal_block h3 {
    font-size: 2.6rem;
    margin-bottom: 20px;
    border-bottom: 1px solid #90ad9b;
    font-weight: bold;
    padding-bottom: 10px;
}

@media all and (max-width: 767px) {
.l-case__modal_trigger {
    margin: 40px auto 40px;
}
.l-case__modal_trigger li {
    max-width: 320px;
    width: 48%;
    overflow: hidden;
    margin: 0 4% 20px 0;
}
.l-case__modal_trigger li:nth-child(3n) {
    margin-right: 4%;
}
.l-case__modal_trigger li:nth-child(2n) {
    margin-right: 0;
}
.l-case__modal_btn h3 {
    margin: 6px 0;
    font-size: 1.2rem;
}
.l-case__flex {
    display: block;
}
.l-case__flex span {
		width: 100%;
		position: relative;
		display: block;
		/*height: 75.2vw;
    overflow: hidden;*/
}
.l-case__flex span.-before:after {
	content: '';
	background: url(../../img/case/img-before.png) no-repeat;
	background-size: contain;
	height: 36px;
	width: 76px;
	position: absolute;
	z-index: 2;
	top: 15px;
	right: 5px;
}
.l-case__flex span.-after:after {
	content: '';
	background: url(../../img/case/img-after.png) no-repeat;
	background-size: contain;
	height: 36px;
	width: 76px;
	position: absolute;
	z-index: 2;
	top: 15px;
	right: 5px;
}
.l-case__flex img {
		max-width:768px;
    width: 100%;
    margin: 10px 0;
}
.l-case__modal_inner {
    padding: 18px;
    width: 80%;
}
.l-case__modal_block h3 {
    font-size: 1.8rem;
    margin-bottom: 10px;
    padding-bottom: 5px;
}
.l-case__modal_close {
    right: 13px;
    top: 0px;
    font-size: 2rem;
}
}


.l-access{
	width:100%;
	margin:0;
	padding:0;
	background:url(../../img/index/top-midashi-line.png) left top 78px no-repeat transparent;
	background-size:0 auto;
	margin-top:100px;
}
.l-access__inner{
	max-width:1020px;
	width:100%;
	margin:0 auto;
	padding:0 10px;
	text-align: left;
	position: relative;
}
.l-access__ttl{
	display:inline-block;
	text-align: left;
}
.l-access__ttl h2{
	font-size:3.4rem;
	line-height:1.75;
	letter-spacing: 0.2em;
	font-weight:600;
	position: relative;
}
.l-access__ttl h2:before{
	content: '';
	background: url(../../img/index/top-midashi.png) no-repeat;
	background-size: contain;
	height: 1em;
	width: 1em;
	top: -0.5rem;
	position: absolute;
	z-index: -1;
}
.l-access__ttl h2:after{
	content: '';
	background: url(../../img/index/top-midashi.png) no-repeat;
	background-size: contain;
	height: 1em;
	width: 1em;
	top: -0.5rem;
  right: -1.7rem;
	position: absolute;
	z-index: -1;
}
.l-access__ttl p{
	font-size:2.0rem;
	line-height:1.75;
	letter-spacing: 0.05em;
	font-weight:500;
	color:#008C3B;
	text-align: right;
	padding-right:10px;
	font-family: 'Noto Sans JP', sans-serif;
}
.l-access__map{
	padding-top:60px;
	line-height: 0;
}
.l-access__map iframe{
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}


@media all and (max-width: 767px) {
	.l-access{
		width:100%;
		padding:0;
		background:url(../../img/index/top-midashi-line.png) left top 13.6vw no-repeat transparent;
		background-size:0 auto;
		margin-top: 18vw;
	}
	.l-access__inner{
		max-width:1020px;
		width:100%;
		margin:0 auto;
		padding:0 2.66vw;
		text-align: left;
		position: relative;
	}
	.l-access__ttl{
		display:inline-block;
		text-align: left;
	}
	.l-access__ttl h2{
		font-size:5.86vw;
		line-height:1.75;
		letter-spacing: 0.2em;
		font-weight:600;
		position: relative;
	}
	.l-access__ttl h2:before{
		content: '';
		background: url(../../img/index/top-midashi.png) no-repeat;
		background-size: contain;
		height: 1em;
		width: 1em;
		top: -0.5rem;
		position: absolute;
		z-index: -1;
	}
	.l-access__ttl h2:after{
		content: '';
		background: url(../../img/index/top-midashi.png) no-repeat;
		background-size: contain;
		height: 1em;
		width: 1em;
		top: -0.5rem;
		right: 1rem;
		position: absolute;
		z-index: -1;
	}
	.l-access__ttl p{
		font-size:3.73vw;
		line-height:1.75;
		letter-spacing: 0.05em;
		font-weight:500;
		color:#008C3B;
		text-align: right;
		padding-right:4vw;
		font-family: 'Noto Sans JP', sans-serif;
	}
	
	.l-access__map{
		padding-top:8vw;
		line-height: 0;
	}
	.l-access__map iframe{
		width:100%;
		height:53.3vw;
		-webkit-filter: grayscale(100%);
		-moz-filter: grayscale(100%);
		-ms-filter: grayscale(100%);
		-o-filter: grayscale(100%);
		filter: grayscale(100%);
	}
	
}
