/* 自動<p>タグの非表示 */
p:empty {
    display: none;
}
/* 自動<p>タグの非表示 */

/*幅調整*/
.col1 .keni-main .keni-section_wrap {
	max-width: 600px;
	overflow-x: hidden;
	padding: 0;
}
.top-h1-write {
    max-width: 600px!important;
    margin: 0 auto;
    padding: 3px 10px 1px;
}

/*枠外背景PC*/
.keni-container, .keni-mv_wrap {
overflow: hidden!important;
background-image:url()!important;
background-attachment: fixed!important;
background-repeat: no-repeat!important;
background-size: cover!important;
}

/*上部分の空白非表示  */
.keni-main_inner {
    padding: 0!important;
}
/*最下部隙間調整*/
.col1 .keni-main .keni-section_wrap {
    max-width: 600px;
    overflow-x: hidden;
    padding: 0 !important;
    margin-bottom: 0 !important;
}
/*ヘッダーのタイトル部分非表示  */
.keni-header_inner {
	display: none!important;
}

/*グロナビPC非表示  */
.keni-gnav_wrap {
display: none!important;
}

/*位置調整 */
.center {
	text-align: center;
}

.pt_20 {
	padding-top: 20px;
}

/*SPのみ改行  */
.sp_br {
display: none;
}

/*pcのみ改行  */
.pc_br {
display: block;
}

@media screen and (max-width: 768px){
.sp_br {
display: block;
}

.pc_br {
display: none;
}
}

/*フォントサイズ  */
.fs_18 {
	font-size: 18px;
}

.fs_22 {
	font-size: 22px;
}

.fs_24 {
	font-size: 24px;
}

.fs_30 {
	font-size: 30px;
}

/*イエローアンダーライン  */
.yellow_un {
background: linear-gradient(transparent 50%, #ffff7f 50%);
}

/*カラー  */
:root {		
	--bluegreen:#7AB6B2;
	--brown:#534741;
	--lightbrown:#9D917B;
	--beige:#FAF8EE;
	--red:#E57C7C;
	--yellow:#FFFF9F;
	--palegreen:#F0FFFE;
}

/*---------------------------------------PC表示のCSS---------------------------------------  */

#main{
	font-family: 'Noto Sans JP', sans-serif;
}
#main p{
	font-family: 'Noto Sans JP', sans-serif;
}
#main ul{
	margin:0;
}
ul li{
	list-style:none;
}
#main h3{
	border:none;
}
a{
    display: block;
}
a:hover{
    opacity: 0.7;
	transition : 1s;
}
.pt-05{
	padding-top:.5em!important;
}
.pt-1{		
	padding-top:1em!important;	
}	
.pt-2{		
	padding-top:2em!important;	
}	
.pt-3{		
	padding-top:3em!important;	
}		
.pt-5{		
	padding-top:5em!important;	
}		
.py-2{		
	padding-top:2em!important;	
	padding-bottom:2em!important;	
}
.py-3{		
	padding-top:3em!important;	
	padding-bottom:3em!important;	
}	
.pb-1{		
	padding-bottom:1em!important;	
}		
.pb-2{		
	padding-bottom:2em!important;	
}
.pb-3{		
	padding-bottom:3em!important;	
}
.mt-0{		
	margin-top:0!important;	
}
.mt-1{		
	margin-top:1em!important;	
}	
.mt-2{		
	margin-top:2em!important;	
}	
.mt-3{		
	margin-top:3em!important;	
}	
.mt-4{		
	margin-top:4em!important;	
}	
.mt-5{		
	margin-top:5em!important;	
}
.mb-0{		
	margin-bottom:0!important;	
}
.mb-1{		
	margin-bottom:1em!important;	
}
.mb-2{		
	margin-bottom:2em!important;	
}
.mb-3{		
	margin-bottom:3em!important;	
}	
.mb-4{		
	margin-bottom:4em!important;	
}	
.mb-5{		
	margin-bottom:5em!important;	
}
.my-0{
	margin-bottom:0!important;
	margin-top:0!important;
}
.mx-5{
	margin-left:5%!important;
	margin-right:5%!important;
}
.px-5{		
	padding-left:5%;	
	padding-right:5%;	
}
.px-57{
	padding-left: 5.7%!important;
	padding-right: 5.7%!important;
}
.mx-minus-5{
	margin-left:-5.7%!important;
	margin-right:-5.7%!important;
}
.pc-display{		
	display:block;	
}		
.sp-display{		
	display:none;	
}			
@media screen and (max-width:768px) {		
	.sp-mt-5{	
		margin-top:5em;
	}
	.sp-mt-minus-3{		
		margin-top:-3em!important;	
	}	
		
}		
@media (max-width: 768px){		
	.sp-display{	
		display:block;
	}	
	.pc-display{	
		display:none;
	}	
}		
/* brタグ */		
.pc_br{		
	display: block;	
}		
.sp_br{		
display: none;		
}	
.sp_br_430{		
display: none;		
}
.sp_br_867{		
display: none;		
}
@media (max-width: 867px){
	.sp_br_867{		
		display: block;		
	}
}
@media (max-width: 600px) {		
.pc_br{		
display: none;		
}		
.sp_br{		
display: block;		
}		
}
@media (max-width: 430px) {
.sp_br_430{		
display: block;		
}
}
.keni-main_wrap {
    background: url(https://diet-seikotu-seitai.com/sample/wp-content/uploads/2024/04/konpon9-background-scaled.webp) no-repeat;
    background-size: cover;
    background-attachment: fixed;
}
.keni-section .article-body p{
	margin-bottom:0.3em;
	line-height: 1.4;
	letter-spacing: 0;
}
.h1_title{
	background:var(--lightbrown);		
}
/*FVアイキャッチ画像非表示（画質悪いため）*/
.article-visual {
    display: none;
}
/*FV上　院情報*/
.FV_info{
	display: flex;
	flex-wrap:wrap;
	padding:2% 5%;
	background:var(--beige);
	color:var(--brown);
}
.keni-section .article-body .FV_info p {
    margin-bottom: 0.5em;
}
.FV_info_name{
	width:100%;	
}
.FV_info_left{
	width:48%;
}
.FV_info_right{
	width:52%;
}
.FV_info_icon {
    position: relative;
    margin: 0;
    padding: 0 0 0 27px;
    line-height: 1.5;
}
.FV_info_icon::before {
    content: '';
    display: inline-block;
    margin-right: 1em;
    width: 1.5em;
    height: 1.5em;
    background: url(https://diet-seikotu-seitai.com/sample/wp-content/uploads/2024/03/pin_icon.png) no-repeat bottom center;
    background-size: contain;
    position: absolute;
    left: 0;
    top: 0;
}
.access_icon::before{
	background: url(https://diet-seikotu-seitai.com/sample/wp-content/uploads/2024/03/train_icon.png) no-repeat bottom center;
    background-size: contain;
}
@media (max-width: 600px){
	.FV_info_left{
		width:100%;
		margin-bottom:0.5em;
	}
	.FV_info_right{
		width:100%;
	}
}
/*文字色*/
.brown-moji{
	color:var(--brown);
}
.red-moji{
	color:var(--red);
}
.yellow-moji{
	color:var(--yellow);
}
.al-j{
	text-align:justify!important;
}
/*アンダーライン*/
.yellow-line {
    background: linear-gradient(transparent 60%, var(--yellow) 46%)
}
/*角丸背景*/
.bluegreen-radius{
	border-radius:5px;
	background:var(--bluegreen);
	color:#fff;
	padding:0 8px 1px;
	margin-right:8px;
}

/*文字サイズ*/
#main .f24px{
	font-size:24px!important;/*XDでは28pxだが調整*/
}
#main .f28px{
	font-size:24px!important;/*XDでは28pxだが調整*/
}
.f40px{
	font-size:40px!important;
}
.f48px{
	font-size:48px!important;
}
@media (max-width: 600px) {
	#main .f24px{ 
		font-size: calc((100vw - 320px) / 35 + 16px)!important;/* 24px~16px */
	}
	#main .f28px{
		font-size: calc((100vw - 320px) / 35 + 16px)!important;/* 24px~16px */
	}
	#main .f40px{
		font-size: calc((100vw - 320px) / 14 + 20px)!important;/* 40px~20px */
	}
	#main .f48px{
		font-size: calc((100vw - 320px) / 35 + 40px)!important;/* 48px~40px */
	}
}
/*オファー　キャンペーン*/
br{
    line-height: 0;
}
.back-beige{
	background:var(--beige);
}
.green_border_frame{
	position:relative;
	border:var(--bluegreen) 3px solid;
	background:#fff;
	padding: 3em 5% 1em;
}
.ribbon-wrap{
	position:absolute;
	width: 95%;
	top:-24px;
	left:50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}
h2.ribbon,
h2.ribbon02 {
    position: relative;
    display: inline-block;
    height: 80px;
    line-height: 80px;
    padding: 0 1rem;
    background-color: var(--bluegreen);
    color: #fff;
    font-size: 38px;
    font-weight: bold;
    text-align: center;
}
h2.ribbon02 {
    font-size: 24px!important;
    }
h2.ribbon::before,
h2.ribbon::after {
    position: absolute;
    top: 0;
    width: 0px;
    height: 0px;
    border-color: var(--bluegreen) transparent;
    border-style: solid;
    content: '';
}
h2.ribbon::before {
    left: -15px;
    border-width: 40px 0px 40px 15px;
}
h2.ribbon::after {
    right: -15px;
    border-width: 40px 15px 40px 0px;
}
@media (max-width: 600px) { 
	h2.ribbon{
		font-size: calc((100vw - 320px) / 14 + 18px)!important;/* 38px~18px */
	}
}
.shadow-img img{
	margin: 0 -2%;
	width:104%;
    max-width: 104%;	
}
/*こんなお悩みありませんか？*/
.bluegreen-triangle{
	background: var(--bluegreen);
    clip-path: polygon(0 0, 100% 0, 100% 90%, 50% 100%, 0 90%);
	padding-bottom: 7em;
}
.worries_list_title{
	display: flex;
    padding: 20px 5%;
    justify-content: space-between;
	align-items:flex-end;
}
.worries_list_title p{
	width:100%;
	color: #fff;
    font-size: 40px!important;
	font-weight:bold;
	line-height:1.3em!important;
	text-align: center!important;
}
@media (max-width: 600px) {
	.worries_list_title p{
		font-size: calc((100vw - 320px) / 20 + 26px)!important;/* 40px~26px */
	}
}
.worries_list_title_illust{
	width:35%;
	margin-bottom:-6%;
}
ul.worries_list{
	padding: 0 5%;
}
ul.worries_list li{
	position: relative;
	background:var(--palegreen);
	border-radius:48px;
	font-size:27px;
    margin: 0 0 16px;
    padding: .5em 0 .4em 50px;
    letter-spacing: 0em;
	line-height:1.3em;
     font-weight: 600;   
}
@media (max-width: 600px) {
	ul.worries_list li{
		font-size: calc((100vw - 320px) / 25 + 16px)!important;/* 27px~16px */
		}
}
ul.worries_list li::before {
    content: '';
    display: inline-block;
    margin-right: 2em;
    width: 24px;
    height: 24px;
    background: url(https://diet-seikotu-seitai.com/sample/wp-content/uploads/2024/03/check_green_icon.webp) no-repeat 0 0;
    background-size: contain;
    position: absolute;
	left: 20px;
	top: .6em;
}
@media (max-width: 600px){
	ul.worries_list li::before {
		top: .5em;
	}
}
/*ポイント*/
.banzai {
    position: relative;
    display: inline-block;
}
.banzai::before {
    position: absolute;
    left: -1em;
    bottom: 0;
    content: '';
    width: 2px;
    height: 74%;
    background-color: var(--brown);
    border-radius: 38px;
    transform: rotate(-25deg);
}
.banzai::after {
    position: absolute;
    right: -0.8em;
    bottom: 0;
    content: '';
    width: 2px;
    height: 74%;
    background-color: var(--brown);
    border-radius: 38px;
    transform: rotate(25deg);
}
#main h2.bluegreen-back-title{
	background:var(--bluegreen);
	padding:10px 0 8px;
	margin-top:0;
	margin-bottom:0;
	color:#fff;
	font-size:40px;
	line-height:1.5;
}
@media (max-width: 600px){
#main h2.bluegreen-back-title {
    font-size: calc((100vw - 320px) / 13 + 18px)!important;/* 40px~18px */
}
}
ul.point_list{
	background:var(--beige);
}
ul.point_list li{
	background:#fff;
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
	padding:5%;
	margin-bottom:40px;
}
ul.point_list > li:last-child{
	margin-bottom:8px;
}
ul.point_list li h3{
	margin-top:5px;
	margin-bottom:0;
	color:var(--bluegreen);
	letter-spacing: 0;
	line-height: 1.1;
	font-size:37px;
}
@media (max-width: 600px) {
	ul.point_list li h3{
		font-size: calc((100vw - 320px) / 22 + 27px)!important;/* 40px~27px */
	}
}
ul.point_list li .bluegreen-radius{
	padding: 2px 10px 0px;
	display: inline-block;
}
/*料金表*/
.price-box-wrap{
	display:flex;
	justify-content:space-between;
	flex-wrap: wrap;
}
.price-box{
	width:49%;
	background:#fff;
	border-radius:4px;
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
	text-align:center;
	padding: 0 3% 1.5em;
}
.flex-center{
	display: flex;
    justify-content: center;
    align-items: center;
	height:5em;
}
#main h3.price-title{
	background:var(--red);
	border-radius:28px;
	color:#fff;
	font-size:28px;
	font-weight:400;
    width: 80%;
    margin: -1em auto 0.5em;
}
@media (max-width: 600px) {
	#main h3.price-title{
		width: 60%;
		font-size: calc((100vw - 320px) / 40 + 21px)!important;/* 28px~21px */
	}
}
#main h3.price-title.price-title_brown{
	background:#998675;
}
@media (max-width: 600px) {
	.price-box{
		width:100%;
	}
	.price-box:first-child{
		margin-bottom:4em;
	}
}
/*よくある質問*/
details{
	margin-bottom:15px;
}
details summary {
    list-style: none;
    cursor: pointer;
    position: relative;
    background: #F5A5A5;
    color: #fff;
    font-size: 22px;
	font-weight:bold;
	padding: 12px 38px 10px 60px;
}
summary::-webkit-details-marker { display: none; } /*iphoneの▼非表示*/
details[open] summary::after {
    content: "−";
    position: absolute;
    top: 11px;
    right: 10px;
}
details summary::after {
    content: "＋";
    position: absolute;
    top: 10px;
    right: 10px;
}
details summary::before {
    content: "Q.";
    position: absolute;
    left: 20px;
}
.qa p::before{
	content: "A.";
    position: absolute;
    left: 20px;
}
.qa p {
	position:relative;
	background:var(--beige);
	font-size: 22px!important;
    padding: 10px 5px 7px 60px;
}
@media (max-width: 600px) {
	details summary ,.qa p {
		font-size: calc((100vw - 320px) / 47 + 16px)!important;/* 22px~16px */
 		padding: 12px 5px 10px 42px; 
	}
}
.border_bottom_dot{
	display: inline-block;
	width:100%;
	border-bottom:2px dotted #5b5b5b80;
}
#main h2.light-brown-title{
	font-size:32px;
	color:#998675;
	background:transparent;
	margin:0 0 0.5em;
}
@media (max-width: 600px) {
	#main h2.light-brown-title{
	font-size: calc((100vw - 320px) / 40 + 25px)!important;/* 32px~25px */
	}
}
.l-space10px{
	letter-spacing:10px!important;	
}
.l-space6px {
    letter-spacing: 6px !important;
}
/*サービスの流れ*/
.back-bluegreen{
	background:var(--bluegreen);
}
p.flow-title{
	position:relative;
	font-weight:bold;
}	
p.flow-title:after{
	position:absolute;
	content:'';
	bottom: -57px;
    left: 50%;
	transform:translatex(-50%);
    width: 2px;
    height: 32px;
    background: var(--yellow);
}
#main ul.flow_list{
	margin-left:5%;
}
ul.flow_list li{
	display:flex;
	margin-top:3.5em;
}
.flow_list_left{
	width:13%;
	font-size:20px;
}
@media (max-width: 600px) {
	.flow_list_left{
		font-size: calc((100vw - 320px) / 47 + 14px)!important;/* 20px~14px */
	}
}
.flow_list_right{
	width:87%;
}
.step_num{
	position:relative;
	width: 3em;
    height: 3em;
    padding-top: .8em;
    border: 2px solid #fff;
  	border-radius: 50%;
	color:#fff;
	font-weight:bold;
	font-family: "Open Sans", sans-serif;
  	text-align: center;
  	box-sizing: border-box;
	line-height: 2em;
}
.step_num:before{
	content:'STEP';
	position:absolute;
	top: 0;
    left: 1.1em;
    font-size: .55em;
}
.dot_border{
	border-left:dotted 3px #fff;
	height: calc(100% - 3.5em);
    margin: 0.5em 0 0 1.5em;
}
ul.flow_list h3{
	font-size:40px;
	color:var(--yellow);
	line-height:1.2;
	letter-spacing:-3px;
	margin-left: 3%;
	margin-right: 5%;
    margin-bottom: 1em;
}
@media (max-width: 600px) {
	ul.flow_list h3{
		font-size: calc((100vw - 320px) / 13 + 19px)!important;/* 40px~19px */
		letter-spacing: 0
	}
}
.flow-txt{
	background:#fff;
	color:var(--bluegreen);
	font-size:28px!important;
	padding:5em 5% 5% 3%;
}
.flow-txt figure{
	margin-top:-6em;
	margin-bottom:.4em;
}
/*アクセス*/
.access_table tr{
	border-top: none;
    border-bottom: solid 1px #7e6e558f;
}
.access_table th, .access_table td {
    border: none;
	color:var(--brown);
	font-size: 21px;
    padding: 19px 0;
}
.access_table th {
	width: 29%;
	background:transparent;
    text-align: left;
    color: var(--bluegreen);
}
.iframe_wrap {
    margin-top: 20px;
    position: relative;
    width: 100%;
    padding-top: 75%;
}
.iframe_wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
@media screen and (max-width: 600px){
	.access_table th, .access_table td {
		font-size: 16px;
		padding: 12px;
	}
	.iframe_wrap {
        padding-top: 100%;
	}
}
/*フッターらへん*/
.keni-footer_wrap .keni-footer_outer {
    padding:  0; 
}
#main .behind-article-area{
margin-top: 0;
}
.keni-breadcrumb-list_wrap{
display:none;
}
@media screen and (max-width: 600px){
.footer-btn{
    display: flex;
}
}

/*ビフォーアフター*/
.bf {
	background: url(https://diet-seikotu-seitai.com/sample/wp-content/uploads/2024/03/checked-back-scaled.webp) repeat-y;
    background-size: cover;;	
	padding:0 5% 3em;
}

.bf_item {
	position:relative;
	background:#fff;
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
	padding:30px 20px;
	margin-top: 90px;
}
.bf > .bf_item:last-child{
	margin-bottom:0;	
}
.bf_title {
	position: absolute;
	width: 93%;
    right: 0;
    left: 0;
    top: -30px;
    margin: 0 auto;
	padding: 13px 0 10px 0;
    z-index: 200;
    background: var(--red);
    border-radius: 40px;
	font-size: 35px;
    font-weight: bold;
    color: #ffffff;
    line-height: 1;
    text-align: center;
	letter-spacing: -2px;
}
.bf-green-label{
	width:100%;
	background:var(--bluegreen);
	padding:10px 0 8px;
	color:#fff;
	font-size:24px;
	font-weight:bold;
	text-align:center;
	letter-spacing:3px;
}
.title_small {
	font-size:18px;
}

.bf_images {
	position:relative;
	width: 89%;
	display:flex;
	justify-content:center;
	margin: 2em auto 0;
}
.bf_images::before {
	position: absolute;
	content: "";
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: var(--red);
	height: calc(tan(60deg) * 60px / 2);
	width: 30px;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	z-index: 999;
}
.bf_personal {
	width: 89%;
	color:var(--brown);
	font-size:24px;
	font-weight:bold;
	text-align:center;
	margin:20px auto;
	padding-bottom: 6px;
	border-bottom: 2px solid var(--bluegreen);
}
.bf_text {
	display:none;/*一応おいておく*/
font-size:21px;
color:#595757;	
margin-top:20px;
}

.item_margin {
margin-top:60px;
}
.banner_margin {
margin-top:15px;
}
.bf_image-l,.bf_image-r {
	width:48.5%;	
}
.bf_image-l{
	margin-right:3%;
}

/*ビフォーアフターSP*/
@media screen and (max-width: 600px){
	.bf {
	background:#ffffff;	
	margin-top:60px;
	}

	.bf_item {
		padding:30px 15px;
	}
	
	.bf_title {
	font-size: calc((100vw - 320px) / 19 + 20px)!important;/* 35px~20px */
	padding: 14px 15px;
	}
	.bf_images{
		width:100%;
	}
	.bf_images::before{
    	height: calc(tan(60deg)* 39px / 2);
    	width: 20px;
	}
	.bf-green-label{
		font-size: calc((100vw - 320px) / 40 + 17px);/* 24px~17px */
	}
	.title_small {
	font-size:14px;
	}
	.bf_personal {
	font-size: 5.3vw;
	margin-top: 15px;
	padding-bottom: 5px;
	}
	.bf_course {
	font-size:8vw;
	margin-top:15px;
	}
	.bf_text {
	font-size:4.2vw;
	}
	.bf_attention {
	font-size: 2.3vw;
	margin-top: -7px;
	margin-left: 29px;
	}
	.item_margin {
	margin-top:50px;
	}
	.banner_margin {
	margin-top:15px;
	}
}

/*吹き出し*/
.balloon1 {
  	position: relative;
	display:inline-block;
	margin: 1.5em 0;
	padding: 10px 15px;
	min-width: 120px;
	max-width: 100%;
	color: #fff;
	font-size:28px;
	font-weight:bold;
	background: var(--red);
}
@media (max-width: 600px) { 
	.balloon1 {
		font-size: calc((100vw - 320px) / 56 + 23px)!important;/* 28px~23px */
	}
}
.balloon1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -10px;
  border: 10px solid transparent;
  border-top: 10px solid var(--red);
}
/*フッターボタン*/
.footer-btn {
    display: block;
    position: fixed;
    bottom: 6px;
    right: 10px;
	width: 300px;
    z-index: 100000;
    transition-duration: 0.6S;
}
.footer-btn a {
    display: block;
}
@media screen and (max-width: 450px){
.footer-btn{
    display: flex;
}
	.footer-btn {
		bottom: 0%;
		right: 0%;
		width: 100%;
		z-index: 10000;
	}
}
.page-top{
		display:none!important;
	}
/*---------------------------------------SP表示のCSS---------------------------------------  */
@media screen and (max-width: 768px) {
.keni-section_wrap {
margin: 0!important;
}
}/*mediaスクリーン　閉じタグ 	 */