@charset "utf-8";
/* CSS Document */
/* base */
body { 
	margin:0;
	padding:0;
	font-family: "Noto Sans JP", "ヒラギノ角ゴシック", "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "sans-serif";
    line-height:1;
    text-align: center;
}
h1, h2, h3, h4, h5, h6, p , li {
	margin: 0;
	text-align: left;
	font-weight: normal;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {display:block;}

p {
    line-height: 1.5;
}

ul {list-style:none;
	padding:0;
	margin: 0;
}
li {padding:0; margin: 0;}
a {
	display: block;
}
img{
	width: 100%;
	vertical-align: bottom;
}
/*----------------
header
----------------*/

header{
	padding: 5px 10px;
	border-bottom: 1px solid #ddd;
}

header h1{
	width: 150px;
}
/*---------------
contents
---------------*/

#contents{
	width: 100%;
}

#contents img{
	width: 100%;
}

.osusume{
	width: 96.875%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
}

.osusume li{
	margin: 0 0 10px 0;
}

.detail{
	width: 93.55%;
	margin-right: auto;
	margin-left: auto;
}

.detail dl{
	border-top: 1px solid #C4A281;
	border-left: 1px solid #C4A281;
	font-size: 0.9em;
	line-height: 1.2;
}

.detail dl dt{
	background-color: #FDF1F6;
	border-right: 1px solid #C4A281;
	border-bottom: 1px solid #C4A281;
	padding: 5px;
}

.detail dl dd{
	border-right: 1px solid #C4A281;
	border-bottom: 1px solid #C4A281;
	text-align: left;
	padding: 5px 5px 10px 5px;
	margin: 0;
}

.cyusyaku{
	font-size: 0.7rem;
	line-height: 1.3;
}

.contact_box{
	width: 96.875%;
	margin-left: auto;
	margin-right: auto;
}

.point_box{
	margin: 15px 1.5625%;
	text-align: left;
}

.point_box h3{
	color: #F06;
	font-size: 1em;
	margin: 10px 0;
	line-height: 130%;
}

.point_box p{
	font-size: 0.9em;
	line-height: 140%;
}

.txt_small{
	font-size: 0.7rem;
}

.w620{
	width: 96.875%;
	margin-left: auto;
	margin-right: auto;
}
.w600 {
    width: 93.75%;
    margin-left: auto;
    margin-right: auto;
}

.w580 {
    width: 90.625%;
    margin-left: auto;
    margin-right: auto;
}

.w550 {
    width: 85.9375%;
    margin-left: auto;
    margin-right: auto;
}

.w500 {
    width: 78.125%;
    margin-left: auto;
    margin-right: auto;
}
.w480 {
    width: 75%;
    margin-left: auto;
    margin-right: auto;
}

.w450 {
    width: 70.3125%;
    margin-left: auto;
    margin-right: auto;
}

.w400 {
    width: 62.5%;
    margin-left: auto;
    margin-right: auto;
}

.w380 {
    width: 59.375%;
    margin-left: auto;
    margin-right: auto;
}

.txt_result{
	width: 96.875%;
	margin: 10px auto;
	font-size: 0.9rem;
	line-height: 1.4;
}

.txt_l_pink{
	font-size: 1.3em;
	color: #F06;
}


.qa_box{
	text-align: left;
}

.qa_tit{
	background-color: #FFE5F0;
	border: 1px solid #FFE5F0;
	margin: 30px 0 0 0;
}

.qa_txt{
	text-align: center;
	font-size: 1.05rem;
	margin: 15px 0;
	line-height: 1.4;
}


.yoyaku_box{
	background-color: #6FB7FF;
	padding: 25px 1.5625% 15px;
	margin: 30px 0 0 0;
}

.yoyaku_box h1{
	margin-bottom: 25px;
}

.yoyaku_inner{
	background-color: #fff;
	border: 1px solid #CBEDF6;
	padding: 3.226%;
	margin: 10px 0 0 0;
	border-radius: 5px;		/* CSS3草案 */
	-webkit-border-radius: 5px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 5px;	/* Firefox用 */
}

.yoyaku_inner p{
	margin: 10px 0 0 0;
	font-size: 0.9rem;
	line-height: 1.4;
}


h1.clinic{
	text-align: center;
	color: #EC6397;
	font-weight: normal;
	background-color: #FFE5F0;
	font-size: 1.2em;
	padding: 15px 0;
	margin: 30px 0 20px 0;
}

/*contact_box
-------------------------*/

.contact_box{
	width: 100%;
	background-image: url(../img/cv_bg.webp);
	background-repeat: repeat-y;
	background-size: 100%;
}

.contact_btn{
	width: 100%;
	background-image: url(../img/cv_bg.webp);
	background-repeat: repeat-y;
	background-size: 100%;
	text-align: center;
	padding: 0 auto;
}

.contact_fadein{
	width: 86.25%;
	margin: 0 auto;
}

.contact_btn img{
	margin: 0 0 a0px;
}

.contact_tel{
	margin: 0 auto;
	text-align: center;
}

.contact_tel img{
width: 86.25%;
	margin: 0 auto;	
}

/*accordion--*/


dl.accordion2 {
	margin:0;
}

dl.accordion2 > dt {
	cursor:pointer;
	color: #fff;
	background-color: #FF8ECE;
	background-image: url(../img/q_icon.webp);
	background-position: 5px 10px;
	background-repeat: no-repeat;
	background-size: 29px;
	padding: 10px 0 15px 40px;
	line-height: 130%;
	border-bottom: 1px solid #fff;
}

dl.accordion2 > dt span{
	display:block;
    background:url(../img/open_icon.webp) right no-repeat;
	background-size: 20px;
	padding: 4px 24px 0 0;
	margin: 0 5px 0 0;
}

dl.accordion2 > dt.open span{
    background:url(../img/close_icon.webp) right no-repeat;
	background-size: 20px;
	padding: 4px 24px 0 0;
}

dl.accordion2 > dd {
	margin: 10px 0 0 0;
	padding: 0 5px 15px 40px;
	background-image: url(../img/a_icon.webp);
	background-position: 5px 0;
	background-repeat: no-repeat;
	background-size: 29px;
	display: none;
	font-size: 0.9em;
	line-height: 140%;
}

dl.accordion2 > dd p+p{
	margin-top:1em;
}



/*--dropdown_CLINIC--*/
#container article.pulldown02 h2 { position:relative; padding:14px 10px; border-bottom:#cecece solid 1px; text-shadow:#FFF 2px 2px 0; color:#000; text-decoration:none; /*font-size:12px;*/ font-weight:normal;
background: -moz-linear-gradient(top,  #fff 0%, #dadada 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fff), color-stop(100%,#dadada)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  #fff 0%,#dadada 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  #fff 0%,#dadada 100%); /* Opera 11.10+ */
background: linear-gradient(to bottom,  #fff 0%,#dadada 100%); /* W3C */
font-size: 12px;}
#container article.pulldown02 h2.mid1st { border-top:#cecece solid 1px;}
#container article.pulldown02 h2:after { content:url(../img/clinic_openarrow.webp); position:absolute; right:5px; top:40%;}
#container article.pulldown02 h2.open:after { content:url(../img/clinic_closearrow.webp); position:absolute; right:5px; top:40%;}
#container article.pulldown02 section.txtarea { display:none;}
#container article.pulldown02 section.txtarea {}
/*--CLINIC table--*/
table.typelp02 {
	width: 100%;
	border: 0;
	border-collapse: separate;
	border-spacing: 0;
	border-top: #ccc solid 1px;
	border-left: #ccc solid 1px;
	font-size: 14px;
}
table.typelp02 tr th {
	border: 0;
	text-shadow: #FFF 1px 1px 0;
	color: #000;
	border-bottom: #ccc solid 1px;
	border-right: #ccc solid 1px;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 5px;
	padding-left: 10px;
}


table.typelp02 tr td.biyou {
	background-color: #f7e7cb;
	background-image: url(../img/logomark_b.webp);
	background-repeat: no-repeat;
	background-position: 5px center;
	width: 110px;
}
table.typelp02 tr td.skin {
	background-color: #EDEDED;
	background-image: url(../img/logomark_s.webp);
	background-repeat: no-repeat;
	background-position: 3px center;
	width: 110px;
}
table.typelp02 tr th.w50p { width:50%;}
table.typelp02 tr th.w55p { width:55%;}
table.typelp02 tr th.w60p { width:60%;}
table.typelp02 tr th.w70p { width:70%;}
table.typelp02 tr th a { color: #E63E73;}
table.typelp02 tr td { border:0; padding:5px; border-bottom:#ccc solid 1px; border-right:#ccc solid 1px;}
table.typelp02 tr td a { color: #E63E73;}
table.typelp02 tr td.map { /*width:100px;*/ text-align:center;}
table.typelp02 tr td {
	text-align: right;
	margin-right: 5px;
}

/*--クリニックの注意文--*/
.clinicInfo{
	font-size: 12px;
	color: #666;
	padding: 1em 0.5em 1.5em 0.5em;
}




/*---------------
クリニック一覧
---------------*/
h2.clinic{
	background: #e9e9e9;
	color: #f23888;
	border-top: #dadada 1px solid;
	border-bottom: #dadada 1px solid;
	padding: 0.5em;
	font-size: 14px;
	margin-bottom:18px;
}


.clinic_b{
	width: 216px;
	margin-left: auto;
	margin-right: auto;
}

.clinic_s{
	width: 270px;
	margin-left: auto;
	margin-right: auto;
}


.txtarea .biyou img{
	width: 80px;
}

.txtarea .skin img{
	width: 80px;
}

/*footer
------------------------------------*/
footer{
	text-align: center;
	background-color: #FCE4ED;
	border-top: 1px solid #FCE4ED;
	border-bottom: 1px solid #FCE4ED;
	margin: 20px 0 0;
	
}

footer p{
	margin: 10px auto 80px;
	font-size: 10px;
	text-align: center;
}

.dr{
	margin-right: auto;
	margin-left: auto;
	width: 300px;
}
.dr .profile{
	padding: 5px;
	height: auto;
	width: 190px;
	float: left;
}
.dr .pic{
	height: auto;
	width: 100px;
	float: left;
	text-align: center;
}

.fs12 { font-size:12px !important;}
.blue { color:#024fb7;}

/*pagetop
------------------------------------*/
#pagetop{
	z-index: 10;
	position: fixed;
	right: 1.5625%;
	bottom: 70px;
	width: 40px;
}


/*---------------
common class
---------------*/
.clearfix:after { content:"."; display:block; clear:both; height:0; visibility:hidden; }
.clearfix { display:inline-block; }
/* for macIE \*/
* html .clearfix { height:1%; }
.clearfix { display:block; }

.clear{clear:both;}


.fs10{font-size: 10px;}

.taL { text-align:left; }
.taC { text-align:center; }
.taR { text-align:right; }
.fL { float:left; }
.fR { float:right; }



.mB0{margin-bottom: 0px!important;}
.mB05{ margin-bottom: 5px;}
.mB10{margin-bottom: 10px;}
.mB15{margin-bottom: 15px;}
.mB20{margin-bottom: 20px;}
.mB30{margin-bottom: 30px;}
.mB40{margin-bottom: 40px;}
.mB50{margin-bottom: 50px;}
.mB60{margin-bottom: 60px;}


.mt05 { margin-top: 5px;}
.mT10{margin-top: 10px;}
.mT20{margin-top: 20px;}
.mT30{margin-top: 30px;}
.mT40{margin-top: 40px;}
.mT50{margin-top: 50px;}
.mT60{margin-top: 60px;}

.mR10{margin-right: 1.5625%;}

a {
	text-decoration: none;
}

h3.ttl {
	background-color: #ff8bb2;
	color: #FFFFFF;
	padding: 15px;
	text-align: center;
	line-height: 1.2;
	font-weight: 700;
	margin-bottom: 15px;
}

.note {
	display: block;
    font-size: 12px;
    color: #f6c;
	text-align: right;
	margin-top: 5px;
}
em {
	font-style: normal;
}
.txt_pink {
	color: #ff4978;
}
.bold {
	font-weight: bold;
}

/*fixed_btn
------------------------------------*/

#fixed_btn {
	width:100%;
	position: fixed;
	bottom: 0px;
	display: none;
	z-index: 12;
	
}

#fixed_btn ul{
	text-align: center;
	width: 100%;
	height: 60px;
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	background-image: url(../img/footer_bg.webp);
	background-repeat: repeat-x;
	background-size: 3px 60px;
	border-top: 1px solid #fff;
	/* box-shadow */
box-shadow:0px 0px 7px 2px #a8a8a8;
-moz-box-shadow:0px 0px 7px 2px #a8a8a8;
-webkit-box-shadow:0px 0px 7px 2px #a8a8a8;
}

#fixed_btn ul li{
	display: block;
	font-size: 0;
	text-align: center;
}

#fixed_btn ul li:first-child{
		float: left;
	width: 35.9375%;
	box-sizing: border-box;
	text-align: center;
	margin: 4px 0 0 1.5625%;
}

#fixed_btn ul li:first-child img{
	width: 115px;
	height: 50px;
}

#fixed_btn ul li:last-child{
	float: right;
	width: 60.625%;
	box-sizing: border-box;
	text-align: center;
	background-image: url(../img/footer_cv_bg_r.webp) , url(../img/footer_cv_bg_l.webp) , url(../img/footer_cv_bg.webp);
	background-position: right , left , left;
	background-repeat: no-repeat , no-repeat , repeat-x;
	background-size: 11px 55px , 11px 55px , 5px 55px;
	margin: 4px 0.625% 0 0;
}

#fixed_btn ul li:last-child img{
	width: 170px;
	height: 55px;
}

/* fadeInDown
----------------------------------*/

.fadeInDown {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInDown;
 animation-name: fadeInDown;
 visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(-20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(-20px); -ms-transform: translateY(-20px); transform: translateY(-20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}

.contact_fadein{
	visibility: hidden;
}

/*
-----------------------------*/

.price{
	margin: 10px 0 0 0;
}

.price li{
	margin: 0 0 5px 0;
}

.guarantee{
	width: 93.75%;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
	border: 1px solid #e5e5e5;
	padding: 10px;
	text-align: left;
	margin: 20px auto;
}

.guarantee p{
	line-height: 1.5;
	font-size: .9em;
}

.lt_explain{
	background-color: #FBECF1;
	border-bottom: 1px solid #FBECF1;
}

.lt_explain h3{
	padding: 0 4.6875%;
}

.lt_explain_inner{
	width: 96.875%;
	margin: 15px auto;
	padding: 3.226%;
	background-color: #fff;
	box-sizing: border-box;
}

.lt_explain_inner_txt{
	text-align: left;
	margin: 15px 0 0 0;
	line-height: 140%;
	font-size: 0.9em;
}

.lt_explain_inner_txt img{
	float: left;
	width: 70px;
	margin: 0 10px 10px 0;
}

.lt_explain h4{
	padding: 0 4.6875%;
	text-align: center;
}

.lt_explain_inner_txt2{
	width: 90.625%;
	text-align: left;
	margin: 15px auto;
	line-height: 140%;
	font-size: 0.9em;
}

.txt_small{
	font-size: 10px;
}

.txt_l_pink{
	font-size: 1.3em;
	color: #F06;
}

.detail_info{
	border-top: 1px solid #C4A281;
	border-left: 1px solid #C4A281;
	text-align: left;
	font-size: 0.8em;
	margin: 10px 0 0 0;
}

.detail_info dt{
	border-right: 1px solid #C4A281;
	border-bottom: 1px solid #C4A281;
	text-align: center;
	padding: 5px;
	background-color: #FFFBEE;
	margin: 0;
}

.detail_info dd{
	border-right: 1px solid #C4A281;
	border-bottom: 1px solid #C4A281;
	text-align: left;
	padding: 5px 5px 10px 5px;
	line-height: 1.4;
	margin: 0;
}

#qa_tit{
	/*width: 90.625%;*/
	width: 100%;
	background-color: #FFE5F0;
	border-top: 1px solid #FFE5F0;
	border-bottom: 1px solid #FFE5F0;
	text-align: center;
	padding: 0 auto;
	margin: 20px auto 0;
}

#qa_tit h1{
	margin: 10px auto 10px;
}

#qa_tit p{
	text-align: center;
	font-size: 1em;
	line-height: 1.2;
	margin: 0 auto 10px;
}

/*各施術共通
--------------------------------*/
.point {
	text-align: left;
	margin-bottom: 15px;
}
.point h4 {
	font-size: 15px;
	margin-bottom: 10px;
}
.point h4 span {
	font-size: 13px;
    display: inline-block;
    padding: 10px;
    margin-right: 5px;
    color: #fff;
    background-color: #ff2c87;
    border-radius: 5px;
}
.point h4 em {
	font-weight: bold;
    color: #cd0048;
}
.point p {
	font-size: 13px;
}
.point span.attention {
    font-size: 12px;
    color: #999;
}

.flex_box {
	display: flex;
	align-items: flex-start;
	margin: 0 5px 30px;
}
.flex_box img {
	width: 130px;
	margin-right: 10px;
}
.flex_box p {
	font-size: 14px;
}

.detail_table {
	border-collapse: collapse;
}

.detail_table thead th {
	font-size: 19px;
	font-weight: 500;
    text-align: center;
    color: #fff;
    background-color: #FFADD5;
    padding: 9px 0 8px;
}
.detail_table th{
	font-size: 15px;
	background-color: #ffe7f1;
	text-align: center;
	border-top: 1px solid #C4A281;
	border-left: 1px solid #C4A281;
	border-right: 1px solid #C4A281;
	padding: 5px;
	font-weight: 300;
	line-height: 1.4;
}

.detail_table td{
	font-size: 14px;
	border: 1px solid #C4A281;
	padding: 10px;
	text-align: left;
	line-height: 1.4;
}

a.parts_link {
    display: block;
    width: 85%;
	max-width: 350px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    background-color: #ff8bb2;
    text-decoration: none;
    padding: 15px 0;
    margin: 40px auto 30px;
}

h2.ttl {
	font-weight: bold;
	background-color: #ffcbbe;
    color: #FFFFFF;
    padding: 15px;
    text-align: center;
    line-height: 1.3;
	text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.5);
}

/* intro 
--------------------------------*/
.intro .ttl{
	display: inline-block;
	font-size: 35px;
	font-weight: bold;
	font-family: "Yu Mincho", "YuMincho", "游明朝体", serif;
	color: #683d8b;
	background-color: #fff;
	text-shadow: none;
	padding: 15px 15px 5px;
}
.intro .ttl span {
	display: block;
	font-size: 16px;
	color: #fff;
	background-color: #c55e9f;
	padding: 5px 20px;
	margin-bottom: 10px;
	border-radius: 50px;
}

/* difference_box
--------------------------------*/
.difference_box .photo_box .item p.txt{
	font-weight: bold;
	color: #333;
	background-color: #eadae1;
	padding: 5px;
	text-align: center;
}
.difference_box .photo_box .item p.triangle-down {
	width: 0;
    height: 0;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-top: 30px solid #decad3;
    margin: 20px auto;
}
.difference_box .photo_box img {
	margin: 15px auto;
}

/* combination
--------------------------------*/
.combination .combination_inner .item {
	position: relative;
}
.combination .combination_inner .item .photo {
	width: 50%;
	margin: 0 auto 15px;
}
.combination .combination_inner .item .txt {
	line-height: 1.4;
}
.combination .combination_inner .item .txt h3{
	font-size: 24px;
    font-weight: bold;
	margin-bottom: 5px;
	text-align: center;
}
.combination .combination_inner .item03 .txt{
	font-weight: bold;
	color: #683d8b;
}
.combination .combination_inner .item03 .txt h3 em {
	position: relative;
	z-index: auto;
}
.combination .combination_inner .item03 .txt h3 em::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 15px;
	background-color: #FFE5F0;
	z-index: -1;
}
.combination .combination_inner .item01::after {
	content: "＋";
    color: #683d8b;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1;
    position: absolute;
    bottom: -75px;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
}
.combination .combination_inner .item02::after {
    content: "＝";
    color: #683d8b;
    font-size: 3rem;
    font-weight: bold;
    line-height: 1;
    position: absolute;
    bottom: -75px;
    left: 50%;
    transform: translateX(-50%) translateY(-50%) rotate(90deg);
}

/* counseling-box
------------------------------*/

.counseling-box .ttl {
	font-size: 20px;
	padding: 0 0 0 40px;
	margin-bottom: 15px;
	position: relative;
	display: flex;
	align-items: center;
	color: #333;
	background-color: transparent;
}
.counseling-box .ttl span {
    width: 30px;
    height: 30px;
    position: absolute;
    left: 0;
    top: -3px;
    font-size: 17px;
    font-weight: bold;
    background-color: #ffcbbe;
    color: #fff;
    border-radius: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.counseling-box li {
	line-height: 1.4;
}
.counseling-box li img {
	width: 90%;
	display: flex;
	margin: 0 auto;
}

/* menu-box（料金表）
------------------------------*/
.menu-box table{
	border-collapse:collapse;
}

.menu-box th{
	background-color: #ffe7f1;
	text-align: center;
	border-top: 1px solid #C4A281;
	border-left: 1px solid #C4A281;
	border-right: 1px solid #C4A281;
	padding: 10px;
	font-size: 1.2rem;
}

.menu-box td{
	border: 1px solid #C4A281;
	padding: 10px;
	line-height: 1.2;
}
/* menu-box2（詳細）
------------------------------*/
.menu-box2 {
	border-collapse: collapse;
}

.menu-box2 th{
	background-color: #ffe7f1;
	text-align: center;
	border-top: 1px solid #C4A281;
	border-left: 1px solid #C4A281;
	border-right: 1px solid #C4A281;
	padding: 10px;
	font-weight: 300;
	line-height: 1.4;
}

.menu-box2 td{
	border: 1px solid #C4A281;
	padding: 10px;
	text-align: left;
	line-height: 1.4;
}