body{
overflow-x:hidden;
}
#kv{
width:100%;
height:66vw;
margin-top:50px;
position:relative;
}
#lp #kv{
margin-top:0;
}
#kv:before{
display:block;
content:"";
width:100%;
height:100%;
background:url(../imgs/grad_bg.jpg) no-repeat center center / cover;
position:absolute;
top:0;
left:0;
z-index:-1;
}
#kv img{
display:none;
}
.hifu #kv{
background:url("../imgs/hifu/kv_hifu_sp.png") no-repeat center/100% auto;
}
.juvelook #kv{
background:url("../imgs/juvelook/kv_juvelook_sp.png") no-repeat center/100% auto;
}
.removal #kv{
background:url("../imgs/removal/kv_removal_sp.png") no-repeat center/100% auto;
}
.hikari #kv{
background:url("../imgs/hikari/kv_photofacial_sp.png") no-repeat center/100% auto;
}
.hydra #kv{
background:url("../imgs/hydra/kv_hydra_sp.png") no-repeat center/100% auto;
}
.hairline #kv{
background:url("../imgs/hairline/kv_hairline_sp.png") no-repeat center/100% auto;
}
.co2fractional #kv{
background:url("../imgs/co2fractional/kv_co2fractional_sp.png") no-repeat center/100% auto;
}
.picospot #kv{
background:url("../imgs/picospot/kv_picospot_sp.png") no-repeat center/100% auto;
}

section .inner{
padding:40px 20px;
}
section h2{
margin-bottom:20px;
}
section h2.bar{
position:relative;
padding-bottom:10px;
font-size:100%;
}
section h2.bar:before{
display:inline-block;
content:"";
width:50%;
height:2px;
background:#BFAE62;
border-radius:2px;
position:absolute;
bottom:0;
left:50%;
transform:translateX(-50%);
}
section h2.bar span{
font-size:2.0rem;
font-weight:bold;
margin-top:0.5em;
}
section .text p{
margin-bottom:1em;
}
section .text p:last-of-type{
margin-bottom:0;
}
.red{
color:#D73380;
}
.banner{
text-align:center;
}
.banner img{
max-width:100%;
height:auto;
margin:0 auto;
}
@media screen and (min-width:769px){
#kv{
height:500px;
margin-top:140px;
}
#lp #kv{
margin-top:0;
}
.hifu #kv{
background:url("../imgs/hifu/kv_hifu_pc.png") no-repeat center/contain;
}
.juvelook #kv{
background:url("../imgs/juvelook/kv_juvelook_pc.png") no-repeat center/contain;
}
.removal #kv{
background:url("../imgs/removal/kv_removal_pc.png") no-repeat center/contain;
}
.hikari #kv{
background:url("../imgs/hikari/kv_photofacial_pc.png") no-repeat center/contain;
}
.hydra #kv{
background:url("../imgs/hydra/kv_hydra_pc.png") no-repeat center/contain;
}
.hairline #kv{
background:url("../imgs/hairline/kv_hairline_pc.png") no-repeat center/contain;
}
.co2fractional #kv{
background:url("../imgs/co2fractional/kv_co2fractional_pc.png") no-repeat center/contain;
}
.picospot #kv{
background:url("../imgs/picospot/kv_picospot_pc.png") no-repeat center/contain;
}
section .inner{
padding:60px 0;
}
section h2{
margin-bottom:40px;
}
section h2.bar:before{
width:300px;
}
}
@media only screen and (min-width:769px) and (max-width:1249px){
#kv{
height:39.25vw;
}
}
@media only screen and (min-width:769px) and (max-width:1100px){
#page #main article section,
#lp #main article section{
padding:0 20px;
}
}

/*ポイント*/
#points ul{
margin-top:50px;
}
#points ul li{
margin-bottom:50px;
}
#points ul li:last-child{
margin-bottom:0;
}
#points dl{
text-align:center;
border:1px solid #ccc;
padding:50px 20px 20px;
position:relative;
height:100%;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
}
#points dl dt{
font-size:1.0rem;
color:#fff;
width:7.5em;
height:7.5em;
background:#D73380;
border-radius:50%;
position:absolute;
top:-3.75em;
left:50%;
transform:translateX(-50%);
}
#points dl dt .contents{
width:100%;
position:absolute;
top:50%;
left:0;
font-size:150%;
transform:translateY(-50%);
}
#points dl dt span{
display:block;
font-size:150%;
line-height:1;
}
#points dl dd{
font-size:110%;
font-weight:bold;
}
#points dl dd span{
font-weight:bold;
}
#points .resolution{
margin-top:40px;
text-align:center;
font-size:2.0rem;
font-weight:bold;
}
#points .resolution p{
display:inline-block;
position:relative;
}
#points .resolution p, #points .resolution span{
font-weight:bold;
}
#points .resolution p:before, #points .resolution p:after{
display:inline-block;
font-size:4.6rem;
position:absolute;
top:50%;
transform:translateY(-50%);
color:#F6D1DF;
}
#points .resolution p:before{
content:"“";
left:-60px;
}
#points .resolution p:after{
content:"”";
right:-60px;
}
#points .box3{
margin-bottom:40px;
}
#points .box3 .box{
border:5px solid #eee;
text-align:center;
margin:0 20px;
}
#points .box3 .box:nth-of-type(2){
border-color:#D73380;
margin:0;
}
#points .box3 .box .title{
padding:20px;
background:#eee;
font-weight:bold;
line-height:1.6;
}
#points .box3 .box:nth-of-type(2) .title{
background:#D73380;
color:#fff;
}
#points .box3 .box .title span{
display:block;
font-size:1.2rem;
font-weight:normal;
}
#points .box3 .box ul{
margin:0;
padding:20px;
}
#points .box3 .box:nth-of-type(2) ul{
padding:40px 20px;
}
#points .box3 .box ul li{
margin-bottom:10px;
}
#points .box3 .box ul li:before{
content:"✓";
}

@media screen and (min-width:769px){
#points h2{
font-size:initial;
}
#points h2 span{
font-size:3.2rem;
margin-top:10px;
}
#points ul{
margin-top:80px;
display:flex;
}
#points ul li{
width:calc(100% / 3);
margin:0 10px;
}
#points dl{
padding:60px 1em 40px;
}
#points dl dd{
line-height:1.5;
}
#points .resolution{
font-size:3.2rem;
}
#points .resolution p:before, #points .resolution p:after{
font-size:7.2rem;
}
#points .resolution p:before{
content:"“";
left:-90px;
}
#points .resolution p:after{
content:"”";
right:-90px;
}
#points .box3{
display:flex;
}
#points .box3 .box{
width:calc(100% / 3);
margin:20px 0;
}
#points .box3 .box:nth-of-type(2){
margin:0;
}
#points .box3 .box ul{
display:block;
}
#points .box3 .box ul li{
width:100%;
margin:0 0 20px 0;
}
}

/*アバウト*/
#about{
background:url(../imgs/grad_bg.jpg) no-repeat center center / cover;
}
#about h2{
font-size:2.0rem;
font-weight:bold;
}
#about h2 span{
display:inline-block;
font-weight:bold;
letter-spacing:-0.05em;
}
#about .image{
margin-bottom:20px;
}
#about .image ul{
display:flex;
flex-wrap:wrap;
padding:10px;
background:#fff;
}
#about .image ul li{
width:50%;
padding:10px;
background:#fff;
position:relative;
counter-increment:num;
}
#about .image ul li p{
margin-top:10px;
}
#about .image ul li:before{
display:inline-block;
content:counter(num);
font-size:2.4rem;
font-weight:bold;
color:#ccc;
position:absolute;
top:-5px;
left:20px;
}
#about .image img{
width:100%;
height:auto;
}
#about .text{
margin-bottom:20px;
}
#about .text:last-of-type{
margin-bottom:0;
}
#about h3{
background:#5F5F5F;
color:#fff;
text-align:center;
line-height:40px;
border-radius:20px;
margin-bottom:20px;
}
#about .p h3{
background:#D73380;
}
#about .image2 ul li{
background:#fff;
padding:20px;
margin-bottom:20px;
}
#about .figure{
margin-bottom:20px;
padding:0 20px;
}
#about .figure img{
width:100%;
height:auto;
}
#about .sup{
margin-bottom:20px;
font-size:12px;
color:#A4A4A4;
display:flex;
justify-content:center;
align-items:center;
}
#about .sup span{
display:block;
font-weight:bold;
text-align:center;
}
#about .q .sup span:first-of-type{
width:90%;
}
#about .image2 ul li .text{
text-align:center;
}
#about .image2 ul li .text p{
font-size:1.6rem;
font-weight:bold;
line-height:1.6;
}
#about .image2 ul .text span{
font-weight:bold;
}
#about .image2 ul .q .text span{
color:#4BAFAF;
}
#about .image2 ul .p .text span{
color:#D73380;
}
#about .desc{
margin-bottom:40px;
}
#about .desc p{
margin-bottom:1em;
}
#about .desc p:last-of-type{
margin-bottom:0;
}
#about .desc .title{
font-size:1.8rem;
font-weight:bold;
/*
color:#fff;
*/
text-align:center;
}
#about .color{
display:flex;
justify-content:space-between;
flex-wrap:wrap;
padding:20px;
background:#fff;
}
#about .color li{
font-size:18px;
font-weight:bold;
width:calc(25% - 10px);
height:auto;
background:#393939;
color:#fff;
border-radius:50%;
line-height:1;
box-sizing:border-box;
position:relative;
margin-bottom:20px;
}
#about .color li:nth-last-child(-n+4){
margin-bottom:0;
}
#about .color li:before{
content:"";
display:block;
padding-top:100%;
}
#about .color li > div{
position:absolute;
top:50%;
left:0;
transform:translateY(-50%);
width:100%;
text-align:center;
}
#about .color li span{
display:block;
font-size:20px;
font-weight:normal;
margin-top:5px;
}
#about .color .brw{
background:#7D5F54;
}
#about .color .ore{
background:#ED9E50;
}
#about .color .red{
background:#D74F4F;
}
#about .color .ppl{
background:#A05BAE;
}
#about .color .blue{
background:#4561A3;
}
#about .color .grn{
background:#63A456;
}
#about .color .ylw{
background:#F0E053;
}

#about .point{
background:#fff;
padding:30px 20px;
margin-bottom:40px;
}
#about .point .circle{
position:relative;
margin-bottom:20px;
}
#about .point .circle li{
width:100%;
height:180px;
background:#fff;
border:1px solid;
border-radius:24px;
box-sizing:border-box;
text-align:center;
position:relative;
}
#about .point .circle li:first-child{
border-color:#D73380;
margin-bottom:80px;
}
#about .point .circle li:last-child{
border-color:#4BAFAF;
}
#about .point .circle:before, #about .point .circle:after{
display:inline-block;
content:"";
width:4px;
height:50px;
border-radius:2px;
background:#929292;
position:absolute;
top:50%;
left:50%;
}
#about .point .circle:before{
transform:translateY(-50%) rotate(45deg);
}
#about .point .circle:after{
transform:translateY(-50%) rotate(-45deg);
}
#about .point .circle li dl{
width:calc(100% - 40px);
font-weight:bold;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%, -50%);
}
#about .point .circle li dl dt{
margin-bottom:12px;
line-height:40px;
border-radius:20px;
color:#fff;
}
#about .point .circle li dl dt{
background:#D73380;
}
#about .point .circle li dl dd:not(:last-child){
margin-bottom:5px;
}
#about .point .circle li:first-child dl dd{
color:#D73380;
}
#about .point .circle li:last-child dl dt{
background:#4BAFAF;
}
#about .point .circle li:last-child dl dd{
color:#4BAFAF;
}
#about .point p{
font-size:2.0rem;
font-weight:bold;
text-align:center;
margin-bottom:20px;
}
#about .point p span{
font-weight:bold;
}

#about .points{
margin-bottom:40px;
}
#about .points li{
background:#fff;
padding:20px;
margin-bottom:20px;
}
#about .points li .content{
box-sizing:border-box;
text-align:center;
/*
margin-bottom:20px;
*/
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
}
#about .points li .content .num{
display:inline-block;
font-size:1.6rem;
font-weight:bold;
margin-bottom:20px;
padding-bottom:5px;
position:relative;
}
#about .points .content .num:before{
display:inline-block;
content:"";
width:100%;
height:4px;
border-radius:4px;
background:#BFAE62;
position:absolute;
bottom:0;
}
#about .points li .content .title{
font-size:2.0rem;
font-weight:bold;
color:#D73380;
margin-bottom:20px;
}
#about .points li .thumb img{
width:100%;
height:auto;
}

#about .images{
margin-bottom:20px;
padding:20px;
background:#fff;
}
#about .images ul{
display:flex;
flex-wrap:wrap;
}
#about .images ul li{
width:100%;
padding-top:62.5%;
margin-bottom:20px;
position:relative;
overflow:hidden;
}
#about .images ul li:last-child{
margin-bottom:0;
}
#about .images img{
width:120%;
height:auto;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%, -50%);
}
#about .co2_mode{
margin-bottom:20px;
}
#about .co2_mode ul{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
#about .co2_mode ul li{
width:calc(50% - 5px);
margin-bottom:20px;
}
#about .co2_mode ul li img{
width:100%;
height:auto;
margin-bottom:10px;
}
#about .co2_mode ul li dl{
text-align:center;
}
#about .co2_mode ul li dl dt{
font-weight:bold;
margin-bottom:10px;
}

@media screen and (min-width:769px){
#about h2{
font-size:3.2rem;
}
#about .image ul li{
width:25%;
}
#about .text{
margin-bottom:40px;
}
#about .image2 ul{
display:flex;
justify-content:space-between;
margin-bottom:40px;
}
#about .image2 ul li{
width:calc(50% - 20px);
background:#fff;
padding:30px 40px;
box-sizing:border-box;	
}
#about .desc .title{
font-size:2.25rem;
}
#about .desc{
margin-bottom:60px;
}
#about .points .desc{
margin-bottom:0;
}
#about .color{
padding:30px;
}
#about .color li{
width:90px;
height:90px;
margin-bottom:0;
}
#about .point{
padding:60px 120px;
}
#about .point .circle{
display:flex;
align-items:center;
justify-content:space-between;
position:relative;
margin-bottom:40px;
}
#about .point .circle li{
width:260px;
height:180px;
margin:0 40px;
background:#fff;
border:1px solid;
border-radius:24px;
box-sizing:border-box;
text-align:center;
position:relative;
}
#about .point .circle li:first-child{
margin-bottom:0;
}
#about .points li{
display:flex;
padding:40px;
margin-bottom:20px;
}
#about .points .content{
width:65%;
padding-right:40px;
box-sizing:border-box;
text-align:center;
}
#about .points .thumb{
width:35%;
}
#about .images{
margin-bottom:40px;
}
#about .images ul{
justify-content:space-between;
}
#about .images ul li{
width:calc(50% - 10px);
padding-top:30%;
margin-bottom:0;
}
#about .co2_mode ul li{
width:calc(25% - 10px);
}
}

/*おすすめ*/
#recommend h2{
background:#D73380;
color:#fff;
padding:20px;
margin-bottom:40px;
text-align:center;
font-size:2.0rem;
font-weight:bold;
position:relative;
}
#recommend h2 .contents{
font-weight:bold;
}
#recommend h2 .contents span{
display:block;
font-size:3.2rem;
font-weight:bold;
color:#FFF4AF;
}
#recommend h2:before{
content:"";
position:absolute;
top:100%;
left:50%;
transform:translateX(-50%);
border:25px solid transparent;
border-top:25px solid #D73380;
}
#recommend ul li{
border:1px solid #A69365;
padding:10px 10px 10px 30px;
margin-bottom:10px;
font-weight:bold;
position:relative;
}
#recommend ul li:last-child{
margin-bottom:0;
}
#recommend ul li:before{
font-family:"Font Awesome 5 Free";
content:"\f00c";
color:#D73380;
position:absolute;
left:10px;
}
@media screen and (min-width:769px){
#recommend .inner{
display:flex;
}
#recommend h2{
width:300px;
font-size:3.2rem;
margin-bottom:0;
}
#recommend h2 .contents{
width:100%;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%, -50%);
}
#recommend h2:before{
top:50%;
left:100%;
transform:translateY(-50%);
border:40px solid transparent;
border-left:40px solid #D73380;
}
#recommend h2 .contents span{
font-size:3.6rem;
}
#recommend ul{
width:calc(100% - 380px);
margin-left:80px;
}
}

/*症例*/
#case{
background:url(../imgs/grad_bg.jpg) no-repeat center center / cover;
}
#case h2{
font-size:2.0rem;
font-weight:bold;
}
#case h2 span{
display:inline-block;
font-weight:bold;
}
#case dl{
margin-bottom:20px;
}
#case dl:last-of-type{
margin-bottom:0;
}
#case dl dt{
font-size:1.6rem;
font-weight:bold;
margin-bottom:10px;
}
#case ul{
display:flex;
flex-wrap:wrap;
}
#case ul li{
width:100%;
position:relative;
}
#case ul li img{
width:100%;
height:auto;
}
#case ul li:before{
display:inline-block;
font-size:2.4rem;
font-weight:bold;
color:#fff;
position:absolute;
right:20px;
bottom:20px;
}
#case ul li:first-child:before{
content:"Before";
}
#case ul li:last-child:before{
content:"After";
}
@media screen and (min-width:769px){
#case h2{
font-size:3.2rem;
}
#case ul li{
width:50%;
}
#case dl{
margin-bottom:40px;
}
#case dl dt{
font-size:1.8rem;
}
}


/*FAQ*/
/*
#qa ul li:first-child dl{
border-top:2px solid #D73380;
}
*/
#qa ul li{
margin-top:1em;	
}
#qa ul li:first-child{
margin-top:0;
}
#qa dl{
position:relative;
padding:0;
margin-top:-1px;
font-size:120%;
border-radius:10px;
/*
border:1px solid #D73380;
*/
}
#qa dl::before{
content:"Q.";
position:absolute;
top:0.55em;
left:0.55em;
color:#D73380;
font-size:150%;
line-height:1;
font-weight:bold;
vertical-align:middle;
z-index:1;
}
#qa dl dt,
#qa dl dd{
position:relative;
vertical-align:middle;
}
#qa dl dt{
font-weight:bold;
line-height:1.35;
padding:1em 2.25em;
padding-left:2.75em;
letter-spacing:-0.025em;
/*
background:rgb(255 245 245 / 100%);
*/
background:#f9ebeb;
}
#qa dl dd{
display:none;
line-height:1.65;
padding:1em 1em 1em 2.75em;
border:1px solid #f9ebeb;
}
#qa dl dd:before{
content:"A.";
position:absolute;
left:0.55em;
color:#BFAE62;
font-size:150%;
line-height:1;
font-weight:bold;
vertical-align:middle;
}
#qa dl dt::before,
#qa dl dt::after{
content:"";
background:#D73380;
position:absolute;
/*
top:50%;
transform:translateY(-50%);
*/
transition:.2s;
}
#qa dl dt::before{
width:20px;
height:2px;
top:1.5em;
right:16px;
}
#qa dl dt::after{
width:2px;
height:20px;
top:1em;
right:25px;
}
#qa dl dt.open::before,
#qa dl dt.open::after{
transform:translateY(-50%) rotate(90deg);
}
#qa dl dt.open::after{
top:1.5em;
}
#qa dl dt.open::before{
opacity:0;
visibility:hidden;
}
@media screen and (min-width:769px){
#qa h2{
font-size:initial;
}
#qa h2 span{
font-size:3.2rem;
margin-top:10px;
}
#qa dl dt:hover{
cursor:pointer;
color:#D73380;
}
#qa dl dd{
letter-spacing:0;
}
}

/*背景（施術方法/リスク）*/
#operation_risk{
background:url(../imgs/grad_bg.jpg) no-repeat center center / cover;
}

/*施術方法*/
#operation h2{
font-size:2.0rem;
font-weight:bold;
}
#operation h2 span{
display:inline-block;
font-weight:bold;
}
#operation ul{
margin-top:2em;
}
#operation ul li{
padding:1.5em;
margin-top:1.5em;
background-color:#fff;
position:relative;
z-index:0;
}
#operation ul li::after{
content:"";
position:absolute;
top:0;
left:0;
width:10em;
height:10em;
background-position:0 0;
background-size:100% auto;
background-repeat:no-repeat;
z-index:1;
}
#operation ul li.method01::after{
background-image:url(../imgs/juvelook/i_method01.svg);
}
#operation ul li.method02::after{
background-image:url(../imgs/juvelook/i_method02.svg);
}
#operation ul li.method03::after{
background-image:url(../imgs/juvelook/i_method03.svg);
}
#operation ul li.method04::after{
background-image:url(../imgs/juvelook/i_method04.svg);
}
#operation ul li .m_img img{
width:100%;
}
#operation ul li dl dt{
font-size:135%;
font-weight:bold;
text-align:center;
letter-spacing:0.075em;
font-feature-settings:"palt";
padding:1.25em 0;
}
#operation ul li dl dt span{
display:block;
font-size:70%;
letter-spacing:0.025em;
margin-top:0.25em;
}
#operation ul li dl dd{
line-height:1.55;
padding:0 0 0.5em;
letter-spacing:0.05em;
}
@media screen and (min-width:769px){
#operation h2{
font-size:3.2rem;
}
#operation ul{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
}
#operation ul li{
display:flex;
flex-wrap:wrap;
justify-content:space-between;
width:calc(50% - 0.75em);
padding:1.25em;
}
#operation ul li div{
width:47.15%;
max-width:273px;
}
#operation ul li dl{
width:52.85%;
display:flex;
flex-direction:column;
justify-content:center;
padding-left:1.5em;
}
#operation ul li dl dt{
font-size:125%;
text-align:left;
padding:0 0 0.5em;
}
#operation ul li dl dd{
padding-bottom:0;
}
}

/*リスク*/
#risk h2{
font-size:2.0rem;
font-weight:bold;
}
#risk h2 span{
display:inline-block;
font-weight:bold;
}
#risk dl{
display:flex;
margin-bottom:10px;
}
#risk dl dt, #risk dl dd{
padding:10px;
}
#risk dl dt{
width:36%;
background:#D73380;
color:#fff;
font-size:105%;
font-weight:bold;
display:flex;
flex-direction:column;
justify-content:center;
}
#risk dl dd{
width:64%;
background:#f5f5f5;
}
@media screen and (min-width:769px){
#risk h2{
font-size:3.2rem;
}
#risk dl dt, #risk dl dd{
padding:20px;
}
#risk dl dt{
font-size:125%;
}
}


/*料金*/
#price h2{
font-size:2.0rem;
font-weight:bold;
}
#price table{
width:100%;
margin-top:1.5em;
}
#price table caption{
background:#D73380;
color:#fff;
padding:10px;
font-weight:bold;
}
#price table th, #price table td{
border:1px solid #D73380;
padding:10px;
width:50%;
vertical-align:middle;
}
#price table td{
text-align:right;
line-height:1.65;
}
#price table th{
background:#FDF2F6;
}
#price table .head{
background:#eee;
}
#price table .head2{
background:#D73380;
color:#fff;
font-weight:bold;
}
#price .note{
margin-top:20px;
}
#price .banner{
margin:20px 0;
}
#price .cp_banner{
margin:20px 0;
}
#price .cp_banner a{
display:block;
}
#price .cp_banner a img{
width:100%;
}
@media screen and (max-width:768px){
#price table th, #price table td{
font-family:"Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic;
font-feature-settings:"palt";
}
}
@media screen and (min-width:769px){
#price h2{
font-size:3.2rem;
}
#price table caption{
padding:20px;
}
#price table th, #price table td{
padding:20px;
}
#price .banner{
margin-top:40px;
}
#price .cp_banner{
max-width:500px;
margin:40px auto 0;
}
}

/*受けられる院*/
#clinics h2{
font-size:2.0rem;
font-weight:bold;
color:#D73380;
}
#clinics .box{
background:#fff;
padding:15px;
}
#clinics .clinic{
text-align:center;
margin-bottom:10px;
}
#clinics .clinic li{
display:inline-block;
margin:0 10px 10px;

}
#clinics .clinic li a{
display:inline-block;
color:#E73F93;
padding:0.5em 1em;
line-height:1.5;
border:1px solid #E73F93;
border-radius:35px;
background:rgba(255,255,255,0.5);
}
#clinics .note li{
font-size:1.2rem;
margin-bottom:10px;
}
#clinics .note li:last-child{
margin-bottom:0;
}
#lp #clinics .clinic{
margin-bottom:0;
}
#lp #clinics .clinic li{
margin:10px;
}
#lp #clinics .clinic li a{
position:relative;
color:#fff;
border:1px solid #E73F93;
background:#E73F93;
}
#lp #clinics .clinic li a::after{
content:"";
position:absolute;
top:49%;
right:1.5em;
width:0.5em;
height:0.5em;
border-top:1px solid #fff;
border-right:1px solid #fff;
-webkit-transform:translateY(-50%) rotate(45deg);
transform:translateY(-50%) rotate(45deg);
}
@media screen and (max-width:768px){
#lp #clinics ul.clinic{
display:flex;
flex-wrap:wrap;
justify-content:center;
}
#lp #clinics ul.clinic li{
width:calc(50% - 1em);
margin:0.5em;
}
#lp #clinics ul.clinic li a{
display:block;
}
#lp #clinics .clinic li a::after{
right:1em;
}
}
@media screen and (min-width:769px){
#clinics h2{
font-size:3.2rem;
}
#clinics .box{
margin:0 20px;
padding:35px;
}
#clinics .clinic{
margin-bottom:30px;
}
#lp #clinics .clinic{
margin-bottom:0;
}
#clinics .clinic li a:hover{
color:#fff;
background:#E73F93;
}
#lp #clinics .clinic li a{
min-width:200px;
}
#lp #clinics .clinic li a:hover{
color:#E73F93;
background:#fff;
}
#lp #clinics .clinic li a:hover::after{
border-top:1px solid #E73F93;
border-right:1px solid #E73F93;	
}
}

/*流れ*/
#flow h2{
font-size:2.0rem;
font-weight:bold;
}
@media screen and (min-width:769px){
#flow h2{
font-size:3.2rem;
}
}

/*コンタクト*/
article footer{
padding:40px 0;
background:url(../imgs/grad_bg.jpg) no-repeat center center / cover;
}
article footer .inner{
padding:0;
}
#lp article footer{
background:none;
}


#price .price_list{
width:100%;
margin-left:0;
margin-right:0;
}
#price .price_list caption{
text-align:center;
}
@media screen and (min-width:769px){
#price .price_list td .price_set ul li{
width:calc(50% - 1em);
}
#price .price_list td .price_set ul li dt{
letter-spacing:0.075em;
}
}
@media screen and (max-width:768px){
#price .price_list td .price_set ul li{
width:calc(50% - 0.5em);
}
#price .price_list th{
width:25%;
font-weight:bold;
}
}


.xerf #kv{
height:auto;
}
.xerf #kv img{
display:block;
width:100%;
}
.xerf #kv .inner{
padding:0;
}
.xerf #about .image{
padding:0;
margin-bottom:2em;
background-color:#fff;
}
.xerf #about .image .xerfBox{
padding:1.5em;
}
.xerf #about .image .xerfBox noscript{
display:none;
}
.xerf #about .text{
line-height:1.75;
}
@media screen and (min-width:769px){
.xerf #about .image{
margin-bottom:3em;
}
.xerf #about .image .xerfBox{
padding:2em 2.5em;
}
.xerf #about .image img{
max-width:1200px;
}
}



/*** 予約導線 ***/
#contact.reserveTemplate{
background:#F7F7F7;
}
#contact.reserveTemplate h2{
font-size:2.0rem;
font-weight:bold;
letter-spacing:0.1em;
padding-bottom:0.5em;
}
#contact.reserveTemplate h2.bar:before{
width:7.25em;
}
@media screen and (max-width:768px){
	#contact.reserveTemplate{
	padding:1px;
	}
	#contact.reserveTemplate h2{
	margin-bottom:1.25em;
	}
	.b4a_reserveBox.reserveClinics dl dd{
	padding-left:0;
	padding-right:0;
	}
}
@media screen and (min-width:769px){
	#lp article footer .info{
	margin-left:0;
	margin-right:0;
	}
	#contact.reserveTemplate{
	padding:5em 0;
	margin-bottom:2em;
	}
	#contact.reserveTemplate .inner{
	padding:0;
	}
	#contact.reserveTemplate h2{
	font-size:3rem;
	}
}

.b4a_reserveBlock{
font-size:110%;
letter-spacing:0.085em;
padding:1.65em 1.35em;
background:#fff;
border-radius:0.75em;
}
.b4a_reserveBlock .explanation{
font-size:90%;
text-align:center;
font-weight:normal;
margin-bottom:1.5em;
}
.b4a_reserveBlock .annotation{
color:#787878;
font-size:75%;
text-align:left;
margin:0.75em 0 0;
letter-spacing:0.05em;
font-weight:normal;
}
.b4a_reserveBox{
border-bottom:1px solid #aaa;
}
.b4a_reserveBox:first-child{
border-top:1px solid #aaa;
}
.b4a_reserveBox dl{
background:#fff;
}
.b4a_reserveBox dl dt{
color:#565656;
font-size:90%;
font-weight:bold;
padding:1em;
background:#F4F4F4;
border-bottom:1px solid #aaa;
}
.b4a_reserveBox dl dt span{
font-size:85%;
font-weight:normal;
letter-spacing:0;
}
.b4a_reserveBox dl dd{
padding:1em 0.75em 1.5em;
}
.b4a_reserveBox dl dd .selectBox{
width:100%;
position:relative;
border-radius:0.5em;
background:#fff;
z-index:0;
}
.b4a_reserveBox dl dd .selectBox::after{
content:"";
position:absolute;
right:1em;
top:50%;
width:0.35em;
height:0.5em;
box-sizing:border-box;
border:0.35em solid transparent;
border-top:0.5em solid #6f6f6f;
-webkit-transform:translateY(-50%);
-ms-transform:translateY(-50%);
transform:translateY(-50%);
pointer-events:none;
margin-top:0.15em;
}
.b4a_reserveBox dl dd select{
width:100%;
outline:none;
cursor:pointer;
vertical-align:middle;
color:#555555;
font-size:90%;
padding:0.65em 0.85em;
letter-spacing:0.085em;
border-radius:0.5em;
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
background:transparent;
border:1px solid #CECECE;
position:relative;
z-index:0;
}
.b4a_reserveBox .radioBtn li{
margin-top:0.85em;
}
.b4a_reserveBox .radioBtn li:first-child{
margin-top:0;
}
.b4a_reserveBox .radioBtn li label{
display:block;
cursor:pointer;
font-size:95%;
font-weight:300;
text-align:left;
line-height:1.25;
font-feature-settings:"palt";
padding-left:1.75em;
position:relative;
z-index:0;
}
.b4a_reserveBox .radioBtn li label::before{
content:"";
width:16px;
height:16px;
background-color:#fff;
border:1px solid #D0D0D0;
border-radius:50%;
position:absolute;
z-index:0;
left:0;
top:0;
margin-top:1px;
}
.b4a_reserveBox .radioBtn li input{
display:none;
}
.b4a_reserveBox .radioBtn li input:checked + label::after{
content:"";
width:calc(12px - 2px);
height:calc(12px - 2px);
background-color:#4A4A4A;
border:3px solid #fff;
border-radius:50%;
position:absolute;
z-index:1;
left:1px;
top:1px;
margin-top:1px;
}
@media screen and (min-width:769px){
	.b4a_reserveBlock{
	font-size:120%;
	letter-spacing:0.05em;
	padding:3.5em;
	}
	.b4a_reserveBox dl{
	display:flex;
	}
	.b4a_reserveBox dl dt{
	width:35%;
	display:flex;
	flex-direction:column;
	justify-content:center;
	border:none;
	padding:1.25em;
	padding-left:2.5em;
	}
	.b4a_reserveBox dl dd{
	width:65%;
	padding:1.25em;
	padding-left:2.5em;
	font-size:90%;
	}
	.b4a_reserveBox dl dd .selectBox{
	width:50%;
	}
	.b4a_reserveBox .radioBtn{
	display:flex;
	margin:0;
	}
	.b4a_reserveBox .radioBtn li{
	margin:0 0 0 1.5em;
	}
	.b4a_reserveBox .radioBtn li:first-child{
	margin-left:0;
	}
	.b4a_reserveBox .radioBtn li label{
	padding-left:2em;
	}
	.b4a_reserveBox .radioBtn li label::before{
	width:20px;
	height:20px;
	margin-top:0;
	}
	.b4a_reserveBox .radioBtn li input:checked + label::after{
	border:5px solid #fff;
	margin-top:0;
	}
}

/* BTN */
.b4a_reserveBtn{
margin:1em auto;
}
.b4a_reserveBtn ul li a{
display:flex;
justify-content:center;
align-items:center;
color:#fff;
font-size:100%;
font-weight:600;
text-align:center;
padding:0.65em 0;
/*
border-radius:100px;
*/
position:relative;
z-index:0;
}
.b4a_reserveBtn ul li.invalid a{
color:#bbb;
background:#ddd;
pointer-events:none;
}
.b4a_reserveBtn .counseling_btn a{
background:#7eb9b3;
}
.b4a_reserveBtn .webrsv_btn a{
background:#D4C696;
}
.b4a_reserveBtn ul li a::after{
content:"";
width:1em;
height:1em;
display:inline-block;
margin-left:0.5em;
background-repeat:no-repeat;
background-position:center;
background-size:100% auto;
background-image:url(./../imgs/icon/btn_arr_right.svg);
}
.b4a_reserveBtn ul li.invalid a::after{
background-image:url(./../imgs/icon/btn_arr_right_off.svg);
}
@media screen and (min-width:769px){
	.b4a_reserveBtn{
	margin:1.5em 0 0;
	}
	.b4a_reserveBtn ul li a{
	font-size:115%;
	line-height:1;
	padding:0.85em 0;
	}
	.b4a_reserveBtn ul li a::after{
	position:relative;
	top:1px;
	}
}

/* BTNアニメ（一瞬ヒカル）*/
.fadeInBtn{
animation:fadeInBtn 0.5s;
}
@keyframes fadeInBtn{
	0%{
		opacity:0;
	}
	100%{
		opacity:1;
	}
}