@media(max-width: 768px){
	.mv{ padding: 1rem 1.25rem 1.5rem; }
	.mv:before, .mv:after{ width: 100vw; height: 15rem; top: auto; bottom: 0; }
	.mv.mv-none:before, .mv.mv-none:after{ width: 100vw; height: 5.2rem; top: auto; bottom: 0; }
	.mv:after{ background-size: 9.4rem; }
	.mv 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;}

}