@media(max-width: 768px){

	.mv.mv-lp{ padding-top: 0; }
	.mv.mv-lp:before, .mv:after{ width: 100vw; height: calc(100% - 10rem); right: 0; top: auto; bottom: 0; }
	.mv.mv-lp:after{ background-size: 9.4rem; }
	.mv.mv-lp .main-slide{ width: 100%; margin: 0; padding-bottom: 5.75rem; }
	.mv.mv-lp .main-slide li:before{ width: calc(100% - 1rem); height: calc(100% - 1rem); border-width: 2px; }
	.mv.mv-lp .main-slide li:after{ width: calc(100% - 2rem); height: calc(100% - 2rem); }
	.mv.mv-lp .main-slide li p{ font-size: 2.5rem; bottom: -5.75rem; left: 1.4rem; }
	.mv.mv-lp .main-slide li p span{ padding: 0 .3em; }
	.mv.mv-lp .inner{ position: static; padding: 4rem 1.5rem; transform: none; width: 100%; }
	.mv.mv-lp .inner .txt{ display: block }
	.mv.mv-lp .inner .txt h1{ font-size: 1.6rem; margin-bottom: 1.5rem; }
	.mv.mv-lp .inner .txt h1 span{ padding: .1rem .3rem; }
	.mv.mv-lp .inner .txt h1 span ~ span{ margin-top: .2rem; }
	.mv.mv-lp .inner .txt ul li{ font-size: 1.8rem; height: 4rem; padding: 0 3rem 0 2.6rem; background-size: 1.7rem; }
	.mv.mv-lp .inner .banner-covid{ bottom: 5rem; right: 1.25rem; transform: none; }
	.mv.mv-lp .inner .banner-covid img{ width: 15rem; }

    .mv.mv-sub{ padding: 1rem 1.25rem 1.5rem; }
	.mv.mv-sub:before, .mv:after{ width: 100vw; height: 15rem; top: auto; bottom: 0; }
	.mv.mv-sub.mv-none:before, .mv.mv-none:after{ width: 100vw; height: 5.2rem; top: auto; bottom: 0; }
	.mv.mv-sub:after{ background-size: 9.4rem; }
	.mv.mv-sub img{ height: 20rem; margin-bottom: 1.5rem; }

	.pankuzu{ text-align: left; }
	.pankuzu li{ font-size: 1.4rem; color: #fff; }

	main{ width: 100%; padding: 0 1.25rem; margin: 5rem 0 8rem; }
	main h1{ font-size: 2.2rem; height: auto; padding-top: 5.3rem; margin-bottom: 3.2rem; }
	main h1:after{ width: 12rem; height: 4.1rem; }
	main h1:before{ font-size: 6.5rem; }

	main section + section{ margin-top: 6rem; }
	main section > img{ margin: 1.8rem 0 1.4rem; }
	main section a.btn{ margin-left: auto; margin-right: auto; line-height:1.3; font-size:14px; }

	main section h2:not(.no-style){ font-size: 2rem; margin: 6rem 0 2.5rem; line-height: 1.3; padding: .5em 1em; }
	main section h3:not(.no-style){ font-size: 1.8rem; font-weight: 600; margin: 5rem 0 2rem; background-size: auto .25rem; }
	main section h4:not(.no-style){ font-size: 1.6rem; margin: 4rem 0 1.8rem; }
	main section h5:not(.no-style){ font-size: 1.4rem; margin: 3.5rem 0 1.6rem; padding-left: 3.8rem; }
	main section h5:not(.no-style):before{ top: 1.3rem; }
	main section h6:not(.no-style){ font-size: 1.2rem; }

	main section ol:not([class]){ margin: 3rem 0; }
	main section ol:not([class]) li{ font-size: 1.4rem; padding-left: 6rem; min-height: 4.5rem; }
	main section ol:not([class]) li + li{ margin-top: 2.35rem; }
	main section ol:not([class]) li:before{ width: 4.5rem; height: 4.5rem; font-size: 2.5rem; }

	main section ul:not([class]){ margin: 3rem 0; }
	main section ul:not([class]) li{ font-size: 1.4rem; }
	main section ul:not([class]) li:before{ top: .5rem; }
	main section ul:not([class]) li + li{ margin-top: 1.6rem; }

	main section ol.flow{ margin: 4rem 0; }
	main section ol.flow li{ font-size: 1.5rem;}	
	main section ol.flow li.has-img{ padding: 0; }	
	main section ol.flow li + li{ margin-top: 2.5rem; }
	main section ol.flow li strong:first-of-type{ font-size: 2rem; line-height: 1.5; padding-left: 5rem; }
	main section ol.flow li strong:first-of-type:before{ width: 4rem; height: 4rem; border-radius: 2rem; font-size: 2.2rem; top: -.5rem;  }
	main section ol.flow li strong + img{ margin-bottom: 1.5rem;}
	main section ol.flow li img{ position: static; margin-top: 1.5rem; display: block; }
	main section ol.flow-parted-left{ margin: 4rem 0; }
	main section ol.flow-parted-left li.has-img{ padding: 0; }	
	main section ol.flow-parted-left li + li{ margin-top: 2.5rem; }
	main section ol.flow-parted-left li strong:first-of-type{ font-size: 1.5rem; padding-left: 5rem; }
	main section ol.flow-parted-left li strong:first-of-type:before{ width: 4rem; height: 4rem; border-radius: 2rem; font-size: 1.5rem; top: -.5rem;  }
	main section ol.flow-parted-left li img{ position: static; margin-top: 1.5rem; display: block; width: 100%;}

	main section table:not(.no-style){ margin: 3rem 0; }
	main section table:not(.no-style) th,
	main section table:not(.no-style) td{ font-size: 1.3rem; }
	main section table.sp-break{ border-bottom: solid 1px var(--bg-color01); }
	main section table.sp-break,
	main section table.sp-break tbody,
	main section table.sp-break tr,
	main section table.sp-break th,
	main section table.sp-break td{ display: block; width:100%; }
	main section table:not(.no-style).sp-break th{ text-align: center; border-bottom: none; padding: .5em 1em; }
	main section table:not(.no-style).sp-break td{ border-bottom: none; }


	/*** doctor ***/

	.dr-pic{ height: 13.125rem; padding-left: 2.5rem; margin: 6rem 0 2rem; }
	.dr-pic:before{ width: calc(100% - 1rem); height: calc(100% - 1rem); border-width: 1.5px; }
	.dr-pic:after{ width: calc(100% - 1.4rem); height: calc(100% - 1.4rem); }
	h2 + .dr-pic{ margin-top: 3rem; }
	.dr-pic img{ width: 19rem; height: 15.3rem; object-fit: cover; object-position: top center; }
	.dr-pic h3{ font-size: 2.5rem; }
	.dr-pic h3:after{ font-size: 1.6rem;letter-spacing: normal; }

	.history-row{ flex-wrap: wrap; margin: 4rem 0; }
	.history-row .inner{ width: 100%; }
	.history-row .inner + .inner{ margin-top: 3.25rem; }
	.history-row .inner h4{ margin-bottom: 1.7rem; font-size: 1.8rem; }
	.history-row .inner table, .history-row .inner ul li{ font-size: 1.5rem; }


	/*** treatment ***/

	main h1 + p.sub-font{ font-size: 1.5rem; margin-bottom: 1.4rem; }
	
	.sub-treatment{ width: 100%; margin-left: 0; padding-bottom: 6rem; }
	.sub-treatment:before{ height: calc(100% - 12.3rem); }
    
    /*gray-box*/
        main section div.gray-box {padding: 1rem 2rem 1rem;border-radius: 2rem;}
        main section div.gray-box .side-img {flex-direction: column-reverse;}
        main section div.gray-box .side-img .img {margin-bottom: 20px;}

    /*side-img*/
        .side-img {flex-direction: column-reverse;}
        .side-img.flex-column {flex-direction: column;}
        .side-img .content {width: 100%;}
        .side-img .img {width: 100%; margin-bottom:15px;}
        .side-img .img + .img {margin-top: 2rem;}
		.side-img .img h3,.side-img .img h4,.side-img .img h5{margin-top: 0;}
		.side-img .img > p{ margin-top:1.5rem; }
    
    /*painless*/
    
	.sec-painless{ padding: 6rem 2.5rem 6rem; background-image: url(../images/index/webp/painless-bg01-sp.webp); }
	.sec-painless .white-wrap{ padding: 4rem 3.75rem 4rem; }
	.sec-painless .white-wrap:before{ width: calc(100% - 1rem); height: calc(100% - 1rem); border-width: 2px; }
	.sec-painless .white-wrap:after{ width: calc(100% - 2rem); height: calc(100% - 2rem); }
	.sec-painless .white-wrap h2{ font-size: 1.5rem; }
	.sec-painless .white-wrap .head{ padding-bottom: 18.5rem; }	
	.sec-painless .white-wrap .head div[class^="round"]{ padding-bottom: 5.5rem; }
	.sec-painless .white-wrap .head div[class^="round"] p{ width: 11.4rem; height: 11.4rem; font-size: 1rem; }
	.sec-painless .white-wrap .head div[class^="round"] p strong:before{ width: .17rem; height: .17rem; top: -.45rem; }
	.sec-painless .white-wrap .head .round-left{ left: 0; }
	.sec-painless .white-wrap .head .round-left img{ width: 17rem; }
	.sec-painless .white-wrap .head .round-right{ right: 0; }
	.sec-painless .white-wrap .head .round-right img{ width: 17rem; }
	.sec-painless .white-wrap .worry-list{ display: block; min-width: 0; width: 30rem; left: 50%; transform: translateX(-50%); padding: 3rem 0 4rem; margin-bottom: 3rem; }
	.sec-painless .white-wrap .worry-list li{ font-size: 1.5rem; padding-left: 3rem; height: 4rem; }
	.sec-painless .white-wrap .worry-list li:before{ width: 1.65rem; height: 1.375rem; }
	.sec-painless .white-wrap .btn{ margin-top: 1.2rem; }
    
    /*flow*/
    .sec-flow.wrap.midium {width:100%;}
    .sec-flow h2{ margin-bottom: 2.8rem; }
    .sec-flow .item01{ position: static; width: 100%; display: block; margin-bottom: 1rem; }
    .sec-flow .inner{ width: 100%; padding: 0 1.25rem 6rem; }
    .sec-flow .inner:before, .sec-flow .inner:after{ width: 100vw; height: calc(100% - 7.5rem); left: -1.25rem; }
    .sec-flow .inner:after{ background-size: 9.4rem; }
    .sec-flow .inner ol{ margin-bottom: 3rem; }
    .sec-flow .inner ol li{ min-height: 11rem; padding-left: 6.5rem; }
    .sec-flow .inner ol li:before{ width: 5rem; height: 7rem; font-size: 2.5rem; }
    .sec-flow .inner ol li h3{ font-size: 1.5rem; }
    .sec-flow .inner ol li p{ font-size: 1.1rem; }
    
    /*price*/
	.sec-price{ padding: 5rem 1.25rem 6rem; background: url(../images/common/webp/bg02-sp.webp) no-repeat bottom center/100%; }
	.sec-price:before{ background-size: 60rem; }
	.sec-price h2{ font-size: 2.8rem; line-height: 1.5; margin-bottom: 2.3rem; }
	.sec-price .first-visit{ flex-wrap: wrap; margin-bottom: 3.5rem; }
	.sec-price .first-visit dt{ width: 100%; height: 10rem; clip-path: polygon(0% calc(100% - 3rem), 0% 0%, 100% 0%, 100% calc(100% - 3rem), 50% 100%); padding-bottom: 1rem; }
	.sec-price .first-visit dt h3{ font-size: 1.9rem; padding-left: 2.8rem; background-size: 2.3rem; line-height: 1.4; }
	.sec-price .first-visit dt small{ font-size: 1.1rem; }
	.sec-price .first-visit dd{ width: 100%; padding: .8rem 0 1.4rem; }
	.sec-price .first-visit dd strong{ font-size: 1.9rem; padding-left: 2.8rem; background-size: 2.3rem; line-height: 1.4; }
	.sec-price .first-visit dd small{ font-size: 1.1rem; }
	.sec-price .white-wrap{ padding: 3.4rem 3.5rem 3.2rem; border-width: 2px; }
	.sec-price .white-wrap:before{ width: calc(100% - 1rem); height: calc(100% - 1rem); }
	.sec-price .white-wrap ul{ flex-wrap: wrap; margin-bottom: 2.5rem; }
	.sec-price .white-wrap ul li{ width: 100%; }
	.sec-price .white-wrap ul li + li{ border-left: none; padding-top: 3rem; border-top: solid 1px var(--bg-color01); margin-top: 3rem; }
	.sec-price .white-wrap ul li h3{ font-size: 1.5rem; margin-bottom: 1.5rem; }
	.sec-price .white-wrap ul li img{ width: 20rem; }
    
    /*measures-box*/
    .measures-box{padding: 1rem 1rem 1rem; border-radius: 2rem;}
    
    /*gray-box*/
    .gray-box{padding: 1rem 2rem 1rem; border-radius: 2rem;}
    
    /*card-list*/
    .card-list li{ width: 100%; margin-right: 0; border-radius: 2rem; }
	.card-list li:nth-of-type(n+2){ margin-top: 5rem; }
	.card-list li img{ border-radius: 2rem 2rem 0 0; }
	.card-list li h3{ height: auto; font-size: 1.5rem; padding-bottom: .8em; }
    
    .sec-qa .wrap.midium{
        width: 100%;
    }
    .sec-qa .accordion {
    width: 100%;
    max-width: 100%;
    }
    .sec-qa .content p {
    padding-left: 6rem;
    }
    .sec-qa .content p.a {
    margin-top: 1rem;
    padding-left: 60px;
    }
    .sec-qa .toggle:checked + .title + .content {
    max-height: 100%;
    }
    .sec-qa .side-img {flex-direction: column; margin: 2rem 0 4rem;}
    .sec-qa .side-img .side-content {width: 100%;}
    .sec-qa .side-img .img {width: 100%;margin-top: 2rem;}
    .sec-qa ul.list{ margin: 3rem 0; column-count: 2;}
	.sec-qa ul.list li{ font-size: 1.4rem; }
	.sec-qa ul.list li:before{ top: .5rem; }
	.sec-qa ul.list li + li{ margin-top: 1.6rem; }
    
        
    section .white-wrap {padding: 2.5rem;}
    section .white-wrap h3{font-size: 1.2rem;}
    
    .flex-btn{
        flex-wrap: wrap;
    }

    .flex-btn a.btn{
        width: 100%;
    }
    
    .column-list{
        column-count: 1;
    }
	
	.flex-wrap{
		flex-wrap: wrap;
	}
	.side-parted-img.flex-wrap .content {
    width: 100%;
	}
	.side-parted-img.flex-wrap .img {
    width: 100%;
	}
	main section .course-box ul {
		column-count:1;
		margin: 1rem;
	}
	.worry-list{ display: block; min-width: 0; width: 30rem; left: 50%; transform: translateX(-50%); padding: 3rem 0 4rem; margin: 0 0 3rem; }
	.worry-list li{ font-size: 1.5rem; padding-left: 3rem; height:auto; padding-top: 1rem; padding-bottom: 1rem; }
	.worry-list li:before{ width: 1.65rem; height: 1.375rem; }
	
	.side-parted-img .content,.side-parted-img .img,.side-parted-img .img img{ width:100%; height:auto;}

    
	.sec-news{ padding: 2rem 4rem; }
	.sec-news a{font-size: 1.6rem; width: 100%; padding-right: 4.7rem; }
	.sec-news a:before, .sec-news a:after{ width: 3rem; height: 3rem; }
	.sec-news a > span{ white-space: initial; text-overflow: initial; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
	.sec-news a > span .time{ display: block; }

	.sec-intro{ padding-top: 5rem; margin-bottom: 5rem; }
	.sec-intro .item01{ width: 13rem; top: 2rem; right: 1.5rem; }
	.sec-intro .item02{ width: 13rem; top: 15.2rem; left: 1.5rem; }
	.sec-intro h2{ font-size: 2.8rem; line-height: 1.5; }
	.sec-intro h2 + p{ font-size: 1.6rem; line-height: 2; margin-bottom: 5rem; }
	.sec-intro .link-list a{ height: 9rem; }
	.sec-intro .link-list a:nth-of-type(1){ background-image: url(../images-lp-ortho/index/webp/intro01-sp.webp); }
	.sec-intro .link-list a:nth-of-type(2){ background-image: url(../images-lp-ortho/index/webp/intro02-sp.webp); }
	.sec-intro .link-list a:after{ width: .7rem; height: .7rem; right: 1rem; bottom: 1rem; }
	.sec-intro .link-list a dl{ width: 22rem; }
	.sec-intro .link-list a dl dt{ font-size: 1.8rem; }

	.sec-info{ padding-bottom: 6rem; }
	.sec-info:before{ height: calc(100% + 12.5rem); background-image: url(../images-lp-ortho/common/webp/bg02-sp.webp); background-size: 100%; }

	.bg-flower:after{ background-size: 9.4rem; }
	.bg-flower h2{ font-size: 2.8rem; }
	.bg-flower h3{ font-size: 2.3rem; line-height: 1.5; }
	.bg-flower h3 + p{ font-size: 1.6rem; }

	h2.general{ font-size: 2.5rem; height: 9.5rem; padding-top: 5.3rem; }
	h2.general:after{ width: 12rem; height: 4.1rem; }
	h2.general:before{ font-size: 6.5rem; }
	h2.general + p.sub-font{ font-size: 1.5rem; margin-top: 2rem; }

	.sec-about .wrap{ padding-top: 5rem; padding-bottom: 6rem; }
	.sec-about h3 + p{ margin-bottom: 2.5rem; }

	.sec-feature{ padding-top: 6rem; padding-bottom: 5rem; }
	.sec-feature h2{ margin-bottom: 3rem; }
	.sec-feature ol li{ display: block; }
	.sec-feature ol li + li{ margin-top: 3.25rem; }
	.sec-feature ol li .img{ position: relative; left: -1.25rem; width: 100vw; padding-left: 4rem; margin-bottom: 1.5rem; }
	.sec-feature ol li .img .no{ width: 4rem; padding-top: 5rem; }
	.sec-feature ol li .img .no span{ font-size: 1rem; transform: scale(.9); }
	.sec-feature ol li .img .no strong{ font-size: 2rem; line-height: 1.3; }
	.sec-feature ol li .img img{ width: 100%; height: 18.6rem; }
	.sec-feature ol li .txt{ width: 100%; padding: 0 1.2rem; }
	.sec-feature ol li .txt h3{ font-size: 2.2rem; margin-bottom: 1.2rem; }
	.sec-feature ol li .txt h3 a:before, .sec-feature ol li .txt h3 a:after{ width: 3rem; height: 3rem; }

	.sec-painless{ padding: 6rem 2.5rem 6rem; background-image: url(../images-lp-ortho/index/webp/painless-bg01-sp.webp); }
	.sec-painless .white-wrap{ padding: 4rem 2.8rem 4rem; }
	.sec-painless .white-wrap:before{ width: calc(100% - 1rem); height: calc(100% - 1rem); border-width: 2px; }
	.sec-painless .white-wrap:after{ width: calc(100% - 2rem); height: calc(100% - 2rem); }
	.sec-painless .white-wrap h2{ font-size: 1.8rem; }
	.sec-painless .white-wrap .head{ padding-bottom: 18.5rem; }	
	.sec-painless .white-wrap .head div[class^="round"]{ padding-bottom: 5.5rem; }
	.sec-painless .white-wrap .head div[class^="round"] p{ width: 11.4rem; height: 11.4rem; font-size: 1.3rem; }
	.sec-painless .white-wrap .head div[class^="round"] p strong:before{ width: .17rem; height: .17rem; top: -.45rem; }
	.sec-painless .white-wrap .head .round-left{ left: 0; }
	.sec-painless .white-wrap .head .round-left img{ width: 17rem; }
	.sec-painless .white-wrap .head .round-right{ right: 0; }
	.sec-painless .white-wrap .head .round-right img{ width: 17rem; }
	.sec-painless .white-wrap .worry-list{ display: block; min-width: 0; width: 30rem; left: 50%; transform: translateX(-50%); padding: 3rem 0 4rem; margin-bottom: 3rem; }
	.sec-painless .white-wrap .worry-list li{ font-size: 1.6rem; padding-left: 3rem; height: 4rem; }
	.sec-painless .white-wrap .worry-list li:before{ width: 1.65rem; height: 1.375rem; }
	.sec-painless .white-wrap .btn{ margin-top: 1.2rem; }

	.sec-dr{ padding-top: 6rem; background: url(../images-lp-ortho/common/webp/bg02-sp.webp) no-repeat bottom center/100%; }
	.sec-dr:before{ background-size: 60rem; }
	.sec-dr .wrap{ padding-bottom: 6rem; }
	.sec-dr h2{ margin-bottom: 3.5rem; }
	.sec-dr .pic{ position: relative; right: 0; display: table; margin: 0 auto 2.25rem; }
	.sec-dr .pic img{ width: 24rem; }
	.sec-dr .pic p.catch{ font-size: 2.25rem; letter-spacing: 0; right: -2.5rem; }
	.sec-dr .pic p.catch span{ margin-left: .3rem; }
	.sec-dr .txt{ width: 100%; padding: 0 1.25rem; }
	.sec-dr .txt h3{ font-size: 1.9rem; text-align: center; padding-bottom: 1.4rem; margin-bottom: 1.4rem; }
	.sec-dr .txt h4{ font-size: 1.5rem; text-align: center; line-height: 1.6; padding-bottom: 1.5rem; margin-bottom: 1rem; }
	.sec-dr .txt p{ line-height: 2; margin-bottom: 2.2rem; }

	.sec-orth .bg-flower{ padding: 5rem 0; }
	.sec-orth .orth-list{ display: block; }
	.sec-orth .orth-list li{ background-color: var(--bg-color01); }
	.sec-orth .orth-list li:nth-of-type(1){ background-image: url(../images-lp-ortho/index/webp/orth01-sp.webp); }
	.sec-orth .orth-list li:nth-of-type(2){ background-image: url(../images-lp-ortho/index/webp/orth02-sp.webp); }
	.sec-orth .orth-list li:nth-of-type(3){ background-image: url(../images-lp-ortho/index/webp/orth03-sp.webp); }
	.sec-orth .orth-list li span{ font-size: 2.5rem; line-height: 1.6; margin-bottom: 2.5rem; }
	.sec-orth .orth-list li .btn{ position: relative; bottom: 0; left: 0; transform: none; }
	.sec-orth .orth-list li .btn:hover{ transform: scale(1.05); }
	.sec-orth .orth-list li:before{ background : linear-gradient(0deg, rgba(229, 228, 218, 1) 0%, rgba(229, 228, 218, 0) 100%); bottom: 6.5rem; }
	.sec-orth .orth-list li:after{ content: ''; width: 100%; height: calc(6.5rem + 1px); background: var(--bg-color01); position: absolute; bottom: 0; left: 0; z-index: -1 }

	.sec-treatment{ padding-top: 6rem; padding-bottom: 6rem; margin-bottom: 6rem; }
	.sec-treatment h2 + p{ margin-bottom: 1.35rem; }

	.sec-flow h2{ margin-bottom: 2.8rem; }
	.sec-flow .item01{ position: static; width: 100%; display: block; margin-bottom: 1rem; }
	.sec-flow .inner{ width: 100%; padding: 0 1.25rem 6rem; }
	.sec-flow .inner:before, .sec-flow .inner:after{ width: 100vw; height: calc(100% - 7.5rem); left: -1.25rem; }
	.sec-flow .inner:after{ background-size: 9.4rem; }
	.sec-flow .inner ol{ margin-bottom: 3rem; }
	.sec-flow .inner ol li{ min-height: 11rem; padding-left: 6.5rem; }
	.sec-flow .inner ol li:before{ width: 5rem; height: 7rem; font-size: 2.5rem; }
	.sec-flow .inner ol li h3{ font-size: 1.8rem; }
	.sec-flow .inner ol li p{ font-size: 1.1rem; }

	.sec-price{ padding: 5rem 1.25rem 6rem; background: url(../images-lp-ortho/common/webp/bg02-sp.webp) no-repeat bottom center/100%; }
	.sec-price:before{ background-size: 60rem; }
	.sec-price h2{ font-size: 2.8rem; line-height: 1.5; margin-bottom: 2.3rem; }
	.sec-price .first-visit{ flex-wrap: wrap; margin-bottom: 3.5rem; }
	.sec-price .first-visit dt{ width: 100%; height: 10rem; clip-path: polygon(0% calc(100% - 3rem), 0% 0%, 100% 0%, 100% calc(100% - 3rem), 50% 100%); padding-bottom: 1rem; }
	.sec-price .first-visit dt h3{ font-size: 2.2rem; padding-left: 2.8rem; background-size: 2.3rem; line-height: 1.4; }
	.sec-price .first-visit dt small{ font-size: 1.1rem; }
	.sec-price .first-visit dd{ width: 100%; padding: .8rem 0 1.4rem; }
	.sec-price .first-visit dd strong{ font-size: 1.9rem; padding-left: 2.8rem; background-size: 2.3rem; line-height: 1.4; }
	.sec-price .first-visit dd small{ font-size: 1.1rem; }
	.sec-price .white-wrap{ padding: 3.4rem 3.5rem 3.2rem; border-width: 2px; }
	.sec-price .white-wrap:before{ width: calc(100% - 1rem); height: calc(100% - 1rem); }
	.sec-price .white-wrap ul{ flex-wrap: wrap; margin-bottom: 2.5rem; }
	.sec-price .white-wrap ul li{ width: 100%; }
	.sec-price .white-wrap ul li + li{ border-left: none; padding-top: 3rem; border-top: solid 1px var(--bg-color01); margin-top: 3rem; }
	.sec-price .white-wrap ul li h3{ font-size: 2.2rem; margin-bottom: 1.5rem; }
	.sec-price .white-wrap ul li img{ width: 20rem; }
	
	.sec-clinic{ padding: 6rem 2.5rem 2.7rem; }
	.sec-clinic h2 + p{ margin-bottom: 2.25rem; }
	.sec-clinic .item01{ width: 100%; }
	.sec-clinic .clinic-row{ margin-top: 2.2rem; }
	.sec-clinic .clinic-row p{ width: 100%; margin-bottom: 2.25rem; }

	.sec-recruit{ padding-left: 0; background: var(--bg-color01); }
	.sec-recruit .item01{ position: static; width: 100%; }
	.sec-recruit .link-box{ height: auto; padding: 6.5rem 0 12.5rem; display: block; }
	.sec-recruit .link-box:before{ width: calc(100% - 2rem); height: calc(100% - 2rem); border-width: 2px; }
	.sec-recruit .link-box:after{ width: calc(100% - 1rem); height: calc(100% - 1rem); }
	.sec-recruit .link-box .inner{ padding: 0; position: static; }
	.sec-recruit .link-box .inner:before, .sec-recruit .link-box .inner:after{ width: 3rem; height: 3rem; top: auto; bottom: 7.5rem; right: auto; left: 50%; transform: translateX(-50%); }
	.sec-recruit .link-box .inner h2{ font-size: 2.8rem; text-align: center; line-height: 1.5; margin-bottom: 2.1rem; }
	.sec-recruit .link-box .inner p{ font-size: 1.5rem; text-align: center; }
	
	
.banner-price01,.banner-price02,.banner-price03{margin: 2rem auto 2rem;}
	
	
	/*banner-price01*/
	.banner-price01 .point{
	top: 10vw;
    bottom: 0px;
    right: 55vw;
    z-index: 2;
    width: 35vw;
	}
	.banner-price01::before {
    max-width: inherit;
    width: 100%;
    height: calc(440 / 750 * 100vw);
    background: url("../images-lp-ortho/ortho/banner-price01_sp.jpg")no-repeat center / cover;
    position: absolute;
    top: 0;
    bottom: inherit;
    right: 0;
    z-index: -1;
	}
	.banner-price01 .title {
    font-size: 4.66vw;
	}
	.banner-price01 .banner-wrap{
	background: linear-gradient( to top, #fff 0, rgba(255,255,255,0) 90%);
	height: 165vw;
	padding-top: 55vw
	}
	.banner-price01 .pay-box {
    width: 520px;
	margin-bottom: 2rem;
	}
	.banner-price01 .pay {
    display: table;
	margin-right: 0;
	}	
	.banner-price01 .pay p:nth-child(1){ font-size: 3rem; }
	.banner-price01 .pay p:nth-child(1):after{ font-size: 4rem; transform: translateY(-5px); display: inline-flex; }
	.banner-price01 .pay p:nth-child(1) span{ font-size: 5rem; }
	.banner-price01 .pay p:nth-child(1) small{ font-size: 2.2rem; }
	.banner-price01 .pay p:nth-child(2){ font-size: 1.2rem;top: 0vw;
    right: 13vw; }
	.banner-price01 .pay p:nth-child(3){bottom: -35px;}
	.banner-price01 .sub-text span{font-size: 2.5rem;}
	.banner-price01 .call-out-box{margin-bottom: 2rem;}
	.banner-price01 .call-out-box{flex-wrap: wrap;}
	.banner-price01 .call-out-box .btn{width: 100%; margin-top:2rem; z-index:2; margin-left:0rem;}
	
	/*.banner-price02*/
	.banner-price02 .point{
	top: 10vw;
    bottom: 0px;
    right: 55vw;
    z-index: 2;
    width: 35vw;
	}
	.banner-price02::before {
    max-width: inherit;
    width: 100%;
    height: calc(440 / 750 * 100vw);
    background: url("../images-lp-ortho/ortho/banner-price02_sp.jpg")no-repeat center / cover;
    position: absolute;
    top: 0;
    bottom: inherit;
    right: 0;
    z-index: -1;
	}
	.banner-price02 .title {
    font-size: 4.66vw;
	}
	.banner-price02 .banner-wrap{
	background: linear-gradient( to top, #fff 0, rgba(255,255,255,0) 90%);
	height: 170vw;
	padding-top: 55vw;
    padding-left: 3rem;
    padding-right: 3rem;
    }
	.banner-price02 .pay-box {
    width: 100%;
	margin-bottom: 1rem;
    margin-bottom: 2rem;
	}
	.banner-price02 .pay {
    display: table;
	margin-right: 0;
    margin-left: 0;
	}	
	.banner-price02 .pay p:nth-child(1){ font-size: 3rem; }
	.banner-price02 .pay p:nth-child(1):after{ font-size: 4rem; transform: translateY(-5px); display: inline-flex; }
	.banner-price02 .pay p:nth-child(1) span{ font-size: 5rem; }
	.banner-price02 .pay p:nth-child(1) small{ font-size: 2.2rem; }
	.banner-price02 .pay p:nth-child(2){ font-size: 1.2rem;     top: 0vw;
    right: 15vw; }
	.banner-price02 .sub-text span{font-size: 3rem;}
	.banner-price02 .call-out-box{margin-bottom: 2rem;}
	.banner-price02 .call-out-box{flex-wrap: wrap;}
	.banner-price02 .call-out-box .btn{width: 100%; margin-top:2rem; z-index:2; margin-left:0rem;}
	
	/*.banner-price03*/
	.banner-price03 .point{
	top: 10vw;
    bottom: 0px;
    right: 55vw;
    z-index: 2;
    width: 35vw;
	}
	.banner-price03::before {
    max-width: inherit;
    width: 100%;
    height: calc(440 / 750 * 100vw);
    background: url("../images-lp-ortho/ortho/banner-price03_sp.jpg")no-repeat center / cover;
    position: absolute;
    top: 0;
    bottom: inherit;
    right: 0;
    z-index: -1;
	}
	.banner-price03 .title {
    font-size: 4.66vw;
	}
	.banner-price03 .banner-wrap{
	background: linear-gradient( to top, #fff 0, rgba(255,255,255,0) 90%);
	height: 165vw;
	padding-top: 55vw
	}
	.banner-price03 .pay-box {
    width: 100%;
	margin-bottom: 2rem;
	}
	.banner-price03 .pay {
    display: table;
	margin-right: 0;
	}	
	.banner-price03 .pay p:nth-child(1){ font-size: 1.8rem; }
	.banner-price03 .pay p:nth-child(1):after{ font-size: 3rem; transform: translateY(-5px); display: inline-flex; }
	.banner-price03 .pay p:nth-child(1) span{ font-size: 5rem; }
	.banner-price03 .pay p:nth-child(1) small{ font-size: 2.2rem; }
	.banner-price03 .pay p:nth-child(2){ font-size: 1rem; top: 8px; right: 7vw; }
	.banner-price03 .sub-text span{font-size: 3rem;}
	.banner-price03 .call-out-box{margin-bottom: 2rem;}
	.banner-price03 .call-out-box{flex-wrap: wrap;}
	.banner-price03 .call-out-box .btn{width: 100%; margin-top:2rem; z-index:2; margin-left:0rem;}
    
        .banner-price05::before {
    max-width: inherit;
    width: 100%;
    height: calc(440 / 750 * 100vw);
    background: url("../images/service/invisalign/banner-price04_sp.jpg")no-repeat center / cover;
    position: absolute;
    top: 0;
    bottom: inherit;
    right: 0;
    z-index: -1;
	}
    
	/*trouble*/
	.trouble{ padding: 50px 0 75px;
		-webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 35px), 50% 100%, 0 calc(100% - 35px));
		clip-path: polygon(0 0, 100% 0, 100% calc(100% - 35px), 50% 100%, 0 calc(100% - 35px));}
	.trouble:before{width: 40vw;
    height: 40vw;
    left: 65vw;
    bottom: 3vw;}
	.trouble h2{ font-size: 2.4rem; line-height: 1.45; margin-bottom: 20px; }
	.trouble ul.ortho-list{ flex-wrap: wrap; }
	.trouble ul.ortho-list li{ flex-basis: calc(100%/3); line-height: 1.3; font-size:4.66vw;}
	.trouble ul.ortho-list li:nth-child(3){ border-right: none; }
	.trouble ul.ortho-list li:nth-child(n+4){ margin-top: 20px; }
	.trouble ul.ortho-list li:before{ width: 90px; height: 49px; margin: 0 auto 5px; }
	.trouble p:last-child{ width: 90.8vw; font-size: 1.4rem; text-align: left; padding: 20px 4.6vw; }
    
    .mv.mv-lp img {
        height: 100%;
    } 
    .mv.mv-lp .inner .banner-covid {
        bottom: 3rem;
        right: 1.25rem;
        transform: none;
    }
    .banner-price02 .pay p:nth-child(2) {
    right: 13vw;
    }
    
    .grid-container {
    max-width: 230px;
    max-height: 170px;
    margin-bottom: 10rem
        }
    .grid-container.height-change{
    margin-bottom: 8rem;
    }
    
}

/*ctaボタン*/
@media screen and (max-width: 768px){
	.cta_box.short {
        width: 100%;
        padding: 1.5rem;
        margin: 0 auto 4rem;
    }
.cta_box .flex_wrap {
        display: block;
    }
	.cta_box.short .flex_wrap .img {
        width: 100%;
        height: auto;
        margin: 0 auto 1rem;
    }
	.cta_box.short .flex_wrap .img img {
        width: 100%;
        height: auto;
    }
	.cta_box.short .flex_wrap .img, .cta_box.short .flex_wrap .text {
        width: 100%;
        margin-top: .5rem;
    }
	.cta_box.short .yoyaku_wrap .point_text {
        font-size: 15px;
        line-height: 1.5;
    }
	.cta_box.short .flex_wrap .text .l-header__phone a{
	background: #fff;
    padding: 1.5rem 3rem;
	font-size: 2.4rem;
}
	.cta_box.short .flex_wrap .text .l-header__phone a span{
		font-size: 2rem;
	}
	.cta_box.short .flex_wrap .text .l-header__phone a small {
    position: absolute;
    top: -1rem;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 1rem;
    background: #634d42;
    border: #FFF 1px solid;
    color: #FFF;
    width: 76%;
    border-radius: 1rem;
    margin: auto;
    line-height: 1.8;
}
	.cta_box.short .flex_wrap .text .c-btn03 a{
	padding: 0 5rem 0 3rem;
}
	.cta_box.short .flex_wrap .text .c-btn03 a span{
		font-size: 1.6rem;
	}
}

@media (max-width: 768px) {
    .cta_wrap {
        margin-top: 5rem;
    }
			.cta_wrap span.text {
        top: -1.8rem;
        font-size: 3rem;
        text-align: center;
        letter-spacing: 0;
    }
			    .cta_box {
        width: 100%;
        padding: 1.5rem 1.5rem .5rem;
        margin-bottom: 0;
    }
			    .cta_box h2 {
        font-size: 20px;
        padding: 0 0 .7rem;
        margin-bottom: 1.5rem;
        line-height: 1.5;
    }
			    .cta_box .flex_wrap {
        display: block;
        margin-bottom: 0;
    }
			    .cta_box .flex_wrap .img {
        width: 100%;
        margin-bottom: 1rem;
    }
			.cta_box .flex_wrap .text {
        width: 100%;
        padding-left: 0;
    }
			    .cta_box .flex_wrap .text p {
        font-size: 13px;
        line-height: 2;
        letter-spacing: .05rem;
					font-weight: 200;
    }
			.point_list li {
        width: 49%;
        font-size: 12px;
        letter-spacing: 0;
    }
			.yoyaku_wrap {
        padding-top: .5rem;
    }
			.cta_box .yoyaku_wrap .l-header__phone a {
    background: #fff;
    padding:1.5rem 2rem 1.5rem .5rem;
    font-size: 2.4rem;
				width: 95%;
}
			.cta_box .yoyaku_wrap .c-btn03 a {
    font-size: 2rem;
    padding: 2rem 2rem 2rem 1rem;
				width: 95%;
}
			
.cta_box .yoyaku_wrap .l-header__phone a small {
    position: absolute;
    top: -1rem;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 1rem;
    background: #634d42;
    border: #FFF 1px solid;
    color: #FFF;
    width: 75%;
    border-radius: 1rem;
    margin: auto;
    line-height: 1.8;
}
    .shorei {display:block;margin: 20px auto;}
    .shorei > div {width: 100%;}
    .banner-price01,.banner-price02,.banner-price03{margin: 2rem auto 2rem;}
			
    
    /*trouble*/
	main section.trouble{ padding: 50px 0 75px;
		-webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - 35px), 50% 100%, 0 calc(100% - 35px));
		clip-path: polygon(0 0, 100% 0, 100% calc(100% - 35px), 50% 100%, 0 calc(100% - 35px));}
	main section.trouble:before{width: 40vw;
    height: 40vw;
    left: 65vw;
    bottom: 3vw;}
	main section.trouble h2{ font-size: 2.4rem; line-height: 1.45; margin-bottom: 20px; }
	main section.trouble ul{ flex-wrap: wrap; }
	main section.trouble ul li{ flex-basis: calc(100%/3); line-height: 1.3; font-size:4.66vw;}
	main section.trouble ul li:nth-child(3){ border-right: none; }
	main section.trouble ul li:nth-child(n+4){ margin-top: 20px; }
	main section.trouble ul li:before{ width: 90px; height: 49px; margin: 0 auto 5px; }
	main section.trouble p:last-child{ width: 90.8vw; font-size: 1.4rem; text-align: left; padding: 20px 4.6vw; }
			

}