@charset "UTF-8";
html {
	font-size: 62.5%;/* 16px x 0.625 = 10px(=1rem) */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt";
}

body {
	margin: 0;
	padding: 0;
	line-height: 1.5;
	background: #fff;
}

:root {
	--minfont: "Shippori Mincho", serif;
}


.mainImg {
	background: #fc2;
}

.minTxt{
	font-family: "Shippori Mincho", serif;
}

#l-main{
	background-color:#edf4f8;
	font-size:1.4rem;
	color:#3f4960;
	line-height:200%;
}

.l-header-globalnavi__list a{
	width:100%;
}

.l-section{
	display:block;
	overflow:hidden;
	position:relative;
	height: auto;
}


@media screen and (min-width: 769px) {

	#l-main{
		font-size:1.6rem;
	}

	.noPC{
		display:none;
	}

}



.l-container h2{
	display:block;
	overflow:hidden;
	text-align:center;
	font-family:var(--minfont);
	font-size:2.4rem;
	font-weight:700;
	line-height:125%;
	color:#4b70a7;
	padding:1em 0;
}



.l-container > article{
	display:block;
	overflow:hidden;
	margin-top:9.3vw;
}


.l-container > article > h3{
	display:block;
	overflow:hidden;
	font-family:var(--minfont);
	font-size:2.0rem;
	font-weight:700;
	line-height:125%;
	border-bottom:1px solid #5697d5;
	padding-bottom:0.5em;
	margin-bottom:0.5em;
}


@media screen and (min-width: 769px) {


	.l-container h2{
		font-size:3.0rem;
	}

	.l-container > article{
		margin-top:50px;
	}

	.l-container > article > h3{
		font-size:2.4rem;
	}

}




/************************
 * メインビジュアル
 ************************/
#mc_pict{
	display:block;
	overflow:hidden;
	width:min(815px,100%);
	height:auto;
	text-align:center;
	background: linear-gradient(to bottom,  rgba(249,244,232,1) 0%,rgba(252,244,244,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

#mc_pict img{
	width:100%;
	height:auto;
}


@media screen and (min-width: 769px) {

	#mc_pict{
		width:max(815px,100%);
		height:468px;
	}

	#mc_pict img{
		width:auto;
		height: min(100%,468px);
	}

}

/************************
 * メインバナー
 ************************/

.main_bnr{
	display:block;
	overflow:hidden;
	text-align:center;
	padding:3vw 0 6vw;
}

.main_bnr img{
	width:min(94vw,812px);
	height:auto;
}

#mc_pict + .main_bnr{
	background-color:#e6e8ee;
}

@media screen and (min-width: 769px) {

	.main_bnr{
		padding:15px 0 30px;
	}

	.main_bnr img{
		width:min(100%,812px);
		height:auto;
	}

	#mc_pict + .main_bnr{
		background-color:unset;
	}

}




/************************
 * 症例実績
 ************************/
#results{
	display:block;
	overflow:hidden;
	margin-top:9.3vw;
}


#results article{
	display:block;
	overflow:hidden;
}

#results article+article{
	margin-top: 50px;
}

#results article > h3{
	display:block;
	overflow:hidden;
	font-family:var(--minfont);
	font-size:2.4rem;
	font-weight:700;
	line-height:125%;
	text-align:center;
	margin-bottom:0.75em;
	border: none;
}

#results figcaption dl{
	display:block;
	overflow:hidden;
	margin-top:0.5em;
	position:results;
	font-size:1.2rem;
	line-height:155%;
	color:#8696aa;
}

#results figcaption dl > dt,
#results figcaption dl > dd{
	display:block;
	overflow:hidden;
	float:left;
}

#results figcaption dl > dt{
	width:8em;
}
#results figcaption dl > dd{
	width:calc(100% - 8em);
}


@media screen and (min-width: 769px) {

	#results{
		margin-top:0;
	}

	#results article+article{
		margin-top: 50px;
	}

	#results article > h3{
		font-size:2.4rem;
		margin-bottom:0.75em;
		border: none;
	}

	#results figcaption dl{
		margin-top:0.5em;
		font-size:1.2rem;
	}

}



/************************
 * 脂肪破壊スルリムの特徴
 ************************/
#features{
	display:block;
	overflow:hidden;
}

#features h2+p{
	display:block;
	overflow:hidden;
	font-size:1.4rem;
	line-height:175%;
}

#features article > p{
	display:block;
	overflow:hidden;
}



@media screen and (min-width: 769px) {

	#features h2+p{
		font-size:1.6rem;
	}

}



#chk_points{
	display:block;
	overflow:hidden;
	padding:5vw 5vw;
	margin-top:5vw;
	font-size:1.4rem;
	line-height:155%;
	background-color:#f7f2de;
}

#chk_points h4{
	display:block;
	overflow:hidden;
	margin-bottom:1em;
	font-weight:700;
	line-height:125%;
	text-align:center;
	color:#d0a26e;
}

#chk_points ul{
	display:block;
	overflow:hidden;
}
#chk_points ul > li{
	text-indent: -1.25em;
	padding-left:1.25em;
}

#chk_points ul > li+li{
	margin-top: 0.5em;
}

#chk_points ul > li::before{
	content:"";
	display:inline-block;
	overflow:hidden;
	margin-right:0.25em;
	width:1em;
	height:1em;
	background: url('../img/sururimu/cheak.svg') no-repeat 0 0;
	background-size:contain;
}


@media screen and (min-width: 769px) {

	#chk_points{
		padding:2em 2em;
		margin-top:2em;
		font-size:1.6rem;
	}

	#chk_points h4{
		margin-bottom:1em;
	}

}



/************************
 * 料金
 ************************/
#price{
	display:block;
	overflow:hidden;
}

#price h3{
	margin-bottom:1.0em;
}

.table_frame{
	display:block;
	overflow-x:auto;
}


.table_frame > table{
	border-collapse: collapse;
	background-color:#ffffff;
	width:min(100%,820px);
}

.table_frame > table th{
	font-weight:normal;
	background-color:#f7f7f9;
	text-align:center;
}

.table_frame > table th,
.table_frame > table td{
	padding:0.75em;
	line-height:180%;
	white-space:nowrap;
	border:1px solid #daece5;
}

#price .caution_txt{
	font-size:1.2rem;
	line-height:155%;
	white-space: wrap;
}

.table_frame + p{
	margin-top: 2em;
}

p.caution_txt + p.caution_txt{
	margin-top:0.5em;
}


@media screen and (min-width: 769px) {

	.table_frame > table{
		width:min(100%,820px);
		/*margin-bottom:1em;*/
	}

	.table_frame > table th{
		text-align:left;
	}


	#price .caution_txt{
		font-size:1.2rem;
	}

}



/************************
 * 料金
 ************************/
#flow{
	display:block;
	overflow:hidden;
	background:#f7f2ed  url("../img/sururimu/icon/icon-counseling-tertiary.svg") no-repeat;
	background-position: 50% 15vw;
}

#flow .m-timeline-tertiary__title{
	font-family:var(--minfont);
	font-feature-settings: normal;
}
#flow .m-timeline-tertiary__body > img{
	margin-right:1.5em;
}
#flow .l-container h2 {
	color: #3F4960;
	margin: 4em 0 1em;
}


@media screen and (min-width: 769px) {
	#flow{
		background-position: 50% 80px;
		background-size: 3.6em;
	}
}



/************************
 * ドクター紹介
 ************************/
#doctor{
	display:block;
	overflow:hidden;
	background-color:#ffffff;
}

.ttl_cover{
	display:block;
	overflow:hidden;
	width:100%;
	height:auto;
	background: #bfddf2 url("../img/sururimu/bg-doctor-heading-pc.png") no-repeat center / 180%;
	text-align:center;
	position:relative;
	height: 68vw;
}

.ttl_cover img{
	width:100%;
	height:auto;
	object-fit:cover;
}

.ttl_cover article{
	display:inline-block;
	overflow:hidden;
	text-align:center;
	color:#ffffff;
	position:absolute;
	top:50%;
	left:50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	white-space: nowrap;
}

.ttl_cover article > h2{
	font-family:var(--minfont);
	font-size:2.4rem;
	font-weight:700;
	line-height: 126%;
	margin-bottom:1em;
}



@media screen and (min-width: 769px) {

	.ttl_cover{
		width:100%;
		height:426px;
		background-size: 114%;
	}

	.ttl_cover article > h2{
		font-size:4.4rem;
	}

}




.doc_data{
	display:block;
	overflow:hidden;
	width:min(100%,390px);
	border:1px solid #dadce5;
	border-radius:10px;
	text-align:center;
	margin:5vw auto 0;
	padding:5vw 5vw;
}

.doc_data img{
	width:min(100%,53vw);
	height:auto;
}

.doc_data figcaption{
	font-family:var(--minfont);
	font-size:1.8rem;
	font-weight:bold;
	line-height: 155%;
	margin-top:0.5em;
}

.doc_data figcaption strong{
	font-size:2.0rem;
}

.doc_data dl{
	display:block;
	overflow:hidden;
	font-size:1.4rem;
	line-height:175%;
	text-align:left;
	padding:1em 1em;
	margin-top:1em;
	border-radius:5px;
	background-color:#f7f2ed;
}

.doc_data dl > dd > ul{
	list-style-type:initial;
	margin-left:1.5em;
}
.doc_data dl > dd > ul > li{
	list-style-type:initial;
}



@media screen and (min-width: 769px) {

	.doc_data{
		margin:30px auto 0;
		padding:25px 25px;
	}

	.doc_data img{
		width:min(100%,200px);
	}

	.doc_data figcaption{
		font-size:2.0rem;
		margin-top:0.5em;
	}

	.doc_data figcaption strong{
		font-size:2.4rem;
	}

}



/************************
 * 拠点一覧
 ************************/
#branch{
	display:block;
	overflow:hidden;
	background-color:#ffffff;
}

#branch .ttl_cover{
	background: #bfddf2 url("../img/sururimu/bg-location-heading-pc.png") no-repeat center / 148%;
	height: 62vw;
}
.area_block{
	display:block;
	overflow:hidden;
	margin-top:100px;
}

.area_block > h3 {
	font-family:var(--minfont);
	font-size:2.4rem;
	font-weight:700;
	line-height:155%;
	padding-bottom: 35px;
	margin-bottom: 56px;
	background: url('../img/sururimu/bg-h2.svg') left bottom no-repeat;
	background-size: 400px auto;
}

.acd_title{
	display:block;
	overflow:hidden;
	position:relative;
	margin-bottom:1em;
	border-bottom: 1px solid #5697d5;
	position:relative;
	cursor:pointer;
}

.acd_title h4{
	font-family:var(--minfont);
	font-size:2.4rem;
	font-weight:700;
	line-height:155%;
}

.acd_title p{
	font-size:1.2rem;
	line-height: 155%;
	color:#8f96aa;
	margin:1em 0;
}

.acnav {
	display:inline-block;
	overflow:hidden;
	width:20px;
	height:20px;
	position:absolute;
	top:1em;
	right:10px;
}

.acnav::before,
.acnav::after{
	content:"";
	display:block;
	overflow:hidden;
	width:20px;
	height:4px;
	background:url('../img/sururimu/acber.svg') no-repeat 0 0;
	background-size:contain;
	position:absolute;
	transform-origin: center;
	transition: all 0.3s ease-out;
}

.acnav::before{
	top:8px;
	left:0;
}

.acnav::after{
	top:8px;
	left:0;
	transform: rotate(90deg);
}

.acd_frame{
	position:relative;
	overflow:hidden;
	height:auto;
	transition: all 1.0s;
	max-height:120px;
}
.acd_frame:open{
	max-height:9999px;
}

.acd_frame:open .acnav::before{
	transform: rotate(180deg);
}
.acd_frame:open .acnav::after{
	transform: rotate(180deg);
}


@media screen and (min-width: 769px) {

	#branch .ttl_cover {
		width:100%;
		height:426px;
		background-size: 100%;
	}

	.area_block{
		margin-top:100px;
	}

	.area_block > h3 {
		font-size:3.0rem;
		padding-bottom: 35px;
		margin-bottom: 56px;
		background-size: 400px auto;
	}

	.acd_title{
		margin-bottom:1em;
	}

	.acd_title h4{
		font-size:3.0rem;
	}

	.acd_title p{
		font-size:1.2rem;
		margin:1em 0;
	}

	.acnav {
		width:20px;
		height:20px;
		position:absolute;
		top:calc(50% - 10px);
		right:10px;
	}


}





.acd_body{
	padding-bottom:50px;
}

.acd_body dl{
	font-size:1.6rem;
	line-height:175%;
}

.acd_body dl > dt{
	font-weight:bold;
}

.acd_body dl > dd{
	padding:0.75em 0;
	border-bottom:1px solid #dadce5;
}
.acd_body dl > dd + dt{
	margin-top:1em;
}


.acd_body dl > dd img{
	display: inline-block;
	overflow: hidden;
	width: 1.5em;
	height: 1.5em;
	vertical-align: middle;
	margin-left: 0.5em;
	position: relative;
}

