@media(max-width: 768px){
	header h1{ left: 1rem; font-size: 1rem; margin-top: .8rem; }
	
	.mv{ height: 65rem; background-image: url(../images/index/mv01-sp.jpg); padding-top: 35.5rem; display: block; }	
	.mv .inner{ width: 100%; padding: 0 0 0 2rem; }
	.mv .inner p{ font-size: 5rem; letter-spacing: 0; white-space: nowrap; }
	.mv .inner p:before{ width: calc(100% + 2rem); }
	.mv .inner p .item02{ width: 10rem; top: -5rem; right: -1.5rem; }
	.mv .inner dl{ margin-bottom: 0; }
	.mv .inner dl dt{ font-size: 2.85rem; letter-spacing: 0; white-space: nowrap; }
	.mv .inner dl dd{ padding-left: 5.5rem; font-size: 3.5rem; letter-spacing: -.2rem; white-space: nowrap; }
	.mv .inner dl dd .item01{ width: 5.1rem; }
	.mv .inner dl dd strong{ font-size: 7rem; letter-spacing: -.4rem; }
	.mv .inner dl + small{ font-size: 1rem; }
	_:lang(x)+_:-webkit-full-screen-document, .mv .inner p{ font-size: 4.6rem; }
	_:lang(x)+_:-webkit-full-screen-document, .mv .inner dl dd{ font-size: 3rem; }
	_:lang(x)+_:-webkit-full-screen-document, .mv .inner dl dd strong{ font-size: 6.7rem; }

	.sec-intro .wrap{ padding-top: 5rem; padding-bottom: 20.7rem; }
	.sec-intro h2{ font-size: 1.8rem; line-height: 1.6; margin-bottom: 1.5rem; }
	.sec-intro h2 strong{ font-size: 3rem; }
	.sec-intro h2 + p{ font-size: 1.4rem; }
	.sec-intro .wrap:before{ width: 20rem; height: 24rem; background-position: top center; left: -3.4rem; background-size: 100%; }
	.sec-intro .wrap:after{ width: 20rem; height: 24rem; background-position: top center; right: -3.4rem; background-size: 100%; }

	h2.general{ font-size: 3rem; line-height: 1.4; padding-bottom: 2.2rem; }
	h2.general strong{ font-size: 5rem; vertical-align: initial; }
	h2 small{ font-size: 3rem; line-height: inherit; }

	.ttl-en{ font-size: 11rem; line-height: .75; }
	

	.sec-result{ padding-top: 5rem; }
	.sec-result h2{ margin-bottom: 5rem; }
	.sec-result .bg01 .item01{ width: 18.5rem; height: 20.3rem; object-fit: cover; object-position: top right; top: -1.3rem; left: 0; }
	.sec-result .bg02 .ttl-en{ left: auto; right: 0; top: -1rem; }
	.sec-result .case-list{ margin-bottom: 5rem; }
	.sec-result .case-list li{ background: #f2f2f2; padding: 5rem 3rem; border-radius: .5rem; z-index: 0; }
	.sec-result .case-list li:before{ content: ''; width: calc(100% - 3rem); height: calc(100% - 3rem); border: solid 1px #beaa78; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: -1; }
	.sec-result .case-list li + li{ margin-top: 3rem; }
	.sec-result .case-list li .txt{ width: 100%; padding: 0; }
	.sec-result .case-list li .txt:before,
	.sec-result .case-list li .txt:after{ content: none; }
	.sec-result .case-list li .txt h3{ font-size: 2rem; text-align: center; margin-bottom: 1.4rem; }
	.sec-result .case-list li .case-img{ position: relative; top: 0; transform: none; 
/*        margin-top: 2rem; */
        margin-bottom: 2rem; 
    }	
	.sec-result .case-list li .case-img img{ width: 100%; }
	.sec-result .case-list li .case-img .doragg-wrap img{ width: calc(100vw - 10rem); }
/*20220624add*/
    .sec-result .case-list li {display: flex; flex-direction: column-reverse!important;}

	.sec-standard{ padding-top: 8.5rem; margin-bottom: 10rem; }	
	.sec-standard .ttl-en{ right: 0; top: 5rem; }
	.sec-standard h2{ margin-bottom: 3rem; }
	.sec-standard h2 + p{ font-size: 1.4rem; text-align: left; margin-bottom: 4rem; }
	.sec-standard .standard-list{ flex-wrap: wrap; margin-bottom: 3.5rem; }
	.sec-standard .standard-list li{ width: 15.5rem; }
	.sec-standard .standard-list li:nth-of-type(n+3){ margin-top: 2rem; }
	.sec-standard .standard-list h3{ width: 15rem; height: 15rem; border-radius: 15rem; margin: 0 auto 1.5rem; font-size: 3rem; }
	.sec-standard .standard-list h3 span:before{ font-size: 1.2rem; }

	.sec-dr{ padding: 6.4rem 0 7rem; }
	.sec-dr .ttl-en{ top: -7.3rem; left: -.6rem; }
	.sec-dr h2 + p{ font-size: 2rem; width: 100vw; margin: 0 0 4rem -2rem; }
	.sec-dr .dr-list li, .sec-dr .dr-list li:nth-of-type(even){ border-radius: 1rem; padding: 3.5rem 3.2rem 3.3rem; }
	.sec-dr .dr-list li + li{ margin-top: 3rem; }
	.sec-dr .dr-list li .img-wrap{ position: relative; }
	.sec-dr .dr-list li img{ width: 25rem; height: 26.6rem; object-fit: cover; object-position: top center; right: -3.2rem; }
	.sec-dr .dr-list li:nth-of-type(even) img{ left: -3.2rem; }
	.sec-dr .dr-list li h3{ padding-bottom: 19.5rem; display: block; }
	.sec-dr .dr-list li h3:before{ width: calc(100% + 3.2rem); }
	.sec-dr .dr-list li:nth-of-type(even) h3:before{ right: -3.2rem; }
	.sec-dr .dr-list li:nth-of-type(even) h3:after{ left: 0; }
	.sec-dr .dr-list li h3 small{ font-size: 1.4rem; line-height: 1; }
	.sec-dr .dr-list li h3 strong{ font-size: 3rem; }
	.sec-dr .dr-list li:nth-of-type(odd) h3 strong:after{ font-size: 1.6rem; display: block; margin: 0; line-height: 1; }
	.sec-dr .dr-list li:nth-of-type(even) h3 strong:before{ content: none; }
	.sec-dr .dr-list li:nth-of-type(even) h3 strong:after{ content: attr(data-en); font-size: 1.6rem; display: block; line-height: 1; font-family: Optima, 'Marcellus', serif; font-weight: 400; letter-spacing: 0.03em; color: #beaa78; }
	.sec-dr .dr-list li p{ font-size: 1.8rem; }

	.sec-jidv{ padding: 12rem 2rem 7rem; }
	.sec-jidv .wrap{ padding: 6rem 2rem 4.5rem; }
	.sec-jidv .wrap:before, .sec-jidv .wrap:after{ width: 13rem; }
	.sec-jidv .item01{ width: 6rem; }
	.sec-jidv h2{ margin-bottom: 3rem; }
	.sec-jidv h2 small{ font-size: 2.2rem; line-height: 1.5; }
	.sec-jidv h2 + p{ font-size: 1.4rem; text-align: left; margin-bottom: 3rem; }
	.sec-jidv .banner{ width: 100%; display: block; }
	.sec-jidv .banner img{ width: 100%; }
	.sec-jidv a.btn.wide{ width: 25rem; height: 8rem; padding-left: 1.5rem; letter-spacing: .05em; line-height: 1.5; }

	.sec-feature{ margin-bottom: 4rem; }
	.sec-feature .head{ margin-bottom: 7.5rem; }
	.sec-feature .head .wrap{ padding: 5rem 0 8rem; }
	.sec-feature .head .item01{ width: 16rem; height: 17.5rem; object-fit: cover; object-position: top center; right: -5rem; bottom: 0; }
	.sec-feature .head h2{ font-size: 1.8rem; }
	.sec-feature .head h2 + p{ font-size: 1.4rem; line-height: 1.8; }
	.sec-feature .head h2 strong{ font-size: 2.4rem; }
	.sec-feature .feature-list{ margin-bottom: 10rem; }
	.sec-feature .feature-list li + li{ margin-top: 5.5rem; }
	.sec-feature .feature-list li > picture img{ width: 21.5rem; top: -1.5rem; right: -2rem; border-radius: .5rem 0 0 .5rem; }
	.sec-feature .feature-list li:nth-of-type(even) > picture img{ left: -2rem; border-radius: 0 .5rem 5rem 0; }
	.sec-feature .feature-list li .no{ font-size: 2rem; width: 18.5rem; }
	.sec-feature .feature-list li .no strong{ font-size: 4rem; }
	.sec-feature .feature-list li .no:before{ width: calc(100% + 2rem); }
	.sec-feature .feature-list li .txt{ width: 100%; padding: 0 2rem 4rem 0; }
	.sec-feature .feature-list li:nth-of-type(even) .txt{ padding: 0 0 4rem 2rem; }
	.sec-feature .feature-list li .txt:before{ width: calc(100% + 2rem); }
	.sec-feature .feature-list li .txt h3{ font-size: 2rem; margin-bottom: 1.5rem; }
	.sec-feature .gray-wrap{ padding: 3.5rem 3rem 5.5rem; margin-bottom: 5rem; }
	.sec-feature .gray-wrap h3{ font-size: 2rem; height: 12rem; line-height: 1.5; justify-content: flex-start; padding-left: 1.2rem; margin-bottom: 3.8rem; }
	.sec-feature .gray-wrap h3:before{ background-position: bottom -.5rem right -3.5rem; }
	.sec-feature .q-list{ width: 25rem; margin: 0 auto; justify-content: space-between;}
	.sec-feature .q-list li{ width: 48%; margin-right: 0; }
	.sec-feature .q-list li:nth-of-type(n+2){ margin-top: 3rem; }
    .sec-feature .q-list li:nth-of-type(2) {margin-top: 0rem;}
	.sec-feature .q-list li a{ padding-top: 1.8rem; }
	.sec-feature .q-list li span{ background-image: url(../images/index/q-list-item02.png); background-size: 22rem; margin-bottom: 1.5rem; }
	.sec-feature .q-list li img{ width: 25rem; height: 10rem; object-fit: cover; object-position: center; }
	.sec-feature .gray-wrap + p{ font-size: 2rem; }
	.sec-feature .gray-wrap + p strong{ font-size: 3rem; }
	.sec-feature .gray-wrap + p strong:nth-of-type(1){ display: block; text-align: center; line-height: 1.4; }
    
	main table:not(.no-style){ margin: 3rem 0; }
	main table:not(.no-style) th{ font-size: 1.5rem; }
	main table.sp-break{ border-bottom: solid 1px #beaa78; }
	main table.sp-break,
	main table.sp-break tbody,
	main table.sp-break tr,
	main table.sp-break th,
	main table.sp-break td{ display: block; width: 100%}
	main table:not(.no-style).sp-break th{ text-align: center; border-bottom: none; padding: .5em 1em; border-right: solid 1px #beaa78; }
	main table:not(.no-style).sp-break td{ border-bottom: none; border-left: solid 1px #beaa78; }

	.sec-features{ margin-top: 4.2rem; padding-bottom: 12rem; }
	.sec-features:after{ width: 100vw; height: 12.5rem; }
    .sec-features h2{margin-bottom: 2.5rem; 
    background: url(../images/index/item-ttl01.png) right bottom / 16.5rem no-repeat;}
	.sec-features h2 span{ display: table; margin-left: auto; text-align: left; line-height: 1; padding-left: 3.1rem; background-size: 2.4rem; background-position: top left; }
	.sec-features .features-list li + li{ margin-top: 0; }
	.sec-features .features-list li:nth-of-type(odd){ padding: 1.8rem 0 3.75rem 2.5rem; margin-bottom: 3.75rem; }
	.sec-features .features-list li:nth-of-type(even){ min-height: 0; margin-bottom: 7.5rem; }
	.sec-features .features-list li:last-of-type{ margin-bottom: 0; }
	.sec-features .features-list li:nth-of-type(1){ padding-top: 5rem; }
	.sec-features .features-list li img{ width: 17.5rem; }
	.sec-features .features-list li:nth-of-type(odd) img{ top: -3.75rem; left: -2.5rem; border-radius: 0 .5rem .5rem 0; }
	.sec-features .features-list li:nth-of-type(even) img{ top: 0; right: -2.5rem; border-radius: .5rem 0 0 .5rem; }
	.sec-features .features-list li:nth-of-type(1) img{ top: -9rem; }
	.sec-features .features-list li .txt{ width: 100%; }
	.sec-features .features-list li .txt h3{ font-size: 1.7rem; width: 50%; }
	.sec-features .features-list li:first-of-type .txt h3{ width: 100%; }
	.sec-features .features-list li:nth-of-type(even) .txt h3{ min-height: 12.5rem; display: flex; align-items: center; }
	.sec-features .features-list li:nth-of-type(odd):not(:first-of-type) .txt h3{ margin-left: auto; }
	.sec-features .features-list li .txt .btn{ margin-top: 2.8rem; width: 27.5rem; }
	.sec-features .features-list li:nth-of-type(odd) .txt .btn{ margin-left: 0; }
	.sec-features .features-list li:nth-of-type(even) .txt .btn{ margin-left: 2.5rem; }

	.sec-risk .txt-box{
		width: 100%;
		margin: 0 auto;
	}
	
	.sec-flow{ padding-left: 7rem; padding-right: 2.5rem; margin-bottom: 5rem; }
	.sec-flow:before{ width: calc(100% - 2.5rem); left: 2.5rem; }
	.sec-flow .right li:after {
		width: calc(100% + 2.5rem);
	}
}
