@charset "UTF-8";
/* CSS Document */

@media screen and (max-width:599px){
	
	.pc{display: none;}
	.sp{display: block;}
	
	.mv{min-height: 500px;}
	.mv:after{height: calc(100% - 10vw);border-radius: 0 0 50% 50%/0 0 12vw 12vw;
		background: url("../img/index/mv-sp.jpg")center top/cover;}
	.no-webp .mv:after{background: url("../img/index/mv-sp.jpg")center top/cover;}
	.mv-lp:after{height: calc(100% - 10vw);border-radius: 0 0 50% 50%/0 0 12vw 12vw;
		background: url("../img/lp/002.jpg")center top/cover;}
	.mv-lp.mv-lp2:after{height: calc(100% - 50vw)!important;border-radius: 0 0 50% 50%/0 0 12vw 12vw;
		background: url("../img/lp/002.jpg")center top/cover;}
	.no-webp .mv-lp:after{background: url("../img/lp/002.jpg")center top/cover;}
	.mv article{padding-top: 28vw;}
	.mv h1:after{width: 57vw; left: -5vw;}
	
	.mv img[src*="sp"]{display: block;width: 52vw;}
	.mv h1 img:not([src*="sp"]){display: none;}
	.mv h1 + p img:not([src*="sp"]){display: none;}
	.mv article p:last-child img{width: 62vw;}
	
	.top-nav{display: none;}
	main{margin-top: 60px;}
	.top h2{font-size: 5.5vw;}
	.top h2.mark:before{width: 10vw;height: 12vw;margin: 0 auto 10px;}
	.top h2.mark:after{margin: 20px auto 0;}
	
	.counseling{width: 90vw;}
	.counseling a{display: block;height: auto;font-size: 4.5vw;padding: 20px 4vw;}
	.counseling a:after{display: inline-block;position: static;vertical-align: 2px;margin-left: 5px;}
	.counseling a img{display: none;}
	
	.corona-bnr{padding: 0 5vw;margin-bottom: 40px;}
	.corona-bnr a{height: 75px;font-size: 1.3rem;padding-left: 24vw;}
	.corona-bnr a:before{width: 26vw;height: 13vw;}
	
	.trouble{padding-bottom: 6vw;}
	.trouble .wrap{padding: 0 0 12vw;border-radius: 0 0 50% 50%/0 0 12vw 12vw;}
	
	.trouble h2{margin-bottom: 25px;}
	.trouble ul{padding-top: 32vw;}
	.trouble ul li{width: 40vw;}
	.trouble:after{height: 76vw;}
	.trouble ul li:nth-child(1){transform: translate(-10px,0);}
	.trouble ul li:nth-child(2){left: 8vw;}
	.trouble ul li:nth-child(3){right: 8vw;z-index: 1;}
	.trouble ul li:nth-child(4){transform: translate(20px,0);}
	
	.type{border-radius: 0 0 50% 50%/0 0 12vw 12vw;padding: 180px 0 100px;}
	.type h2 span{font-size: 8vw;margin-right: 5px;}
	.type article{margin: 50px auto 70px;width: 90vw;padding: 40px 2vw 30px;}
	
	.type article h3{font-size: 5vw;}
	.type article ul{margin-bottom: 20px;}
	.type article ul li{width: 26vw;height: 26vw;padding: 6vw 0 35px;}
	.type article ul li:nth-child(1){margin-right: 2vw;}
	.type article ul li:nth-child(2){margin-right: 2vw;}
	.type article ul li:nth-child(4){margin-right: 2vw;margin-left: 10vw;margin-bottom: 2vw;}
	.type article ul li:nth-child(5){margin-right: 10vw;}
	.type article ul li:nth-child(6){margin-right: 2vw;margin-left: 10vw;margin-bottom: 2vw;}
	.type article ul li:nth-child(7){margin-right: 10vw;}
	
	.type article ul li img{width: 15vw;}
	.type article p:last-child{font-size: 1rem;line-height: 1.4;}
	.type article ul + p{font-size: 2rem;margin-bottom: 20px;}
	.type article ul + p span{font-size: 7vw;}
	
	.feature .wrap{padding: 150px 5% 100px;border-radius: 0 0 50% 50%/0 0 12vw 12vw;}
	.feature h2{margin-bottom: 25px;}
	.feature .in{margin-bottom: 30px;}
	.feature .in .box{width: 41vw;min-height: auto;justify-content: space-between;margin-bottom: 30px;}
	.feature .in .box .txt{width: 100%;margin-bottom: 0px!important;}
	.feature .in .box h3{font-size: 3.5vw; width: calc(100% - 6vw);padding: 15px 0;margin-bottom: 0px!important; margin-top: 0}
	.feature .in .box h3 + p{font-size: 1.2rem;letter-spacing: 0.05em;font-feature-settings : "palt";margin-bottom: 0px!important;}
	
	.feature .in .box:before{width: 13vw;height: 13vw;padding: 2vw;font-size: 3.2vw;}
	
	.dr .wrap{padding: 150px 5% 80px;border-radius: 0 0 50% 50%/0 0 12vw 12vw;}
	.dr section{padding: 0;}
	.dr .box:nth-last-child(n + 3){margin-bottom: 8vw;}
	.dr .box a{width: 48vw;height: 37vw;}
	.dr .box a:after{position: absolute;bottom: -3vw;left: 50%;}
	.dr .box a:before{width: 42vw;height: 42vw;}
	.dr .clinic img{width: 6vw;}
	.dr .clinic h3:after{width: 28.8vw;margin: 8px auto 0;}
	.dr .clinic h3{font-size: 0.4rem;}
	.dr .name{width: 28.8vw;}
	.dr .name p:first-child{font-size: 0.9rem;}
	.dr .name p:last-child{font-size: 1.5rem;}
	.dr .box .photo{width: 16vw; right: -2vw;bottom: -2vw;}
	.dr section > p{padding: 0 5vw; text-align: left;}
    .dr section .btn a{margin: 5vw auto 0;}
	
	.counseling-area{padding: 35px 0;}
	.counseling-area:before{height: 12vw; top: -12vw; 
		background: url(../img/index/webp/ballon02.webp)center top/100% 12vw;}
	.no-webp .counseling-area:before{background: url("../img/index/ballon02.png")center top/100% 12vw;}
	.counseling-area h2{margin-bottom: 30px;font-size: 6.5vw;}
	.counseling-area h2 + p{font-size: 1.4rem;}
	.counseling-area .counseling{text-align: left;}
	
	.diff:before{height: 12vw;border-radius: 0 0 50% 50%/0 0 12vw 12vw;}
	.diff .wrap{padding: 100px 5% 100px;border-radius: 0 0 50% 50%/0 0 12vw 12vw;}
	.diff h2{margin-bottom: 45px;}
	.diff section{padding-left: 5vw;padding-right: 5vw;}
	.diff section > div{width: calc(100% + 5vw);
		overflow: scroll;}
	.diff table{width: 800px;}
	
	.fee .wrap{padding: 150px 5% 100px;border-radius: 0 0 50% 50%/0 0 12vw 12vw;}
	.fee section{padding-left: 5vw;padding-right: 5vw;}
	.fee h2{margin-bottom: 5vw;padding-bottom: 5vw;}
	.fee h2 + p{font-size: 1.4rem;}
	.fee .in{padding: 5vw;}
	
	.fee .price{display: block;}
	.fee .bnr{margin-top: 20px;}
	.fee .bnr img[src*="sp"]{display: block;}
	.fee .bnr img:not([src*="sp"]){display: none;}
	.fee .bnr + p{text-align: justify; font-size: 1.4rem;margin-bottom: 30px;}
	.fee .bnr + p br{display: none;}
	
	.fee .price .box{width: 100%;padding: 5vw;}
	.fee .price .box:first-child{margin-bottom: 20px;}
	.fee .price h4 + p{display: table;margin: 0 auto 15px;font-size: 12vw;}
	.fee .price h4 + p sup{top: 1.5vw;right: -2vw;}
	
	.case h2{margin-bottom: 25px;}
	.case .wrap{padding: 150px 5% 100px;border-radius: 0 0 50% 50%/0 0 12vw 12vw;}
	.case section{padding: 0 5vw;}
	.case .in{display: block;padding:0 7vw;}
	.case .in .box:not(:last-child){margin-bottom: 40px;}
	.case h4 + p img{width: 100%;}
	.case .range h2 span{font-size: 6vw;display: inline;}
	.case .range table th:first-child{width: auto;white-space: nowrap;padding: 0 5px;
		font-size: 1.4rem;letter-spacing: 0.05em;}
	.case .range table td p:nth-child(2) img{width: 40vw;}
    
/*    flow---*/
    .flow .flow-list{ margin: 10vw 0; }
	.flow .flow-list .row + .row{ margin-top: 10vw; }
	.flow .flow-list dl{ width: 100%; }
	.flow .flow-list dl dt{ font-size: 1.6rem; padding-left: 13.33vw; padding-top: .4em; }
	.flow .flow-list dl dt:before{ width: 10.66vw; height: 10.66vw; font-size: 1.4rem; top: 0; }
	.flow .flow-list dl dd{ margin-top: 6vw; }
	.flow .flow-list .img{ width: 100%; margin-top: 5.33vw; }
    .flow .row{flex-wrap: wrap;}
	
	.reason .wrap{padding: 150px 5% 80px;border-radius: 0 0 50% 50%/0 0 12vw 12vw;
		background: url(../img/index/webp/reason-bg-sp.webp)center/100% repeat;}
	.no-webp .reason .wrap{background: url(../img/index/reason-bg-sp.jpg)center/100% repeat;}
	.reason h2{margin-bottom: 40px;}
	.reason .box{display: block;}
	.reason .box .txt{width: 100%;margin-bottom: 20px;}
	.reason h3{text-align: center; font-size: 4.8vw;}
	.reason .box .photo{width: 100%;}
	.reason .box .photo img{width: 100%;}
	
	.qa .wrap{padding: 60px 5% 80px;border-radius: 0 0 50% 50%/0 0 12vw 12vw;}
	.qa h2{margin-bottom: 20px;}
	.qa .q,
	.qa .a{padding-left: 10vw; padding-right: 6vw;font-size: 1.4rem;letter-spacing: 0.04em;}
	.qa .q:after{right: 0;}
	.qa .q:before, .qa .a:before{width: 8vw;height: 8vw;font-size: 1.3rem;}
	.qa .counseling{margin-top: 70px;}
	
	.group{padding: 150px 0 100px;}
	.group h2{margin-bottom: 45px;}
	.group .in{display: block;padding: 0 6vw;}
	.group .box{width: 100%;}
	.group .box:not(:last-child){margin-bottom: 50px;}
	.group .in .photo img{width: 100%;}
    .counseling a:before {width: 50vw;height: 30vw;background-repeat: no-repeat;}
    .dr .box .photo-sp {right: -2vw;bottom: 4vw;}
	
    .mv:before {
        content: "";
        width: 100%;
        height: 100%;
        background: linear-gradient(72deg,rgba(255,255,255,1) 35%,rgba(255,255,255,0)72%);
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 0!important;
    }
    div.text-box{display: block; width: 75%; margin: -5vw auto 8vw;}
    div.text-box h3{color: #6ac5d9; font-size: 5vw; margin-bottom: 3vw;}
    div.text-box p{line-height: 2;}
    div.text-box p strong{background: linear-gradient(to bottom,rgba(255,255,255,0) 70%,#ffffc1 70%);}
	
    h1 .title {
    font-size: 6.3vw;
    }
    
    .sale .month{
    font-size: 7vw;
    letter-spacing: .1;
    }

.sale-point li{
    font-size: 4.5vw;
    padding-left: 30px;
    padding-top: 3px;
    padding-bottom:10px;
}

.sale-point li small{
    font-size: 2.5vw;
}
    
    
.sale-point li::before{
    width: 30px;
    height: 30px;
}
    .mv2:after {
        height: calc(100% - 10vw)!important;
    }
    h1 small{font-size:2.5vw;line-height: 3;}

/*lp*/
    .mv-lp{padding-bottom: 0px;}
    .mv-lp h1 {
    margin-bottom: 15px;
    }
    
   .mv-lp h1 .title {
    font-size: 8.666vw;
    color: #67bfcf;
    }
    .mv-lp h1 .title b{
    font-size:16vw;
    }
    .mv-lp .sale-point li {
    font-size: 9vw!important;
    }
    .mv-lp article {
    padding-top: 115vw!important;
    }
    .mv-lp.mv-lp2 article {
    padding-top: 115vw!important;
    margin-bottom: 30vw;
    }
    .mv-lp:before {
    content: "";
    width: 100%;
    height: 230vw;
    background: linear-gradient(0deg,rgba(255,255,255,1) 30%,rgba(255,255,255,0)55%);
    }
    .mv-lp .sale-point li small {
    font-size: 3.88vw;
    }
    .lp{margin-top: 0px;}
    .lp .type article h3 {
    font-size: 7.333vw;
    }
	.lp .type{border-radius: 0 0 50% 50%/0 0 12vw 12vw;padding: 20px 0 20px;}
    .lp .type::after {
    height: 80px;
    }
	.lp .type h2 span{font-size: 8vw;margin-right: 5px;}
	.lp .type article{margin: 50px auto 70px;width: 90vw;padding: 40px 2vw 30px;}
	.lp .type article ul{margin-bottom: 20px;}
	.lp .type article ul li{width: 40vw; height: 40vw; padding: 6vw 0 35px;}
	.lp .type article ul li:nth-child(1){margin-right: 2vw;margin-bottom: 4vw;}
	.lp .type article ul li:nth-child(2){margin-right: 2vw;margin-bottom: 4vw;}
	.lp .type article ul li:nth-child(3){margin-right: 2vw;}
	.lp .type article ul li:nth-child(4){margin-right: 2vw;margin-left: 0vw;}
	.lp .type article ul li:nth-child(5){margin-right: 2vw;}
	.lp .type article ul li:nth-child(6){margin-right: 2vw;margin-left: 0vw;}
	.lp .type article ul li:nth-child(7){margin-right: 2vw;}
	
	.lp .type article ul li img{width: 30vw;}
	.lp .type article p:last-child{font-size: 4.333vw;line-height: 1.4;}
	.lp .type article ul + p{font-size: 2rem;margin-bottom: 20px;}
	.lp .type article ul + p span{font-size: 6vw;}
    .lp .type2{padding: 20px 0 40px;}
    .lp div.text-box {display: block;width: 75%;margin: 15vw auto 8vw;}
    .lp .counseling{margin-bottom: 60px;}
    
    /*form*/
    form input[type="text"],
    form input[type="email"],
    form input[type="tel"],textarea{font-size: 4.2vw;}
    form input[type="submit"]{width: 100%;}
    
    /*contact*/
    .contact{width: 100%;
    padding: 0 6.66vw;
    margin: 5.33vw 0 20vw;
    box-sizing: border-box;}
    .contact table{ margin: 6vw 0; }
	.contact table th{ padding: 1em; font-size: 1.5rem; }
	.contact table td{ padding: 1em; font-size: 1.4rem; }
	.contact table.sp-break{ display: block;}
	.contact table.sp-break tbody,
	.contact table.sp-break tr{ display: block; }
	.contact table.sp-break th{ display: block; text-align: center; border-top: none; }
	.contact table.sp-break td{ display: block; border-top: none; }
	.contact table.sp-break tr:nth-child(even){background: #f6f6f6;}
	.contact table.sp-break tr:first-child{border-radius: 10px 10px 0 0;}
	.contact table.sp-break tr:first-child *:first-child{border-top-right-radius: 10px;}
	.contact table.sp-break tr:last-child *:first-child{border-radius: 0;}
	.contact table.sp-break tr:last-child{border-radius: 0 0 10px 10px;}
	.contact table.sp-break tr:last-child *:last-child{border-bottom-left-radius: 10px;}

    /*dr-name*/
	.dr-name h3{ height: 57.33vw; font-size: 3rem; padding-top: 45.33vw; border-bottom: none; text-align: center; padding-right:0!important;margin-bottom: 40px;}
	.dr-name h3 small{ font-size: 1.2rem; }
    .dr-name h3 img {width: 35.33vw; bottom: 30%;right: 30%;}

	.dr-name h3 + p{ padding-bottom: 10.66vw; margin-bottom: 0; border-bottom: solid 1px #f2f2f2; }
    .dr-name h4{
    font-size: 1.4rem;
    margin: 8vw 4vw 4.66vw;
    text-align: center;
    }
    
    /*fixUl*/
    .fixUl {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 90;
    }
    .fixUl li {
    width: 50%;
    }
    .fixUl a {
    height: 60px;
    padding-top: 4px;
    font-size: 2rem;
    font-weight: 700;
    display: block;
    text-align: center;
    background-color: #ff71a4;
    box-sizing: border-box;
    }
    .fixUl a .big {
    padding-left: 25px;
    color: #fff;
    display: inline-block;
    background: url(../img/common/webp/icon02.webp) no-repeat left center;
    background-size: 19px auto;
    }
    .fixUl a .sml {
    width: 100px;
    margin: 4px auto 0;
    background-color: #fff;
    border-radius: 50px;
    display: block;
    line-height: 1;
    padding: 2px 0;
    font-size: 1.2rem;
    }
    .fixUl li:last-child a {
    background-color: #fdffb1;
    }
    .fixUl li:last-child a .big {
    color: #002357;
    background: url(../img/common/webp/icon07.webp) no-repeat left center;
    background-size: 17px auto;
    }
    .fixUl li:last-child a .sml {
    color: #fff;
    background-color: #002357;
    }
    .flex, .flexA, .flexB, .flexC {
    display: flex;
    flex-wrap: wrap;
    }
    .flexB {
    justify-content: space-between;
    }
    
    .sale .month b{
        font-size: 9vw;
        padding-left: 1vw;
        padding-right: 1vw;
    }
    .sale .month b.lay{
        margin-right: -10px;
    }
    .counseling2 a{margin-bottom: 60px;}
    
    .lp .flow .row {
    flex-direction: column-reverse;
    }
    .lp .flow .flow-list .img {
    margin-bottom: 5.333vw;
    }
    
    .mv .point{
    width: 32rem;
    justify-content: space-between;
    bottom: 5.25rem;
    left: 50%;
    }
    .mv .point li {
    width: 10rem;
    height: 10rem;
    border-radius: 5rem;
    margin: 0;
    border-width: 2px;
    padding-bottom: 0.3rem;
    }
    .mv .point li img {
    margin: 0 auto 5px;
    width: 10vw;
    }
    .mv .point strong {
    font-size: 3vw;
    margin-bottom: 15px;
    }
    .mv-lp.mv-lp2:before {
    height: 250vw;
    }
    .mv.mv-lp2 .point {
    width: 32rem;
    justify-content: space-between;
    bottom: 0.25rem;
    left: 50%;
    }
	
	/* 2022 05 16 追記-------------------- */
	.mv3{ min-height: 680px; padding: 100px 5vw 0; }
	.mv3:after{ height: 680px;border-radius: 0 0 50% 50%/0 0 12vw 12vw; background: url("../img/index/webp/mv02-sp.webp") center/cover; }
	.no-webp .mv3:after{ background: url("../img/index/mv02-sp.jpg")center/cover; }
	
	.mv3 .catch { margin-bottom: 180px; }
	.mv3 h1:first-of-type{ font-size: 1.4rem; letter-spacing: 0; }
	.mv3 h1:first-of-type > strong{ font-size: 2rem; letter-spacing: 0; }
	.mv3 h1:first-of-type:after{ width: calc(100% + 5vw); left: -5vw; }
	.mv3 h1:nth-of-type(2){ font-size: 3rem; letter-spacing: 0; }
	
	.mv3 .mv-fee{ display: block; width: calc(100% + 10vw); transform: translateX(-5vw); padding: 10px 4.8vw; margin-bottom: 10px; }
	
	.mv3 .mv-fee .bene{ width: 232px; height: 72.4px; background-image: url(../img/index/mv-txt-bg-sp.png); padding: 0 0 5px; text-align: center; }
	.mv3 .mv-fee .bene p:first-child{ font-size: 1.4rem; margin-bottom: 3px; }
	.mv3 .mv-fee .bene p:first-child:before{ width: 30.6px; height: 17px; }
	.mv3 .mv-fee .bene p:first-child span{ font-size: 1.5rem; }
	.mv3 .mv-fee .bene p:last-child{ font-size: 1.8rem; letter-spacing: -0.07em; }
	
	.mv3 .mv-fee .pay { display: table; }
	.mv3 .mv-fee .pay p:nth-child(1){ font-size: 3rem; }
	.mv3 .mv-fee .pay p:nth-child(1):after{ font-size: 4rem; transform: translateY(-5px); display: inline-flex; }
	.mv3 .mv-fee .pay p:nth-child(1) span{ font-size: 6rem; }
	.mv3 .mv-fee .pay p:nth-child(1) small{ font-size: 2.2rem; }
	.mv3 .mv-fee .pay p:nth-child(2){ font-size: 1.2rem; top: 8px; right: 43px; }
	.mv3 .mv-fee .pay p:nth-child(3){ font-size: 1.2rem; letter-spacing: 0; bottom: 2px; right: -35px; }
	
	.mv3 .badge{ display: block; position: relative; }
	.mv3 .badge p{ position: absolute; right: -2vw; top: -35vw; }
	.mv3 .badge p img{ width: 32vw; }
	.mv3 .badge ul{ justify-content: space-between; }
	.mv3 .badge ul li{ width: 28.5vw; height: 28.5vw; margin: 0; font-size: 1rem; }
	.mv3 .badge ul li strong{ font-size: 1.5rem; }
	.mv3 .badge ul li strong b{ font-size: 2rem; }
	.mv3 .badge ul li:first-child strong:after{ font-size: 1rem; }
	
	.mv3 .notice{ margin: 10px 0 0 5vw; }
	
}


@media (min-width: 1200px) and (max-width:2000px){
    .mv3:after {
    content: "";
    /*width: 100%;*/
    height: 750px;
    position: absolute;
    left: -5%;
    top: 0;
    z-index: -1;
    border-radius: 0 0 50% 50%/0 0 23% 23%;
    background: url(../img/index/webp/mv02.webp) center/cover;
    background-position: top;
    background-size: 100%;
    }
    .mv3:before {
    content: ""!important;
    width: 100%!important;
    height: 210vw!important;
    /*background: linear-gradient(276deg,rgba(255,255,255,1) 30%,rgba(255,255,255,0)40%)!important;*/
    position: absolute;
    z-index: 0;
    top: 0;
    }
}
