@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; }
	main section table:not(.no-style) th.case-th { width:  5.3em;}

	main section .case-pic li{ width: 100%; margin-right: 0; }
	main section .case-pic li:nth-of-type(n+2){ margin-top: 1.5rem; }


	/*** 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; margin-bottom: 2rem; }
        .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;}


.shorei {display:block;margin: 20px auto;}
.shorei > div {width: 100%;}
    
.banner-price01,.banner-price02,.banner-price03{margin: 2rem auto 2rem;}
	
	
	/*banner-cgf*/
    .banner-cgf {
        margin: 0 calc(50% - 50vw);
  width: 100vw;
    }
	.banner-cgf .point{
	top: 10vw;
    bottom: 0px;
    right: 55vw;
    z-index: 2;
    width: 35vw;
	}
	.banner-cgf::before {
    max-width: inherit;
    width: 100%;
    height: calc(440 / 750 * 100vw);
    background: url("../images/service/implant/cgf/banner-cgf.jpg")no-repeat center / cover;
    position: absolute;
    top: 0;
    bottom: inherit;
    right: 0;
    z-index: -1;
	}
	.banner-cgf .title {
        font-size: 4.2vw;
    line-height: 1.4;
    padding: 1rem;
    margin-bottom: 0rem;
	}
	.banner-cgf .banner-wrap{
	background: linear-gradient( to top, #fff 0, rgba(255,255,255,0) 90%);
	height: 165vw;
	padding-top: 50vw
	}
	.banner-cgf .pay-box {
    width: 100%;
	margin-bottom: 2rem;
	}
	.banner-cgf .pay {
    display: table;
	margin-right: 0;
	}	
	.banner-cgf .pay p:nth-child(1){     font-size: 2rem;
    margin-bottom: 3rem; }
	.banner-cgf .pay p:nth-child(1):after{ font-size: 4rem; transform: translateY(-5px); display: inline-flex; }
	.banner-cgf .pay p:nth-child(1) span{ font-size: 6rem; }
	.banner-cgf .pay p:nth-child(1) small{ font-size: 2.2rem; }
	.banner-cgf .pay p:nth-child(2){ font-size: 1.2rem;     top: 0vw;
    right: 15vw; }
    .pay p:nth-child(3) {
    bottom: -40px;
    }
	.banner-cgf .sub-text span{font-size: 2.8rem;}
	.banner-cgf .call-out-box{margin-bottom: 2rem;}
	.banner-cgf .call-out-box{flex-wrap: wrap;}
	.banner-cgf .call-out-box .btn{width: 100%; margin-top:2rem; z-index:2; margin-left:0rem;}
	
	/*banner-price01*/
    .banner-price01 {
        margin: 0 calc(50% - 50vw);
  width: 100vw;
    }
	.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/service/invisalign/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.33vw;
    line-height: 1.4;
	}
	.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: 100%;
	margin-bottom: 2rem;
	}
	.banner-price01 .pay {
    display: table;
	margin-right: 0;
	}	
	/*金額4桁
    .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: 6rem; }
	.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: 15vw; }*/
    /*金額5桁*/
    .banner-price01 .pay p:nth-child(1){ font-size: 3rem; }
	.banner-price01 .pay p:nth-child(1):after{ font-size: 3rem; 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: -2vw; right: 1vw; }
    .pay p:nth-child(3) {
    bottom: -40px;
    }
	.banner-price01 .sub-text span{font-size: 2.8rem;}
	.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/service/invisalign/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: 165vw;
	padding-top: 55vw
	}
	.banner-price02 .pay-box {
    width: 100%;
	margin-bottom: 1rem;
	}
	.banner-price02 .pay {
    display: table;
	margin-right: 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/service/invisalign/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: 1rem;
	}
	.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;}
	
	/*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; }

}

@media (max-width: 768px){
.mv img {
    height: 17rem;
    margin-bottom: 1.5rem;
} 
.flex-time{
	flex-wrap: wrap;
}
input.date {
    font-size: 2rem!important;
    width: 100%;
}
select.time{
    width: 100%;
}
.grid-container {
max-width: 230px;
max-height: 170px;
margin-bottom: 10rem
    }
    footer .wrap.midium {
     width: 100%; 
}
}

/*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;
}
			

}

@media (max-width: 768px) {
    .side-img {
		flex-direction: column;
        margin-bottom: 2rem;
	}
}