@charset "utf-8";


/*---------------------------------------------------------------------------------------------*/
/*
  目次
  00.共通CSS
  01.公式サイト搭載のスタイル
    テキスト要素パーツ
  02.LPから移植するスタイル
    共通パーツ
      各セクションの雛形パーツ
      部分パーツ
    専用パーツ
      LP別専用パーツ（各LP用のCSSファイル別個設けてそちらに引っ越し）
/*
/*---------------------------------------------------------------------------------------------*/

/*共通*/

.beauty_slimming_program .single_opinfo{
    font-family: '游ゴシック','Yu Gothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro';
    color: #3D3D3D;
}

/*a {
    cursor: pointer;
}*/

/*img {
    max-width: 100%;
    vertical-align: bottom;
}*/

.beauty_slimming_program video{
    vertical-align: bottom;
    width: 100%;
}

/*---------------------------------------------------------------------------------------
--
-- メインコンテンツ外の内容（opinfo.cssへ移設したいレベル）
--
----------------------------------------------------------------------------------------*/
.beauty_slimming_program .wp-single-page{
  position: relative;
}

.beauty_slimming_program .wp-single-page #top_under{
  background-color: #F7F7F7;
}

.beauty_slimming_program .wp-single-page #top_under h1{
  font-size: 25px;
  padding: 10px;
}
.beauty_slimming_program .wp-single-page #top_under .inner::before{
  content: none;
}
.beauty_slimming_program .c-lpcase__property.bg_gray{
  margin: 0 auto;
}
.beauty_slimming_program .c-lpcase__property.bg_gray dl{
  margin-bottom: 10px;
}

@media screen and (max-width: 640px) {
  /*.wp-single-page #top_under {
  display: none;
  }*/
  .beauty_slimming_program .wp-single-page #full_scale{
  margin-top: -1px;
  }
  .beauty_slimming_program .wp-single-page #top_under h1{
  font-size: 4.266666656vw;
  }
  .beauty_slimming_program .single_opinfo section h3{
    top: unset;
  }
  .beauty_slimming_program .c-lpcase__property.bg_gray{
    margin: 0 auto;
  }
}




/*------------------------------- ラップ要素 -------------------------------*/

.beauty_slimming_program .single_opinfo .section_common{
  padding: clamp(35px,7vw,110px) 0 clamp(50px,10vw,100px);
}

@media screen and (max-width: 640px) {
  .beauty_slimming_program .c-section-inner{
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .c-iframe-video{
    max-width: 100%;
  }
}




/*------------------------------- opinfo_afterコンテンツ -------------------------------*/
/* opinfo__after */
.beauty_slimming_program .opinfo__after{
  width: 100%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
.beauty_slimming_program .opinfo__after p{
  font-size: 16px;
  line-height: 2.2;
  color: #0e0e0e;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .opinfo__after p{
    font-size: 15px;
    line-height: 1.8;
    letter-spacing: 0;
  }
}

/*---------- 監修医師----------*/
.beauty_slimming_program #main .message_box{
  padding: 35px 40px 40px;
  border-top: 3px solid #537691;
  background: #ffffff;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);	
}
.beauty_slimming_program #main .message_box h2{
  font-weight: normal;
  font-size: 25px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
  text-align: center;
  color: #000;
  border-bottom: 1px solid #cccccc;
  padding: 0 0 12px;
  margin-bottom: 40px;
  background: #ffffff;
  line-height: 1.25;
  box-shadow: none;
  margin-top: 0;
}
.beauty_slimming_program #main .message_box h2:before{
  display: none;
}
@media screen and (max-width:640px){
  .beauty_slimming_program #main .message_box{
    padding: 22px 20px 20px !important;
    margin: 0 0 15px;
  }
  .beauty_slimming_program #main .message_box h2{
    font-size: 20px;
    margin-bottom: 20px;
    margin-top: 0;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
  }

  .beauty_slimming_program #main .message_box .message_inner--bgwhite .text p{
    font-size: 15px;
    line-height: 1.66;
  }
}

/* 新しい監修医師 */
.beauty_slimming_program .opinfo__after h2, .beauty_slimming_program .opinfo__after h3{
  background: linear-gradient(90deg, #0d0d0d, #4d4d4d);
  position: relative;
  padding-left: 35px;
  font-size: 25px;
  line-height: 1.3em;
  margin: 80px 0 40px;
  box-shadow: 0 1px 10px 1px rgb(0 0 0 / 20%);
  font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3',
    'Hiragino Mincho ProN', 'HG明朝B', serif;
  color: #ffffff;
  padding: 15px 15px 15px 35px;
}
.beauty_slimming_program .opinfo__after h2:before, .beauty_slimming_program .opinfo__after h3:before{
  background: #999999;
  display: block;
  content: '';
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 5px;
  height: 59%;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite{
  margin: 0 0 40px;
  padding: 0 0 0;
  display: grid;
  grid-template-columns: 720px 250px;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite .text{
  font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  width: 100%;
  font-size: 16px;
  line-height: 1.875;
  color: #000000;
  letter-spacing: 0;
  margin: 0 0 20px;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite .text p{
  font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  width: 720px;
  font-size: 16px;
  line-height: 1.875;
  color: #000000;
  letter-spacing: 0;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr{
  grid-row-start: 2;
  grid-row-end: 3;
  grid-column-start: 1;
    grid-column-end: 2;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr .message_dr_name{
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
  color: #000000;
  font-size: 22px;
  margin-bottom: 0;
  font-weight: normal;
  letter-spacing: 0;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr .message_dr_name .small{
  font-size: 14px;
  margin-right: 0.5em;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr .message_dr_link{
  line-height: 1.25;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  letter-spacing: 0;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr .message_dr_link a{
  display: inline-block;
  font-size: 14px;
  color: #0090FE;
  text-decoration: none;
  padding-left: 14px;
  position: relative;
  line-height: 1.42;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr .message_dr_link a:hover{
  text-decoration: underline;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr .message_dr_link a:before{
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  border: 1px solid #000000;
  border-top: transparent;
  border-left: transparent;
  transform: rotate(-45deg);
  position: absolute;
  left: 0;
  top: 0.4em;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite .photo{
  grid-row-start: 1;
  grid-row-end: 3;
  grid-column-start: 2;
  grid-column-end: 3;
  height: 100%;
}
.beauty_slimming_program #main .message_box .message_inner--bgwhite .photo img{
  /* width: 250px;
  height: 330px; */
  /* object-fit: cover; リクルート画像を医師訴求にあわせて差し替えになったので新デザインに合わせる都合でcontainに変更 */
    object-fit: contain;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .opinfo__after h2, .beauty_slimming_program .opinfo__after h3{
    padding-left: 30px;
    font-size: 20px;
    margin: 40px 0 20px;
    line-height: 1.5;
  }
  .beauty_slimming_program #main .message_box .message_inner--bgwhite{
    position: relative;
    margin: 0 0 20px;
    display: block;
  }
  .beauty_slimming_program #main .message_box .message_inner--bgwhite .text{
    padding: 0 0 5px;
    font-size: 15px;
    line-height: 1.66;
  }
  .beauty_slimming_program #main .message_box .message_inner--bgwhite .text p{
    width: 100%;
    font-size: 15px;
    line-height: 1.66;
    margin: 0 0 20px;
  }
  .beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr{
    float: left;
    width: min(45.5vw,175px);
  }
  .beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr .message_dr_name{
    font-size: 17px;
    line-height: 1.7;
    margin: 0 0 25px;
  }
  .beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr .message_dr_name .small{
    font-size: 14px;
    display: block;
    margin-bottom: 7px;
  }
  .beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr .message_dr_link{
    margin: 0;
  }
  .beauty_slimming_program #main .message_box .message_inner--bgwhite .message_dr .message_dr_link a{
    letter-spacing: 0;
  }
  .beauty_slimming_program #main .message_box .message_inner--bgwhite .photo{
    float: right;
    width: clamp(100px,32vw,120px);
    height: clamp(132px,42.4vw,159px);
    margin: 0;
  }
  .beauty_slimming_program #main .message_box .message_inner--bgwhite .photo img{
    width: 100%;
    height: 100%;
  }

  .beauty_slimming_program .opinfo_category, .beauty_slimming_program .opinfo__after, .beauty_slimming_program #box04, .beauty_slimming_program #monitor{
    width: calc(100% - 30px);
    margin-left: auto;
    margin-right: auto;
    padding: 0;
  }

  .beauty_slimming_program #box04, .beauty_slimming_program .opinfo__after, .beauty_slimming_program #monitor{
    padding-left: 0;
    padding-right: 0;
  }
}
.beauty_slimming_program #main .message_box .message_inner--2col{
  padding: 0 50px;
}
.beauty_slimming_program #main .message_box .message_inner--2col h3{
  color: #000000;
  font-size: 25px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0;
  padding: 0 0 12px;
  border-bottom: 1px solid #cccccc;
  background: unset;
  box-shadow: none;
  margin: 0 0 20px;
}
.beauty_slimming_program #main .message_box .message_inner--2col h3::before{
  display: none;
}
.beauty_slimming_program #main .doctor_histories, .beauty_slimming_program #main .drinfo_remarks{
  background: #f7f7f7;
  padding: 25px 30px 30px;
  box-sizing: border-box;
}
.beauty_slimming_program #main .doctor_histories dl, .beauty_slimming_program #main .drinfo_remarks dl{
  font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  align-items: center;
  margin-bottom: 10px;
  width: 100%;
}
.beauty_slimming_program #main .message_box .message_inner--2col .doctor_histories dt{
  width: 4.6em;
  border-radius: 4px;
  background: #999;
  line-height: 1.25;
  font-family: inherit;
  font-size: 14px;
  padding: 0.25em 0 0.15em;
  margin-right: 10px;
}
.beauty_slimming_program #main .message_box .message_inner--2col .doctor_histories dd, .beauty_slimming_program #main .message_box .message_inner--2col .drinfo_remarks dd{
  font-family: inherit;
  font-size: 14px;
  line-height: 1.25;
  padding: 0.25em 0 0.15em;
  color: #0e0e0e;
}
.beauty_slimming_program #main .drinfo_remarks dl{
  flex-wrap: wrap;
  margin-bottom: 0.7em;
}
.beauty_slimming_program #main .drinfo_remarks dl a{
  text-decoration: underline;
}
.beauty_slimming_program #main .drinfo_remarks dl a:hover{
  text-decoration: none;
}
.beauty_slimming_program #main .drinfo_remarks dd{
  font-size: 14px;
  line-height: 1.25;
  font-family: inherit;
  padding: 0.1em 0;
}
.beauty_slimming_program #main .drinfo_remarks dd:first-child:before{ /* dtナシでも対応できるように */
  content: "・";
  display: inline;
}
.beauty_slimming_program #main .drinfo_remarks dd:first-child{

  padding-left: 1em;
}
.beauty_slimming_program #main .drinfo_remarks dt{
  width: auto;
  margin-right: 0.8em;
}
.beauty_slimming_program #main .p-academic_society{
  text-align: justify;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program #main .message_box .message_inner--2col{
    padding: 0;
  }
  .beauty_slimming_program #main .message_box .message_inner--2col h3{
    font-size: 17px;
    padding: 0 0 7px;
    margin: 0 0 15px;
    top: 0;
  }
  .beauty_slimming_program #main .doctor_histories, .beauty_slimming_program #main .drinfo_remarks{
    padding: 15px 20px 15px;
  }
  .beauty_slimming_program #main .message_box .message_inner--2col .doctor_histories dl{
    margin-bottom: 5px;
  }
  .beauty_slimming_program #main .message_box .message_inner--2col .doctor_histories dt{
    font-size: 12px;
    border-radius: 3px;
    padding: 0.2em 0;
    letter-spacing: 0;
    margin-right: 0.6em;
  }
  .beauty_slimming_program #main .message_box .message_inner--2col .doctor_histories dd, .beauty_slimming_program #main .message_box .message_inner--2col .drinfo_remarks dd{
    font-size: 12px;
    padding: 0.2em 0;
  }
  .beauty_slimming_program #main .drinfo_remarks dt{
    font-size: 12px;
    width: auto;
  }
}
.beauty_slimming_program h3.c-opinfo-book__title, .beauty_slimming_program h4.c-opinfo-book__title{
	background: none;
  box-shadow: none;
	border-bottom: 1px solid #8D8D8D;
	padding: 0 0 6px 0;
	margin: 0 0 20px 0;
	font-size: 20px;
	color: #000;
	font-weight: 500;
	border-left: none;
  font-feature-settings: "palt" 1;
  letter-spacing: .15em;
  line-height: 1.3em;
}
.beauty_slimming_program h3.c-opinfo-book__title::before, .beauty_slimming_program h4.c-opinfo-book__title::before{
	content: none;
}
.beauty_slimming_program p.c-opinfo-book__text{
	font-size: 16px;
	color: #000;
	line-height: 1.6;
	font-weight: 400;
	margin-bottom: 21px;
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ","Meiryo","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro",sans-serif;
	letter-spacing: 0;
}
@media screen and (max-width:640px) {
  .beauty_slimming_program p.c-opinfo-book__text{
		line-height: 1.8;
		font-size: 15px;
	}
}
/*---------- 監修医師 ここまで ----------*/

/*---------- 医療広告ガイドラインについて ----------*/
.beauty_slimming_program #main .frame_medical_ad_guideline{
	background: #f2ebd8;
	padding: 20px 30px 30px;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ","Meiryo","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro",sans-serif;
}
.beauty_slimming_program #main .frame_medical_ad_guideline h3{
	color: #000000;
	font-weight: normal;
	font-size: 25px;
	line-height: 1.25;
	text-align: center;
	color: #000000;
	margin: 0 0 25px;
	padding: 0 0 10px;
	background: unset;
	border-bottom: 1px solid #ffffff;
  box-shadow: none;
  font-feature-settings: "palt";
}
.beauty_slimming_program #main .frame_medical_ad_guideline h3::before{
	display: none;
}
.beauty_slimming_program #main .frame_medical_ad_guideline p, .beauty_slimming_program #main .frame_medical_ad_guideline .list li{
	font-family: inherit;
	font-weight: 500;
	font-size: 14px;
	line-height: 2.14;
	color: #000;
	letter-spacing: 0;
	margin: 0;
}
.beauty_slimming_program #main .frame_medical_ad_guideline .list{
  padding-left: 20px;
}
@media screen and (max-width: 640px) {
	.beauty_slimming_program #main .frame_medical_ad_guideline{
		padding: 22px 20px 20px;
	}
	.beauty_slimming_program #main .frame_medical_ad_guideline h3{
		font-size: 20px;
		letter-spacing: 0.08em;
		margin: 0 0 15px;
		top: 0;
	}
	.beauty_slimming_program #main .frame_medical_ad_guideline p, .beauty_slimming_program #main .frame_medical_ad_guideline .list li{
		font-size: 15px;
		line-height: 1.66;
		text-align: justify;
	}
	.beauty_slimming_program #main .frame_medical_ad_guideline .list{
		margin: 1.5em 0;
		padding-left: 1em;
	}
}





/*---------------------------------------------------------------------------------------
--
-- 02.LPから移植するスタイル
--
----------------------------------------------------------------------------------------*/
/* ラップ要素 */
.beauty_slimming_program .object_hidden{
    overflow: hidden;
}

.beauty_slimming_program .object_hidden img{
    object-fit: cover;
    object-position: center;
    width: 100%;
    max-width: 100%;
    max-height: 100%;
}

/* 背景色 */
.beauty_slimming_program .section_bg--gray{
  background-color: #F2F5F9;
}
.beauty_slimming_program .section_bg--yellow{
  background-color: #FFFCE9;
}
.beauty_slimming_program .section_bg--pink{
  background-color: #FFE9E9;
}
.beauty_slimming_program .section_bg--lightyYellow{
  background-color: #FFFCF5;
}
.beauty_slimming_program .section_bg--lightyRed{
  background-color: #FFF1F1;
}

/* テキストカラー(色) */

.beauty_slimming_program .c-yellow{
	color: #FFEA76;
	transition: .35s ease;
}

.beauty_slimming_program .wrap700{
  width:700px !important;
  max-width:100%;
  margin:0 auto;
}
.beauty_slimming_program .wrap750{
  width:750px !important;
  max-width:100%;
  margin:0 auto;
}
.beauty_slimming_program .wrap880{
  width: 880px !important;
  max-width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
.beauty_slimming_program .wrap1000{
  width:1000px !important;
  max-width:100%;
  margin:0 auto;
  box-sizing: border-box;
}
.beauty_slimming_program .wrap1100{
  width:1100px !important;
  max-width:100%;
  margin:0 auto;
  box-sizing: border-box;
}
.beauty_slimming_program .wrap1300{
  width:1300px !important;
  max-width:100%;
  margin:0 auto;
  box-sizing: border-box;
}
.beauty_slimming_program .wrap90{
    width: 92% !important;
    margin:0 auto;
}
@media screen and (min-width: 641px) {
  .beauty_slimming_program .wrap700--pc{
    width:700px !important;
    max-width:100%;
    margin:0 auto;
  }
  .beauty_slimming_program .wrap750--pc{
    width:750px !important;
    max-width:100%;
    margin:0 auto;
  }
  .beauty_slimming_program .wrap1000--pc{
    width:1000px !important;
    max-width:100%;
    margin:0 auto;
    box-sizing: border-box;
  }
  .beauty_slimming_program .wrap1100--pc{
    width:1100px !important;
    max-width:100%;
    margin:0 auto;
    box-sizing: border-box;
  }
  .beauty_slimming_program .wrap90--pc{
      width: 92% !important;
      margin:0 auto;
  }
}



/*------------------------------- 見出し要素 -------------------------------*/
/*h2要素レベル*/
.beauty_slimming_program .section_ttl{
  max-width: 880px;
  margin: 0 auto clamp(30px,4.5vw,45px);
}
.beauty_slimming_program .section_ttl-text{
  padding-bottom: clamp(10px,2vw,20px);
  margin-bottom: clamp(10px,2vw,20px);
  font-size: clamp(20px,3.8vw,38px);
  font-weight: 500;
  line-height: 1.4em;
  text-align: center;
  position: relative;
}
.beauty_slimming_program .section_ttl-text::before{
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  border-bottom: 2px solid #FF7878;
}
.beauty_slimming_program .section_ttl-text::after{
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 50%;
  border-bottom: 2px solid #A5A5A5;
}
.beauty_slimming_program .section_ttl-text2{
  width: 100%;
  font-size: clamp(20px,3.8vw,38px);
  font-weight: 500;
  line-height: 1.4em;
  text-align: center;
  position: relative;
  margin: 0 0 clamp(25px,2.5vw,25px);
}
.beauty_slimming_program .section_ttl-text2::before{
  content: '';
  position: absolute;
  left: 49%;
  bottom: -40px;
  width: 0;
  height: 0;
  border-left: 19px solid transparent;
  border-right: 19px solid transparent;
  border-top: 34px solid #4b4b4b;
}
.beauty_slimming_program .section_ttl-eng{
  font-size: clamp(14px,3.0vw,30px);;
  color: #A5A5A5;
  letter-spacing: 0.04em;
  text-align: center;
}
.beauty_slimming_program .section_sub_ttl01{
  display: block;
  width: fit-content;
  margin: 0 auto 45px;
  padding: clamp(20px,2.5vw,25px) clamp(30px,5vw,50px);
  border-top: #000 solid 2px;
  border-bottom: #000 solid 2px;
  position: relative;
  text-align: center;
}
.beauty_slimming_program .section_sub_ttl01::before{
  content: "";
  width: 2px; height: 30px;
  background: #000;
  position: absolute; top: 0; right: 0;
}
.beauty_slimming_program .section_sub_ttl01::after{
  content: "";
  width: 2px; height: 30px;
  background: #000;
  position: absolute; bottom: 0; left: 0;
}

.beauty_slimming_program .section_sub_ttl_text{
  font-size: clamp(18px,3.8vw,38px);
  font-weight: 500;
  text-align: center;
  line-height: 1.3em;
}

.beauty_slimming_program .section_sub_ttl01 .arrow_bottom{
  display: block;
  position: absolute; 
  bottom: 0; 
  left: 50%;
}
.beauty_slimming_program .section_sub_ttl01 .arrow_bottom::before{
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 11px solid transparent;
  border-left: 11px solid transparent;
  border-top: 15px solid #000000;
  border-bottom: 0;
  position: absolute; top: 0; left: 0;
}
.beauty_slimming_program .section_sub_ttl01 .arrow_bottom::after{
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  border-top: 14px solid #ffffff;
  border-bottom: 0;
  position: absolute; top: -2px; left: 1px;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .section_ttl{
    padding-left: 15px;
    padding-right: 15px;
  }
  .beauty_slimming_program .section_ttl-text::before, .beauty_slimming_program .section_ttl-text::after{
    border-width: 1px;
  }
  .beauty_slimming_program .section_ttl-text2::before{
    left: 47%;
    bottom:-30px;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 20px solid #4b4b4b;
  }
}

/*その他小見出し*/
.beauty_slimming_program .c-head-h4{
  font-size: clamp(12px,1.8vw,18px);
  border-radius: 2em;
  line-height: 1.5;
  background-color: #fff1f1;
  border: 2px solid #ff7878;
  color: #FF7878;
  text-align: center;
  padding: 0.4em 1em;
  box-sizing: border-box;
  display: block;
  font-weight: 600;
  margin-bottom: 10px;
}
.beauty_slimming_program .c-head-h4--green{
  color: #62BE68;
  background-color: #E8FFEF;
  border-color: #62BE68;
}
.beauty_slimming_program .c-head-h4--blue{
  color: #5B9DFF;
  background-color: #F2F7FF;
  border-color: #5B9DFF;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .c-head-h4{
    margin-left: auto;
    margin-right: auto;
    max-width: calc(100% - 30px);
  }
}




/* テキスト要素（本文） */
/*汎用*/
.beauty_slimming_program .strong_blue strong{
  font-weight: inherit;
  color: #5B9DFF;
}
.beauty_slimming_program .strong_pink strong{
  font-weight: inherit;
  color: #FF7878;
}
.beauty_slimming_program .em_pink em{
  font-weight: inherit;
  color: #FF7878;
  font-style: normal;
}

/* リスト（・） */

.beauty_slimming_program .list_dot li, .beauty_slimming_program .dot{
    position:relative;
    padding-left: .75rem;
    text-align: left;
    font-size:clamp(12px,1.8vw,18px);
}

.beauty_slimming_program .list_dot li::before, .beauty_slimming_program .dot::before{
	content: "・";
    display: block;
    position:absolute;
    top:0;
    left:0;
}

/*ボタン*/

.beauty_slimming_program .lp-btn01{
	max-width: 630px;
	margin: 0 auto;
	padding: 0 15px;
}

.beauty_slimming_program .lp-btn01_txt p{
	color: #000;
}

.beauty_slimming_program .lp-btn01_txt p, .beauty_slimming_program .lp-btn01_img p{
	text-align:center;
}

.beauty_slimming_program .lp-btn01_img{
	text-align:center;
}

.beauty_slimming_program .lp-btn01_sub-txt{
	display: inline-block;
	margin: 0px auto;
	background-color: #FFEA76;
	border-radius: 100px;
	position: relative;
	z-index: 2;
}

.beauty_slimming_program .lp-btn01_img .lp-btn01_sub-txt p{
	color: #FF7878;
	transition: .35s ease;
}

.beauty_slimming_program .lp-btn01_img:hover .lp-btn01_sub-txt p{
	color:#A2BEEE;
}

.beauty_slimming_program .lp-btn01_sub-txt p{
	font-size: clamp(13px,2.6vw,26px);
	padding: 2px 20px;
}

.beauty_slimming_program .lp-btn01_main-txt p{
	font-size: clamp(15px,3vw,30px);
	padding: clamp(15px,3vw,31px) clamp(40px,8vw,75px) clamp(15px,3vw,31px) clamp(15px,3vw,31px);
	position: relative;
	color: #fff;
	background-color: #FF7878;
	margin-top: -22px;
	transition: .35s ease;
}

.beauty_slimming_program .lp-btn01_img:hover .lp-btn01_main-txt p{
	background-color: #A2BEEE;
}

.beauty_slimming_program .lp-btn01_main-txt .free{
	color: #FF7878;
	background-color: #fff;
	padding: 0px 3px;
	margin-right: 10px;
  transition: .35s ease;
}

.beauty_slimming_program .lp-btn01_img:hover .free{
	color:#A2BEEE;
}

.beauty_slimming_program .c-btn_shadow{
	box-shadow: 3px 3px 0px 0px #C2C2C2;
}


/*後程削除*/
.beauty_slimming_program .lp-btn01_img .link-allow01:hover, .beauty_slimming_program .limit_btn_link.link-allow01:hover{
	opacity:1;
}

.beauty_slimming_program .limit_btn_link p{
	text-align: center;
	font-size: clamp(15px,3vw,30px);
	padding: clamp(10px,1.7vw,17px);
	color:#fff;
	line-height: 1.2;
	background-color: #62BE68;
	border: 2px solid #62BE68;
	transition: .35s ease;
}

.beauty_slimming_program .limit_btn_link p:hover{
	background-color: #fff;
	color:#62BE68;
}

.beauty_slimming_program .limit_btn_link p:hover .c-yellow{
	color:#62BE68;
}

/*ホバー時の色変え*/
.beauty_slimming_program .limit_btn_link.link-allow01:hover::before, .beauty_slimming_program .limit_btn_link.link-allow01:hover::after{
	border-bottom: 2px solid #62BE68;
}

@media screen and (max-width: 640px) {
	.beauty_slimming_program .lp-btn01_main-txt p{
		margin-top: -11px;
	}
}


/*本文*/
.beauty_slimming_program .c-txtformat-01{
  color: #0e0e0e;
  font-size: 16px;
  font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', sans-serif;
  line-height: 2.2;
  letter-spacing: 0;
  text-align: justify;
}

.beauty_slimming_program .c-txtformat-02{
	color: #0e0e0e;
	font-size: 18px;
	font-weight:bold;
	font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', sans-serif;
	line-height: 2.2;
	letter-spacing: 0;
	text-align: justify;
}


.beauty_slimming_program .c-txtformat-01 li, .beauty_slimming_program .c-txtformat-01 dt, .beauty_slimming_program .c-txtformat-01 dd, .beauty_slimming_program .c-txtformat-02 li, .beauty_slimming_program .c-txtformat-02 dt, .beauty_slimming_program .c-txtformat-02 dd{
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  text-align: inherit;
}

.beauty_slimming_program .c-txtformat-01:where(.left){
    text-align: left;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .c-txtformat-01{
    font-size: clamp(12px,1.8vw,18px);
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
  }

	.beauty_slimming_program .c-txtformat-02{
    font-size: clamp(14px,2vw,20px);
    /* padding-left: 15px;
    padding-right: 15px; */
  }
}

/* 横並び */
.beauty_slimming_program .c-flex{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.beauty_slimming_program .c-flex-item--col2{
  width: calc( calc(100% / 2) - 10px );
}

/*------------------------------- テーブル要素 -------------------------------*/
/* テーブルデザイン01 */
.beauty_slimming_program .c-table-lp-01 th, .beauty_slimming_program .c-table-lp-01 td{
  border: 1px solid #A5A5A5;
  font-size: 18px;
  font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', sans-serif;
  line-height: 1.66;
  padding: 0.4em 0.3em 0.4em 1em;
}
.beauty_slimming_program .c-table-lp-01 th{
  color: #ffffff;
  font-weight: bold;
  background: #FF7878;
}
.beauty_slimming_program .c-table-lp-01 td, .beauty_slimming_program .c-table-lp-01 td:last-child{
  color: #333333;
  background: #ffffff;
  border-right: 1px solid #A5A5A5;
}
.beauty_slimming_program .c-table-lp-01 tr:nth-child(odd) td{
  background: #F6F6F6;
}
.beauty_slimming_program .c-table-lp-01 th:not(:last-child){
  border-bottom-color: #ffffff;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .c-table-lp-01 th, .beauty_slimming_program .c-table-lp-01 td{
    font-size: clamp(12px,2.2vw,22px);
  }
}

/* テーブルデザイン02 */
.beauty_slimming_program .c-table-lp-02 th, .beauty_slimming_program .c-table-lp-02 td{
  border: 1px solid #A5A5A5;
  font-size: 18px;
  font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', sans-serif;
  line-height: 1.66;
  padding: 0.4em 0.3em 0.4em 1em;
}
.beauty_slimming_program .c-table-lp-02 thead th{
  font-weight: bold;
  background: #FF7878;
  color: #ffffff;
}

.beauty_slimming_program .c-table-lp-02 thead th > a{
		color: #ffffff;
}

.beauty_slimming_program .c-table-lp-02 tbody th{
  font-weight: bold;
  font-size: 20px;
  background: #FFF8D1;
  color: #ff7878;
}
.beauty_slimming_program .c-table-lp-02 tbody td, .beauty_slimming_program .c-table-lp-02 tbody td:last-child{
  color: #333333;
  background: #ffffff;
  border-right: 1px solid #A5A5A5;
}

.beauty_slimming_program .c-table-lp-02 tbody td.big{
	font-size: clamp(20px,4vw,40px);
  padding: 0.4em 0.3em 0.4em .4em;
}

.beauty_slimming_program .c-table-lp-02 tbody th:not(:last-child){
  border-bottom-color: #A5A5A5;
}

.beauty_slimming_program .c-table-lp-02 tbody td.c-table-lp__bg--yellow{
  background-color: #FFF8D1;
}

@media screen and (max-width: 640px) {
  .beauty_slimming_program .c-table-lp-02 th, .beauty_slimming_program .c-table-lp-02 td{
    font-size: clamp(12px,2.2vw,22px);
  }

  .beauty_slimming_program .c-table-lp-02 tbody th{
    font-size: clamp(12px,2.2vw,22px);
  }
  .beauty_slimming_program .c-table-lp-02--scroll{
    width: 582px;
  }
  .beauty_slimming_program .c-table-lp-02__th--scroll{
    width: 100px !important;
  }
}

/* テーブルデザイン03 */
.beauty_slimming_program .c-table-lp-03 th, .beauty_slimming_program .c-table-lp-03 td{
  border: 1px solid #A5A5A5;
  font-size: 18px;
  font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', sans-serif;
  line-height: 1.66;
  padding: 0.4em 0.3em 0.4em 1em;
}
.beauty_slimming_program .c-table-lp-03 thead th{
  font-weight: bold;
  background: #FF7878;
  color: #ffffff;
}
.beauty_slimming_program .c-table-lp-03 tbody th{
  font-weight: bold;
  font-size: 20px;
  background: #FF7878;
  color: #ffffff;
}
.beauty_slimming_program .c-table-lp-03 tbody td, .beauty_slimming_program .c-table-lp-03 tbody td:last-child{
  color: #333333;
  background: #ffffff;
  border-right: 1px solid #A5A5A5;
}

.beauty_slimming_program .c-table-lp-03 tbody td:nth-child(2){
  background-color: #FFF8D1;
}
.beauty_slimming_program .c-table-lp-03 tbody th:not(:last-child){
  border-bottom-color: #A5A5A5;
}

.beauty_slimming_program .c-table-lp-03 thead th > a{
	color: #ffffff;
}

/* c-table-lp-03 中央寄せ */
.beauty_slimming_program .c-table-lp_pd th, .beauty_slimming_program .c-table-lp_pd td{
	padding: 0.4em 0.3em;
	text-align: center;
}

.beauty_slimming_program .c-table-lp-03 tbody td.c-table-lp__bg--yellow{
  background-color: #FFF8D1;
}

@media screen and (max-width: 640px) {
  .beauty_slimming_program .c-table-lp-03 th, .beauty_slimming_program .c-table-lp-03 td{
    font-size: clamp(12px,2.2vw,22px);
  }
  .beauty_slimming_program .c-table-lp-03 tbody th{
    font-size: clamp(12px,2.2vw,22px);
  }
}

/*オプション*/

.beauty_slimming_program .testes{
	background-color:#F6F6F6;
	padding: clamp(15px,2vw,20px);
}


/*------------------------------- 各種パーツ（汎用テキスト、汎用テーブル、汎用ボタン等を除く要素） -------------------------------*/
/*fv*/
.beauty_slimming_program #main .fv-pagetop{
    overflow: hidden;
}
.beauty_slimming_program .fv-pagetop__inner{
    max-width: 1100px;
    margin: 0 auto;
    position: relative;
}
.beauty_slimming_program .fv-pagetop__inner::before{
    content: "";
    display: block;
    width: 100%;
    padding-top: 57.18%;
}
.beauty_slimming_program .fv-pagetop__inner img{
    width: auto;
    max-width: none;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .fv-pagetop__inner::before{
    display: none;
  }
  .beauty_slimming_program .fv-pagetop__inner img{
    width: 100%;
    height: auto;
    position: static;
    transform: none;
  }
}

/* ページメニュー */
.beauty_slimming_program .wp-single-page .opinfo_tax_index{
  margin: 40px auto;
}
.beauty_slimming_program #wrapper p.title_opinfo_tax_index{
  background: #FF7878;
  color: #ffffff;
  line-height: 1.47;
  font-size: clamp(16px,3.4vw,26px);
  padding: 0.8em 40px 0.8em 1em;
  width: 100%;
  display: block;
  box-sizing: border-box;
  text-align: center;
  position: relative;
  font-weight: 600;
  font-size: 20px;
  font-family: '游ゴシック','Yu Gothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro';
}
.beauty_slimming_program #wrapper p.title_opinfo_tax_index span{
  font-family: inherit;
}
.beauty_slimming_program .wp-single-page .opinfo_tax_index{
  box-shadow: none;
}
.beauty_slimming_program .list_opinfo_tax_index{
  background: #fff2f2;
  border: 1px solid #ff7878;
}
.beauty_slimming_program .list_opinfo_tax_index li{
  box-shadow: 2px 2px 0 #FDC5C5;
  border-radius: 0;
  margin-bottom: 10px;
}
.beauty_slimming_program #wrapper .list_opinfo_tax_index li a{
  font-family: '游ゴシック','Yu Gothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro';
  font-size: clamp(12px,1.8vw,16px);
  font-weight: bold;
  color: #FF7878;
  background: #fff;
  border: 1px solid #ff7878;
  position: relative;
  border-radius: 0;
}
.beauty_slimming_program #wrapper .list_opinfo_tax_index li a:hover{
  background: #FDC5C5;
  color: #ffffff;
}
.beauty_slimming_program #wrapper .list_opinfo_tax_index li a:after{
  content: "";
  background: url("../img/icon_index_lp.png") no-repeat;
  background-size: contain;
  display: block;
  width: 21px;
  height: 7px;
  border: none;
  transform: unset;
}
.beauty_slimming_program #wrapper .list_opinfo_tax_index li:hover a:after{
  top: 0;
  transform: translateX(5px);
  background: url("../img/icon_index_lp_white.png") no-repeat;
}
@media screen and (max-width:640px) {
	.beauty_slimming_program .wp-single-page .opinfo_tax_index{
		margin: 0 auto;
	}
  .beauty_slimming_program #wrapper p.title_opinfo_tax_index{
    font-size: 15px;
    padding: 0.8em 40px 0.8em 0.8em;
    letter-spacing: 0.02em;
  }
  .beauty_slimming_program #wrapper .list_opinfo_tax_index{
    padding: 20px 15px 10px;
  }
  .beauty_slimming_program #wrapper .list_opinfo_tax_index li, .beauty_slimming_program #wrapper .list_opinfo_tax_index li:nth-child(4n){
    width: calc((100% - 4vw) / 2);
    margin-right: 4vw;
  }
  .beauty_slimming_program #wrapper .list_opinfo_tax_index li:nth-child(2n){
    margin-right: 0;
  } 
  .beauty_slimming_program #wrapper .list_opinfo_tax_index li a{
    letter-spacing: 0;
    font-feature-settings: "palt";
  }
  .beauty_slimming_program #wrapper .list_opinfo_tax_index li a:after{
    width: 14px;
    right: 8px;
  }
  /* ページメニュー文言が2行以上になるものに限る */
  .beauty_slimming_program .wrap_facelift_fiber-528 .title_opinfo_tax_index br{
    display: none !important;
  }
}

/*カウントダウン*/
.beauty_slimming_program .btnwrap a{
  display: block;
  margin: auto;
  max-width: 650px;
  width: 100%;
}
.beauty_slimming_program .box_countdown{
    font-family: 'Noto Sans JP', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN';
    max-width: 600px;
    margin: 0px auto -10px;
    text-align: center;
    background: #FFEA76;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #62BE68;
    border: 1px solid #62BE68;
    padding: 10px 15px;
    box-sizing: border-box;
    position:
    relative;
    z-index: 3;
}
.beauty_slimming_program .box_countdown::before, .beauty_slimming_program .box_countdown::after{
    content: '';
    position: absolute;
    left: 50%;
    height: 0;
    width: 0;
    border-width: 14px;
    border-style: solid solid solid none;
    transform: rotate(270deg);
}
.beauty_slimming_program .box_countdown::before{
    bottom: -20px;
    border-color: transparent #ffea76;
    z-index: 1;
}
.beauty_slimming_program .box_countdown::after{
    bottom: -21px;
    border-color: transparent #62be68;
}
.beauty_slimming_program .box_countdown p{
    font-size: 20px;
}
.beauty_slimming_program .box_countdown .yycountdown-box{
    margin-left: 10px;
}
.beauty_slimming_program .box_countdown .yyc-day, .beauty_slimming_program .box_countdown .yyc-hou, .beauty_slimming_program .box_countdown .yyc-min, .beauty_slimming_program .box_countdown .yyc-sec{
    font-size: 32px;
    background: #62BE68;
    color: #fff;
    border-radius: 5px;
    padding: 1.5px 6px;
}
.beauty_slimming_program .box_countdown .yyc-day-text, .beauty_slimming_program .box_countdown .yyc-hou-text, .beauty_slimming_program .box_countdown .yyc-min-text, .beauty_slimming_program .box_countdown .yyc-sec-text{
    font-size: 20px;
    margin: 0 5px;
}
.beauty_slimming_program .limit_btn{
    padding: clamp(20px,4vw,40px) 0 clamp(35px,7vw,70px);
    text-align: center;
}
.beauty_slimming_program .limit_btn_note{
  max-width: 650px;
  margin: 0 auto;
  color: #0e0e0e;
  font-size: 16px;
  font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', sans-serif;
  line-height: 2.2;
  letter-spacing: 0;
  text-align: justify;
  margin-top: 10px;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .box_countdown{
    max-width: 85%;
    padding: 5px 7px;
    margin: 0px auto -10px;
  }

  .beauty_slimming_program .box_countdown::before, .beauty_slimming_program .box_countdown::after{
    border-width: 7px;
  }

  .beauty_slimming_program .box_countdown::before{
    bottom: -10px;
  }

  .beauty_slimming_program .box_countdown::after{
    bottom: -11px;
  }

  .beauty_slimming_program .box_countdown p{
    font-size: 12px;
  }

  .beauty_slimming_program .box_countdown .yycountdown-box{
    margin-left: 5px;
  }

  .beauty_slimming_program .box_countdown .yyc-day, .beauty_slimming_program .box_countdown .yyc-hou, .beauty_slimming_program .box_countdown .yyc-min, .beauty_slimming_program .box_countdown .yyc-sec{
    font-size: 15px;
    padding: 0 3px;
    border-radius: 3px;
  }

  .beauty_slimming_program .box_countdown .yyc-day-text, .beauty_slimming_program .box_countdown .yyc-hou-text, .beauty_slimming_program .box_countdown .yyc-min-text, .beauty_slimming_program .box_countdown .yyc-sec-text{
    font-size: 12px;
    margin: 0 2px;
  }
  .beauty_slimming_program .limit_btn_note{
    font-size: 14px;
    padding: 0 15px;
    line-height: 1.8;
  }
}



/* フレーム背景 */
.beauty_slimming_program .c-frame--white{
  background-color: #ffffff;
  box-shadow: 5px 5px 0 #FDC5C5;
  padding-left: 60px;
  padding-right: 60px;
  padding-top: 60px;
  padding-bottom: 60px;
  margin-bottom: 60px;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .c-frame--white{
    padding-left: 0;
    padding-right: 0;
    padding-top: 25px;
    padding-bottom: 30px;
    box-shadow: 2.5px 2.5px 0 #fdc5c5;
    margin-bottom: 40px;
  }
}

/* ○○に向いている人、向いていない人 */
.beauty_slimming_program .recommend-box__flex{
  display: flex;
  justify-content: space-between;
}
.beauty_slimming_program .recommend-box__outer{
  width: 48.5%;
  position: relative;
}
.beauty_slimming_program .recommend-box__outer-ttl{
  font-size: clamp(15px,2.2vw,24px);
  background-color: #FF7878;
  padding: 0.5em 0.5em 0.5em 0.5em;
  margin: 0 auto -1.3em;
  color: #ffffff;
  position: relative;
  z-index: 1;
  max-width: 80%;
  text-align: center;
}
.beauty_slimming_program .recommend-box__outer-ttl.blue{
  background-color: #5B9DFF;
}
.beauty_slimming_program .recommend-box{
    width: 100%;
    padding: clamp(30px,3.5vw,40px) clamp(35px,7vw,35px) clamp(15px,3vw,30px);
    background: 
    url(../img/box_grid.png) top left;
    background-size: clamp(311px,62.2vw,622px) auto;
    background-color: #FFFFFF;
    box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
    box-sizing: border-box;
    position: relative;
}
.beauty_slimming_program .recommend-box--col2{
  padding: clamp(15px,7vw,50px) clamp(35px,7vw,35px) clamp(15px,3vw,30px);
}
.beauty_slimming_program .recommend-box::after{
    content: "";
    display: block;
    width: 100%; height: 100%;
    position: absolute; top: 0; left: 0;
    /*background: url(../img/box_grid_icon.png) no-repeat right bottom;*/
    background-size: clamp(69px,13.8vw,138px) auto;
}
.beauty_slimming_program .recommend-box .section_ideal-item{
    padding: 0.6em 0 0.6em 40px;
    border-bottom: #DFEBFF solid 2px;
    font-size: clamp(12px,2.2vw,20px);
    position: relative;
}
.beauty_slimming_program .recommend-box--col2 .section_ideal-item{
  font-size: clamp(12px,2.2vw,20px);
  padding: 0.6em 0 0.6em 40px;
}
.beauty_slimming_program .recommend-box .section_ideal-item:last-child{
    border-bottom: none;
}
.beauty_slimming_program .recommend-box .section_ideal-item::before{
    content: "";
    display: block;
    width: 31px; height: 29px;
    background: url(../img/others/icon_check_01.png) no-repeat;
    background-size: cover;
    position: absolute; top: 50%; left: 0;
    transform: translateY(-50%);
}
.beauty_slimming_program .recommend-box .section_ideal-item--blue::before{
  background-image: url(../img/icon_check_blue.png);
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .recommend-box__flex{
    flex-flow: column;
  }
  .beauty_slimming_program .recommend-box__outer{
    width: 100%;
    margin-bottom: 30px;
  }
  .beauty_slimming_program .recommend-box__outer:last-child{
    margin-bottom: 0;
  }
  .beauty_slimming_program .recommend-box{
    width: 100%;
    box-shadow: 2px 2px 0px 0px #a5a5a5;
  }
  .beauty_slimming_program .recommend-box .section_ideal-item{
    padding-left: 25px;
    border-width: 1px;
    line-height: 1;
  }
  .beauty_slimming_program .recommend-box .section_ideal-item::before{
    width: 15px; height: 14px;
  }
}

/*満足度コンテンツ*/
.beauty_slimming_program .reason_satisfaction{
  padding-bottom: clamp(20px,4vw,40px);
}
.beauty_slimming_program .reason_satisfaction-img{
  text-align:center;
  margin-bottom: clamp(40px,8vw,80px);
  background: #ffffff;
  padding: clamp(10px,3vw,20px);
  max-width: 670px;
  margin-left: auto;
  margin-right: auto;
}
.beauty_slimming_program .reason_satisfaction-read{
  margin-bottom: clamp(30px,4.5vw,45px);
  font-size: clamp(18px,3.8vw,38px);
  font-weight: 500;
  color: #757575;
  text-align: center;
  line-height: 1.8em;
}
.beauty_slimming_program .reason_satisfaction-read strong, .beauty_slimming_program .reason_satisfaction-read strong *{
  font-weight: bold;
}
.beauty_slimming_program .reason_satisfaction-read .reason_value{
  margin: 0 0.2em;
}
.beauty_slimming_program .reason_satisfaction-read .reason_value span{
  font-size: 1.5em;
}
.beauty_slimming_program .reason_satisfaction-read .reason_value sup{
  font-size: 0.6em;
}
.beauty_slimming_program .reason_satisfaction-read .under_line{
  display: inline-block;
  background-image: linear-gradient(transparent 75%, #FFF7D0 0%);
  line-height: 1em;
}
.beauty_slimming_program .reason_satisfaction-txt + .reason_satisfaction-txt{
  margin-top: clamp(40px,8vw,80px);
}
.beauty_slimming_program .reason_satisfaction-txt01{
  text-align:center;
}
.beauty_slimming_program .reason_satisfaction-txt02{
  text-align:center;
  width: 67%;
  margin: 0 auto;
}

/*promotion(promotion)コンテンツ*/

/*後程変更かもしれないです*/
.beauty_slimming_program .lp-promotion-img{
  display: block;
  margin: 0 auto;
  text-align: center;
 }

/*POINTコンテンツ*/
.beauty_slimming_program .reason_point{
  overflow: hidden;
}
.beauty_slimming_program .reason_point-bgimg01, .beauty_slimming_program .reason_point-bgimg02, .beauty_slimming_program .reason_point-bgimg03{
	position:absolute;
	z-index: -1;
}

.beauty_slimming_program .reason_point-bgimg01{
	top: calc(50% - clamp(220px,44vw,440px));
	right: calc(50% - clamp(400px,109vw,1090px));
	width: clamp(390px,98vw,977px);
	height: clamp(440px,89vw,884px);
}

.beauty_slimming_program .reason_point-bgimg02{
	top: calc(50% - clamp(160px,38vw,380px));
	right: calc(50% + clamp(130px,35vw,344px));
	width: clamp(210px,51vw,510px);
	height: clamp(377px,76vw,754px);
}

.beauty_slimming_program .reason_point-bgimg03{
	top: calc(50% - clamp(252px,47vw,465px));
	right: calc(50% - clamp(400px,96vw,957px));
	width: clamp(355px,72vw,713px);
	height: clamp(410px,83vw,823px);
}

.beauty_slimming_program .reason_point01{
/*   background: url(../img/reason_point_fw01.jpg) no-repeat calc(50% + 600px) 50%; */
}
.beauty_slimming_program .reason_point02, .beauty_slimming_program .reason_point04{
  /* background: url(../img/reason_point_fw02.jpg) no-repeat calc(50% - 600px) 50%; */
}
.beauty_slimming_program .reason_point03{
  /* background: url(../img/reason_point_fw03.png) no-repeat calc(50% + 600px) 100%; */
}
.beauty_slimming_program .reason_point_list-item{
  margin-bottom: clamp(30px,6.0vw,60px);
  position: relative;
}
.beauty_slimming_program .reason_point_list-inner{
  padding: clamp(15px,6.0vw,60px);
  border: #FF7878 solid 2px;
  background: rgba(255,255,255,0.8);
}
.beauty_slimming_program .reason_point_list-inner p{
  font-size: clamp(12px,1.8vw,18px);
  line-height: 2em;
}
.beauty_slimming_program .reason_point_list-inner p.reason_point-num{
  position: absolute;
  bottom: 0;
  right: 0;
  font-size: clamp(20px,4.0vw,40px);
  font-weight: 500;
  color: #FF7878;
  line-height: 0.6em;
  opacity: 0.8;
}
.beauty_slimming_program .reason_point_list-inner p.reason_point-num span{
  font-size: 1.8em;
}
.beauty_slimming_program .reason_point_list-ttl{
  padding-bottom: clamp(5px,1.5vw,15px);
  margin-bottom: clamp(20px,4.0vw,40px);
  border-bottom: #FF7878 solid 2px;
  position: relative;
}
.beauty_slimming_program .reason_point_list-ttl .reason_point-ttl{
  padding-right: clamp(120px,24.0vw,240px);
  font-size: clamp(16px,3.0vw,30px);
  font-weight: bold;
  line-height: 1.2em;
}
.beauty_slimming_program .reason_point_list-ttl .reason_point-ttl strong{
  font-size: 1.3em;
}
.beauty_slimming_program .reason_point01-imgbox{
  margin-top: clamp(30px,4.5vw,45px);
}
.beauty_slimming_program .reason_point01-imgbox .imgbox_text_area .imgbox_eng{
  margin-bottom: clamp(5px,1.5vw,15px);
  font-size: clamp(35px,6.8vw,68px);
  font-weight: 500;
  color: #C5CBD5;
  line-height: 1em;
  letter-spacing: -0.04em;
  opacity: 0.8;
}
.beauty_slimming_program .reason_point01-imgbox.imgbox_r{
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  position: relative;
}
.beauty_slimming_program .reason_point01-imgbox.imgbox_r img{
  margin-right: -120px;
}
.beauty_slimming_program .reason_point01-imgbox.imgbox_r .imgbox_text_area{
  padding-right: 45px;
}
.beauty_slimming_program .reason_point01-imgbox.imgbox_l{
  display: flex;
  align-items: center;
  position: relative;
}
.beauty_slimming_program .reason_point01-imgbox.imgbox_l img{
  margin-left: -120px;
}
.beauty_slimming_program .reason_point01-imgbox.imgbox_l .imgbox_text_area{
  padding-left: 45px;
}
.beauty_slimming_program .reason_point02-box{
  width: 100%;
  box-sizing: border-box;
  padding: clamp(15px,3.0vw,30px) clamp(20px,4.0vw,40px);
  margin: 15px 0 35px;
  border: #FF7878 2px solid;
  background: url(../images/opinfo/lp/reason_point02_icon.png) no-repeat bottom right;
  background-size: clamp(115px,23.0vw,230px) auto;
  background-color: #FFF1F1;
}
.beauty_slimming_program .reason_point02-box li{
  padding: 0.6em 0 0.6em 50px;
  font-size: clamp(12px,2.2vw,22px);
  color: #FF7878;
  line-height: 1.4em;
  position: relative;
}
.beauty_slimming_program .reason_point02-box li:last-child{
  border-bottom: none;
}
.beauty_slimming_program .reason_point02-box li::before{
  content: "";
  display: block;
  width: 31px; height: 29px;
  background: url(../img/others/icon_check_01.png) no-repeat;
  background-size: cover;
  position: absolute; top: 50%; left: 0;
  transform: translateY(-50%);
}
.beauty_slimming_program .reason_point03-imgbox{
  display: flex;
  justify-content: space-between;
  max-width: 720px;
  margin: 0 auto 30px;
}
.beauty_slimming_program .reason_point03-imgbox img{
  margin: auto;
}
.beauty_slimming_program .reason_point03-imgbox li{
  position: relative;
}
.beauty_slimming_program .reason_point03-imgbox li span{
  display: flex;
  justify-content: center;
  align-items: center;
  width: clamp(50px,10vw,100px);
  height: clamp(50px,10vw,100px);
  background: #fff;
  border-radius: 100%;
  border: #FF7878 solid 2px;
  font-size: clamp(8px,1.5vw,15px);
  font-weight: 500;
  color: #FF7878;
  position: absolute;
  top: -10px;
  left: -50px;
}
.beauty_slimming_program .reason_case-contents{
  max-width: 80%;
  margin: 0 auto clamp(20px,3.0vw,30px);
}
.beauty_slimming_program .reason_case-contents .reason_case-movie{
  position: relative;
  width:100%; /* 横幅は100%にしておく(ここを変えたい場合は実装コード2の方法を確認してください) */
  height:0; /* 高さは0にしておく(padding-topで高さを指定するため) */
  padding-top: 56.25%; /* 高さを指定(16:9) */
}
.beauty_slimming_program .reason_case-contents .reason_case-movie iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.beauty_slimming_program .reason_point03-imgbox{
  text-align: center;
}

.beauty_slimming_program .reason_point-cont{
  margin-bottom: clamp(10px,3vw,30px);
}

.beauty_slimming_program .reason_point-cont-text{
	margin-bottom: clamp(5px,1vw,10px);
}

.beauty_slimming_program .reason_point-list>li{
  margin-bottom: clamp(5px,1vw,10px);
}

.beauty_slimming_program .reason_point-list-ttl{
    font-size: clamp(14px,2.2vw,20px);
    font-weight: 600;
    color: #FF7878;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .reason_satisfaction{
    padding-left: 15px;
    padding-right: 15px;
  }
  .beauty_slimming_program .reason_point_list-inner, .beauty_slimming_program .reason_point_list-ttl{
    border-width: 1px;
  }
  .beauty_slimming_program .reason_point_list-inner p{
    padding-left: 0;
    padding-right: 0;
  }
  .beauty_slimming_program .reason_point01-imgbox{
    display: block !important;
  }
  .beauty_slimming_program .reason_point01-imgbox.imgbox_r img, .beauty_slimming_program .reason_point01-imgbox.imgbox_l img{
    margin: 0 0 10px;
  }
  .beauty_slimming_program .reason_point01-imgbox.imgbox_r .imgbox_text_area, .beauty_slimming_program .reason_point01-imgbox.imgbox_l .imgbox_text_area{
    padding: 0;
  }
  .beauty_slimming_program .reason_point01-imgbox .imgbox_text_area .imgbox_eng{
    text-align: center;
  }
  .beauty_slimming_program .reason_point02-box{
    margin: 30px 0 15px;
    border-width: 1px;
  }
  .beauty_slimming_program .reason_point02-box li{
    padding-left: 25px;
  }
  .beauty_slimming_program .reason_point02-box li::before{
    width: 15px; height: 14px;
  }
  .beauty_slimming_program .reason_point03-imgbox{
    flex-direction: column;
    max-width: 60%;
    margin-bottom: 0;
  }
  .beauty_slimming_program .reason_point03-imgbox li{
    margin-bottom: 15px;
  }
  .beauty_slimming_program .reason_point03-imgbox li:last-child{
    margin-bottom: 0;
  }
  .beauty_slimming_program .reason_point03-imgbox li span{
    left: -25px;
    border-width: 1px;
  }
}

/* 料金表 */
.beauty_slimming_program .lp-price{
  text-align: center;
  width: 100%;
  padding: clamp(15px,6vw,60px);
  background: #fff;
  box-sizing: border-box;
}
.beauty_slimming_program .lp-price-tbl{
  table-layout: fixed;
  width: 100%;
}
.beauty_slimming_program .lp-price-tbl tr:nth-child(odd) td{
  background: #F6F6F6;
}
.beauty_slimming_program .lp-price-tbl tr:nth-child(even) td{
  background: #FFFFFF;
}
.beauty_slimming_program .lp-price-tbl th, .beauty_slimming_program .lp-price-tbl td{ 
  font-family: '游ゴシック','Yu Gothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro';
}
.beauty_slimming_program .lp-price-tbl th{
  padding: clamp(5px,1.2vw,12px) clamp(10px,3.0vw,30px);
  background: #FF7878;
  border-right: rgba(255,255,255,0.2) 1px solid;
  font-size: clamp(12px,2.4vw,24px);
  font-weight: 500;
  color: #fff;
  text-align: center;
  line-height: 1;
  border: none;
}
.beauty_slimming_program .lp-price-tbl th:last-child{
  border-right: none;
}
.beauty_slimming_program .lp-price-tbl th.tbl_index-name{
  width: 35%;
}
.beauty_slimming_program .lp-price-tbl th.tbl_index-unit{
  width: 16%;
}
.beauty_slimming_program .lp-price-tbl td{
  padding: clamp(10px,2.5vw,25px) clamp(10px,3.0vw,30px);
  border-bottom: #A5A5A5 1px solid;
  font-size: clamp(12px,2.2vw,22px);
  font-weight: 500;
}

.beauty_slimming_program .lp-price-tbl td.tbl_price{
  font-size: clamp(20px,4.0vw,40px);
  color: #FF7878;
}
.beauty_slimming_program .lp-price-tbl td.tbl_price span{
  font-size: clamp(10px,2.0vw,20px);
}

.beauty_slimming_program .lp-price-tbl td.tbl_price p.price_blue{
  background: #a2beee;
  color: #FFF;
  padding: 8px 20px 4px;
  font-size: clamp(12px,2.2vw,22px);
  border-radius: 5px;
  display: inline-block;  
  line-height: 1.2;
}

.beauty_slimming_program .lp-price-tbl td.tbl_price p.price_caution{
  font-size: clamp(10px,1.4vw,14px);
  margin:clamp(10px,1.0vw,10px) 0 0 0 ;
  color: #000;
}

.beauty_slimming_program .lp-price-tbl td.tbl_price p strong{
  font-size: clamp(20px,4.2vw,42px);
}

@media screen and (max-width: 640px) {
  .beauty_slimming_program .lp-price-tbl th.tbl_index-name{
    width: 40%;
  }
  .beauty_slimming_program .lp-price-tbl td.tbl_price p{
    padding: 8px 8px 4px;
  }
}

/* 症例モデル募集コンテンツ */
.beauty_slimming_program .model_contetns{
  padding: 0 clamp(15px,6vw,60px) clamp(30px,6vw,60px);
  background: url(../img/model_bg_pc.jpg) no-repeat top;
  background-size: contain;
}
.beauty_slimming_program .model_ttl{
  padding: clamp(25px,5vw,50px) clamp(15px,3vw,30px);
  margin-bottom: clamp(15px,4vw,40px);
}
.beauty_slimming_program .model_ttl-img{
  margin-bottom: 20px;
}
.beauty_slimming_program .model_ttl p{
  font-size: clamp(12px,2.2vw,22px);
  font-weight: 500;
  line-height: 2em;
}
.beauty_slimming_program .model_detail{
  padding: clamp(30px,4.5vw,45px) clamp(15px,8vw,80px) clamp(15px,4.5vw,45px);
  border: #FF7878 solid 2px;
  position: relative;
}
.beauty_slimming_program .model_fw01{
  position: absolute;
  left: -90px;
  bottom: 0;
}
.beauty_slimming_program .model_fw02{
  position: absolute;
  right: -80px;
  top: -170px;
}
.beauty_slimming_program .model_fw03{
  position: absolute;
  right: -195px;
  top: 90px;
}
.beauty_slimming_program .model_fw03 img{
  max-width: 70%;
}
.beauty_slimming_program .model_detail-ttl{
  width: fit-content;
  margin: 0 auto 30px;
  background-image: linear-gradient(transparent 75%, #FFF7D0 0%);
  font-size: clamp(20px,4vw,40px);
  font-weight: 500;
  text-align: center;
  line-height: 1em;
}
.beauty_slimming_program .model_detail p{
  font-size: clamp(12px,1.8vw,18px);
  line-height: 1.8em;
}
.beauty_slimming_program .model_detail p.model_notes{
  font-size: clamp(10px,1.6vw,16px);
  text-align: center;
}
.beauty_slimming_program .model_detail .model_icon{
  display: block;
  margin: 20px auto;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .model_contetns{
    background: url(../img/model_bg_sp.jpg) no-repeat top;
    background-size: contain;
  }
  .beauty_slimming_program .model_detail{
    border-width: 1px;
  }
  .beauty_slimming_program .model_ttl-img{
    max-width: 60%;
  }
  .beauty_slimming_program .model_detail .model_icon{
    max-width: 80%;
  }
  .beauty_slimming_program .model_fw01{
    left: -100px;
    bottom: 70px;
  }
  .beauty_slimming_program .model_fw02{
    right: -220px;
    top: -80px;
  }
  .beauty_slimming_program .model_fw03{
    right: -240px;
    top: 190px;
  }
  .beauty_slimming_program .model_fw01 img, .beauty_slimming_program .model_fw02 img, .beauty_slimming_program .model_fw03 img{
    max-width: 70%;
  }
}

/* 施術の流れセクション */
.beauty_slimming_program #main .section_flow{
    background:#fff;
}

/* 施術の流れコンテンツ */
.beauty_slimming_program .flow_list{
  position: relative;
}
.beauty_slimming_program .flow_list::after{
  content: "";
  height: 100%;
  border-left: #FF7878 2px dotted;
  position: absolute;
  top: 0;
  left: 170px;
}
.beauty_slimming_program .flow_list-item{
  padding: 40px clamp(15px,6.0vw,60px) clamp(20px,5.0vw,50px);
  margin-top: clamp(75px,11vw,110px);;
  background-color: #fff;
  border-top: #D1D5DD 2px solid;
  border-right: #D1D5DD 2px solid;
  border-bottom: #FF7878 2px solid;
  border-left: #FF7878 2px solid;
  position: relative;
  z-index: 1;
}
.beauty_slimming_program .flow_list-ttl{
  padding-bottom: clamp(10px,2.0vw,20px);
  margin-bottom: clamp(15px,3.0vw,30px);
  border-bottom: #707070 1px solid;
  position: relative;
}
.beauty_slimming_program .flow_list-ttl img{
  box-shadow: -4px 4px 0px 0px #E2E2E2;
  position: absolute;
  top: -110px;
  right: 0;
}
.beauty_slimming_program .flow_list-step{
  display: flex;
  align-items: center;
  font-size: clamp(22px,5.8vw,58px);
  font-weight: 500;
  color: #C5CBD5;
  opacity: 0.8;
  line-height: 1;
}
.beauty_slimming_program .flow_list-step span{
  padding-left: 0.05em;
  font-size: clamp(50px,10vw,100px);
  color: #FF7878;
}
.beauty_slimming_program .flow_list-title{
  font-size: clamp(16px,3.0vw,30px);
  font-weight: 500;
  line-height: 1.6em;
}
.beauty_slimming_program .flow_list-text{
  font-size: clamp(12px,1.8vw,18px);
  line-height: 2em;
  letter-spacing: 0.02em;
}
.beauty_slimming_program .flow_list-box{
  display: flex;
  align-items: flex-start;
  margin-top: 30px;
}
.beauty_slimming_program .flow_list-box img{
  margin-left: -120px;
}
.beauty_slimming_program .flow_list-box .flow_list-text{
  padding-left: 30px;
}
.beauty_slimming_program .flow_list-btn{
  display: flex;
  margin-top: 10px;
}
.beauty_slimming_program .flow_list-btn a{
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: clamp(14px, calc((14/375) * 100vw), 18px);
  font-weight: bold;
  background: #f7536f;
  border-radius: 2em;
  padding: 0.2em 3.5em;
  min-height: 45px;
  line-height: 1.25;
  box-sizing: border-box;
  position: relative;
  letter-spacing: 0;
}
.beauty_slimming_program .flow_list-btn a:after{
  content: '';
  display: block;
  width: 0.5em;
  height: 0.5em;
  transform: rotate(45deg);
  position: absolute;
  right: 1.5em;
  top: 0;
  bottom: 0;
  margin: auto;
  border-top: 2.5px solid #fff;
  border-right: 2.5px solid #fff;
  background: none;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .flow_list::after{
    left: 100px;
  }
  .beauty_slimming_program .flow_list-item{
    border-width: 1px;
  }
  .beauty_slimming_program .flow_list-ttl img{
    max-width: 60%;
    box-shadow: -2px 2px 0px 0px #E2E2E2;
    right: -40px;
    top: -100px;
  }
  .beauty_slimming_program .flow_list-box{
    display: block;
    margin-top: 20px;
  }
  .beauty_slimming_program .flow_list-box img{
    margin-left: 0;
    margin-bottom: 15px;
  }
  .beauty_slimming_program .flow_list-box .flow_list-text{
    padding-left: 0;
  }

  .beauty_slimming_program .flow_list-btn a{
    width: 100%;
    padding: 0.5em 1em;
  }
}

/* よくあるご質問コンテンツ */
.beauty_slimming_program .faq__list{
    position: relative;
    z-index: 4;
}
.beauty_slimming_program .faq__question, .beauty_slimming_program .faq__answer{
    z-index: 1;
    cursor: pointer;
    font-size: clamp(14px,2.2vw,22px);
    position: relative;
    line-height: 1.5;
    padding: 15px 50px 15px 15px;
}
.beauty_slimming_program .faq__question, .beauty_slimming_program .faq__answer_txt{
    display: flex;
    align-items: center;
}
.beauty_slimming_program .faq__question{
    background: #fff;
    color: #FF7878;
    border: 1px solid #FF7878;
    border-bottom: none;
    transition: all 0.4s;
}
.beauty_slimming_program .faq__question:hover{
    background: #ffeeeefc;
}
.beauty_slimming_program .faq__answer{
    background: #F5F5F5;
    border: 1px solid #FF7878;
    border-bottom: none;
}
.beauty_slimming_program .faq__question::before, .beauty_slimming_program .faq__question::after{
    display: inline-block;
    content: "";
    position: absolute;
    width: 24px;
    height: 2px;
    top: 50%;
    right: clamp(35px, 5vw, 60px);
    background-color: #FF7878;
    transition: .2s;
    width: clamp(13px,2.6vw,26px);
    height: 2px;
    right: 15px;
    top: 45%;
}
.beauty_slimming_program .faq__question::before{
    content: '';
}
.beauty_slimming_program .faq__question::after{
    content: '';
    transform: rotate(90deg);
}
.beauty_slimming_program .faq__question.js--accordion-open::after{
    transform: rotate(0deg);
}
.beauty_slimming_program .faq__question span, .beauty_slimming_program .faq__answer span{
    margin-left: 55px;
    display: block;
}
.beauty_slimming_program .faq__item:last-child dt, .beauty_slimming_program .faq__item:last-child dd{
    border-bottom: 1px solid #FF7878;
}
.beauty_slimming_program .faq__item:last-child dd{
    border-top: none;
}
.beauty_slimming_program .question_icon{
    position: absolute;
    top: 24px;
}
.beauty_slimming_program .faq__question_txt, .beauty_slimming_program .faq__answer_txt{
    position: relative;
}
.beauty_slimming_program .faq__question_txt::before, .beauty_slimming_program .faq__answer_txt::before{
    content: '';
    display: block;
    width: clamp(20px,3.8vw,38px);
    height: clamp(30px,4.6vw,46px);
    position: absolute;
    top: -10px;
    left: 0;
}
.beauty_slimming_program .faq__question_txt::before{
    background: url('../img/question.png') no-repeat;
    background-size: 100%;
}
.beauty_slimming_program .faq__answer_txt::before{
    background: url('../img/answer.png') no-repeat;
    background-size: 100%;
}
.beauty_slimming_program .accordion_option{
    display: none;
}
.beauty_slimming_program .faq__doctor-outer{
  display: flex;
  justify-content: flex-end;
  margin-top: 0;
  margin-bottom: 20px;
}
.beauty_slimming_program .faq__doctor{
  font-size: clamp(12px,1.8vw,18px);
  background: #fff;
  padding: 0.6em 1em 0.6em 0.8em;
  box-sizing: border-box;
  display: inline-block;
  border-left: #ff7878 6px solid;
  text-align: right;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program #main .section_question{
    /* background: url(../img/question_background_sp.jpg) no-repeat center top; */
    background-color: #FFFCE9;
    background-size: contain;
  }
  .beauty_slimming_program .section_question .section_ttl{
    padding: 0 30px;
  }
  .beauty_slimming_program .faq__question, .beauty_slimming_program .faq__answer{
      font-size: 14px;
      padding: 15px 43px 15px 15px;
  }
  .beauty_slimming_program .faq__question::before, .beauty_slimming_program .faq__question::after{
      width: 13px;
      height: 1px;
      right: 15px;
      top: 45%;
  }
  .beauty_slimming_program .faq__question span, .beauty_slimming_program .faq__answer span{
      margin-left: 30px;
  }
  .beauty_slimming_program .faq__question_txt::before, .beauty_slimming_program .faq__answer_txt::before{
      width: 20px;
      height: 30px;
      top: -3px;
  }
}

/*症例写真一覧コンテンツ*/
.beauty_slimming_program .modal_list{
    display: flex;
    flex-wrap: wrap;
    padding: 0;
}
.beauty_slimming_program .modal_list > li{
    max-width: calc(calc(100% - 30px)/3);
    width: 100%;
}
.beauty_slimming_program .modal_list--col2 > li{	max-width: calc(calc(100% - 15px)/2); }
.beauty_slimming_program .modal_list > li:not(:last-child){
  margin-right: 15px;
  margin-bottom: 15px;
}
.beauty_slimming_program .modal_list > li:nth-child(3n){
  margin-right: 0;
}
.beauty_slimming_program .modal_list--col2 > li:nth-child(3n){ margin-right: 15px; }
.beauty_slimming_program .modal_list--col2 > li:nth-child(2n){ margin-right: 0; }
.beauty_slimming_program .modal_list__link::before, .beauty_slimming_program .modal_list__link::after{
  content: none;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .modal_list > li{
    padding: 0;
  }
  .beauty_slimming_program .modal_list > li, .beauty_slimming_program .modal_list > li:nth-child(3n){
    max-width: calc(calc(100% - 15px)/2);
    margin-right: 15px;
  }
  .beauty_slimming_program .modal_list > li:nth-child(2n){
    margin-right: 0;
  }
}

/*ドクタースライダーコンテンツ*/
/* Arrows */
.beauty_slimming_program .slick-prev, .beauty_slimming_program .slick-next{position: absolute;top: calc(50% - 21px);display: block;width: clamp(25px,4vw,40px);height: clamp(56px,10.2vw,102px);cursor: pointer;z-index: 3;background: url('../img/slick-arrow_next.jpg') center no-repeat;background-size: cover;outline: none;border:none;}

.beauty_slimming_program .slick-prev{background: url('../img/slick-arrow_pre.jpg') center no-repeat;background-size: cover;}
.beauty_slimming_program .slick-prev:hover, .beauty_slimming_program .slick-prev:focus, .beauty_slimming_program .slick-next:hover, .beauty_slimming_program .slick-next:focus{opacity: 0.7}

.beauty_slimming_program .slick-prev{
    left: calc(50% - 364px);
}
.beauty_slimming_program .slick-next{
    right: calc(50% - 364px);
}
/* Dots */
.beauty_slimming_program .slick-dots{
    position: relative;
    bottom: 0;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
}
.beauty_slimming_program .slick-dots li{
    position: relative;
    display: inline-block;
    width: clamp(3px,1.6vw,16px);
    height: clamp(3px,1.6vw,16px);
    padding: 5px;
    cursor: pointer;
}

.beauty_slimming_program .slick-dots li:not(:last-child){
    margin-right: clamp(25px,5vw,50px);
}
.beauty_slimming_program .slick-dots li button{
    font-size: 0;
    line-height: 0;
    display: block;
    width: 0;
    height: 0;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.beauty_slimming_program .slick-dots li button:hover, .beauty_slimming_program .slick-dots li button:focus{
    outline: none;
}
.beauty_slimming_program .slick-dots li button:hover:before, .beauty_slimming_program .slick-dots li button:focus:before{
    opacity: 1;
}
.beauty_slimming_program .slick-dots li button:before{
    font-family: 'slick';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    text-align: center;
    opacity: .25;
    color: #493232;
    background: #493232;
    border-radius: 50px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transition: all ease 0.3s;
    z-index: 3;
}
.beauty_slimming_program .slick-dots li.slick-active button:before{
    opacity: 1;
    background: #FF7878;
}
.beauty_slimming_program .js--ad_list{
  display:none;
}
@media screen and (max-width: 640px) {
    .beauty_slimming_program .slick-prev{
        left: -10px;
    }
    .beauty_slimming_program .slick-next{
        right: -10px;
    }
}

/*slickの高さを合わせる*/
.beauty_slimming_program .slick-dotted.slick-slider.doctor-slick .item{
    background-color:#fff;
    padding: clamp(15px,3vw,30px);
    border: 2px solid #FF7878;
    display: flex;
    flex-direction: column;
    margin-bottom: clamp(25px,5vw,50px);
    box-sizing: border-box;
}

/*ドクタープロフィール上部～ドクター紹介文*/
.beauty_slimming_program .doctor_profile{
    display: flex;
    align-items: center;
    margin-bottom: clamp(15px,3vw,30px);
}
.beauty_slimming_program .doctor_profile-img{
    overflow: hidden;
    width: clamp(115px,23vw,230px);
    height: clamp(150px,30vw,300px);
    background-color: #DFDFDF;
    margin-right: clamp(15px,3vw, 30px);
    position: relative;
    z-index: 1;
    object-fit: cover;
}
.beauty_slimming_program .doctor_profile-img img{
    overflow: hidden;
    height: 100%;
    object-fit: cover;
}
.beauty_slimming_program .doctor_profile-txt p{
    line-height:1.5;
}
.beauty_slimming_program .doctor_profile-achive{
    font-size: clamp(12px,2.4vw,24px);
    font-weight: 500;
    color: #fff;
    background: url(../img/doctor_archive_bg.png) no-repeat;
    background-size: 100%;
    text-align: center;
    padding: 0 clamp(15px,3vw,30px);
    box-sizing: border-box;
    margin-bottom: clamp(5px,1vw,10px);
    min-width: clamp(168px,33vw,336px);
    min-height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.beauty_slimming_program .doctor_profile-position{
    margin-bottom: 10px;
}
.beauty_slimming_program .doctor_profile-name{
    font-weight: 500;
}
.beauty_slimming_program .doctor_profile-name span{
    position: relative;
    font-size: clamp(16px,3.5vw,35px);
    padding-bottom: 5px;
    display: block;
}
.beauty_slimming_program .doctor_profile-name span::before{
    content:
    '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    border: 1px solid #FF7878;
    min-width: clamp(150px,30vw,300px);
}
.beauty_slimming_program .doctor_profile-name small{
    display: block;
    font-size: clamp(13px,2.6vw,26px);
    color: #FF7878;
    margin-top: clamp(7px,1.4vw,14px);
}
.beauty_slimming_program .doctor_about{
    padding: clamp(15px,3vw,30px);
    background-color: #FFF2F2;
    margin-bottom: clamp(15px,3vw,30px);
}
.beauty_slimming_program .doctor_profile-position, .beauty_slimming_program .doctor_about-txt p, .beauty_slimming_program .doctor_list >li{
    font-size: clamp(12px,2.4vw,18px);
    font-weight:500;
    line-height: 1.5;
}
.beauty_slimming_program .doctor_about-txt p + p{
    margin-top: clamp(10px,1.5vw,15px);
}

/* ドクターアコーディオン */
.beauty_slimming_program .ad-head{
    min-height: clamp(35px,7vw,70px);
    background-color: #FF7878;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: clamp(13px,2.6vw,22px);
    font-weight: 500;
    border:1px solid #FF7878;
    transition:.4s;
    padding:5px;
    box-sizing:
    border-box;
    cursor: pointer;
    position:relative;
}

.beauty_slimming_program .ad-head:hover{
  opacity:.8;
}
.beauty_slimming_program .ad-head.js--accordion-open{
    background-color: #fff;
    color: #FF7878;
}
.beauty_slimming_program .doctor_word{
    position:relative;
}
.beauty_slimming_program .doctor_word::before{
    content:'経歴・備考を見る';
}
.beauty_slimming_program .js--accordion-open .doctor_word::before{
    content:'閉じる';
}

/*矢印*/

.beauty_slimming_program .link-allow01{
	position:relative;
}

.beauty_slimming_program .link-allow01::before{
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  border-bottom: 2px solid #fff;
  width: clamp(20px,4.5vw,45px);
  height: 0;
  margin: auto;
  transition: ease all 0.3s;
  z-index: 1;
}
.beauty_slimming_program .link-allow01::after{
  content: "";
  display: block;
  border-bottom: 2px solid #fff;
  width: clamp(8px,1.5vw,15px);
  position: absolute;
  top: calc(50% + -1px);
  right: 20px;
  transform: rotate(45deg);
  transform-origin: right bottom;
  transition: ease all 0.3s;
  z-index: 1;
}

.beauty_slimming_program .link-allow01:hover{
  opacity: 0.8;
}

.beauty_slimming_program .link-allow01:hover::before{
  transform: translateX(5px);
}
.beauty_slimming_program .link-allow01:hover::after{
  transform: translateX(5px) rotate(45deg);
}

@media screen and (max-width: 640px) {
	.beauty_slimming_program .link-allow01::after{
		top: calc(50% + 0px);
	}
}


/*経歴・備考*/
.beauty_slimming_program .ttl02{
    font-size: clamp(16px,2.8vw,28px);
    font-weight: 500;
    color: #FF7878;
    position:
    relative;
    margin-bottom: clamp(10px,2vw,20px);
    display: block;
}
.beauty_slimming_program .ttl02 span{
    display: inline-block;
    background-color: #fff;
    position: relative;
    z-index: 2;
    padding-right: 5px;
}
.beauty_slimming_program .ttl02::before{
    content:'';
    display:block;
    position:absolute;
    border: 1px solid #FF7878;
    top: calc(50% + 0px);
    width: 100%;
    z-index: 1;
}
.beauty_slimming_program .doctor_career{
  margin-bottom: clamp(25px,5vw,50px);
}
.beauty_slimming_program .doctor_remark{
  margin-bottom: clamp(25px,5vw,50px);
}
.beauty_slimming_program .doctor_list >dl+dl{
  margin-top:clamp(5px,1vw,10px);
}
.beauty_slimming_program .doctor_list >dl a{
  color: #FF7878;
  text-decoration: underline;
}
.beauty_slimming_program .doctor_list >li a:hover{
  text-decoration: none;
}
.beauty_slimming_program .doctor_list >dl dt{
  display: inline-block;
  background-color: #FF7878;
  padding: 2px 5px;
  color: #fff;
  font-size: clamp(10px,2vw,20px);
  margin-bottom: 3px;
}
.beauty_slimming_program .doctor_list >dl dd{
font-size: clamp(12px,2.4vw,18px);
font-weight: 500;
line-height: 1.5;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .ttl02::before{
    top: calc(50% - 2px);
  }
}

/*白色アイコン*/
.beauty_slimming_program .white_icon{
  position:relative;
}
.beauty_slimming_program .white_icon::before, .beauty_slimming_program .white_icon::after{
  content: "";
  display: block;
  background: #fff;
  position: absolute;
  top: 50%;
  right: 15px;
  width: 20px;
  height: 2px;
  transform: translateY(-50%);
  transition: all 0.4s;
}
.beauty_slimming_program .white_icon::before{
  right: 5px;
  transform: translate(-50%, -50%) rotate(90deg);
}
.beauty_slimming_program .js--accordion-open.white_icon::before, .beauty_slimming_program .js--accordion-open.white_icon::after{
    background:#FF7878;
}
.beauty_slimming_program .js--accordion-open.white_icon::before{
  transform: translate(-50%, -50%) rotate(0deg);
}
@media screen and (max-width: 640px) {
    .beauty_slimming_program .slick-dotted.slick-slider.doctor-slick .item{
        border:1px solid #FF7878;
    }
    .beauty_slimming_program .white_icon::before, .beauty_slimming_program .white_icon::after{
        width:10px;
        height:1px;
    }
    .beauty_slimming_program .white_icon::before{
        right:10px;
    }
	/*矢印*/
	.beauty_slimming_program .link-allow01::before, .beauty_slimming_program .link-allow01::after{
		border-bottom: 1px solid #fff;
	}
}

/*○○の整形施術一覧*/
.beauty_slimming_program .opinfo-page-list-02__title-link{
  background: #FF7878;
  color: #ffffff;
  line-height: 1.47;
  font-size: clamp(16px,3.4vw,26px);
  padding: 0.5em 40px 0.5em 1em;
  width: 100%;
  display: block;
  box-sizing: border-box;
  text-align: center;
  position: relative;
}
.beauty_slimming_program .opinfo-page-list-02__items{
  border-left: 1px solid #A5A5A5;
  border-top: 1px solid #A5A5A5;
  display: flex;
  flex-wrap: wrap;
}
.beauty_slimming_program .opinfo-page-list-02__item{
  border-right: 1px solid #A5A5A5;
  border-bottom: 1px solid #A5A5A5;
  width: calc(100% / 4);
  background: #ffffff;
  box-sizing: border-box;
}
.beauty_slimming_program .opinfo-page-list-02__items:not(:has(> :nth-child(n+4))) > .opinfo-page-list-02__item{ /*3つ以下（4つ目以降がない場合）の時は要素が均等に広がるように設定（PC用）*/
  flex-grow:1
}
.beauty_slimming_program .opinfo-page-list-02__link{
  color: #3D3D3D;
  font-size: clamp(12px,1.8vw,18px);
  background-color: #F6F6F6;
  display: flex;
  align-items: center;
  height: 100%;
  box-sizing: border-box;
  padding: 0.7em 2.0em 0.7em 0.7em;
  position: relative;
  letter-spacing: 0;
}
.beauty_slimming_program .opinfo-page-list-02__link:hover{
  opacity: 0.8;
}
.beauty_slimming_program .opinfo-page-list-02__title-link-vector, .beauty_slimming_program .opinfo-page-list-02__link-vector{
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  border-bottom: 1px solid #3D3D3D;
  width: 14px;
  height: 0;
  margin: auto;
  transition: ease all 0.3s;
}
.beauty_slimming_program .opinfo-page-list-02__title-link-vector:after, .beauty_slimming_program .opinfo-page-list-02__link-vector:after{
  content: "";
  display: block;
  border-bottom: 1px solid #3d3d3d;
  width: 5px;
  position: absolute;
  right: 0;
  transform: rotate(45deg);
  transform-origin: right bottom;
}
.beauty_slimming_program .opinfo-page-list-02__title-link-vector, .beauty_slimming_program .opinfo-page-list-02__title-link-vector:after{
  border-color: #ffffff;
  border-width: 2px;
}
.beauty_slimming_program .opinfo-page-list-02__title-link:hover .opinfo-page-list-02__title-link-vector, .beauty_slimming_program .opinfo-page-list-02__link:hover .opinfo-page-list-02__link-vector{
  transform: translateX(5px);
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .opinfo-page-list-02__title-link{
    text-align: left;
  }
  .beauty_slimming_program .opinfo-page-list-02__item{
    width: calc(100% / 2);
  }
	.beauty_slimming_program .opinfo-page-list-02__items:not(:has(> :nth-child(n+4))) > .opinfo-page-list-02__item{ /*SPでは広がらないようにもどす*/
    flex-grow:0
	}
  .beauty_slimming_program .opinfo-page-list-02__link{
    padding: 0.9em 3.2em 0.9em 0.7em;
  }
}






/*症例写真*/
.beauty_slimming_program .c-lpcase{
  display: grid;
  gap: 20px 3%;
  grid-template-columns: 1fr 1fr;
}
.beauty_slimming_program .c-lpcase:has(> .w100, .beauty_slimming_program .w50, .beauty_slimming_program .c-lpcase__item:only-child){
  grid-template-columns: 1fr;
  row-gap: 36px;
  justify-items: center;
}
.beauty_slimming_program .c-lpcase__item{
  box-sizing: border-box;
  position: relative;
}
.beauty_slimming_program .c-lpcase__item :where(img, .beauty_slimming_program div){
  border: 10px solid #C5CBD5;
  box-sizing: border-box;
}
.beauty_slimming_program .c-lpcase__item--before, .beauty_slimming_program .c-lpcase__item--after{
  padding-top: 45px;
}
.beauty_slimming_program .c-lpcase__item--after :where(img, .beauty_slimming_program div), .beauty_slimming_program .c-lpcase__item--border-pink :where(img, .beauty_slimming_program div){
  border-color: #FF7878;
}
.beauty_slimming_program .c-lpcase__item--border-none :where(img, .beauty_slimming_program div){
  border: none;
}
.beauty_slimming_program .c-lpcase__item--before:before, .beauty_slimming_program .c-lpcase__item--after:before{
  display: block;
  font-size: clamp(15px,calc((15/375) * 100vw),30px);
  position: absolute;
  line-height: 1;
  top: 0.3em;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
}
.beauty_slimming_program .c-lpcase__item--before:before{
  content: "Before";
  color: #C5CBD5;
}
.beauty_slimming_program .c-lpcase__item--after:before{
  content: "After";
  color: #FF7878;
}
.beauty_slimming_program .c-lpcase__item--serch-icon::before{
  content: '';
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 1;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #000;
  opacity: 0.5;
}
.beauty_slimming_program .c-lpcase__item--serch-icon::after{
  content: '';
  background: url(../img/search.svg) no-repeat;
  background-position: 0;
  position: absolute;
  top: 15px;
  right: 15px;
  z-index: 2;
  width: 25px;
  height: 25px;
  display: block;
}
.beauty_slimming_program .c-lpcase__property a{
  font-size: clamp(12px,1.8vw,18px);
  color: inherit;
  text-decoration: underline;
}
.beauty_slimming_program .c-lpcase__property a:hover{
  text-decoration: none;
}

/*症例写真中央寄せ*/

.beauty_slimming_program .c-lpcase.c-lpcase--center{
  display: flex;
  justify-content:center;
  flex-wrap: wrap;
  row-gap: 10px;
}
/* 奇数かつ兄弟要素を持つ（単独でない）場合*/
.beauty_slimming_program .c-lpcase.c-lpcase--center:has(> :nth-child(odd):not(:only-child):last-child)::after{
  content: "";
  display: block;
  width: calc(50% - 15px);
  height: auto;
}
.beauty_slimming_program .c-lpcase.c-lpcase--center .c-lpcase__item{
  width: auto;
  max-width: calc(50% - 15px);
}

@media screen and (max-width: 640px) {
  .beauty_slimming_program .c-lpcase{
    padding-left: 15px;
    padding-right: 15px;
    row-gap: 6vw;
  }
	.beauty_slimming_program .c-lpcase__item :where(img, .beauty_slimming_program div){
    border-width: 5px;
  }
  .beauty_slimming_program .c-lpcase.c-lpcase--center{
    display: grid;
    grid-template-columns: 1fr 1fr;
	}
  .beauty_slimming_program .c-lpcase.c-lpcase--center:has(> :nth-child(odd):not(:only-child):last-child)::after{
    content: none;
  }
  .beauty_slimming_program .c-lpcase.c-lpcase--center .c-lpcase__item{
    max-width: fit-content;
	}
  .beauty_slimming_program .c-lpcase__item--before, .beauty_slimming_program .c-lpcase__item--after{
    padding-top: 14%;
  }
  .beauty_slimming_program .c-lpcase__item--serch-icon::before{
    width: clamp(30px,calc(calc(30/375)*100vw),100px);
    height: clamp(30px,calc(calc(30/375)*100vw),100px);
    top: clamp(4px,calc(calc(4/375)*100vw),100px);
    right: clamp(4px,calc(calc(4/375)*100vw),100px);
  }
  .beauty_slimming_program .c-lpcase__item--serch-icon::after{
    background-size: cover;
    width: clamp(17px,calc(calc(17/375)*100vw),100px);
    height: clamp(17px,calc(calc(17/375)*100vw),100px);
    top: clamp(10px,calc(calc(10/375)*100vw),100px);
    right: clamp(10px,calc(calc(10/375)*100vw),100px);
  }
}

/* モーダルアイコン設置（使用例：症例写真） */
.beauty_slimming_program .icn_modal{
  position:relative;
}
.beauty_slimming_program .icn_modal::before{
  content: '';
  position: absolute;
  top: clamp(10px,2.8vw,20px);
  right: clamp(10px,2.8vw,20px);
  background: url(../img/icon_glass.png) no-repeat;
  background-size: 100%;
  width: clamp(17px,4.5vw,34px);
  height: clamp(17px,4.5vw,34px);
  z-index: 2;
}
.beauty_slimming_program .icn_modal::after{
  content: '';
  position: absolute;
  top: clamp(4px,1vw,8px);
  right: clamp(4px,1vw,8px);
  z-index: 1;
  width: clamp(30px,8vw,60px);
  height: clamp(30px,8vw,60px);
  border-radius: 50%;
  background-color: #000;
  opacity: .5;
}
.beauty_slimming_program .icn_modal--serch-icon-small::before{
  top: clamp(10px,2.8vw,15px);
  right: clamp(10px,2.8vw,15px);
  width: clamp(17px,4.5vw,25px);
  height: clamp(17px,4.5vw,25px);
}
.beauty_slimming_program .icn_modal--serch-icon-small::after{
  width: clamp(30px,8vw,40px);
  height: clamp(30px,8vw,40px);
}
@media screen and (max-width:640px) {
  .beauty_slimming_program .icn_modal--serch-icon-small::before{
    top: clamp(10px,2.8vw,12px);
    right: clamp(10px,2.8vw,13px);
  }
}

/*モーダル部分*/
.beauty_slimming_program .with-featherlight .featherlight{
  background: #6A6A6A;
}
.beauty_slimming_program .with-featherlight .featherlight .featherlight-content{
  padding: 10px;
}
.beauty_slimming_program .with-featherlight .featherlight .featherlight-close-icon{
  top: -45px;
  right: 0;
  line-height: 38px;
  width: 38px;
  font-size: 18px;
  background-color: #3D3D3D;
  text-shadow: 1px 0px #fff;
}
.beauty_slimming_program .with-featherlight .featherlight .featherlight-inner{
  max-height: calc(90vh - 60px);
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .with-featherlight .featherlight .featherlight-inner{
    max-height: calc(75vh - 60px);
  }
}



/*------------------------------- CVデザインボタン -------------------------------*/
/* 共通部分 */
.beauty_slimming_program .btnwrap, .beauty_slimming_program .link_cont, .beauty_slimming_program .counceling_btn, .beauty_slimming_program .line_link02{
  width: 90%;
  margin: 0 auto;
  text-align:center;
}
.beauty_slimming_program .change_btn{
  position: relative;
  display: inline-block;
}
.beauty_slimming_program .change_btn::before{
  content: '';
  display: block;
  position: absolute;
  background-size: 100%;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  transition: ease .4s;
}
.beauty_slimming_program .change_btn:hover::before{
  opacity: 1;
}
.beauty_slimming_program .link_cont picture, .beauty_slimming_program .counceling_btn .counceling_btn_link, .beauty_slimming_program .shourei_btn_link{
  position: relative;
  display: inline-block;
}
.beauty_slimming_program .link_cont picture::before, .beauty_slimming_program .counceling_btn .counceling_btn_link::before, .beauty_slimming_program .shourei_btn_link::before{
  content: '';
  display: block;
  position: absolute;
  background-size: 100%;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  transition: ease .4s;
}
.beauty_slimming_program .link_cont picture:hover::before, .beauty_slimming_program .counceling_btn .counceling_btn_link:hover::before, .beauty_slimming_program .shourei_btn_link:hover::before{
  opacity: 1;
}
.beauty_slimming_program .counceling_btn_link::before{
  background-image: url('../img/counceling_btn_sp_hover.png');
}
.beauty_slimming_program .shourei_btn_link::before{
  background-image: url('../img/shourei_btn_hover.png');
}
/*LINEボタン用*/
.beauty_slimming_program .line_link02{
  text-align: center;
}
.beauty_slimming_program .line_link a, .beauty_slimming_program .line_link02 a{
  display: inline-block;
  position: relative;
}
.beauty_slimming_program .line_link a::before, .beauty_slimming_program .line_link02 a::before{
  content: '';
  position: absolute;
  bottom: -4px;
  left: 4px;
  display: block;
  width: 100%;
  height: calc(100% - 22px);
  background-color: #BEBEBE;
  transition: all .4s;
}
.beauty_slimming_program .line_link img, .beauty_slimming_program .line_link02 img{
  position: relative;
  bottom: 0;
  left: 0;
  transition: all 0.4s;
}
.beauty_slimming_program .line_link img:hover, .beauty_slimming_program .line_link02 img:hover{
  bottom: -4px;
  left: 4px;
}
/*カウンセリング予約ボタン用*/
.beauty_slimming_program .counceling_txt{
display: block;
width: fit-content;
margin: 0 auto 15px;
position: relative;
font-size: clamp(13px, 2.6vw, 26px);
font-weight: 500;
line-height: 1.4em;
letter-spacing: 0;
text-align: center;
font-feature-settings: "palt";
}
.beauty_slimming_program .counceling_txt::before, .beauty_slimming_program .counceling_txt::after{
content: "";
display: block;
width: clamp(1px, 0.2vw, 2px);
height: clamp(35px, 5.5vw, 55px);
background: #000;
position: absolute;
top: 50%;
}
.beauty_slimming_program .counceling_txt::before{
transform: rotate(-15deg) translateY(-50%);
left: -25px;
}
.beauty_slimming_program .counceling_txt::after{
transform: rotate(15deg) translateY(-50%);
right: -25px;
}
@media screen and (max-width: 640px) {
.beauty_slimming_program .counceling_txt::before{
    left: -10px;
  }
.beauty_slimming_program .counceling_txt::after{
    right: -10px;
  }
}


/*------------------------------- ページ別での固有パーツ -------------------------------*/
/* 症例写真セクション */
.beauty_slimming_program #main .section_case{
  background: url(../img/case_bg_pc.jpg) repeat-x 50% top #FFE9EB;
  overflow: hidden;
  padding: clamp(35px,7vw,70px) 0 clamp(50px,10vw,100px);
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program #main .section_case{
    background-position: left top;
    background-size: cover;
  }
}

/* おすすめセクション */
.beauty_slimming_program .section_ideal-ttl{
  /*padding: clamp(10px,2vw,20px) 0 clamp(20px,4vw,40px) clamp(35px,7vw,70px);*/
  /*padding: clamp(10px,2vw,20px) 0 clamp(20px,4vw,40px) 0;*/
  font-size: clamp(20px,3.7vw,37px);
  font-weight: 500;
  line-height: 1.4em;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .section_ideal{
    padding-top: 0;
    /*background-color: #F3F3F3;*/
    background-size: cover;
  }
  .beauty_slimming_program .section_ideal-ttl{
    padding: 0 0;
  }
}

/*よくあるご質問セクション*/
.beauty_slimming_program #main .section_question{
  /*   background: url(../img/question_background_pc.jpg) no-repeat center -90px; */
    background-color: #FFFCE9;
    font-family: 'Noto Sans JP', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN';
    overflow: hidden;
    position:relative;
  }
  
  .beauty_slimming_program .question_inner{
    position:relative;
    z-index:2;
  }
  
  .beauty_slimming_program .question-bgimg01{
    position:absolute;
    top: clamp(-40px,8vw,-80px);
    right: calc(50% - clamp(230px,49vw,490px));
    z-index: 1;
    width: clamp(400px,104vw,1039px);
    height: clamp(265px,53vw,531px);
  }
  
/* ○○の効果セクション */
.beauty_slimming_program .merit_list{
  margin-bottom: clamp(30px,6vw,60px);
}
.beauty_slimming_program .merit_list-item{
  margin-top: clamp(40px,8vw,80px);
}
.beauty_slimming_program .merit_list_ttl{
  position: relative;
}
.beauty_slimming_program .merit_list_ttl-num{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 5px clamp(10px,2vw,20px);
  background: #fff;
  border: #FF7878 2px solid;
  position: absolute;
  top: -50px;
  left: 0;
  font-size: clamp(14px,3vw,30px);
  font-weight: bold;
  color: #FF7878;
  letter-spacing: 0.04em;
  line-height: 1;
}
.beauty_slimming_program .merit_list_ttl-num span{
  padding-left: clamp(5px,1vw,10px);
  font-size: clamp(30px,6vw,60px);
  letter-spacing: normal;
}
.beauty_slimming_program .merit_list_ttl-text{
  padding: clamp(20px,4vw,40px) clamp(15px,3vw,30px);
  background: #FF7878;
  font-size: clamp(16px,3.4vw,34px);
  font-weight: 500;
  color: #fff;
  line-height: 1.2em;
  text-align: center;
}
.beauty_slimming_program .merit_list-box{
  padding: clamp(15px,6vw,60px);
  border: #FF7878 solid 2px;
}
.beauty_slimming_program .merit_list-box--bg_white{
  background: #ffffff;
}
.beauty_slimming_program .merit_list-box img{
  display: block;
  margin: 0 auto clamp(20px,4vw,40px);
}
.beauty_slimming_program .merit_list-box p{
  font-size: clamp(12px,1.8vw,18px);
  line-height: 2em;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .section_merit_inner, .beauty_slimming_program .section_merit_inner .section_ttl{
    padding: 0 15px;
  }
  .beauty_slimming_program .merit_list-box{
    border-width: 1px;
  }
  .beauty_slimming_program .merit_list_ttl-num{
    top: -30px;
    border-width: 1px;
  }
}
/* 手術方法セクション */
.beauty_slimming_program .method_gridlist{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: flex-start;
  gap: 52px 40px;
}
.beauty_slimming_program .method_gridlist-item{
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  row-gap: 12px;
}
.beauty_slimming_program .method_gridlist-item--big{
  grid-column: 1 / 3;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .method_gridlist{
    grid-template-columns: repeat(1, 1fr);
    row-gap: 16px;
  }
  .beauty_slimming_program .method_gridlist-item--big{
    grid-column: auto;
    row-gap: 10px;
  }
}
/* ○○の種類セクション */
.beauty_slimming_program .type_gridlist{
  display: grid;
  grid-template-columns: 300px 2fr;
  align-items: flex-start;
  column-gap: 20px;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .type_gridlist{
    grid-template-columns: repeat(1, 1fr);
    row-gap: 12px;
  }
}

/* ビューティスリムプログラムページ改修 */
.beauty_slimming_program .p-table-bsp th, .beauty_slimming_program .p-table-bsp td{
  font-size: 16px;
  padding: 0.8em 0.3em 0.8em 1em;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .p-table-bsp th, .beauty_slimming_program .p-table-bsp td{
    font-size: clamp(12px,2.2vw,22px);
  }
}

.beauty_slimming_program .p-about-bs{
  position: relative;
}
.beauty_slimming_program .p-bs-btn{
  background: linear-gradient(to right, #e0c97b, #a78d42);
  width: 60%;
  position: absolute;
  bottom: 80px;
  left: 80px;
  box-shadow: 3px 3px 0px 1px #cdcdcd;
  transition: ease all 0.3s;
}
.beauty_slimming_program .p-bs-btn::after{
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border: 1px solid #ffffff;
  border-left: none;
  border-bottom: none;
  position: absolute;
  top: 50%;
  right: 30px;
  transform: rotate(45deg)translateY(-50%);
}
.beauty_slimming_program .p-bs-btn:hover{
  opacity: 0.7;
}
.beauty_slimming_program .p-bs-btn a{
  color: #ffffff;
  display: block;
  padding: 14px 0;
  letter-spacing: 0.1em;
  text-align: center;
  font-size: 1.1em;
  box-sizing: border-box;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .p-bs-btn{
    width: 46%;
    bottom: 14vw;
    left: 15vw;
    box-shadow: 2px 2px 0px 1px #cdcdcd;
  }
  .beauty_slimming_program .p-bs-btn::after{
    content: "";
    width: 7px;
    height: 7px;
    top: 44%;
    right: 14px;
  }
  .beauty_slimming_program .p-bs-btn a{
    font-size: 11px;
    padding: 0.5em 0;
  }
}

.beauty_slimming_program .p-bsp-feature-txt{
  width: 1000px;
  margin: auto;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .p-bsp-feature_container{
    display: flex;
    position: relative;
    padding: clamp(10px,4.5vh,50px) 0 clamp(20px,8.5vh,80px);
  }
  .beauty_slimming_program .p-bsp-feature_container .p-bsp-feature-txt{
    width: 64vw;
    max-width: 264px;
    margin: initial;
    padding: 22px 20px;
    background: #ffffff;
    font-size: clamp(12px,1.8vw,18px);
    box-sizing: border-box;
    z-index: 1;
    box-shadow: 0 0 10px 0 #cccccc;
  }
  .beauty_slimming_program .p-bsp-feature_container figure{
    width: 58vw;
    max-width: 244px;
    position: absolute;
    right: 0;
    bottom: 0;
  }
  .beauty_slimming_program .p-bsp-feature .wrap1300{
    padding: 0 15px;
  }
}
@media screen and (max-width: 320px) {
  .beauty_slimming_program .p-bsp-feature_container{
    padding: 0 0 30px;
  }
  .beauty_slimming_program .p-bsp-feature_container figure{
    width: 62vw;
  }
}

.beauty_slimming_program .p-program{
  background: #ffffff;
  padding: 50px 290px 38px 50px;
  position: relative;
}
.beauty_slimming_program .p-program_container{
  display: flex;
}
.beauty_slimming_program .p-program_item{
  counter-increment: listNum;
}
.beauty_slimming_program .p-program_item:nth-child(n+2){
  margin-top: 38px;
}
.beauty_slimming_program .p-program_ttl{
  position: relative;
}
.beauty_slimming_program .p-program_ttl-num{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 5px clamp(10px,2vw,20px);
  background: #fff;
  border: #FF7878 2px solid;
  /* position: absolute; */
  top: 50%;
  transform: translateY(-50%);
  display: inline-block;
  color: #FF7878;
  letter-spacing: 0.04em;
  line-height: 1;
  height: fit-content;
}
.beauty_slimming_program .p-program_ttl-num::after{
  content: counter(listNum, decimal-leading-zero);
  font-size: 2.0em;
}
.beauty_slimming_program .p-program_ttl-text{
  background: #FF7878;
  font-weight: 500;
  color: #fff;
  line-height: 1.5em;
  font-size: 18px;
  padding: 8px 5px;
  display: flex;
  text-align: left;
  gap: 10px;
}

.beauty_slimming_program .p-program_list-box{
  padding: clamp(15px,1vw,60px);
  border: #FF7878 solid 2px;
}
.beauty_slimming_program .p-program_model{
  position: absolute;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .single_opinfo .p-bsp-program{
    padding-left: 15px;
    padding-right: 15px;
  }
  .beauty_slimming_program .p-program{
    padding: 50px 15px 0;
  }
  .beauty_slimming_program .p-program_container{
    flex-direction: column;
  }
  .beauty_slimming_program .p-program_ttl-num{
    left: 0;
    top: -25px;
    font-size: clamp(12px,1.8vw,28px);
  }
  .beauty_slimming_program .p-program_ttl-num::after{
    font-size: 1.6em;
  }
  .beauty_slimming_program .p-program_ttl-text{
    font-size: clamp(12px,1.8vw,28px);
    padding: 12px 0;
  }
  .beauty_slimming_program .p-program_model{
    position: initial;
    margin-top: 20px;
  }
}

.beauty_slimming_program .single_opinfo section.p-bs-movie{
  padding: clamp(50px, 7.8vw, 78px) 0 clamp(50px, 11vw, 110px);
}
.beauty_slimming_program .p-bs-movie--short{
  width: 40%;
  aspect-ratio: 9 / 16;
  overflow: hidden;
  margin: auto;
}
.beauty_slimming_program .p-bs-movie--short .p-bs-movie_item--short{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.beauty_slimming_program .p-bs-movie_item{
  aspect-ratio: 16/9;
  width: min(80vw, 720px);
  transition: all 0.5s ease;
}
  .beauty_slimming_program .p-bs-movie__slider .slick-slide:not(.slick-current) .p-bs-movie_item{
  opacity: 0.6;
  transform: scale(0.8);
}
  .beauty_slimming_program .p-bs-movie__slider .slick-dots{
  bottom: clamp(-30px, -3vw, -20px);
}
.beauty_slimming_program .p-bs-movie__slider .slick-dots li{
  width: clamp(1px,0.5vw,10px);
  height: clamp(1px,0.5vw,10px);
}
.beauty_slimming_program .p-bs-movie__slider .slick-dots li:not(:last-child){
  margin-right: 10px;
}
.beauty_slimming_program .p-bs-movie__slider .slick-dots li button::before{
  color: #FFFFFF;
  background: #ffffff;
  opacity: 1;
}
.beauty_slimming_program .p-bs-movie__slider .slick-dots li.slick-active button::before{
  color: #AB9584;
  background: #FF7878;
}
.beauty_slimming_program .p-bs-movie__slider .slick-arrow{
  display: flex;
  align-items: center;
  width: min(10vw, 175px);
  height: 100%;
  padding-inline: 10px;
}
.beauty_slimming_program .p-bs-movie__slider .slick-arrow:before{
  content: "";
  width: min(4vw, 40px);
  height: min(4vw, 40px);
  border-right: solid 2px #FFFFFF;
  border-top: solid 2px #FFFFFF;
}
.beauty_slimming_program .p-bs-movie__slider .slick-prev, .beauty_slimming_program .p-bs-movie__slider .slick-next{
  background: none;
  top: 0;
}
.beauty_slimming_program .p-bs-movie__slider .slick-prev{
  left: 5px;
}
.beauty_slimming_program .p-bs-movie__slider .slick-prev:before{
  transform: rotate(-135deg);
}
.beauty_slimming_program .p-bs-movie__slider .slick-next{
  justify-content: flex-end;
  right: 5px;
}
.beauty_slimming_program .p-bs-movie__slider .slick-next:before{
  transform: rotate(45deg);
}

.beauty_slimming_program .single_opinfo section.p-channel{
  padding: clamp(70px,13vw,130px) 0 clamp(50px,10vw,100px);
}
.beauty_slimming_program .p-channel__box{
  position: relative;
  border: solid #f43a69 2px;
  background-color: #FFFFFF;
  padding: 0 clamp(15px,4vw,50px) clamp(0px,2vw,20px);
  box-shadow: 0 1px 20px 1px rgb(0 0 0 / 16%);
}
.beauty_slimming_program .p-channel__box::before, .beauty_slimming_program .p-channel__box::after{
  content: "";
  position: absolute;
  width: 0;
  height: 0;
}
.beauty_slimming_program .p-channel__box::before{
  top: 0;
  right: 0;
  border-left: 30px solid transparent;
  border-top: 30px solid #f43a69;
}
.beauty_slimming_program .p-channel__box::after{
  bottom: 0;
  left: 0;
  border-right: 30px solid transparent;
  border-bottom: 30px solid #f43a69;
}
.beauty_slimming_program .p-channel__ttl{
  margin: 0 auto;
  max-width: calc(100% - 20px);
  width: fit-content;
  transform: translateY(calc((50% - 10px) * -1));
  background-color: #ffffff;
}
.beauty_slimming_program .p-channel__ttl a{
  transition: all .3s ease;
}
.beauty_slimming_program .p-channel__ttl a:hover{
  opacity: .6;
}
@media screen and (max-width: 640px) {
  .beauty_slimming_program .single_opinfo section.p-bs-movie{
    padding: clamp(50px, 7.8vw, 78px) 0 clamp(70px, 11vw, 110px);
  }
  .beauty_slimming_program .p-bs-movie--short{
    width: 70%;
  }
  .beauty_slimming_program .p-bs-movie__slider .slick-arrow{
    padding-inline: 0;
    width: auto;
  }
  .beauty_slimming_program .p-bs-movie__slider .slick-arrow:before{
    border: none;
    width: 25px;
    height: 60px;
    transform: rotate(0);
  }
  .beauty_slimming_program .p-bs-movie__slider .slick-prev{
    left: -8px;
  }
  .beauty_slimming_program .p-bs-movie__slider .slick-prev::before{
    background: url(../img/slick-arrow_pre.jpg) center/contain no-repeat;
  }
  .beauty_slimming_program .p-bs-movie__slider .slick-next{
    right: -8px;
  }
  .beauty_slimming_program .p-bs-movie__slider .slick-next::before{    
    background: url(../img/slick-arrow_next.jpg) center/contain no-repeat;
  }
  .beauty_slimming_program .p-channel__box::before, .beauty_slimming_program .p-channel__box::after{
    border-width: 20px;
  }
}
/* 20240520 手術の流れ用要素追加 矢印横並びリスト ここから */
.beauty_slimming_program .c-arrow-list{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(214px, 1fr));
	max-width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
	column-gap: 30px;
	row-gap: 48px;
	counter-reset: number 0;
}

.beauty_slimming_program .c-arrow-list__item{
	position: relative;
	box-sizing: border-box;
}

.beauty_slimming_program .c-arrow-list__item-img, .beauty_slimming_program .c-arrow-list__item-img--numberless{
	text-align: center;
	margin-bottom: clamp(16px, 3.5vw, 16px);
	position: relative;
}

.beauty_slimming_program .c-arrow-list__item:not(:last-child) .c-arrow-list__item-img::before, .beauty_slimming_program .c-arrow-list__item:not(:last-child) .c-arrow-list__item-img--numberless::before{
	content: "";
	position: absolute;
	top: 50%;
	right: -19px;
	transform: rotate(45deg); /*デザイン準拠で縦中央寄せにはしてません*/
	width: 12px;
	height: 12px;
	border-top: 4px solid #ec747a;
	border-right: 4px solid #ec747a;
}

.beauty_slimming_program .c-arrow-list__item-img::after{
	display: flex;
	justify-content: center;
	align-items: center;
	counter-increment: number 1;
	content: counter(number);
	width: 44px;
	height: 44px;
	line-height: 1;
	font-size: 36px;
	color: #fff;
	background-color: #ec747a;
	top: 5px;
	left: 5px;
	position: absolute;
	border-radius: 6px;
	padding-top: 5px;
	box-sizing: border-box;
}

/* ----- 20251211 追加 数字枠色 ----- */
/* 数字 紫枠 */
.beauty_slimming_program .c-arrow-list__item-img.num-purple:after{
	background-color: #b28eff;
}
/* 数字 青枠 */
.beauty_slimming_program .c-arrow-list__item-img.num-blue:after{
	background-color: #5b9dff;
}

.beauty_slimming_program .c-arrow-list__item-img:last-of-type{
	margin-bottom: 0;
}

/* 3カラム */
.beauty_slimming_program .c-arrow-list--3col{
  column-gap: 50px;
}

.beauty_slimming_program .c-arrow-list--3col__item:not(:last-child) .c-arrow-list--3col__item-img::before{
  content: "";
  right: -29px;
}

@media screen and (max-width: 640px) {
	.beauty_slimming_program .c-arrow-list{
		grid-template-columns: auto;
		row-gap: calc(90vw / 6.9);
	}
	.beauty_slimming_program .c-arrow-list__item:not(:last-child)::before{
		content: "";
		position: absolute;
		top: auto;
		bottom: calc(calc(-45vw / 6.9) - calc(13vw / 6.9));
		left: 50%;
		width: calc(46% / 6.9);
		height: auto;
		padding-bottom: calc(46% / 6.9);
		border-top: calc(14vw / 6.9) solid #ec747a;
		border-right: calc(14vw / 6.9) solid #ec747a;
		transform: translateX(-50%) rotate(135deg);
	}
	.beauty_slimming_program .c-arrow-list__item:not(:last-child) .c-arrow-list__item-img::before, .beauty_slimming_program .c-arrow-list__item:not(:last-child) .c-arrow-list__item-img--numberless::before{
		content: none;
	}
	.beauty_slimming_program .c-arrow-list__item-img::after{
		width: calc(100vw / 7.5);
		height: calc(100vw / 7.5);
		font-size: clamp(10px,11.2vw,40px);
		top: calc(20vw / 7.5);
		left: calc(20vw / 7.5);
		border-radius: calc(12vw / 7.5);
		padding-top: calc(8vw / 7.5);
	}
  .beauty_slimming_program .c-arrow-list--3col__item:not(:last-child) .c-arrow-list--3col__item-img::before{
    display: none;
  }

	/* ----- 20251211 要素追加 ----- */
	/* sp矢印なし */
	.beauty_slimming_program .c-arrow-list--sp_not-allow{
		row-gap: 30px;
	}
	.beauty_slimming_program .c-arrow-list--sp_not-allow .c-arrow-list__item:before{
		content: none;
	}

	/* sp2カラム */
	.beauty_slimming_program .c-arrow-list--sp2col{
		grid-template-columns: repeat(2, 1fr);
		gap: 18px;
	}
	.beauty_slimming_program .c-arrow-list--sp2col .c-arrow-list__item-img::after{
		width: clamp(28px, 8vw, 45px);
		height: clamp(28px, 8vw, 45px);
		font-size: clamp(18px, 6vw, 30px);
		top: 6px;
		left: 6px;
		padding-bottom: 3px;
		border-radius: 10%;
	}
}
/* 20240520 手術の流れ用要素追加 矢印横並びリスト ここまで */

/* 20240815 矢印横並びリスト（グレー） ここから */
.beauty_slimming_program .c-arrow-list--gray{
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(214px, 1fr));
	max-width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
	column-gap: 50px;
	row-gap: 25px;
}

.beauty_slimming_program .c-arrow-list--gray__item{
	position: relative;
	box-sizing: border-box;
}

.beauty_slimming_program .c-arrow-list--gray__item:not(:last-child) .c-arrow-list--gray__item-img::before{
	content: "";
	position: absolute;
	top: 50%;
	right: -41px;
	transform: translateY(-50%);
	clip-path: polygon(0 0,100% 50%,0 100%);
	background-color:#cccccc;
	width: 30px;
	height: calc(30px * 2);
}

.beauty_slimming_program .c-arrow-list--gray__item-img:last-of-type{
	margin-bottom: 0;
}

@media screen and (max-width: 640px) {
	.beauty_slimming_program .c-arrow-list--gray{
		grid-template-columns: auto;
		row-gap: calc(90vw / 6.9);
	}
	.beauty_slimming_program .c-arrow-list--gray__item:not(:last-child)::before{
		content: "";
		position: absolute;
		top: auto;
		bottom: calc(calc(-45vw / 6.9) - calc(26vw / 6.9));
		left: 43%;
		clip-path: polygon(50% 100%,100% 0,0 0);
		background-color:#cccccc;
		width: calc(100% / 6.9);
		height: 0;
		padding-top: calc((100% / 6.9) / 2);
	}

	.beauty_slimming_program .c-arrow-list--gray__item:not(:last-child) .c-arrow-list--gray__item-img::before{
		content: none;
	}
}
/* 20240815 矢印横並びリスト（グレー） ここまで */

/* 20260216 矢印なし、ナンバリングなしリスト(鼻尖形成シングルで使用) ここから */
.beauty_slimming_program .c-arrow-list--empty .c-arrow-list__item .c-arrow-list__item-img::before, .beauty_slimming_program .c-arrow-list--empty .c-arrow-list__item .c-arrow-list__item-img--numberless::before{
  content: "";
  display: none;
}

@media screen and (max-width: 640px) {
  .beauty_slimming_program .c-arrow-list--empty .c-arrow-list__item:not(:last-child)::before{
    content: "";
    display: none;
  }
}

/* ----- 20250114 FV（PC）をトリミングリサイズ ----- */
/* PCは1000x320、SPで320x150 */
.beauty_slimming_program .fv-clip{
	overflow: hidden;
}
.beauty_slimming_program .fv-clip__img{
	aspect-ratio: 25 / 8;
	object-fit: cover;
}
@media screen and (max-width: 640px) {
	.beauty_slimming_program .fv-clip__img{
		aspect-ratio: 7 / 3;
		transform: scale(1.05);
	}

	.beauty_slimming_program .fv-clip__img--shimitori_laser{
		object-position: 32% 50%;
	}
}
/* ----- 20250114 FV（PC）をトリミングリサイズ ここまで ----- */


/* ----- 20260130 アコーディオンメニュー追加 ----- */
.beauty_slimming_program .c-accordion-label{
    font-size: clamp(12px, 1.8vw, 18px);
    line-height: 1.5;
    text-align: center;
    padding: 1.0em;
    box-sizing: border-box;
    display: block;
    font-weight: 600;
    margin-top: 10px;
    position: relative;
    cursor: pointer;
    transition: all 0.3s;
    background-color: #ff7878;
    color: #ffffff;
}
.beauty_slimming_program .c-accordion-label:hover{
    opacity: 0.8;
}
.beauty_slimming_program .c-accordion-label--navy{
    background-color: #537691;
}
.beauty_slimming_program .c-accordion-label .c-accordion__icon::before, .beauty_slimming_program .c-accordion-label .c-accordion__icon::after, .beauty_slimming_program .c-accordion-label--navy .c-accordion__icon::before, .beauty_slimming_program .c-accordion-label--navy .c-accordion__icon::after{
    background: #ffffff;
}
.beauty_slimming_program .c-accordion-cont{
    padding: 0 10px 10px;
    background-color: #ff7878;
}
.beauty_slimming_program .c-accordion-cont--navy{
    background-color: #537691;
}
.beauty_slimming_program .c-accordion-cont__inner{
    background-color: #ffffff;
    padding: 30px 40px;
}
@media screen and (max-width: 640px) {
    .beauty_slimming_program .c-accordion-cont__inner{
        padding: 10px;
    }
}


/* ----- 20260305 ダーマペン改修 5つのアイコン ----- */
.beauty_slimming_program .p-effect_list{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		max-width: 830px;
		box-sizing: border-box;
		margin-inline: auto;
		--column-gap: clamp(7px, 2.4vw ,40px);
		--column-gap-double: calc(var(--column-gap) * 2);
		--row-gap: clamp(5px , calc(10vw / 3.75), 10px);
		gap: var(--row-gap) var(--column-gap);
}
.beauty_slimming_program .p-effect_list__item{
		width: calc(calc(100% - var(--column-gap-double)) / 3);
}
.beauty_slimming_program .p-effect_list__txt{
		font-size: clamp(14px, calc(14vw / 3.75) , 24px);
		text-align: center;
		line-height: 1.25;
		margin-top: clamp(6px, calc(6vw / 3.75) , 16px);
}
/* ----- 20260305 ダーマペン改修 5つのアイコン ここまで ----- */