@charset "utf-8";

/*共通*/

body{
    font-family: '游ゴシック','Yu Gothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro';
    color: #786262;
}

a {
    cursor: pointer;
}

dl {
    margin: 0;
}

dd {
    margin: 0;
}

img {
    max-width: 100%;
    vertical-align: bottom;
}

video {
    vertical-align: bottom;
    width: 100%;
}

.pc_none {
    display: none !important;
}

.sp_none {
    display: block !important;
}

.object_hidden {
    overflow: hidden;
}

.object_hidden img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    max-width: 100%;
    max-height: 100%;
}

.bg_pink {
  background-color: #fce2de;
}

.strong_blue strong {
  font-weight: inherit;
  color: #5B9DFF;
}
.strong_pink strong {
  font-weight: inherit;
  /*color: #FF7878;*/
  color: #cd5951;
}
.em_pink em {
  font-weight: inherit;
  /*color: #FF7878;*/
  color: #cd5951;
}

.text_center {
  text-align: center;
}

.wrap750{
  width:750px;
  max-width:100%;
  margin:0 auto;
}

.wrap1000{
  width:1000px;
  max-width:100%;
  margin:0 auto;
  box-sizing: border-box;
}

.wrap90{
    width: 92%;
    margin:0 auto;
}

.pb_none {
  padding-bottom: 0 !important;
}

.btnwrap,
.link_cont,
.counceling_btn,
.line_link02{
    width: 90%;
    margin: 0 auto;
    text-align:center;
}

.counceling_btn{
  background: #ffffff;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .counceling_btn{
    width: 93%;
  }
}


.change_btn{
    position: relative;
    display: inline-block;
}

.change_btn::before {
    content: '';
    display: block;
    position: absolute;
    background-size: 100%;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    transition: ease .4s;
}

.change_btn:hover::before{
    opacity: 1;
}

.link_cont picture,
.counceling_btn .counceling_btn_link,
.shourei_btn_link{
    position: relative;
    display: inline-block;
}

.link_cont picture::before,
.counceling_btn .counceling_btn_link::before,
.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;
}

.link_cont picture:hover::before,
.counceling_btn .counceling_btn_link:hover::before,
.shourei_btn_link:hover::before{
    opacity: 1;
}

.line_link02 {
    text-align: center;
}

.line_link a,
.line_link02 a {
    display: inline-block;
    position: relative;
}

.line_link a::before,
.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;
}

.line_link img,
.line_link02 img {
    position: relative;
    bottom: 0;
    left: 0;
    transition: all 0.4s;
}

.line_link img:hover,
.line_link02 img:hover {
    bottom: -4px;
    left: 4px;
}

.section_price_case .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;
  text-align: center;
}

.counceling_btn .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;
  text-align: center;
}
.counceling_btn .counceling_txt::before,
.counceling_btn .counceling_txt::after,
.section_price_case .counceling_txt::before,
.section_price_case .counceling_txt::after{
  content: "";
  display: block;
  width: clamp(1px, 0.2vw, 2px);
  height: clamp(35px, 5.5vw, 55px);
  background: #000;
  position: absolute;
  top: 50%;
}
.counceling_btn .counceling_txt::before,
.section_price_case .counceling_txt::before {
  transform: rotate(-15deg) translateY(-50%);
  left: -25px;
}
.counceling_btn .counceling_txt::after,
.section_price_case .counceling_txt::after {
  transform: rotate(15deg) translateY(-50%);
  right: -25px;
}


.section_ttl {
    max-width: 880px;
    margin: 0 auto clamp(30px,4.5vw,45px);
}
.section_ttl-text {
    width: 100%;
    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;
}
.section_ttl-text::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    border-bottom: 2px solid #cd5951;
}
.section_ttl-text::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 50%;
    border-bottom: 2px solid #A5A5A5;
}
.section_ttl-eng {
    font-size: clamp(14px,3.0vw,30px);;
    color: #A5A5A5;
    letter-spacing: 0.04em;
    text-align: center;
}

.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;
}
.section_sub_ttl01::before {
  content: "";
  width: 2px; height: 30px;
  background: #000;
  position: absolute; top: 0; right: 0;
}
.section_sub_ttl01::after {
  content: "";
  width: 2px; height: 30px;
  background: #000;
  position: absolute; bottom: 0; left: 0;
}

.section_sub_ttl_text {
  font-size: clamp(18px,3.8vw,38px);
  font-weight: 500;
  text-align: center;
  line-height: 1.3em;
}

.section_sub_ttl01 .arrow_bottom {
  display: block;
  position: absolute; 
  bottom: 0; 
  left: 50%;
}
.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;
}
.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: 767px) {
  .counceling_btn .counceling_txt::before {
    left: -20px;
    height: clamp(25px, 2.5vw, 55px);
  }
  .counceling_btn .counceling_txt::after {
    right: -20px;
    height: clamp(25px, 2.5vw, 55px);
  }
  .section_ttl-text::before,
  .section_ttl-text::after {
    border-width: 1px;
  }

  .section_price_case .counceling_txt::before{
    left: 0px;
  }
  .section_price_case .counceling_txt::after{
    right: 0px;
  }
}

/*共通 終わり*/

.flow_list-item {
  padding: 0;
  box-shadow: 0 10px 20px 0 rgb(244 58 105 / 20%);
  border: none;
  position: relative;
  z-index: 1;
}

.attention .flow_list-ttl {
  padding: 20px 10px;
}

.flow_list-detail {
  padding: 60px;
  background: #fff;
  border: #cd5951 2px solid;
  border-top: none;
}


.flow_list-detail .flow_list-text {
  margin-top: 40px;
  font-size: 22px;
  line-height: 1.8;
}
.flow_list-detail .flow_list-text.small {
  font-size: 20px;
}


@media screen and (max-width: 767px) {

  .seciton_flow_inner {
    padding: 0 15px;
  }
.flow_list-item {
    margin: 0;
  }
/* .flow_list-ttl .flow_list-step {
    padding: 2px 10px;
    border-width: 1px;
    font-size: 16px;
    top: -15px;
  } */
/* .flow_list-ttl .flow_list-title {
    font-size: 20px;
  } */
.attention .flow_list-detail {
    padding: 15px 15px 20px;
  }
  .flow_list-detail .flow_list-text {
    margin-top: 20px;
    font-size: 14px;
  }
  .flow_list-detail .flow_list-text.small {
    font-size: 12px;
  }
}
.flow_list-item{
  box-shadow:0 10px 20px 0 rgba(139, 139, 139, 0.2);
}
.attention-video{
  padding: 20px 0;
}
.attention-video-pc{
  margin: 0 auto;
  padding: 20px 0;
  width: 80%;
  aspect-ratio: 16/9;
}
.attention-txt{
  font-size: clamp(14px,3vw,22px);
  line-height: 1.8;
}
.tab_btn.active{
  position: relative;
}
.tab_btn.active::after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -20px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #333 transparent transparent transparent;
  border-width: 20px 20px 0 20px;
}

.attention_sp .accordion_one {
  margin: 0 auto;
  }

  .attention_sp .accordion_one .accordion_header {
  background-color: #a38f8e !important;
  color: #fff;
  font-size: 26px;
  font-weight: bold;
  padding: 20px 3%;
  /* text-align: center; */
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition-duration: 0.2s;
  }
  .attention_sp .accordion_one .accordion_header:hover {
  opacity: .8;
  }
  .attention_sp .accordion_one .accordion_header .i_box {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 5%;
  width: 40px;
  height: 40px;
  /*border: 1px solid #fff;*/
  margin-top: -20px;
  box-sizing: border-box;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
  }
  .attention_sp .accordion_one .accordion_header .i_box .one_i {
  display: block;
  width: 18px;
  height: 18px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.2s;
  position: relative;
  }
  .attention_sp .accordion_one .accordion_header.stay .i_box {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .attention_sp .accordion_one .accordion_header.stay .i_box .one_i {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .attention_sp .accordion_one .accordion_header.stay.open .i_box .one_i {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .attention_sp .accordion_one .accordion_header.stay.open .i_box {
    -webkit-transform: rotate(315eg);
    transform: rotate(315deg);
  }
  .attention_sp .accordion_one .accordion_header.stay .i_box .one_i:before {
    content: none;
  }
  .attention_sp .accordion_one .accordion_header.stay.open .i_box .one_i:before {
    content: "";
  }
  .attention_sp .accordion_one .accordion_header.stay.open .i_box .one_i:after {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .attention_sp .accordion_one .accordion_inner.stay {
    display: block;
  }
  .attention_sp .accordion_one .accordion_header.open .i_box {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  }
  .attention_sp .accordion_one .accordion_header .i_box .one_i:before, .attention_sp .accordion_one .accordion_header .i_box .one_i:after {
  display: flex;
  content: '';
  background-color: #fff;
  border-radius: 10px;
  width: 18px;
  height: 4px;
  position: absolute;
  top: 7px;
  left: 0;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  transform-origin: center center;
  }
  .attention_sp .accordion_one .accordion_header .i_box .one_i:before {
  width: 4px;
  height: 18px;
  top: 0;
  left: 7px;
  }
  .attention_sp .accordion_one .accordion_header.open .i_box .one_i:before {
  content: none;
  }
  .attention_sp .accordion_one .accordion_header.open .i_box .one_i:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  }
  .attention_sp .accordion_one .accordion_inner {
  display: none;
  padding: 15px;
  border-left: 1px solid #a38f8e;
  border-right: 1px solid #a38f8e;
  border-bottom: 1px solid #a38f8e;
  box-sizing: border-box;
  }
  .attention_sp .accordion_one .accordion_inner .box_one {
  /*height: 300px;*/
  }
  .attention_sp .accordion_one .accordion_inner p.txt_a_ac {
  margin: 0;
  }
  @media screen and (max-width: 767px) {
  .attention_sp .accordion_one .accordion_header {
    font-size: 18px;
  }
  .attention_sp .accordion_one .accordion_header .i_box {
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
  }
  @media screen and (max-width: 767px) {
  .attention_sp .accordion_one .accordion_header {
    font-size: 16px;
    text-align: left;
    padding: 15px 50px 15px 15px;
  }
  }

  /*タブ実装*/
.tab_box .btn_area {
  margin-bottom:;
  display: -webkit-box;
  display: flex;
  margin-bottom: 40px;
}
.btn_area{
  justify-content: space-between;
  align-items: center;
}

.tab_box .tab_btn {
  /*width: 188px;*/
  padding: 25px 0;
  color: #333;
  background: #f5f7f8;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s ease 0s;
}

.tab_btn{
  width: 33%;
  font-size: clamp(14px,3vw,18px);
  height: 50px;
  align-items: center;
  display: flex;
  justify-content: center;
  border: #333 1px solid;
  font-weight: bold;
}

.tab_box .tab_btn + .tab_btn {
  margin-left: 8px;
}

.tab_box .tab_btn:hover {
  background-color: #6a6e70;
  color: #fff;
}

.tab_box .tab_btn.active {
  background:#333;
  color:#fff;
}

.tab_box .panel_area {
  border: solid 1px #e3ebf3;
  padding: 20px;
}

.tab_box .tab_panel {
  display:none;
}

.tab_box .tab_panel.active {
  display:block;
}

.btn_area p{
  position: relative;
  line-height: 1.3;
}

.btn_area p::after{
  position: absolute;
  z-index: 99;
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid black;

}

.responsive {
    width: 100%;
    aspect-ratio: 16/9;
}


/*ヘッダーメニュー*/

.lp_header-item {
    display: flex;
    align-items: center;
    z-index:100;
}

.head__menu {
    font-family: '游ゴシック','Yu Gothic','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro';
}

.head__menu-list {
    display: flex;
}

.head__menu-list a {
    font-size: clamp(15px, 1vw, 18px);
    min-height: 30px;
    display: flex;
    align-items: center;
    padding: 0 clamp(20px, 3vw, 60px);
    position: relative;
    transition: .3s;
    letter-spacing: 0;
}

.head__menu-list a:hover {
    color: #d77a74;
    text-decoration: underline;
}


header {
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff;
    width: 100%;
    box-shadow: 1px 1px 10px rgba(0, 0, 0, .3);
    z-index: 100;
}

@media screen and (max-width: 767px) {
  header {
    z-index: 150;
  }
}

.lp_header {
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-left: 22.5px;
    background-color: #fff;
    box-sizing: border-box;
    height: min(90px,calc(90 / 750 * 100vw));;
}
/*ハンバーガーメニュー*/

.mv_double_eye {
}

.head_counceling {
    max-width: 100%;
}

.lp_header-item {
    position: relative;
}

.drawer-btn {
    display: block;
    position: absolute;
    top: calc(50% - 20px);
    right: 22.5px;
    width: 50px;
    height: 40px;
    cursor: pointer;
}

.drawer-btn span {
    display: block;
    position: absolute;
    top: calc(50% - 1px);
    right: 0;
    width: 100%;
    height: 2px;
    background-color: #000;
    border-radius: 4px;
    transition: all ease 0.3s;
}

.drawer-btn span::before,
.drawer-btn span::after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #000;
    border-radius: 5px;
    transition: all ease 0.3s;
}

.drawer-btn span::before {
    top: -15px;
}

.drawer-btn span::after {
    bottom: -15px;
}

.head__menu {
    display:none;
    position: fixed;
    top: min(90px, calc(calc(90/750) * 100vw))!important;
    left: 100%;
    bottom: 0;
    width: 100%;
    min-height: 100vh;
    padding: 0;
    background-color: #fff;
    overflow: auto;
    z-index: 99!important;
}


/*ハンバーガーメニューの中身*/
.is-drawer_open .head_counceling {
    display: none;
}

.drawer-btn.active span {
    background-color: transparent;
}

.drawer-btn.active span::before {
    top: 0;
    transform: rotate(45deg);
}

.drawer-btn.active span::after {
    bottom: 0;
    transform: rotate(-45deg);
}

.is-drawer_open .head__menu {
    display: block;
    left: 0;
}

.head__menu-inner {
    margin: clamp(40px, 11vw, 80px) auto 100px;
    max-width: 1000px;
    /* max-width: 85%; */
}

.head__menu-list {
    max-width: 85%;
    margin: 0 auto;
    justify-content: center;
    flex-direction: column;
    margin-bottom: clamp(30px, 8vw, 60px);
}

.head__menu-list li {}

.head__menu-list a {
    font-size: 20px;
    color: #3D3D3D;
    padding: 0 15px 0 clamp(40px, 8vw, 65px);
    border: none;
    border-bottom: 1px solid #A5A5A5;
    padding-bottom: 20px;
    background: url(../img/header/menu_tcb_icon.webp) no-repeat;
    background-size: 40px;
    position:
        relative;
}

.head__menu-list li:not(:last-child) a {
    margin-bottom: clamp(15px, 2vw, 20px);
}

.head__menu-list li a:hover {
    text-decoration: none;
}

.head__menu-list li a::before {
    content:
    '';
    background:
    url(../img/header/icn_arrow.webp) no-repeat;
    background-size: 100%;
    background-position: center;
    width: 33px;
    height: 14px;
    position: absolute;
    top: calc(50% - 22px);
    right: 0;
    display: inline-block;
}

/*fv*/

.fv_faceinjection {
    overflow: hidden;
    margin-top:min(90px, calc(calc(90/750) * 100vw)) !important;
}
.fv_faceinjection-inner {
    max-width: 750px;
    width: 100%;
    margin: 0 auto;
} 
/* .fv_faceinjection-inner::before {
    content: "";
    display: block;
    width: 100%;
    padding-top: 100%;
} */
/* .fv_faceinjection-inner img {
    width: auto;
    max-width: none;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
} */
/* 
@media screen and (max-width: 767px) {
  .fv_faceinjection-inner::before {
    display: none;
  }
  .fv_faceinjection-inner img {
    width: 100%;
    height: auto;
    position: static;
    transform: none;
  }
} */


/*カウントダウン*/

.box_countdown {
    font-family:  '游ゴシック体', 'YuGothic', 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN';
    max-width: 80%;
    margin: 0px auto -15px;
    text-align: center;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #786262;
    border: 2px solid #678cbf;
    padding: 10px 15px;
    box-sizing: border-box;
    position:relative;
    z-index: 10;
}


.box_countdown::before,
.box_countdown::after {
    content: '';
    position: absolute;
    left: 50%;
    height: 0;
    width: 0;
    border-width: 14px;
    border-style: solid solid solid none;
    transform: rotate(270deg);
}

.box_countdown::before {
    bottom: -20px;
    border-color: transparent #fff;
    z-index: 1;
}

.box_countdown::after {
    bottom: -23px;
    border-color: transparent #678cbf;
}

.box_countdown p {
    font-size: clamp(12px, 2vw, 20px);
    font-weight: bold;
}

.box_countdown .yycountdown-box {
    margin-left: 10px;
}

.box_countdown .yyc-day,
.box_countdown .yyc-hou,
.box_countdown .yyc-min,
.box_countdown .yyc-sec {
    font-size: clamp(16px, 3vw, 32px);
    font-weight: bold;
    color: #786262;
    border-radius: 5px;
    padding: 1.5px 6px;
}

.box_countdown .yyc-day-text,
.box_countdown .yyc-hou-text,
.box_countdown .yyc-min-text,
.box_countdown .yyc-sec-text {
    font-size: clamp(12px, 2vw, 20px);
    font-weight: bold;
    margin: 0 5px;
}

.limit_btn{
    padding: clamp(20px,4vw,40px) 0 clamp(35px,7vw,70px);
    text-align: center;
}


.section_ideal,
.section_thread-lift,
.section_faceinjection-lift,
.section_clinic,
.section_merit,
.section_flow,
.section_question,
.section_doctor {
    padding: clamp(55px,11vw,110px) 0 clamp(50px,10vw,100px);
}

.section_case_inner .section_case_inner-main_img p{
  text-align: center;
}

.explanation-area_content{
  margin: 0 auto;
  padding:50px 0;
  background: #ffe9e9;
}
.explanation-area_wrap{
  max-width: 880px;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .explanation-area_wrap {
    width: 100%;
  }
}

h4{
  margin-bottom: 50px;
  padding: 20px 0;
  text-align: center;
  background-color: #ff7777;
  color: #ffffff;
  font-size: 32px;
  font-size:clamp(20px,3.2vw,32px);
  font-weight: bolder;
}
.explanation-area_wrap .txt{
  font-weight: bolder;
  font-size: clamp(16px,1.6vw,20px);
  line-height: 1.8em;
}
.explanation-area_unit{
  display: flex;
}
@media screen and (max-width: 767px) {
  .explanation-area_unit{
    display: block;
  }
}

@media screen and (max-width: 767px) {
  .section_reason_inner {
    overflow: hidden;
  }
  .section_reason_inner,
  .section_reason_inner .section_ttl {
    padding: 0 15px;
  }
  .reason_satisfaction {
    padding-left: 15px;
    padding-right: 15px;
  }
  .reason_point_list-inner,
  .reason_point_list-ttl {
    border-width: 1px;
  }
  .reason_point01-imgbox {
    display: block !important;
  }
  .reason_point01-imgbox.imgbox_r img,
  .reason_point01-imgbox.imgbox_l img {
    margin: 0 0 10px;
  }
  .reason_point01-imgbox.imgbox_r .imgbox_text_area,
  .reason_point01-imgbox.imgbox_l .imgbox_text_area {
    padding: 0;
  }
  .reason_point01-imgbox .imgbox_text_area .imgbox_eng {
    text-align: center;
  }
  .reason_point02-box {
    margin: 30px 0 15px;
    border-width: 1px;
  }
  .reason_point02-box li {
    padding-left: 25px;
  }
  .reason_point02-box li::before {
    width: 15px; height: 14px;
  }
  .reason_point03-imgbox {
    flex-direction: column;
    max-width: 60%;
    margin-bottom: 0;
  }
  .reason_point03-imgbox li {
    margin-bottom: 15px;
  }
  .reason_point03-imgbox li:last-child {
    margin-bottom: 0;
  }
  .reason_point03-imgbox li span {
    left: -25px;
    border-width: 1px;
  }
}

/*price*/

.section_price{
    background-color: #F2F5F9;
}
.section_price_case {
  width: 100%;
  padding: clamp(15px,6vw,60px);
  background: #fff;
  box-sizing: border-box;
}
.section_price_case p{
  padding: 25px;
  font-size: clamp(16px,1.6vw,22px);
  line-height: 1.5;
}
.section_price_case-tbl {
  table-layout: fixed;
  width: 100%;
}
.section_price_case-tbl tr:nth-child(odd) td {
	background: #F6F6F6;
}

.section_price_case-tbl th {
  padding: clamp(5px,1.2vw,12px) clamp(10px,3.0vw,30px);
  background: #d77a74;
  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;
}
.section_price_case-tbl th:last-child {
  border-right: none;
}
.section_price_case-tbl th.tbl_index-name {
  width: 35%;
}
.section_price_case-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;
}

.section_price_case-tbl td.tbl_price {
  font-size: clamp(20px,4.0vw,40px);
  color: #d77a74;
}
.section_price_case-tbl td.tbl_price span {
  font-size: clamp(10px,2.0vw,20px);
}
.section_price_case-tbl td.tbl_price p{
  margin-top: 10px;
  padding: 10px;
  border-radius: 5px;
  background: #A2BEEE;
  font-size: clamp(12px,2.2vw,22px)!important;
  font-weight: 600;
  color: #ffffff;
  line-height: 1.3;
}
.section_price_case-tbl td.tbl_price p strong{
  font-size: clamp(20px,5.2vw,28px);
}

/*
.double_eye_price_case {
    padding: 25px 15px;
    box-sizing:
    border-box;
    background-color: #fff;
    width: 90%;
    margin: 0 auto;
}

.double_eye_price_case__list > li{
    text-align:center;
}
*/

@media screen and (max-width: 767px) {
  .section_price_inner,
  .section_price_inner .section_ttl {
    padding: 0 15px;
  }
}

/* Merit */

.section_merit{
  background-color:#fff;
  /*padding: clamp(35px,7vw,70px) 0;*/
}

.double_eye_model{
  /*margin-bottom: clamp(20px,4vw,40px);*/
}

.merit_contents{
  /*margin-bottom: clamp(35px,7vw,70px);*/
}

.section_merit_inner {
  overflow: hidden;
}

.merit_list {
  margin-bottom: clamp(30px,6vw,60px);
}
.merit_list-item {
  margin-top: clamp(40px,8vw,80px);
}
.merit_list_ttl {
  position: relative;
}
.merit_list_ttl-num {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 5px clamp(10px,2vw,20px);
  background: #fff;
  border: #d77a74 2px solid;
  position: absolute;
  top: -50px;
  left: 0;
  font-size: clamp(14px,3vw,30px);
  font-weight: bold;
  color: #d77a74;
  letter-spacing: 0.04em;
}
.merit_list_ttl-num span {
  padding-left: clamp(5px,1vw,10px);
  font-size: clamp(30px,6vw,60px);
  letter-spacing: normal;
}
.merit_list_ttl-text {
  padding: clamp(20px,4vw,40px) clamp(15px,3vw,30px);
  background: #d77a74;
  font-size: clamp(16px,3.4vw,34px);
  font-weight: 500;
  color: #fff;
  line-height: 1.2em;
  text-align: center;
}
.merit_list-box {
  padding: clamp(15px,6vw,60px);
  border: #d77a74 solid 2px;
}
.merit_list-box img {
  display: block;
  margin: 0 auto clamp(20px,4vw,40px);
}
.merit_list-box p {
  font-size: clamp(12px,1.8vw,18px);
  line-height: 2em;
}

@media screen and (max-width: 767px) {
  .section_merit_inner,
  .section_merit_inner .section_ttl {
    padding: 0 15px;
  }
  .merit_list-box {
    border-width: 1px;
  }
  .merit_list_ttl-num {
    top: -30px;
    border-width: 1px;
  }
  
}

/*施術の流れ*/

.section_flow{
    background:#fff;
}

.double_eye_flow_list{
    margin-bottom:30px;
}

.flow_list {
  margin-bottom: 60px;
  position: relative;
}
.flow_list::after {
  content: "";
  height: 100%;
  border-left: #d77a74 2px dotted;
  position: absolute;
  top: 0;
  left: 170px;
}

.flow_list-item {
  padding: clamp(40px,10vw,100px) clamp(15px,6.0vw,60px) clamp(20px,5.0vw,50px);
  margin-top: clamp(75px,12vw,120px);;
  background-color: #fff;
  border-top: #D1D5DD 2px solid;
  border-right: #D1D5DD 2px solid;
  border-bottom: #d77a74 2px solid;
  border-left: #d77a74 2px solid;
  position: relative;
  z-index: 1;
}

.flow_list-ttl {
  padding-bottom: clamp(10px,2.0vw,20px);
  margin-bottom: clamp(15px,3.0vw,30px);
  border-bottom: #cd5951 1px solid;
  position: relative;
}

.flow_list-ttl img {
  box-shadow: -4px 4px 0px 0px #E2E2E2;
  position: absolute;
  top: max(-150px, calc(-1 * (calc(150/750) * 100vw)));
  right: max(-80px, calc(-1 * (calc(60/750) * 100vw))); 
  width: 60%;
}

.flow_list-step {
  display: flex;
  align-items: center;
  font-size: clamp(22px,4.5vw,45px);
  font-weight: 500;
  color: #C5CBD5;
  opacity: 0.8;
}

.flow_list-step span {
  padding-left: 0.05em;
  font-size: clamp(50px,7.5vw,75px);
  color: #d77a74;
}

.flow_list-title {
  font-size: clamp(16px,3.0vw,30px);
  font-weight: 500;
  line-height: 1.6em;
}
.flow_list-text {
  font-size: clamp(12px,2.2vw,22px);
  line-height: 2em;
}
.flow_list-box {
  display: block;
  margin-top: 40px;
}
.flow_list-box img {
  width: 100%;
  margin-bottom: 30px;
}
.flow_list-box .flow_list-text {
}

@media screen and (max-width: 767px) {

  .section_flow_inner,
  .section_flow_inner .section_ttl {
    padding: 0 15px;
  }
  .flow_list::after {
    left: 100px;
  }
  .flow_list-ttl img {
    max-width: 60%;
    box-shadow: -2px 2px 0px 0px #E2E2E2;
  }
  .flow_list-box {
    display: block;
    margin-top: 20px;
  }
  .flow_list-box img {
    margin-left: 0;
    margin-bottom: 15px;
  }
  .flow_list-box .flow_list-text {
    padding-left: 0;
  }
}


/*Q&A*/

.section_question {
    /*background: url(../img/line-double-eye/question_background_pc.png) no-repeat center -90px;
    background-color: #FFFCE9;*/
    font-family: 'Noto Sans JP', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN';
    overflow: hidden;
}

.section_question_inner {
    position: relative;
}

.section_question_inner::before,
.section_question_inner::after {
    content: "";
    display: block;
    position: absolute;
}

.faq__list {
    position: relative;
    z-index: 10;
}

.faq__item {}

.faq__item+.faq__item {}

.faq {}

.faq dl {}

.faq__question,
.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;
}

.faq__question,
.faq__answer_txt {
    display: flex;
    align-items: center;
}

.faq__question {
    background: #fff;
    color: #d77a74;
    border: 1px solid #d77a74;
    border-bottom: none;
    transition: all 0.4s;
}

.faq__question:hover {
    background: #ffeeeefc;
}

.faq__answer {
    background: #F5F5F5;
    border: 1px solid #d77a74;
    border-bottom: none;
}

.faq__question::before,
.faq__question::after {
    display: inline-block;
    content: "";
    position: absolute;
    width: 24px;
    height: 2px;
    top: 50%;
    right: clamp(35px, 5vw, 60px);
    background-color: #d77a74;
    transition: .2s;
    width: clamp(13px,2.6vw,26px);
    height: 2px;
    right: 15px;
    top: 45%;
}

.faq__question::before {
    content: '';
}

.faq__question::after {
    content: '';
    transform: rotate(90deg);
}

.faq__question.js--accordion-open::after {
    transform: rotate(0deg);
}

.faq__question span,
.faq__answer span {
    margin-left: 55px;
    display: block;
}

.faq__item:last-child dt,
.faq__item:last-child dd {
    border-bottom: 1px solid #d77a74;
}

.faq__item:last-child dd {
    border-top: none;
}

.question_icon {
    position: absolute;
    top: 24px;
}

.faq__question_txt,
.faq__answer_txt {
    position: relative;
}

.faq__question_txt::before,
.faq__answer_txt::before {
    content: '';
    display: block;
    width: clamp(20px, 3.8vw, 38px);
    height: clamp(30px, 4.6vw, 46px);
    position: absolute;
    top: -5%;
    left: 0%;
}

.faq__question_txt::before {
    content: "Q.";
    background-size: 100%;
    font-size: clamp(15px, 3vw, 30px);
}

.faq__answer_txt::before {
    content: "A.";
    background-size: 100%;
    font-size: clamp(15px, 3vw, 30px);
}

.accordion_option {
    display: none;
}


/*モーダル部分*/

.with-featherlight .featherlight {
    background: #6A6A6A;
}

.with-featherlight .featherlight .featherlight-content {
    padding: 10px;
}

.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;
}

.with-featherlight .featherlight .featherlight-inner {
    max-height: calc(90vh - 60px);
}

/*modal_list*/

.modal_list{
    display: flex;
    flex-wrap: wrap;
    padding: 0 15px;
}

.modal_list > li{
    max-width: calc(calc(100% - 15px)/2);
}
.modal_list > li:not(:last-child){
	margin-right: 15px;
	margin-bottom: 15px;
}
.modal_list li:nth-child(2n) {
    margin-right: 0;
}

/*クリニック*/

.section_clinic {
    font-family: '游明朝', 'Yu Mincho', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro';
    background: #fff;
}

#clinic article > h2 {
    width:85%;
    margin: 0 auto clamp(30px,6vw,60px);
    text-align: center;
}


/* 日本地図⇒脱毛LP仕様 クリニック一覧 */

/* spアコーディオン */

dl.accordion {
    overflow: hidden;
}

dl.accordion>dt::before {
    color: #fff;
    position: absolute;
    top: 0.5em;
    left: 0.5em;
}

dl.accordion>dd {
    background: #fff;
    padding: 0.5em 0.5em 0.5em 2em;
    position: relative;
    display: none;
}

dl.accordion>dd::before {
    position: absolute;
    top: 0.5em;
    left: 0.5em;
}


/* clinic */

#clinic p {
    margin-bottom: 1em;
}

#clinic dl.accordion>dt::before {
    content: '▼';
}

#clinic dl.accordion>dd {
    padding: 0.5em;
    background: #fff;
}

#clinic dl.accordion>dd::before {
    content: none;
}

#clinic dl.accordion h3 {
    margin: 3%;
    border-bottom: 3px double #c0b0a3;
}

#clinic dl.accordion dl {
    display: flex;
    margin: 0 3% 3%;
    flex-wrap: wrap;
    justify-content: space-between;
}

#clinic dl.accordion dl dt {
    width: 3em;
    text-align: center;
    border-top: 1px solid #ccc;
    padding: 3% 0;
}

#clinic dl.accordion dl dd {
    padding: 3% 0 3% 1em;
    width: calc(100% - 4em);
    border-top: 1px solid #ccc;
}

#clinic dl.accordion dl dt:first-child,
#clinic dl.accordion dl dt:first-child+dd {
    border: none;
    padding-top: 0;
}

#clinic a {
    color: #cd5951;
}
    dl.accordion {
        width: 85%;
        margin: 0 auto;
        padding: 0;
        -webkit-text-size-adjust: 100%;
        font-size: clamp(13px,3.5vw,26px);
    }

    #clinic dl.accordion>dt {
        font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
        background: #d77a74;
        color: #fff;
        font-weight: bold;
        padding: 0.5em 0.5em 0.5em 2em;
        position: relative;
        border-bottom: 2px solid #fff;
        cursor: pointer;
    }

    #clinic dl.accordion>dt::before {
        content: '▼';
        color: #fff;
        position: absolute;
        top: 0.5em;
        left: 0.5em;
    }

    #clinic dl.accordion>dd {
        padding: 0.5em;
        background: #fff;
    }

    #clinic dl.accordion>dd::before {
        content: none;
    }

    #clinic dl.accordion h3 {
        margin: 3%;
        border-bottom: 3px double #ffb400;
    }

    #clinic dl.accordion dl {
        display: flex;
        margin: 0 3% 3%;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    #clinic dl.accordion dl dt {
        width: 3em;
        text-align: center;
        border-top: 1px solid #ccc;
        padding: 3% 0;
    }

    #clinic dl.accordion dl dd {
        padding: 3% 0 3% 1em;
        width: calc(100% - 4em);
        border-top: 1px solid #ccc;
    }

    #clinic dl.accordion dl dt:first-child,
    #clinic dl.accordion dl dt:first-child+dd {
        border: none;
        padding-top: 0;
    }

    #clinic a {
        color: #cd5951;
    }


.reserve{
    background: #F2F5F9;
}
.reserve .section_ttl {
    padding: clamp(55px,11vw,110px) 0 0 0;
}

@media screen and (max-width: 767px) {
  .reserve .section_ttl {
    padding: clamp(55px,11vw,110px) 30px 0;
  }
}

.ttl01{
    width: 85%;
    margin: 0 auto clamp(30px,6vw,60px);
    position: relative;
}

@media screen and (max-width: 1000px) {
    #clinic .quotation dt {
        display: block;
        margin-bottom: 5px;
    }

    #clinic .quotation dd {
        display: block;
        color: #444;
        padding-right: 20px;
    }
}

@media screen and (max-width: 767px) {
    .pc_none {
        display: block !important;
    }

    .sp_none {
        display: none !important;
    }
}

/* フロートバナー */
#float_bnr{
    width: 750px;
    text-align: center;
    display: none;
    background-color: #fff;
    position: fixed;
    left: calc(50% - 375px);
    bottom: 0;
    /*z-index: 150!important;*/
}
#float_bnr .close{
    width: 27px;
    height: 27px;
    text-indent: -1000px;
    background: url(../img/common/lightbox_close.webp) no-repeat center;
    overflow: hidden;
    position: absolute;
    top: 10px;
    right: 10px;
}
@media screen and (max-width: 640px) {
    #float_bnr{
        width: 100%;
        left: 0;
    }
    #float_bnr img{ 
        max-width: 100vw;
    }
    #float_bnr .close{
        background-size: 60%;
        top: 0;
        right: 0;
    }
}

/*フッター*/

footer,
.l-foot-subnav {
    font-family: 'Noto Sans JP', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN';
    background: #FFF5F5;
}

.l-foot-subnav {
    display: flex;
    justify-content: center;
    width: 100%;
    padding-top: 50px;
    font-size: 22px;
}

.l-foot-subnav__link {
    color: #ACB3C2;
    display: flex;
    align-items: center;
}

.l-foot-subnav__link::before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    color: #ACB3C2;
    line-height: 1;
    width: 0.5em;
    height: 0.5em;
    border: 0.1em solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: translateX(-25%) rotate(45deg);
    margin-right: 8px;
    position: relative;
    bottom: 3px;
}

.l-foot-subnav__link:hover {
    color: #ACB3C2;
    text-decoration: underline;
}

footer small {
    color: #fdc5c5;
    font-size: 22px;
    text-align: center;
}

footer {
    padding: 10px 0 50px;
}

.foot_btn {
    position: fixed;
    right: 50px;
    bottom: 50px;
    /*z-index: 150;*/
    cursor: pointer;
}


@media screen and (max-width: 767px) {
    /*ヘッダー*/
    .lp_header {
        padding-left: 10px;
        /*height: 45px;*/
    }

    /*20220804追記*/
    .head_logo h1 {
        width: 80px;
    }
    .lp_header-item {
        /*margin-right: 70px;*/
    }

    .drawer-btn {
        width: 35px;
        height: 28px;
        top: calc(50% - 15px);
        right: 17px;
    }

    .drawer-btn span::before {
        top: -12px;
    }

    .drawer-btn span::after {
        bottom: -12px;
    }

    .head__menu-list a {
        background-position: 0 4px;
    }
    .head__menu-list li:not(:last-child) a {
        margin-bottom: 12px;
    }
    .head__menu-list a {
        font-size: 16px;
        padding: 0 12px 0 40px;
        padding-bottom: 10px;
        background-size: 26px;
    }

    .head__menu-list li a::before {
        width: 23px;
        top: calc(50% - 17px);
    }

    /*カウントダウン*/
    .box_countdown {
        max-width: 85%;
        padding: 5px 7px;
        margin: 0px auto 0px;
    }

    .box_countdown::before,
    .box_countdown::after {
        border-width: 7px;
    }

    .box_countdown::before {
        bottom: -10px;
    }

    .box_countdown::after {
        bottom: -11px;
    }

    .box_countdown .yycountdown-box {
        margin-left: 5px;
    }

    .box_countdown .yyc-day,
    .box_countdown .yyc-hou,
    .box_countdown .yyc-min,
    .box_countdown .yyc-sec {
        font-size: 18px;
        padding: 0 3px;
        border-radius: 3px;
    }

    .box_countdown .yyc-day-text,
    .box_countdown .yyc-hou-text,
    .box_countdown .yyc-min-text,
    .box_countdown .yyc-sec-text {
        font-size: 12px;
        margin: 0 2px;
    }
    .section_question_inner::before{
        top: -35px;
    }
    .double_eye_price_case {
        padding: 25px 15px;
        margin-bottom: 20px;
    }
  
    .section_question .section_ttl {
      padding: 0 30px;
    }

    .faq__question,
    .faq__answer {
        font-size: 14px;
        padding: 15px 43px 15px 15px;
    }
    .faq__question::before,
    .faq__question::after {
        width: 13px;
        height: 1px;
        right: 15px;
        top: 45%;
    }
    .faq__question span,
    .faq__answer span {
        margin-left: 30px;
    }
    .faq__question_txt::before,
    .faq__answer_txt::before {
        width: 20px;
        height: 30px;
        top: 0px;
    }
    /*フッター*/

    .foot_btn{
        right: 15px;
        bottom: 90px;
        width: 50px;
    }
    footer {
        padding: 10px 0 20px;
    }

    .l-foot-subnav {
        padding-top: 20px;
        font-size: 13px;
    }

    .l-foot-subnav__link::before {
        bottom: 1px;
    }

    footer small {
        font-size: 13px;
    }
    /*モーダル部分*/
    .with-featherlight .featherlight .featherlight-inner {
        max-height: calc(75vh - 60px);
    }
}

@media screen and (max-width: 750px) {
  .head__menu-inner {
    margin: min(60px, calc(calc(60/750) * 100vw)) auto 180px!important;
  }
}


/*20220907追記*/

.reason_satisfaction{
    padding-bottom: clamp(20px,4vw,40px);
}

.reason_satisfaction-img{
    text-align:center;
    margin-bottom: clamp(40px,8vw,80px);
}

.reason_satisfaction-txt + .reason_satisfaction-txt{
    margin-top: clamp(40px,8vw,80px);
}

.reason_satisfaction-txt01{
    text-align:center;
}

.reason_satisfaction-txt02{
    text-align:center;
    width: 67%;
    margin: 0 auto;
}
.double_eye_model{
    margin-bottom: clamp(20px,4vw,40px);
}

/*ドクター紹介*/

.section_doctor{
    background-color: #F2F5F9;
}

@media screen and (max-width: 767px) {
  .section_doctor-inner,
  .section_doctor-inner .section_ttl {
    padding: 0 15px;
  }
}


/*ドクタースライダー*/

/* Arrows */
.slick-prev,
.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: 4;
  background: url('../img/liposuction_injection_c/slick-arrow_next.webp') center no-repeat!important;
  background-size: cover!important;
  outline: none;
  border:none;
}

.slick-prev{
  background: url('../img/liposuction_injection_c/slick-arrow_pre.webp') center no-repeat!important;
  background-size: cover!important;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus{opacity: 0.7}

.slick-prev{
    left: 0 !important;
}
.slick-next{
    right: 0 !important;
}

/* Dots */
.slick-dotted.slick-slider
{
	/*margin-bottom: 30px;*/
}

.slick-dots{
    position: relative;
    bottom: 0;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
}
.slick-dots li{
    position: relative;
    display: inline-block;
    width: clamp(3px,1.6vw,16px);
    height: clamp(3px,1.6vw,16px);
    padding: 5px;
    cursor: pointer;
}

.slick-dots li:not(:last-child){
    margin-right: clamp(25px,5vw,50px);
}
.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;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
    font-family: 'slick';
    /* font-size: 35px; */
    /* line-height: 20px; */
    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: 10;
}
.slick-dots li.slick-active button:before
{
    opacity: 1;
    background: #d77a74!important;
}

@media screen and (max-width: 767px) {
	.slick-dots li{
        
    }
    
    .slick-dots li:not(:last-child){
    }

    .slick-prev{
        left: -10px;
    }
    .slick-next{
        right: -10px;
    }
    
}

.js--ad_list{
    display:none;
}

/*slickの高さを合わせる*/

.slick-list .slick-track {
  /* display: flex; */
}

.slick-list .slick-slide {
  /* height: auto; */
}

.slick-list .slick-slide.slick-active {
  /* height: 100%; */
}

.slick-dotted.slick-slider.doctor-slick{
   position: relative;
   z-index: 1;
}
.slick-dotted.slick-slider.doctor-slick .item{
    background-color:#fff;
    padding: clamp(15px,3vw,30px);
    border: 2px solid #d77a74!important;
    display: flex;
    flex-direction: column;
    margin-bottom: clamp(25px,5vw,50px);
}

.doctor_profile{
    display: flex;
    align-items: center;
    margin-bottom: clamp(15px,3vw,30px);
}

.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;
    /* position: relative; */
}

.doctor_profile-img img{
    overflow: hidden;
    height: 100%;
    object-fit: cover;
}

.doctor_profile-txt{
    
}

.doctor_profile-txt p{
    line-height:1.5;
}

.doctor_profile-achive{
    font-size: clamp(12px,2.4vw,24px);
    font-weight: 500;
    color: #fff;
    background: url(../img/common/doctor_archive_bg.webp) no-repeat!important;
    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;
}

.doctor_profile-position{
    margin-bottom: 10px;
}

.doctor_profile-name{
    font-weight: 500;
}

.doctor_profile-name span{
    position: relative;
    font-size: clamp(16px,3.5vw,35px);
    padding-bottom: 5px;
    display: block;
}

.doctor_profile-name span::before{
    content:
    '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    border: 1px solid #cd5951!important;
    min-width: clamp(150px,30vw,300px);
}

.doctor_profile-name small{
    display: block;
    font-size: clamp(13px,2.6vw,26px);
    color: #cd5951!important;
    margin-top: clamp(7px,1.4vw,14px);
}

/* .doctor_outer{
    display:flex;
    flex-direction:column;
    flex-grow: 1;
    justify-content: space-between;
} */

.doctor_about{
    padding: clamp(15px,3vw,30px);
    background-color: #FFF2F2;
    /* flex-grow: 1; */
    margin-bottom: clamp(15px,3vw,30px);
}

.doctor_about-txt{}

.doctor_profile-position,
.doctor_about-txt p,
.doctor_list >dl dd{
    font-size: clamp(12px,2.4vw,24px);
    font-weight:500;
    line-height: 1.5;
}

.doctor_about-txt p + p{
    margin-top: clamp(10px,1.5vw,15px);
}

.ad_doctor{
    /* flex-grow:1; */
}

.ad-head{
    min-height: clamp(35px,7vw,70px);
    background-color: #cd5951!important;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: clamp(13px,2.6vw,26px);
    font-weight: 500;
    border:1px solid #cd5951!important;
    transition:.4s;
    padding:5px;
    box-sizing:
    border-box;
    cursor: pointer;
}

.ad-head.js--accordion-open{
    background-color: #fff;
    color: #cd5951!important;
}

.doctor_word{
    position:relative;
}

.doctor_word::before{
    content:'経歴・備考を見る';
}

.js--accordion-open .doctor_word::before{
    content:'閉じる';
}


.doctor_career{
    margin-bottom: clamp(25px,5vw,50px);
}

.ttl02{
    font-size: clamp(16px,2.8vw,28px);
    font-weight: 500;
    color: #d77a74;
    position:
    relative;
    margin-bottom: clamp(10px,2vw,20px);
}

.ttl02 span{
    display: inline-block;
    background-color: #fff;
    position: relative;
    z-index: 2;
    padding-right: 5px;
}

.ttl02::before{
    content:'';
    display:block;
    position:absolute;
    border: 1px solid #d77a74;
    top: calc(50% + 0px);
    width: 100%;
    z-index: 1;
}

.doctor_career-txt{
}

.doctor_remark{
    margin-bottom: clamp(25px,5vw,50px);
}

.doctor_list{}

.doctor_list >li{
    
}
.doctor_list >dl+dl{
    margin-top:clamp(5px,1vw,10px);
}
.doctor_list >dl a{
    color: #d77a74;
    text-decoration: underline;
}

.doctor_list >li a:hover{
    text-decoration: none;
}

.doctor_list >dl dt{
    display: inline-block;
    background-color: #d77a74;
    padding: 2px 5px;
    color: #fff;
    font-size: clamp(10px,2vw,20px);
    margin-bottom: 3px;
}

/*白色アイコン*/

.white_icon{
	position:relative;
}
.white_icon::before,
.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;
}
.white_icon::before{
	right: 5px;
	transform: translate(-50%, -50%) rotate(90deg);
}

.js--accordion-open.white_icon::before,
.js--accordion-open.white_icon::after{
    background:#d77a74;
}

.js--accordion-open.white_icon::before{
	transform: translate(-50%, -50%) rotate(0deg);
}

@media screen and (max-width: 767px) {
    .ttl02::before{
        top: calc(50% - 2px);
    }
    .slick-dotted.slick-slider.doctor-slick .item{
        border:1px solid #d77a74!important;
    }
    .white_icon::before,
    .white_icon::after{
        width:10px;
        height:1px;
    }
    .white_icon::before{
        right:10px;
    }
}

/*20220913追記*/

.section_merit{
    background-color:#fff;
    padding: clamp(35px,7vw,70px) 0;
}

.double_eye_model{
    margin-bottom: clamp(20px,4vw,40px);
}

.merit_contents{
    margin-bottom: clamp(35px,7vw,70px);
}
/* 0930追記 */
.doctor_profile-advisor {
  margin-bottom: clamp(5px,1vw,10px);
}
.doctor_profile-advisor > span {
  display: inline-block;
  padding: 2px 0.8em 2px 0.5em;
  font-size: clamp(12px,2.4vw,24px);
  font-weight:500;
  line-height: 1.5;
  border-left: 5px solid #d77a74;
  background-color: #FFF2F2;
  color: #d77a74;
}

#reserve .reserve_inner {
  background: #FFF;
}

#reserve .reserve_inner .reserve_inner_message {
  width: 70%;
  margin: 0 auto;
  margin-top: 30px;
  margin-bottom: 30px;
  padding: 20px;
  text-align: center;
  font-size: 14px;
  line-height: 1.5em;
  background: #FFF;
  border: solid 1px red;
}

.explanation-area{
  margin: 0 auto;
  background: #ffe9e9;
}
@media screen and (max-width: 767px) {
  .explanation-area{
    width:100%;
  }
}
.w880{
  width: 880px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .w880{
    width:100%;
  }
}

.section_ttl-accsent3{
  display: inline-block;
  padding:0.25em 1em;
  position: relative;
  font-weight: 600;
  text-align: center;
  line-height: 1.8;
}

.section_ttl-accsent3:before, 
.section_ttl-accsent3:after { 
  content:'';
  width: 20px;
  height: 30px;
  position: absolute;
  display: inline-block;
}

.section_ttl-accsent3:before {
  border-left: solid 1px #ff5722;
  border-top: solid 1px #ff5722;
  top:0;
  left: 0;
}

.section_ttl-accsent3:after {
  border-right: solid 1px #ff5722;
  border-bottom: solid 1px #ff5722;
  bottom:0;
  right: 0;
}

.section_ttl-accsent1 {
  padding: 8px 15px;
  position: relative;
  font-size: clamp(16px,2vw,30px);
  font-weight: bolder;
  background: #e5e5e5;
  border-radius: 30px;
}

.section_ttl-accsent1:before {
  font-family: FontAwesome;
  content: "\f111";
  font-weight: 900;
  position: absolute;
  font-size: 12px;
  left: -41px;
  bottom: -3px;
  color: #e5e5e5;
}

.section_ttl-accsent1:after {
  font-family: FontAwesome;
  content: "\f111";
  font-weight: 900;
  position: absolute;
  font-size: 20px;
  left: -22px;
  bottom: 0;
  color: #e5e5e5;
}

.section_ttl ul li{
  margin-bottom: 30px;
  color: #757575;
  text-align: center;
  font-size: clamp(16px,1.6vw,22px);
}

.section_ttl-accsent2 {
  position: relative;
}

.section_ttl-accsent2:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -7px;
  width: 100%;
  height: 7px;
  background: -webkit-repeating-linear-gradient(-45deg, #d77a74, #d77a74 2px, #fff 2px, #fff 4px);
  background: repeating-linear-gradient(-45deg, #d77a74, #d77a74 2px, #fff 2px, #fff 4px);
}

.fv_faceinjection-inner{
  position: relative;
}
.fv_faceinjection-inner_btn{
  position: absolute;
  display: flex;
  top: 84%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.fv_faceinjection-inner_btn_wrap{
  display: flex;
  border-radius: 20px;
  background: #ffffff;
}
.fv_faceinjection-inner_btn_wrap a{
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  padding: 20px 0;
}
.fv_faceinjection-inner_btn_wrap a p{
  text-align: center;
  font-size: clamp(22px,2vw,36px);
  font-weight: bold;
  line-height: 1.2;
  padding: 0 10px;
}
.fv_faceinjection-inner_btn_wrap a i{
  display: block;
  font-size: clamp(30px,3.0vw,50px);
}
.fv_faceinjection-inner_btn_wrap .injection{
  color: #ffda2a;
}
.fv_faceinjection-inner_btn_wrap .injection i{
  padding-left: 20px;
}
.fv_faceinjection-inner_btn_wrap .bottox{
  color: #4aa184;
}
.fv_faceinjection-inner_btn_wrap .bottox i{
  padding-right: 20px;
}

.fv_faceinjection-inner_btn_sp_wrap{
  display: flex;
}
.fv_faceinjection-inner_btn_sp_wrap a{
  width: 50%;
  text-align: center;
  background: #ffffff;
}
.fv_faceinjection-inner_btn_sp_wrap a p{
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
  padding: 10px 0px;
}
.fv_faceinjection-inner_btn_sp_wrap a i{
  padding-bottom: 10px;
  font-size:22px;
}
.fv_faceinjection-inner_btn_sp_wrap .injection{
  border-left:10px solid #ffda2a;
  border-right:10px solid #ffda2a;
  border-bottom:10px solid #ffda2a;
  color: #ffda2a;
}
.fv_faceinjection-inner_btn_sp_wrap .bottox{
  border-left:10px solid #4aa184;
  border-right:10px solid #4aa184;
  border-bottom:10px solid #4aa184;
  color: #4aa184;
}
.counceling_txt2::after{
  right: -10px!important;
}
.counceling_txt2::before{
  left: -10px!important;
}

/* additional 230814 */

.mb120 {
  margin-bottom: 120px;
}

.pd60-30 {
  padding: 60px 0;
}
.pb140 {
  padding-bottom: 140px;
}
.pb180 {
  padding-bottom: 180px;
}
@media screen and (max-width: 767px) {
  .pd60-30 {
    padding: 30px 15px;
  }
  .sppd90 {
    padding-bottom: 90px;
  }
}

.inner_01 {
  padding-left: clamp(15px,3vw,30px);
  padding-right: clamp(15px,3vw,30px);
}

.inner_01 img {
  width: 100%;
}

.ttl_belt {
  background: #fff;
  padding: 20px 0;
}
.ttl_belt p {
  text-align: center;
  font-family: 'Zen Maru Gothic', sans-serif !important;
  color: #cd5951;
  font-size: 35px;
  font-weight: 500;
  letter-spacing: 3px;
}
@media screen and (max-width: 767px) {
  .ttl_belt {
    padding: 10px 0;
  }
  .ttl_belt p {
    font-size: 18px;
    letter-spacing: 1px;
  }
}

._section p {
  font-size: clamp(12px,2.4vw,24px);
  font-weight: bold;
  line-height: 1.35;
}

.ttl_ba {
  background-color: #cd5951;
  width: 80%;
  max-width: 570px;
  margin-left: auto;
  margin-right: auto;
}
.ttl_ba p {
  color: #fff;
  font-size: clamp(14px,2.8vw,28px);
  font-weight: bold;
  margin-bottom: 60px;
  text-align: center;
  line-height: 1.7;
}
@media screen and (max-width: 767px) {
  .ttl_ba p {
    margin-bottom: 30px;
  }
}

.point01_ba img {
  margin-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .point01_ba img {
    margin-bottom: 50px;
  }
}

/* attention 注意きりかえタブ(PC) */
.faceinjection_02 .tab_box .tab_btn {
  color: #786262;
}
.faceinjection_02 .tab_box .tab_btn.active {
  background: #a38f8e;
}
.faceinjection_02 .tab_box .btn_area p {
  font-family: 'Zen Maru Gothic', sans-serif !important;
  font-weight: 500;
}
.faceinjection_02 .tab_btn {
  border: #a38f8e 1px solid;
}
.faceinjection_02 .tab_btn.active::after {
  border-color: #a38f8e transparent transparent transparent;
}
.faceinjection_02 .tab_box .tab_btn:hover {
  background-color: #a38f8e;
}

/* attention 注意アコーディオン(SP) */

.faceinjection_02 .attention .flow_list-ttl {
  background: #cd5951;
  margin-bottom: 0;
}

.faceinjection_02 .attention .flow_list-ttl .flow_list-title {
  font-family: 'Zen Maru Gothic', sans-serif !important;
  line-height: 1.3;
  letter-spacing: 1px;
}

@media screen and (max-width: 767px) {
  .faceinjection_02 .attention .flow_list-ttl .flow_list-title {
    letter-spacing: 1px;
  }
}

.faceinjection_02 .attention .flow_list-title {
  color: #fff;
  text-align: center;
}

.faceinjection_02 .attention .flow_list-detail {
  padding: clamp(15px, 3vw, 30px);
  border: #cd5951 2px solid ;
}

.faceinjection_02 .attention_sp .accordion_one .accordion_header {
  background-color: #a38f8e !important;
  font-family: 'Zen Maru Gothic', sans-serif !important;
  font-weight: 500;
}
.faceinjection_02 .attention_sp .accordion_one .accordion_inner {
  border-left: 1px solid #a38f8e;
  border-right: 1px solid #a38f8e;
  border-bottom: 1px solid #a38f8e;
}
.faceinjection_02 .attention .flow_list-item {
  margin: 0 auto;
}

/* 動画モーダル用 */
.experiences_item_main {
  display: flex;
  justify-content: center;
}
.experiences_item_main_figure {
  width: 49%;
}
.experiences_item_main_figure_video {
  display: none;
}

.injection_point_img {
  position: relative;
}
.btn_more {
  position: absolute;
}
.btn_more {
  max-width: 300px;
}
@media screen and (max-width: 767px) {
  .btn_more {
    width: 40%;
    max-width: 300px;
  }
}

.btn_more.more01 {
  top: 25%;
  right: min(10px, calc(calc(10/750) * 100vw));
}
.btn_more.more02 {
  top: 53.3%;
  left: min(10px, calc(calc(10/750) * 100vw));
}
.btn_more.more03 {
  top: 81%;
  right: min(10px, calc(calc(10/750) * 100vw));
}


.doctor_word {
  color: #fff;
}
.js--accordion-open.white_icon::before, 
.js--accordion-open.white_icon::after {
  background: #fff!important;
}


.img_boxsh {
  filter: drop-shadow(0 0 10px #e8c7c7);
}
@media screen and (max-width: 750px) {
  .img_boxsh {
    filter: drop-shadow(0 0 5px #e8c7c7);
  }
}

.p-tiktok-sp {
  /* padding: 32px 0 10px; */
  /* background-color: #fffff2; */
  height: auto;
  /* margin-top: 150px; */
}

/*20240410_TikTok追加CSS*/
.u-inner {
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  width: auto !important;
  max-width: calc(100% - min(60px, calc(calc(60/750) * 100vw))) !important;
}

.fv_area-tiktok-inner-pc {
  width: 100%;
}

.tiktok-video a video {
  height: clamp(330px, 43vw, 300px);
}

.p-tiktok-pc__video {
  display: none;
}

/* .c-container
   ========================================================================== */

.c-container {
  margin-left: auto;
  margin-right: auto;
}

/* width */

.c-container.-width-pc-md {
  width: 750px;
}

.c-container.-width-pc-lg {
  width: 750px;
  background-color: #ffece6;
}

@media screen and (max-width: 640px) {

  .c-container.-width-pc-md,
  .c-container.-width-pc-lg {
    width: auto;
  }

  .c-container.-padding-sp-md {
    padding-left: calc(100vw / 375 * 15);
    padding-right: calc(100vw / 375 * 15);
  }
}

/* .p-tiktok-sp
   ========================================================================== */

.p-tiktok-sp {
  /* padding: 32px 0 32px; */
  /*background-color: #fffff2;*/
  /*カウントダウン高さ調整*/
  height: auto;
  /*margin-top: 150px;*/
}

.p-tiktok-sp__image {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

@media screen and (max-width: 640px) {
  .p-tiktok-sp__image {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
  }
}




/* 20241217 FV下メニュー追加
   ========================================================================== */
.nav_menu {
  background: #fce2de;
}

.nav_menu__wrap {
  display: flex;
  flex-wrap: wrap;
  border-bottom: min(2px, calc(calc(2 / 750)* 100vw)) solid #E57D7A;
}

.nav_menu__wrap li:nth-child(odd) {
  border-right: none;
}

.nav_menu__wrap li {
  width: 50%;
  background: #fff;
  border: min(2px, calc(calc(2 / 750) * 100vw)) solid #E57D7A;
  border-bottom: none;
  text-align: center;
  font-size: min(28px, calc(calc(28/750) * 100vw));
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: -0.05rem;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  position: relative;
}

.nav_menu__wrap li span {
  font-size: min(24px, calc(calc(24/750) * 100vw));
}

.nav_menu__wrap li::before {
  content: "";
  width: min(7px, calc(calc(7 / 750)* 100vw));
  height: min(7px, calc(calc(7 / 750)* 100vw));
  border-top: min(3px, calc(calc(3 / 750)* 100vw)) solid #E57D7A;
  border-right: min(3px, calc(calc(3 / 750)* 100vw)) solid #E57D7A;
  position: absolute;
  top: 50%;
  right: min(20px, calc(calc(20 / 750)* 100vw));
  transform: translateY(-50%) rotate(135deg);
  -webkit-transform: translateY(-50%) rotate(135deg);
  -ms-transform: translateY(-50%) rotate(135deg);
}

.nav_menu__wrap li a {
  color: #CD5A51;
  height: min(110px, calc(calc(110 / 750)* 100vw));
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1.4;
}



/* 20250103 追記
   ========================================================================== */
._shadow img {
  filter: drop-shadow(0 0 10px rgba(232, 199, 199, 1));
}
@media screen and (max-width: 750px) {
  ._shadow img {
    filter: drop-shadow(0 0 1.33vw rgba(232, 199, 199, 1));
  }
}

/*20250317 TCB_AD-7037 中国語ボタン追加*/
.section_header_web2 {
  display: flex;
  width: min(180px,calc(180 / 750 * 100vw));
  text-align: center;
  font-size:min(14px,calc(14 / 750 * 100vw));
  justify-content: center;
  align-items: center;
  padding:min(10px,calc(10 / 750 * 100vw)) 
  min(8px,calc(8 / 750 * 100vw));
  padding-bottom:0;
  box-sizing: border-box;
  z-index: 100;
  /*
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-left: min(10px, calc(calc(10/750) * 100vw));
  */
}
.section_header_web2 a,
.section_header_web2 a:link,
.section_header_web2 a:visited,
.section_header_web2 a:hover,
.section_header_web2 a:active,
.section_header_web2 a:focus
{
  color:#5d5d5d;
}

.section_header_logo {
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 100;
}
.section_header_web{
  display: block;
  position:relative;
  height: min(90px,calc(90 / 750 * 100vw));
  width: 100%;
  padding-right:min(8px,calc(8 / 750 * 100vw));
  box-sizing: border-box;
  z-index: 100;
}
.section_header_web a img {
    object-fit: cover;
    height: 100%;
}

.u-pt03 {
padding-top: min(3px, calc(calc(3/750) * 100vw))!important;
}

/*20250327 TCB_AD-7174 追加*/
.faq__answer_txt span>a{
  display: block;
  padding-top: min(12px, calc(12 / 750 * 100vw));
  color: #388bff;
  font-weight: 600;
}
.faq__answer_txt span>a::after{
  content:">>";
  letter-spacing:-1px;
  margin-left: 4px;
}

/*nav_menu 罫線応用：項目が増減しても対応可*/
/*既存設定をリセット（上書き）*/
.nav_menu__wrap{
  border:none;
  justify-content: center;
}
.nav_menu__wrap li {
  border-bottom: min(2px,calc(2/750*100vw)) solid #CD5A51;
  border-left: none;
  border-right:none;
  border-top:none;
}
.nav_menu__wrap li:nth-child(even) {
  border-right: min(2px,calc(2/750*100vw)) solid #CD5A51;
}
.nav_menu__wrap li:nth-child(odd) {
  border-left: min(2px,calc(2/750*100vw)) solid #CD5A51;
  border-right: min(2px,calc(2/750*100vw)) solid #CD5A51;
}
.nav_menu__wrap li:nth-child(2),
.nav_menu__wrap li:first-child {
  border-top: min(2px,calc(2/750*100vw)) solid #CD5A51;
}

/* 限定解除要件アコーディオン */
dt.ex_acc__head {
    background: #efefef;
    text-align: center;
    color: #585858;
    font-family: var(--font-yu-gothic);
    font-size: min(32px, calc(calc(32/750) * 100vw));
    font-weight: 600;
    line-height: 1;
    padding: min(24px, calc(calc(24/750) * 100vw)) 0;
    position: relative;
    box-sizing: border-box;
}
dt.ex_acc__head::before,
dt.ex_acc__head::after {
    content: "";
    background: #707070;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
}
dt.ex_acc__head::before {
    width: min(30px, calc(calc(30/750) * 100vw));
    height: min(2px, calc(calc(2/750) * 100vw));
    right: min(30px, calc(calc(30/750) * 100vw));
}
dt.ex_acc__head::after {
    width: min(2px, calc(calc(2/750) * 100vw));
    height: min(30px, calc(calc(30/750) * 100vw));
    right: min(44px, calc(calc(44/750) * 100vw));
    transition: all 0.3s;
}
dt.ex_acc__head.js--accordion-open::after {
    transform: rotate(90deg);
    transition: all 0.3s;
}
dl.ex_acc__wrap{
  margin-bottom:0;
}

dd.ex_acc__body {
    display: none;
    background: #fff;
    padding: min(30px, calc(calc(30/750) * 100vw));
    border: min(2px, calc(calc(2/750) * 100vw)) solid #efefef;
    margin-left:0;
    box-sizing: border-box;
}
:root {
    --font-yu-mincho: "YuMincho", "Yu Mincho", "游明朝", "Times New Roman", "Hiragino Mincho Pro", "ヒラギノ明朝 Pro W3", "Sawarabi Mincho", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    --font-yu-gothic: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}

/*TCB_AD-8735 20250815-------------------*/
/*---------------------------------
 Frames_basic
 基本の縦組み・センター寄せ
-----------------------------------*/
/*Frames------*/
/*FRAME normal*/
.frames_basic,
.frames_basic__wrap,
.frames_basic__wrap a{
  margin: 0 auto;
  display:flex;
  flex-direction:column;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  width: 100%;
  max-width: 750px;
  box-sizing: border-box;
}
.frames_basic__wrap,
.frames_basic__wrap a{
  width: -webkit-fill-available;
  width: -moz-available;
  width: stretch;
  overflow: visible;
}
.frames_basic.nolimit{
  width: 100%;
  max-width: 100%;
}

.frames_basic__wrap.nolimit{
  width: -webkit-fill-available;
  width: -moz-available;
  width: stretch;
}
/*Frames 拡張*/
.gap_20{
  gap: min(20px,calc(20 / 750 * 100vw));
}
.gap_30{
  gap: min(30px,calc(30 / 750 * 100vw));
}
.gap_40{
  gap: min(40px,calc(40 / 750 * 100vw));
}
.gap_50{
  gap: min(50px,calc(50 / 750 * 100vw));
}
.gap_60{
  gap: min(60px,calc(60 / 750 * 100vw));
}
.gap_80{
  gap: min(80px,calc(80 / 750 * 100vw));
}
.bgcol_white{
  background-color:white;
}
.bgcol_gold {
    background-image: linear-gradient(to bottom, #8b5321, #ffdc7e, #de9e24, #8b5321);
    position: relative;
}
.border_gray{
  border:1px solid gray;
}
.border_gold {
    border: 2px solid;
    border-image:linear-gradient(to bottom, #8b5321, #ffdc7e, #de9e24, #8b5321) 1;
}
.font35{
  font-size: min(35px, calc(35 / 750 * 100vw));
}
.frames_basic p.info{
  font-size: min(18px,calc(18 / 750 * 100vw));
  color:#474747;
  font-family: var(--font-yu-gothic);
}
.padding_lr14{
  padding-left:min(14px,calc(14 / 750 * 100vw));
  padding-right:min(14px,calc(14 / 750 * 100vw));
}
.padding_lr30{
  padding-left:min(30px,calc(30 / 750 * 100vw));
  padding-right:min(30px,calc(30 / 750 * 100vw));
}
.padding_cta{
  padding: min(37px,calc(37 / 750 * 100vw)) min(14px,calc(14 / 750 * 100vw)) min(30px, calc(30 / 750 * 100vw)) min(14px,calc(14 / 750 * 100vw));
}
.shadow{
  filter: drop-shadow(3px 3px 9px rgba(0, 0, 0, 0.28));
}
.shadow_light{
  filter: drop-shadow(3px 3px 3px rgba(100, 100, 100, 0.1));
}

/* 拡張 */
#faceinjection_02 .frames_basic,
#faceinjecton_02 .frames_basic__wrap{
  overflow: visible;
}

/*--------------------------------------
 comp__list_toswitch
 ボックスを縦配置する、行毎に入れ替えで左右交互に寄せる
 ボタンをフロートにして上に重ねる
 ----------------------------------------*/
/*初期値設定 ---------*/
 :root {
    /*ボタンの高さ*/
    --comp__list_toswitch__btn_h: min(66px,calc(66 / 750 * 100vw));
    /*各ブロックを互い違いにするための、左右の余白幅*/
    --comp__list_toswitch__sp_l: min(20px,calc(20 / 750 * 100vw));
    --comp__list_toswitch__sp_r: min(20px,calc(20 / 750 * 100vw));
}
.comp__list_toswitch li{
  position:relative;
  display: block;
}
.comp__list_toswitch .card{ 
  position:relative;
  z-index:0;
  box-sizing: border-box;
}
.comp__list_toswitch li:nth-child(odd) .card {
  padding-right: var(--comp__list_toswitch__sp_r);
}
.comp__list_toswitch li:nth-child(even) .card{
  padding-left: var(--comp__list_toswitch__sp_l);
}
.comp__list_toswitch .btn{
  display:block;
  position:absolute;
  bottom: 0;
  transform: translate(0,50%);
  z-index:1;
}
.comp__list_toswitch .btn{
  width:auto;
  height: var(--comp__list_toswitch__btn_h); 
}
.comp__list_toswitch li:nth-child(odd) .btn{
  right:0;
}
.comp__list_toswitch li:nth-child(even) .btn{
  left:0;
}
.comp__list_toswitch .btn img{
  height: 100%;
  width: auto;
}
/*--------------------------*
 FV 下の注釈
----------------------------*/
.fv_info {
    width: min(710px,calc(710 / 750 * 100vw)); /* テーブルの幅 */
    border-collapse: collapse; /* ボーダーの重なりを防ぐ */
    margin: 0px auto; /* 中央寄せ */
}

.fv_info td {
    border: none; /* セルのボーダー */
    text-align: left; /* テキストの左揃え */
    vertical-align: top; /* テキストの上寄せ */
    font-size:min(18px,calc(18 / 750 * 100vw));
    padding-bottom:min(12px,calc(12 / 750 * 100vw));
    line-height: 1.0;
    font-feature-settings: "palt";
}
.fv_info td:nth-child(odd) {
  padding-right:min(15px,calc(15 / 750 * 100vw));
}

/* ABテスト上書き 20251001
========================================================== */
.new_web-coupon {
  padding: min(40px, calc(calc(40/750) * 100vw)) 0 !important;
}
.coupon_area__txt {
  color: #010101;
  text-align: center;
  font-weight: bolder;
  font-size: min(30px, calc(calc(30/750) * 100vw)) !important;
  font-feature-settings: "palt";
  padding-bottom: min(17px, calc(calc(17/750) * 100vw));
  padding-top: min(30px, calc(calc(30/750) * 100vw));
}
.coupon_area__txt span {
  font-size: min(25px, calc(calc(25/750) * 100vw));
}

.new_web-coupon--top {
  margin-bottom: 0 !important;
  padding: 0 min(50px, calc(calc(50/750) * 100vw));
  width: auto !important;
}

.menu_detail {
  display: flex;
  flex-direction: column;
  gap: min(20px, calc(calc(20/750) * 100vw));
  padding-bottom: min(30px, calc(calc(30/750) * 100vw));
  margin: 0 auto;
}
.new_web-coupon--txt p {
  text-align: center;
  color: #fb654a;
  font-family: "Noto Sans JP", sans-serif;
  font-size: min(16px, calc(calc(16/750) * 100vw));
  font-weight: 400;
  letter-spacing: max(-0.5px, calc(-0.5 * (calc(30/750) * 100vw)));
  padding-top: min(15px, calc(calc(15/750) * 100vw));
}
@media screen and (max-width: 750px) {
  .new_web-coupon {
    padding: 6vw 0 !important;
  }
  .new_web-coupon--top {
    padding-bottom: 0;
  }
  .new_web-coupon--under {
    width: 86% !important;
    padding-top: min(30px, calc(calc(30/750) * 100vw));
  }
  .new_web-coupon--txt p {
  letter-spacing: -0.8px;
  font-size: 10px;
}
}
/* TCB_AD-9112 多言語サイトに遷移用 */
.flag {
  height: min(40px,calc(40 / 750 * 100vw));        /* 全旗の高さを統一 */
  width: auto !important;         /* 比率維持 */
  object-fit: contain; /* 枠内で収まるように */
}
.section_header .flag{
  display:block;
  box-sizing: border-box;
}