@charset "utf-8";
:root {
  --vw-sp: 390;
}
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  font-size: calc(100vw / 37.5);
}
body {
  color: #000;
  font-size: 1.4rem;
  font-family: 'Noto Sans JP', sans-serif , 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, Arial, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  background: rgb(178,178,178,0.2) url("../img/pc_logo.png") repeat 0 0/390px 160px;
  background-attachment: fixed;
  padding: 0 !important;
	
}
li {
  list-style-type:none;
}
img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
a{
	cursor: pointer;
	color: #000;
}
sup{
	font-size: 50%;
}
.mt-20px {
  margin-top: 20px;
}
.wrapper {
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
  position: relative;
  background-color: #fff;
  box-shadow: rgba(100, 100, 111, 0.2) 0px 0px 26px 0px;
}
.wrapper a {
  display: block;
}
.page_inner a:hover {
    opacity: .8;
}
/*header*/
.logo_hd {
  height: 4.8rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.logo_hd img {
  width: 10.7rem;
    margin-left: 1rem;
}
a.hd_btn img {
    margin-right: 1rem;
    width: 11.6rem;
}
@media (min-width: 500px) {
  html {
    font-size: 62.5%;
  }
  .logo_hd {
    height: 64px;
  }
  .logo_hd img {
    width: 142px;
    margin-left: 10px;
  }
  a.hd_btn img {
    margin-right: 12px;
    width: 154px;
  }
}
/*ボタンホバー時明るくする*/
.reserve_btn::before,
.follow_reserve_btn::before,
.follow_anchor_btn::before,
.anchor_btn::before {
  display: none;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #FFF;
  opacity: 0.2;
  z-index: 2;
}
.follow_anchor_btn,
.anchor_btn {
  position: relative;
}
.follow_anchor_btn::before {
  border-radius: 41px;
}
.anchor_btn::before {
  border-radius: 50px;
}
.reserve_btn::before {
  border-radius: 41px;
}
.follow_reserve_btn::before {
  border-radius: 34px;
}
.reserve_btn:hover,
.follow_reserve_btn:hover,
.follow_anchor_btn:hover,
.anchor_btn:hover {
  opacity: 1!important;
}
.reserve_btn:hover::before,
.follow_reserve_btn:hover::before,
.follow_anchor_btn:hover::before,
.anchor_btn:hover::before {
  display: inline-block;
}
/*mv*/
.mv{
	position: relative;
}
.mv_comment {
  font-size: 1rem;
  padding: 2.7rem 3.3rem 0;
  margin-bottom: -1.8rem;
}
.float_reserve_btn{
	margin-top: 0.8rem;
  padding-bottom: 1.5rem;
  position: absolute;
  top: -6.1rem;
  left: calc(50% - 15.1rem);
}
.mv .mv_cta_btn_wrap {
  position: relative;
}
@media (min-width: 500px) {
  .mv_comment {
    padding: 30px 66px 0;
    margin-bottom: -15px;
  }
  .float_reserve_btn {
    margin-top: 10px;
    padding-bottom: 12px;
    top: -84px;
    left: calc(50% - 203px);
  }
}
/*campaign*/
#campaign ul li{
	position: relative;
}
#campaign .cp_set_img{
	position: relative;
	text-align: center;
	margin-top: -1px;
	margin-bottom: -2px;
}
#campaign .cp_tx {
  position: absolute;
  bottom: 2.9rem;
  left: calc(50% - 15.15rem);
  text-align: center;
}
#campaign .web_btn {
  margin: 2rem auto 0;
  display: inline-block;
}
#campaign .web_btn::after{
  position: absolute;
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.5rem 0 0.5rem 0.8rem;
  border-color: transparent transparent transparent #000;
  top: calc(50% - 0.45rem);
	right: -2rem;
}
.lesson_cta_btn {
  position: absolute;
  bottom: 23.8rem;
  left: calc(50% - 15.1rem);
}
@media (min-width: 500px) {
  #campaign .cp_tx {
      bottom: 40px;
      left: calc(50% - 202px);
  }
  #campaign .web_btn {
    margin: 30px auto 0;
    font-size: 2rem;
  }
  #campaign .web_btn::after {
    right: -30px;
    border-width: 8px 0 8px 12px;
    top: calc(50% - 7px);
  }
  .lesson_cta_btn {
    position: absolute;
    bottom: 317px;
    left: calc(50% - 203px);
  }
}
/*reason*/
#reason{
	position: relative;
	background: url("../img/why_bg_01.png") no-repeat 0 0/100% 100%;
	padding: 4.3rem 0 3rem;
	margin: -1px auto;
	box-shadow: rgba(0, 0, 0, 0.2) 0 0.6rem 0.4rem -0.25rem;
}
#reason .s_tx{
	font-size: 1rem;
	padding: 0 2.1rem; 
	margin-top: 1.2rem;
}
@media (min-width: 500px) {
  #reason {
    padding: 58px 0 40px;
    box-shadow: rgba(0, 0, 0, 0.2) 0px 8px 5px -3px;
  }
  #reason .s_tx {
    font-size: 1.4rem;
    padding: 0 20px;
    margin-top: 16px;
  }
}
/*answer*/
#answer {
  margin: 3rem auto 4.8rem;
}
#answer .answer_body {
  position: relative;
}
#answer .effect_item li {
  position: absolute;
  display: block;
  content: '';
}
.effect_item .effect_01 {
  top: 9.8rem;
}
.effect_item .effect_02 {
  top: 26.8rem;
}
.effect_item .effect_03 {
  top: 38.6rem;
}
.effect_item .effect_04 {
  top: 51.8rem;
}
@media (min-width: 500px) {
  #answer {
    margin: 40px auto 64px;
  }
  .effect_item .effect_01 {
    top: 132px;
  }
  .effect_item .effect_02 {
    top: 356px;
  }
  .effect_item .effect_03 {
    top: 516px;
  }
  .effect_item .effect_04 {
    top: 692px;
  }
}
/*plus_reason*/
#plus_reason {
  position: relative;
}
#plus_reason .reason_plus {
  position: absolute;
  top: -7.8rem;
  width: 5.7rem;
  left: calc(50% - 2.85rem);
}
#plus_reason > .s_tx {
  font-size: 1rem;
  padding: 1rem 2rem 2.6rem;
}
#plus_reason .reason_list{
	background: url("../img/reason_bg.png") no-repeat 0 0/cover;
	box-shadow: rgba(0, 0, 0, 0.2) 0 0.6rem 0.4rem -0.25rem;
    position: relative;
	z-index: 1;
}
#plus_reason .reason_list li{
	position: relative;
}
.reason_list .anchor_btn{
	position: absolute;
	bottom: 4.8rem;
	left: calc(50% - 14.32rem);
	width: 28.65rem;
}
.reason_list .anchor_btn.three-line{
	bottom: 5.8rem;
}
.reason_list .s_tx {
  font-size: 1rem;
  position: absolute;
  bottom: 1.5rem;
  left: 6rem;
}
@media (min-width: 500px) {
  #plus_reason .reason_plus {
    top: -104px;
    width: 75px;
    left: calc(50% - 37.5px);
  }
  #plus_reason > .s_tx {
    font-size: 1.2rem;
    padding: 12px 25px 34px;
  }
  #plus_reason .reason_list {
    box-shadow: rgba(0, 0, 0, 0.2) 0 7px 4px -2px;
  }
  .reason_list .anchor_btn {
    bottom: 62px;
    left: calc(50% - 191px);
    width: 382px;
  }
  .reason_list .anchor_btn.three-line {
    bottom: 80px;
  }
  .reason_list .s_tx {
    font-size: 1.2rem;
    bottom: 20px;
    left: 78px;
  }
}
/*effect*/
#effect {
  background: rgb(255, 241, 183);
  background: linear-gradient(90deg, rgba(255, 241, 183, 1) 0%, rgba(255, 210, 151, 1) 100%);
	position: relative;
}

#effect .effect_inner{
	background: url("../img/evidence_bg.png") no-repeat 0 0/100%;
	padding: 5.5rem 0 2rem;
}
#effect .lead_tx {
    font-size: 1.4rem;
    padding: 0 2.6rem;
	margin: 2rem auto 3rem;
}
.acc > dd{
	display: none;
}
#effect .acc:first-of-type > dd{
	display: block;
}
.evidence_list{
	background-color: #fff;
	width: 33.5rem;
	margin: 0 auto;
}
.evidence_list > dt{
	display: flex;
	height: 5rem;
	border-top: 2px solid #000;
    border-right: 2px solid #000;
	align-items: center;
	position: relative;
	cursor: pointer;
}
.evidence_list:last-of-type > dt{
	border-bottom: 2px solid #000;
}
.evidence_list > dt.active{
	border-bottom: 2px solid #000;
}
.evidence_list:first-of-type > dt{
	border-bottom: 2px solid #000;
}
.evidence_list:first-of-type > dt.active {
    border-bottom: none;
}
.evidence_list .number{
	width: 4.5rem;
    font-size: 2.5rem;
    clip-path: polygon(0% 0%, 75% 0%, 100% 50%, 75% 100%, 0% 100%);
    background-color: #000;
    height: 101%;
    color: #fff;
    text-align: center;
    padding-right: 1rem;
	font-family: Segoe UI emoji;
    font-weight: bold;
	line-height: 1.7;
	border-bottom: 2px solid #FFF;
}
.evidence_list > dt.active .number{
	border-bottom: none;
}
.evidence_list:last-of-type .number{
	border-bottom: none;
}
.evidence_list:first-of-type > dt .number{
	border-bottom: none;
}
.evidence_list:first-of-type > dt.active .number{
	border-bottom: 2px solid #FFF;
}
.evidence_list .list_tx{
	font-size: 2.1rem;
	margin-left: 1.5rem;
}
.evidence_list dd{
	border-right: 2px solid #000;
	border-left: 2px solid #000;
}
.evidence_list:last-of-type dd{
	border-bottom: 2px solid #000;
}
.evidence_list .acc_ic{
	width: 1.6rem;
	height: 1.6rem;
	border: 1.5px solid #000;
	position: absolute;
	right: 1.5rem;
}
.evidence_list .acc_ic::before,.evidence_list .acc_ic::after{
	position: absolute;
	content: '';
	width: 0.1rem;
    height: 0.8rem;
    background-color: #000;
    top: 0.3rem;
    left: 50%;
	transition: .3s;
}
.evidence_list .acc_ic::after{
	transform: rotate(90deg);
}
.evidence_list dt.active .acc_ic::before{
	transform: rotate(90deg);
}
.evidence_list:first-of-type .acc_ic::before{
	transform: rotate(90deg);
}
.evidence_list:first-of-type dt.active .acc_ic::before{
	transform: rotate(0);
}
.evidence_list dt .list_tx span{
	font-size: 50%;
}
#effect .s_tx{
	font-size: 1rem;
    width: 33.5rem;
    margin: 1.2rem auto 0;
}
/*effect アコーディオン*/
#effect .ac_inner{
	width: 30rem;
	margin: 0 auto;
	padding: 2rem 0;
}
#effect .ev_inner{
	display: flex;
	padding-bottom: 1.5rem;
}
#effect .ev_inner img{
	width: 16.5rem;
}
#effect .ev_inner p{
	font-size: 1.5rem;
	padding-top: 1rem;
	padding-right: 0.1vw;
	line-height: 1.8;
}
#effect .ev_inner.no_img p{
	padding-top: 0;
	padding-right: 0;
}
#effect .ev_inner p .bold_tx{
	font-weight: bold;
}
#effect .ev_inner p .pink_tx{
	color: #f04471;
}
@media (min-width: 500px) {
  #effect .effect_inner {
    padding: 72px 0 28px;
  }
  #effect .lead_tx {
    font-size: 2rem;
    padding: 0 26px;
    margin: 27px auto 40px;
  }
  .evidence_list {
    width: 445px;
  }
  .evidence_list > dt {
    height: 68px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
  }
  .evidence_list:last-of-type > dt {
    border-bottom: 2px solid #000;
  }
  .evidence_list > dt.active {
    border-bottom: 2px solid #000;
  }
  .evidence_list .number {
    width: 60px;
    font-size: 3.2rem;
    padding-right: 12px;
  }
  .evidence_list .list_tx {
    font-size: 2.8rem;
    margin-left: 20px;
  }
  .evidence_list .acc_ic {
    width: 20px;
    height: 20px;
    border: 2px solid #000;
    right: 20px;
  }
  .evidence_list .acc_ic::before, .evidence_list .acc_ic::after {
    width: 2px;
    height: 12px;
    top: 2px;
    left: calc(50% - 1px);
  }
  #effect .s_tx {
    font-size: 1.2rem;
    width: 445px;
    margin: 18px auto 0;
  }
  #effect .ac_inner {
    width: 400px;
    padding: 28px 0;
  }
  #effect .ev_inner {
    padding-bottom: 20px;
  }
  #effect .ev_inner img {
    width: 208px;
  }
  #effect .ev_inner p {
    font-size: 2rem;
    padding-top: 12px;
    padding-right: 10px;
  }
  #effect .ev_inner.no_img p {
    padding-top: 0;
    padding-right: 0;
  }
}
/*try*/
#try {
  position: relative;
  background: rgb(243, 105, 141);
  background: linear-gradient(90deg, rgba(243, 105, 141, 1) 0%, rgba(240, 68, 113, 1) 100%);
  padding-top: 1rem;
}
#try::after {
  position: absolute;
  display: block;
  content: '';
  width: 100%;
  height: 5.25rem;
  top: -1px;
  left: 0;
  z-index: 1;
	background: url("../img/2503/ask_img_02.webp") no-repeat 0 0/cover;
}
#try .try_inner {
  background: url(../img/2401/try_bg_01.png) no-repeat top center/cover;
  padding-top: 14rem;
  padding-bottom: 3.6rem;
  z-index: 0;
  position: relative;
}
#try .try_bg {
  background: url(../img/2401/try_bg_02.png) no-repeat 0 0/34.5rem 100%;
  width: 34.5rem;
  position: relative;
  margin: 0 auto;
  padding-bottom: 2rem;
}
#try .try_bg::after{
	position: absolute;
    display: block;
    content: '';
    background: url(../img/bg_shadow.png) no-repeat 0 0/100%;
    width: 37.5rem;
    height: 19.2rem;
    left: calc(50% - 18.75rem);
    bottom: -2rem;
    z-index: -1;
}
#try .lets_try {
  position: absolute;
  top: -9.5rem;
}
#try .set_tx {
  padding-top: 3rem;
  padding-bottom: 1rem;
}
#try .set_wrap {
  display: flex;
  justify-content: center;
  padding: 1rem 0;
  margin: 0 2rem 1.6rem;
  border-top: 2px solid rgb(0, 0, 0, 0.5);
  border-bottom: 2px solid rgb(0, 0, 0, 0.5);
  align-items: center;
}
#try .set_wrap img {
  width: 14.7rem;
  height: 100%;
}
#try .set_wrap .set_list li {
  font-size: 1.2rem;
  font-weight: bold;
  position: relative;
  padding-left: 1.6rem;
  line-height: 1.7;
  margin-left: 1rem;
}
#try .set_wrap .set_list li::before {
  position: absolute;
  display: block;
  content: '';
  width: 1.2rem;
  height: 1.2rem;
  border: 1px solid #f6376f;
  top: calc(50% - 0.6rem);
  left: 0;
}
#try .reserve_btn {
  margin: 1.2rem auto;
}
#try .s_tx {
  font-size: 1rem;
  margin: 0 3rem;
  line-height: 1.3;
}
#try .reserve_btn {
  position: absolute;
  left: calc(50% - 15.6rem);
  width: 31.2rem;
  top: 13.5rem;
}
@media (min-width: 500px) {
  #try {
    padding-top: 10px;
  }
  #try::before {
    height: 70px;
  }
  #try::after {
    height: 70px;
  }
  #try .try_inner {
    padding-top: 200px;
    padding-bottom: 48px;
  }
  #try .try_bg {
    background: url(../img/2401/try_bg_02.png) no-repeat 0 0/460px 100%;
    width: 460px;
    padding-bottom: 28px;
  }
  #try .try_bg::after{
    width: 500px;
    height: 256px;
    left: calc(50% - 250px);
    bottom: -28px;
  }
  #try .lets_try {
    top: -128px;
  }
  #try .set_tx {
    padding-top: 40px;
    padding-bottom: 13px;
  }
  #try .set_wrap {
    padding: 12px 0;
    margin: 0 28px 21px;
  }
  #try .set_wrap img {
    width: 200px;
  }
  #try .set_wrap .set_list li {
    font-size: 1.6rem;
    padding-left: 20px;
    margin-left: 12px;
  }
  #try .set_wrap .set_list li::before {
    width: 16px;
    height: 16px;
    top: calc(50% - 8px);
  }
  #try .reserve_btn {
    margin: 16px auto;
  }
  #try .s_tx {
    font-size: 1.2rem;
    margin: 0 40px;
  }
  #try .reserve_btn {
    top: 180px;
    left: calc(50% - 203px);
    width: 406px;
  }
}
/*triallesson*/
#triallesson {
  margin: 3rem auto 0.5rem;
}
#triallesson .flow_inner {
  background: url(../img/231208/flow_bg_01.png) no-repeat 0 0/cover;
  position: relative;
  margin-top: 2.5rem;
  padding-bottom: 10.2rem;
}
#triallesson .flow_inner::after {
  position: absolute;
  display: block;
  content: '';
  width: 37.5rem;
  height: 100%;
  background: url("../img/flow_bg_02.png") no-repeat 0 0/cover;
  top: 0;
  left: 0;
}
#triallesson .next {
  position: absolute;
  top: -7.2rem;
  width: 5.7rem;
  left: calc(50% - 2.85rem);
}
#triallesson .anchor_btn {
  width: 30.3rem;
  margin: 1rem auto 0;
}
#triallesson .flow_bar img {
  z-index: 1;
  position: relative;
  width: 8rem;
  margin-left: 1.4rem;
}
#triallesson .flow_img li {
  position: absolute;
}
#triallesson .flow_img li.flow_img_01 {
  top: 4.1rem;
}
#triallesson .flow_img li.flow_img_02 {
  top: 25.6rem;
}
#triallesson .flow_img li.flow_img_03 {
  top: 37.9rem;
}
#triallesson .flow_img li.flow_img_04 {
  top: 55.1rem;
}
#triallesson .flow_img li.flow_img_05 {
  top: 72.9rem;
}
#triallesson .flow_img li.flow_img_06 {
  top: 94.2rem;
}
#triallesson .flow_img li.flow_img_07 {
  top: 120.4rem;
}
#triallesson .flow_img li.flow_img_08 {
  top: 140rem;
}
#triallesson .flow_img li.flow_img_09 {
  top: 161.4rem;
}
#triallesson .cp_btn_wrap {
  position: relative;
  padding-top: 1.3rem;
}
.flow_img li{
    /*線の起点とするためrelativeを設定*/
    position: relative;
  list-style: none;
  padding:0 0 2rem 0;
}
/*絶対配置で線を設定*/
.border-line {
    /*線の位置*/
  position: absolute;
  left:4.8rem;
  top:-1.8rem;
  width:2rem;/*線の太さ*/
  height:0;/*はじめは高さを0に*/
  z-index: -1;
  transition: 1s;
}
.border-line01 {
  background: rgb(255,243,132);
  background: linear-gradient(0deg, rgba(255,243,132,1) 0%, rgba(255,244,132,1) 100%);
}
.border-line02 {
  background: rgb(250,211,142);
  background: linear-gradient(0deg, rgba(250,211,142,1) 0%, rgba(255,244,132,1) 100%);
}
.border-line03 {
  background: rgb(255,170,106);
  background: linear-gradient(0deg, rgba(255,170,106,1) 0%, rgba(250,211,142,1) 100%);
}
.border-line04 {
  background: rgb(255,149,97);
  background: linear-gradient(0deg, rgba(255,149,97,1) 0%, rgba(255,170,106,1) 100%);
}
.border-line05 {
  background: rgb(255,20,49);
  background: linear-gradient(0deg, rgba(255,20,49,1) 0%, rgba(255,149,97,1) 100%);
}
.border-line06 {
  background: rgb(255,88,65);
  background: linear-gradient(0deg, rgba(255,88,65,1) 0%, rgba(255,20,49,1) 100%);
}
.border-line07 {
  background: rgb(255,219,123);
  background: linear-gradient(0deg, rgba(255,219,123,1) 0%, rgba(255,88,65,1) 100%);
}
.border-line08 {
  background: rgb(255,239,137);
  background: linear-gradient(0deg, rgba(255,239,137,1) 0%, rgba(250,205,120,1) 100%);
}
.border-line09 {
  background: rgb(255,255,151);
  background: linear-gradient(0deg, rgba(255,255,151,1) 0%, rgba(255,239,137,1) 100%);
}
.border-line010 {
  background: rgb(254,255,210);
  background: linear-gradient(0deg, rgba(254,255,210,1) 0%, rgba(252,249,149,1) 100%);
  z-index: 0;
}
.border-line-end {
  width: 2rem;
  height: 6.7rem;
  z-index: 0;
}
@media (min-width: 500px) {
  #triallesson {
    margin: 25px auto 8px;
  }
  #triallesson .flow_inner {
    margin-top: 19px;
    padding-bottom: 152px;
  }
  #triallesson .flow_inner::after {
    width: 500px;
  }
  #triallesson .next {
    top: -92px;
    width: 75px;
    left: calc(50% - 37.5px);
  }
  #triallesson .anchor_btn {
    width: 404px;
    margin: 13px auto 0;
  }
  #triallesson .flow_bar img {
    width: 106px;
    margin-left: 19px;
  }
  #triallesson .flow_img li.flow_img_01 {
    top: 54px;
  }
  #triallesson .flow_img li.flow_img_02 {
    top: 342px;
  }
  #triallesson .flow_img li.flow_img_03 {
    top: 508px;
  }
  #triallesson .flow_img li.flow_img_04 {
    top: 740px;
  }
  #triallesson .flow_img li.flow_img_05 {
    top: 979px;
  }
  #triallesson .flow_img li.flow_img_06 {
    top: 1266px;
  }
  #triallesson .flow_img li.flow_img_07 {
    top: 1614px;
  }
  #triallesson .flow_img li.flow_img_08 {
    top: 1876px;
  }
  #triallesson .flow_img li.flow_img_09 {
    top: 2160px;
  }
  #triallesson .cp_btn_wrap {
    padding-top: 22px;
  }
  .flow_img li{
    padding:0 0 20px 0;
  }
  /*絶対配置で線を設定*/
  .border-line {
      /*線の位置*/
    left:66px;
    top:-30px;
    width:24px;/*線の太さ*/
  }
  .border-line-end {
    height: 106px;
  }
}
/*chance*/
#chance {
 background: url("../img/2309/chance_bg_01.png") no-repeat 0 0/cover;
	position: relative;
	z-index: 1;
}
#chance::before{
	position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 5.25rem;
    top: 0;
    left: 0;
    z-index: 1;
    background: url(../img/evidence_bg_03.png) no-repeat 0 0/cover;
    mix-blend-mode: multiply;
}
#chance::after{
	position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 5.25rem;
    top: -0.1rem;
    left: 0;
    z-index: 1;
    background: url(../img/chance_bg_02.png) no-repeat 0 0/cover;
}
.chance_inner {
    padding: 6rem 0 2rem;
    position: relative;
}
.chance_inner::before{
	position: absolute;
    display: block;
    content: '';
    background: url(../img/2309/chance_bg_03.png) no-repeat 0 0/100%;
    top: 0;
    left: 0;
    width: 100%;
    height: 94.5rem;
}
.chance_inner::after{
	position: absolute;
    display: block;
    content: '';
    background: url(../img/2309/chance_bg_04.png) no-repeat 0 0/100%;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 65.2rem;
    z-index: -1;
}
.chance_special {
  padding: 0 2rem 1rem;
}
/*タブ切り替え全体のスタイル*/
.tabs {
  width: 34.5rem;
  margin: 0 auto;
}
#chance .tabs{
	position: relative;
}
#chance .tabs::after {
	position: absolute;
    display: block;
    content: '';
    background: url(../img/bg_shadow.png) no-repeat 0 0/100%;
    width: 37.5rem;
    height: 19.2rem;
    left: calc(50% - 18.75rem);
    bottom: -1.5rem;
    z-index: -1;
}
/*タブのスタイル*/
.tab_item {
  width: calc(100%/2);
  height: 6.2rem;
  background-color: #fff;
  font-size: 1.6rem;
  text-align: center;
  display: block;
  font-weight: bold;
  float: left;
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
  padding-top: 0.4rem;
  position: relative;
  cursor: pointer;
}
.tab_item::before {
  position: absolute;
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.6rem 0.6rem 0 0.6rem;
  bottom: 0.2rem;
  left: calc(50% - 0.6rem);
}
.tab_item.tab_left::before{
  border-color: #f04472 transparent transparent transparent;
}
.tab_item.tab_right::before{
  border-color: #ff871c transparent transparent transparent;
}
.tab_item.tab_left{
	border: 3px solid #f04471;
}
.tab_item.tab_right{
	border: 3px solid #ff871c;
}
.tab_item .tab_lead_tx{
	font-size: 1.2rem;
    display: flex;
    color: #fff;
    width: 11rem;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    border-radius: 2rem;
    height: 2rem;
	font-weight: bold;
}
.tab_left .tab_lead_tx{
	 background-color: #f04471;
}
.tab_right .tab_lead_tx{
	 background-color: #ff871c;
}
/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}
/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  clear: both;
  overflow: hidden;
}
#plan01_content {
  background: rgb(246, 143, 170);
  background: linear-gradient(90deg, rgba(246, 143, 170, 1) 0%, rgba(240, 68, 113, 1) 100%);
  padding: 4.5rem 0.5rem 0.5rem;
}
#plan02_content {
  background: rgb(255,135,28);
  background: linear-gradient(90deg, rgba(255,135,28,1) 0%, rgba(255,183,119,1) 60%, rgba(255,177,107,1) 100%);
  padding: 4.5rem 0.5rem 0.5rem;
}
.tab_content .bg_white{
	background-color: #fff;
	position: relative;
	padding-top: 3.2rem;
}
.content_title{
	position: absolute;
	top: -2.5rem;
}
.content_title.right {
  top: -4.5rem;
}
.tab_content .s_tx{
	font-size: 1rem;
	padding: 1.5rem 2rem 3rem;
}
.tab_content .pink_tx{
	color: #f04471;
}
.tab_content .orange_tx{
	color: #ff871c;
}
.tab_content .plan02_tx{
	font-size: 1rem;
    padding: 0 2rem 1rem;
}
.tab_content .plan02_tx li{
	padding-left: 1.8em;
    text-indent: -1.8em;
}
/*選択されているタブのコンテンツのみを表示*/
#plan01:checked ~ #plan01_content,
#plan02:checked ~ #plan02_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  color: #fff;
}
.tabs input:checked + .tab_item.tab_left{
	background-color: #f6376f;
}
.tabs input:checked + .tab_item.tab_right{
	background-color: #ff871c;
}
.tabs input:checked + .tab_item.tab_left .tab_lead_tx{
	color: #f04471;
    background-color: #fff;
}
.tabs input:checked + .tab_item.tab_right .tab_lead_tx{
	color: #ff871c;
	background-color: #fff;
}
.tabs input:checked + .tab_item::before{
	bottom: -1.2rem;
    border-width: 1.3rem 1.3rem 0 1.3rem;
    left: calc(50% - 1.3rem);
}
#chance .reserve_btn{
	margin: 1rem auto 1rem;
}
#chance .web_btn{
	color: #fff;
}
#chance .web_btn::after{
	border-color: transparent transparent transparent #fff;
	right: 10.5rem;
}
@media (min-width: 500px) {
  #chance::before {
    height: 70px;
  }
  #chance::after {
    height: 70px;
    top: -1px;
  }
  .chance_inner {
    padding: 80px 0 28px;
  }
  .chance_inner::before{
    height: 1229px;
  }
  /*.chance_inner::after{
    height: 848px;
  }*/
  .tabs {
    width: 460px;
  }
  #chance .tabs::after {
    width: 500px;
    height: 256px;
    left: calc(50% - 250px);
    bottom: -20px;
  }
  .chance_special {
    padding: 0 30px 10px;
    }
  .tab_item {
    height: 84px;
    font-size: 2.1rem;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    padding-top: 5px;
  }
  .tab_item::before {
    border-width: 10px 10px 0 10px;
    bottom: 4px;
    left: calc(50% - 10px);
  }
  .tab_item.tab_left {
    border: 4px solid #f04471;
  }
  .tab_item.tab_right {
    border: 4px solid #ff871c;
  }
  .tab_item .tab_lead_tx {
    font-size: 1.6rem;
    width: 160px;
    border-radius: 38px;
    height: 26px;
  }
  #plan01_content {
    padding: 60px 4px 4px;
  }
  #plan02_content {
    padding: 60px 4px 4px;
  }
  .tab_content .bg_white {
    padding-top: 44px;
  }
  .content_title {
    top: -32px;
  }
  .content_title.right {
    top: -60px;
  }
  .tab_content .s_tx {
    font-size: 1.2rem;
    padding: 20px 30px 40px
  }
  .tab_content .plan02_tx {
    font-size: 12px;
    padding: 0 30px 12px;
  }
  .tabs input:checked + .tab_item::before {
    bottom: -16px;
    border-width: 16px 16px 0 16px;
    left: calc(50% - 16px);
  }
  #chance .reserve_btn {
    margin: 13px auto 1rem;
  }
  #chance .web_btn::after {
    right: 132px;
  }
}
/*pace*/
#pace{
	padding: 5rem 0;
}
#pace .pace_img{
	margin-top: 2rem;
}
.member_plan{
	width: 33.6rem;
	margin: 3rem auto 0;
	position: relative;
}
.member_plan > dt{
	font-size: 2rem;
    border: 2px solid #000;
    height: 5rem;
    font-weight: 500;
    display: flex;
    align-items: center;
    padding-left: 3rem;
	cursor: pointer;
}
.member_plan > dd{
	border-left: 2px solid #000;
	border-right: 2px solid #000;
	border-bottom: 2px solid #000;
	padding-bottom: 2rem;
}
.member_plan .acc_ic {
    width: 1.6rem;
    height: 1.6rem;
    border: 1.5px solid #000;
    position: absolute;
    right: 1.5rem;
}
.member_plan .acc_ic::before, .member_plan .acc_ic::after {
    position: absolute;
    content: '';
    width: 0.1rem;
    height: 0.8rem;
    background-color: #000;
    top: 0.3rem;
    left: 50%;
	transition: .3s;
}
.member_plan .acc_ic::after {
    transform: rotate(90deg);
}
.member_plan .acc_ic::after{
	transform: rotate(90deg);
}
.member_plan dt.active .acc_ic::before{
	transform: rotate(90deg);
}
.member_plan .member_tx{
	width: 23.1rem;
	padding: 1.5rem 0;
	margin: 0 auto;
}
.member_tx p{
	font-size: 1.9rem;
	font-weight: 500;
	padding: 0.5rem 0;
	border-top: 2px solid #000;
	border-bottom: 2px solid #000;
	text-align: center;
    margin-top: 1rem;
}
.member_plan_list dt,.member_plan_list dd{
	padding: 1.6rem;
}
.member_plan_list dt{
	background-color: #e7e4e2;
	font-size: 1.2rem;
}
.member_plan_list dt .bold_l_tx{
	font-size: 1.5rem;
	font-weight: bold;
}
.member_plan_list dt .bold_m_tx{
	font-size: 1.4rem;
	font-weight: bold;
}
.member_plan_list dt .bold_s_tx{
	font-size: 1.1rem;
	font-weight: bold;
}
.member_plan_list dd{
	font-size: 1.3rem;
}
.member_plan_list dd+dd{
	border-top: 2px solid #e7e4e2;
}
.member_plan_list dd span{
	font-weight: bold;
}
.member_plan_list dd .Rintosull_list{
	margin-top: 1.5rem;
}
.member_plan .student{
	font-size: 1rem;
	padding: 1.5rem 1.6rem 2rem;
}
.member_plan .student dd{
	padding-left: 1em;
	text-indent: -1em;
}
.member_plan .student dd:last-of-type{
	margin-top: 0.5rem;
}
@media (min-width: 500px) {
  #pace {
    padding: 78px 0;
  }
  #pace .pace_img {
    margin-top: 28px;
  }
  .member_plan {
    width: 448px;
    margin: 40px auto 0;
  }
  .member_plan > dt {
    font-size: 2.8rem;
    height: 78px;
    padding-left: 40px;
  }
  .member_plan > dd {
    padding-bottom: 28px;
  }
  .member_plan .acc_ic {
    width: 20px;
    height: 20px;
    border: 2px solid #000;
    right: 20px;
  }
  .member_plan .acc_ic::before, .member_plan .acc_ic::after {
    width: 2px;
    height: 12px;
    top: 2px;
    left: calc(50% - 1px);
  }
  .member_plan .member_tx {
    width: 308px;
    padding: 20px 0;
  }
  .member_tx p {
    font-size: 2.4rem;
    padding: 8px 0;
    margin-top: 12px;
  }
  .member_plan_list dt, .member_plan_list dd {
    padding: 21px;
  }
  .member_plan_list dt {
    font-size: 1.6rem;
  }
  .member_plan_list dt .bold_l_tx {
    font-size: 2rem;
  }
  .member_plan_list dt .bold_m_tx {
    font-size: 1.9rem;
  }
  .member_plan_list dt .bold_s_tx {
    font-size: 1.2rem;
  }
  .member_plan_list dd {
    font-size: 1.7rem;
  }
  .member_plan_list dd .Rintosull_list {
    margin-top: 20px;
  }
  .member_plan .student {
    font-size: 1.5rem;
    padding: 20px 21px 28px;
  }
  .member_plan .student dd:last-of-type {
    margin-top: 8px;
  }
}
/*award*/
#award{
	position: relative;
}
#award .no1_img{
	position: absolute;
	top: 33rem;
	left: 0;
}
#award .seven_img{
	position: absolute;
	top: 59.3rem;
	left: 0;
}
@media (min-width: 500px) {
  #award .no1_img {
    top: 440px;
  }
  #award .seven_img {
    top: 792px;
  }
}
/*btn*/
.reserve_btn, .try_restart_btn {
  width: 30.3rem;
  margin: 0 auto;
  display: inline-block;
}
.web_btn {
  display: block;
  font-size: 1.4rem;
  text-align: center;
  position: relative;
  margin: 1rem auto;
}
.anchor_btn {
  width: 30.3rem;
  margin: 0 auto;
}
@media (min-width: 500px) {
  .reserve_btn, .try_restart_btn {
    width: 406px;
  }
  .web_btn::after {
    border-width: 8px 0 8px 12px;
    top: calc(50% - 6px);
    right: 130px;
  }
  .anchor_btn {
    width: 404px;
  }
}
/*======================================================
アニメーション
======================================================*/
/*===============　上下に動くアニメーション ===============*/
.floatV {
  -webkit-animation: floatV 2.5s ease-in-out infinite alternate;
  animation: floatV 2.5s ease-in-out infinite alternate;
}
@-webkit-keyframes floatV {
  0% {
    -webkit-transform: translate3d(0, -0.5em, 0);
            transform: translate3d(0, -0.5em, 0);
  }
  50% {
    -webkit-transform: translate3d(0, 0.3em, 0);
            transform: translate3d(0, 0.3em, 0);
  }
  100% {
    -webkit-transform: translate3d(0, -0.3em, 0);
            transform: translate3d(0, -0.3em, 0);
  }
}
@keyframes floatV {
  0% {
    -webkit-transform: translate3d(0, -0.5em, 0);
            transform: translate3d(0, -0.5em, 0);
  }
  50% {
    -webkit-transform: translate3d(0, 0.3em, 0);
            transform: translate3d(0, 0.3em, 0);
  }
  100% {
    -webkit-transform: translate3d(0, -0.3em, 0);
            transform: translate3d(0, -0.3em, 0);
  }
}
/*===============　フェードアップアニメーション ===============*/
.fadein_trigger, .fadein_02 {
  opacity: 0;
}
.fadeIn{
  animation-name:fadeInAnime;
  animation-duration:2.0s;
  animation-fill-mode:forwards;
  opacity:0;
}
.fadeIn02 {
  animation-name: fadeInAnime;
  animation-duration: 2.0s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
/*===============　フェードインアニメーション上から ===============*/
.fadeup_top {
  opacity: 0;
}
.fadeUpTop{
  animation-name:fadeUpTop;
  animation-duration:1.0s;
  animation-fill-mode:forwards;
  opacity:0;
}
@keyframes fadeUpTop{
  from {
    opacity: 0;
	transform: translateY(-50px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}
/*===============　フェードインアニメーション左から ===============*/
.fadeinLeft {
  opacity: 0;
}
.fadeinLeft{
  animation-name:fadeUpLeft;
  animation-duration:1.5s;
  animation-fill-mode:forwards;
  opacity:0;
}
@keyframes fadeUpLeft{
  from {
    opacity: 0;
	transform: translateX(-50px);
  }

  to {
    opacity: 1;
	transform: translateX(0);
  }
}
/*===============　アニメーションディレイ ===============*/
.delay-time02 {
  animation-delay: .2s;
}
.delay-time04 {
  animation-delay: .4s;
}
.delay-time06 {
  animation-delay: .6s;
}
.delay-time08 {
  animation-delay: .8s;
}
.delay-time10 {
  animation-delay: 1.0s;
}
.delay-time12 {
  animation-delay: 1.2s;
}
.delay-time14 {
  animation-delay: 1.4s;
}
.delay-time20 {
  animation-delay: 2.0s;
}
/*===============　ズームイン ===============*/
.zoomIn{
	animation-name:zoomInAnime;
	animation-duration:0.6s;
	animation-fill-mode:forwards;
}

@keyframes zoomInAnime{
  from {
	transform: scale(0.5);
  }

  to {
      transform: scale(1);
  }
}
/*point lesson*/
#point{
	padding: 4rem 0 0;
}
#point .point_title{
	background: url("../img/point_01_bg.png") no-repeat 0 0/100%;
}
#point .lesson{
	background-color: #f3f1f1;
}
.lesson .lesson_tx{
	font-size: 1rem;
	padding-left: 3.4rem;
} 
.lesson_tx img{
	width: 0.8rem;
    height: 0.8rem;
    vertical-align: baseline;
}
.lesson_btn{
	padding: 2rem 0;
}
/*レッスンスライダー*/
.container {
  max-width: 500px;
  margin: 0 auto;
}
.tab-menu {
	margin: 0 auto;
	width: 100%;
}
.tab-menu .swiper-wrapper{
	justify-content: center;
	transform: none !important;
}
.tab-menu .swiper-slide {
  margin-right: 0 !important;
  width: 7.95rem;
  position: relative;
  cursor: pointer;
}
.swiper.tab-contents {
	background-color: #d7d2cf;
}
.tab_active{
	display: none;
}
.tab-menu .swiper-slide.swiper-slide-thumb-active .tab_active{ 
	display: block;
}
.tab-menu .swiper-slide.swiper-slide-thumb-active::after {
  position: absolute;
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1.3rem 0.8rem 0 0.8rem;
  border-color: #000000 transparent transparent transparent;
  bottom: -1.2rem;
  left: calc(50% - 0.8rem);
}
.tab-menu .swiper-slide.swiper-slide-thumb-active  .tab_active.ic_active{
	position: absolute;
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #000000 transparent transparent transparent;
  bottom: 0;
  left: 0;
}
.tab-menu .swiper-slide.swiper-slide-thumb-active .tab_nomal{ 
	display: none;
}
#point .swiper-autoheight .swiper-wrapper{
	height: 55.2rem !important;
}
#point .tab-contents .swiper-wrapper .swiper-slide img{
	display: block;
	margin: 0 auto;
}
.tab-contents .swiper-button-next, .tab-contents .swiper-button-prev {
    background-color: #000;
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    border: 2px solid #fff;
	filter: drop-shadow(0px 0px 4px rgba(0,0,0,0.3));
	top: 36%;
}
.tab-contents .swiper-button-next{
	right: 1.5rem;
    left: auto;
}
.tab-contents .swiper-button-prev{
	left: 1.5rem;
	right: auto;
}
.tab-contents .swiper-button-next:after, .tab-contents .swiper-button-prev:after{
	color: #fff;
	font-size: 2rem;
    font-weight: bold;
}
.area_ic{
	border-top: 1px solid #000;
	background-color: #d7d2cf;
	padding: 1rem 0;
}
@media (min-width: 500px) {
  #point {
    padding: 50px 0 0;
  }
  .lesson .lesson_tx {
    font-size: 1.4rem;
    padding-left: 44px;
  }
  .lesson_tx img {
    width: 12px;
    height: 12px;
  }
  .lesson_btn {
    padding: 28px 0;
  }
  .tab-menu .swiper-slide {
    width: 104px;
  }
  .tab-menu .swiper-slide.swiper-slide-thumb-active::after {
    border-width: 16px 12px 0 12px;
    bottom: -15px;
    left: calc(50% - 12px);
  }
  .tab-menu .swiper-slide.swiper-slide-thumb-active .tab_active.ic_active {
    border-width: 15px 10px 0 10px;
  }
  #point .swiper-autoheight .swiper-wrapper {
    height: 736px !important;
  }
  .tab-contents .swiper-button-next, .tab-contents .swiper-button-prev {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: 2px solid #fff;
    filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.3));
  }
  .tab-contents .swiper-button-next {
    right: 20px;
  }
  .tab-contents .swiper-button-prev {
    left: 20px;
  }
  .tab-contents .swiper-button-next:after, .tab-contents .swiper-button-prev:after {
    font-size: 2.8rem;
  }
  .area_ic {
    border-top: 1px solid #000;
    padding: 14px 0;
  }
}
/*point instructor*/
.instructor{
	background-color: #f4f3f2;
	position: relative;
}
.instructor .point_02{
	padding-bottom: 2rem;
}
/*point studio*/
.studio{
	position: relative;
	background-color: #f4f3f2;
	padding-top: 6rem;
}
.studio .point_03{
	position: absolute;
	width: 5.7rem;
	top: -3rem;
    left: calc(50% - 2.85rem);
}
.studio .studio_tx{
	font-size: 1.4rem;
    padding: 2rem 3rem 1rem;
}
/*point hot*/
.hot_wrap{
	position: relative;
}
.hot_wrap .hot_lead{
	position: absolute;
	top: 11.5rem;
    display: block;
}
.hot_wrap .hot_tx{
	position: absolute;
	top: 24rem;
    font-size: 1.4rem;
    padding: 0 3rem;
}
img.margin_top{
    margin-top: -1px;
}
/*point new_lesson*/
.new_lesson{
	position: relative;
	background-color: #f4f3f2;
	padding-top: 5.5rem;
}
.new_lesson .point_05{
	position: absolute;
	width: 5.7rem;
	top: -3rem;
    left: calc(50% - 2.85rem);
}
/*point point_btn*/
.point_btn {
  background: rgb(243, 105, 141);
  background: linear-gradient(90deg, rgba(243, 105, 141, 1) 0%, rgba(240, 68, 113, 1) 100%);
  padding: 2rem 0 3rem;
  margin-top: -1px;
  position: relative;
}
.point_btn .reserve_btn{
	margin: .8rem auto 1rem;
}
.point_btn .web_btn{
	color: #a9a9a9;
}
.point_btn .web_btn::after {
    border-color: transparent transparent transparent #a9a9a9;
    right: 10.5rem;
}
@media (min-width: 500px) {
  .instructor .point_02 {
    padding-bottom: 28px;
  }
  .studio {
    padding-top: 80px;
  }
  .studio .point_03 {
    width: 75px;
    top: -40px;
    left: calc(50% - 37.5px);
  }
  .studio .studio_tx {
    font-size: 2rem;
    padding: 28px 40px 12px;
  }
  .hot_wrap .hot_lead {
    top: 152px;
  }
  .hot_wrap .hot_tx {
    top: 320px;
    font-size: 2rem;
    padding: 0 30px;
  }
  .new_lesson {
    padding-top: 72px;
  }
  .new_lesson .point_05 {
    width: 75px;
    top: -40px;
    left: calc(50% - 37.5px);
  }
  .point_btn {
    padding: 28px 0 40px;
  }
  .point_btn .reserve_btn {
    margin: 10px auto 12px;
  }
  .point_btn .web_btn::after {
    right: 132px;
  }
}
/*change*/
#change{
	padding-top: 3.5rem;
}
.kakumei_wrap{
	position: relative;
}
.kakumei_tx{
	position: absolute;
	left: 0;
}
.change_wrap{
	background-color: #f3f1f1;
}
@media (min-width: 500px) {
  #change {
    padding-top: 48px;
  }
}
/*uservoice*/
#uservoice {
  background: rgb(255, 222, 231);
  background: linear-gradient(90deg, rgba(255, 222, 231, 1) 0%, rgba(255, 187, 205, 1) 100%);
  padding-top: 2rem;
}
#uservoice .s_tx{
	font-size: 1rem;
	padding: 0 4rem 1rem;
}
/*uservoice スライダー*/
#uservoice .container{
	padding: 2rem 0 1rem;
}
#uservoice .swiper-slide dl{
	width: 30rem;
	border: 1px solid #000;
	background-color: #fff;
	padding: 2rem;
	margin: 0 auto;
	height: 27rem;
    cursor: default;
}
#uservoice .swiper-slide dt{
	text-align: center;
}
#uservoice .swiper-slide dt p{
	font-size: 1.5rem;
	font-weight: 500;
  color: #FF3871;
  font-weight: 700;
}
#uservoice .swiper-slide dt img{
	width: 25rem;
	vertical-align: baseline;
}
#uservoice .swiper-slide dd{
	font-size: 1.4rem;
}
#uservoice .swiper-slide .pink_tx{
	color: #f04471;
}
.voice-contents .swiper-button-next, .voice-contents .swiper-button-prev {
    background-color: #000;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    top: 50%;
}
.voice-contents .swiper-button-next{
	right: 1.5rem;
    left: auto;
}
.voice-contents .swiper-button-prev{
	left: 1.5rem;
	right: auto;
}
.voice-contents .swiper-button-next:after, .voice-contents .swiper-button-prev:after{
	color: #fff;
	font-size: 1.5rem;
    font-weight: bold;
}
/*uservoice　ボタン*/
#uservoice .voice_btn{
	background: rgb(243, 105, 141);
  background: linear-gradient(90deg, rgba(243, 105, 141, 1) 0%, rgba(240, 68, 113, 1) 100%);
  padding: 0 0 2.5rem;
	margin-top: -1px;
  position: relative;
}
.voice_btn .reserve_btn {
    margin: 0 auto 1rem;
}
.voice_btn .web_btn {
    color: #fff;
}
.voice_btn .web_btn::after {
    border-color: transparent transparent transparent #fff;
    right: 10.5rem;
}
@media (min-width: 500px) {
  #uservoice {
    padding-top: 28px;
  }
  #uservoice .s_tx {
    font-size: 1.2rem;
    padding: 0 52px 12px;
  }
  #uservoice .container {
    padding: 28px 0 12px;
  }
  #uservoice .swiper-slide dl {
    width: 400px;
    border: 2px solid #000;
    padding: 24px 26px;
    height: 410px;
  }
  #uservoice .swiper-slide dt p {
    font-size: 2rem;
    padding-bottom: 0.5rem;
    color: #FF3871;
    font-weight: 700;
  }
  #uservoice .swiper-slide dt img {
    width: 334px;
  }
  #uservoice .swiper-slide dd {
    font-size: 2rem;
  }
  .voice-contents .swiper-button-next, .voice-contents .swiper-button-prev {
    width: 48px;
    height: 48px;
  }
  .voice-contents .swiper-button-next {
    right: 20px;
  }
  .voice-contents .swiper-button-prev {
    left: 20px;
  }
  .voice-contents .swiper-button-next:after, .voice-contents .swiper-button-prev:after {
    font-size: 2rem;
  }
  #uservoice .voice_btn {
    padding: 0 0 30px;
  }
  .voice_btn .reserve_btn {
    margin: 0 auto 12px;
  }
  .voice_btn .web_btn::after {
    right: 132px;
  }
}
/*faq*/
#faq{
	padding-top: 3.8rem;
}
.faq_list{
	font-size: 1.4rem;
	border-bottom: 2px solid #fff;
}
.faq_list:first-of-type{
	margin-top: 1.8rem;
}
.faq_list dt{
	display: flex;
	background-color: #f1efee;
	height: 7rem;
    align-items: center;
	padding: 0 4.5rem 0 1.5rem;
	position: relative;
	cursor: pointer;
}
.faq_list dd{
	display: none;
}
.faq_list dd .a_inner{
	display: flex;
	padding: 1.5rem 1.5rem 3.5rem 1.5rem;
	align-items: flex-start;
}
.faq_list .faq_ic{
	width: 3.9rem;
	margin-right: 1.6rem;
}
.faq_list .acc_ic{
	width: 1.6rem;
	height: 1.6rem;
	border: 1.5px solid #000;
	position: absolute;
	right: 1.5rem;
}
.faq_list .acc_ic::before,.faq_list .acc_ic::after{
	position: absolute;
	content: '';
	width: 0.1rem;
    height: 0.8rem;
    background-color: #000;
    top: 0.3rem;
    left: calc(50% - 0.05rem);
	transition: .3s;
}
.faq_list .acc_ic::after{
	transform: rotate(90deg);
}
.faq_list dt.active .acc_ic::before{
	transform: rotate(90deg);
}
.faq_list dd .bold_tx{
	font-weight: bold;
	display: block;
}
.faq_list dd .pink_tx{
	color: #f04471;
}
.faq_list dd p+p{
	margin-top: 1.5rem;
}
.faq_list .heart_img{
	width: 1rem;
	height: 1rem;
	vertical-align: middle;
}
.faq_list .faq_graph{
	width: 28.8rem;
	margin-top: 0.8rem;
}
@media (min-width: 500px) {
  #faq {
    padding-top: 52px;
  }
  .faq_list {
    font-size: 2rem;
  }
  .faq_list:first-of-type {
    margin-top: 26px;
  }
  .faq_list dt {
    height: 92px;
    padding: 0 60px 0 20px;
  }
  .faq_list dd .a_inner {
    padding: 20px 20px 46px 20px;
  }
  .faq_list .faq_ic {
    width: 51px;
    margin-right: 22px;
  }
  .faq_list .acc_ic {
    width: 20px;
    height: 20px;
    border: 2px solid #000;
    right: 20px;
  }
  .faq_list .acc_ic::before, .faq_list .acc_ic::after {
    width: 2px;
    height: 12px;
    top: 2px;
    left: calc(50% - 1px);
  }
  .faq_list dd p + p {
    margin-top: 20px;
  }
  .faq_list .heart_img {
    width: 12px;
    height: 12px;
  }
  .faq_list .faq_graph {
    width: 383px;
    margin-top: 12px;
  }
}
/*shop*/
#shop{
	padding-top: 3.2rem;
}
.shop_map{
	position: relative;
	margin-bottom: 3.5rem;
}
.shop_map a{
	position: absolute;
	width:5.4rem;
}
.area_name_01{
	top: 8rem;
    right: 4.5rem;
}
.area_name_02{
	top: 13.5rem;
    right: 5.5rem;
}
.area_name_03{
	bottom: 12.7rem;
    right: 7.2rem;
}
.area_name_04{
	bottom: 14.2rem;
    right: 15.2rem;
}
.area_name_05{
	bottom: 6.7rem;
    right: 14.9rem;
}
.area_name_06{
	bottom: 12rem;
    left: 9.2rem;
}
.area_name_07{
	bottom: 3.5rem;
    left: 10.5rem;
}
.area_name_08{
	bottom: 0rem;
    left: 4.2rem;
}
.area_name_09{
	bottom: 0rem;
    right: 6rem;
}
@media (min-width: 500px) {
  #shop {
    padding-top: 44px;
  }
  .shop_map {
    margin-bottom: 48px;
  }
  .shop_map a {
    width: 73px;
  }
  .area_name_01 {
    top: 120px;
    right: 60px;
  }
  .area_name_02 {
    top: 180px;
    right: 72px;
  }
  .area_name_03 {
    bottom: 168px;
    right: 96px;
  }
  .area_name_04 {
    bottom: 188px;
    right: 204px;
  }
  .area_name_05 {
    bottom: 88px;
    right: 200px;
  }
  .area_name_06 {
    bottom: 160px;
    left: 124px;
  }
  .area_name_07 {
    bottom: 48px;
    left: 140px;
  }
  .area_name_08 {
    left: 56px;
  }
  .area_name_09 {
    right: 80px;
  }
}
/*area_list*/
.area_list > dt{
	font-size: 1.7rem;
	font-weight: bold;
	color: #fff;
	background-color: #b6ada8;
	padding: 0 2rem;
    height: 4.2rem;
    display: flex;
    align-items: center;
}
.area_inner_list > dt{
	background-color: #e0dbd9;
	font-size: 1.5rem;
	padding: 0 2rem;
    height: 4.2rem;
    display: flex;
	justify-content: space-between;
    align-items: center;
	border-top: 2px solid #fff;
}
.area_inner_list dt{
	cursor: pointer;
}
.area_shop_list > dt{
	font-size: 1.5rem;
	padding: 0 2rem;
	background-color: #f7f6f5;
	height: 4.2rem;
    display: flex;
	justify-content: space-between;
    align-items: center;
	border-top: 2px solid #fff;
}
.inner_shop_list > li{
	border-bottom: 1px dashed #4d4d4d;
	position: relative;
}
.inner_shop_list > li:last-of-type{
	border-bottom: none;
}
.inner_shop_list > li::before{
	width: 2.3rem;
	height: 2.3rem;
	border-radius: 50%;
	position: absolute;
	display: block;
	content: '';
	top: calc(50% - 1.15rem);
    right: 2rem;
	background-color: #b6ada8;
}
.inner_shop_list > li::after{
	position: absolute;
	display: block;
	content: '';
	top: calc(50% - 0.4rem);
    right: 2.8rem;
    width: 0.8rem;
    height: 0.8rem;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
}
.inner_shop_list > li > a{
	padding: 1.2rem 2rem;
}
.inner_shop_list a{
	text-decoration: none;
}
.inner_shop_list .shop_name{
	font-size: 1.5rem;
}
.inner_shop_list .shop_cp_tx{
	font-size: 1.2rem;
	font-weight: 500;
	color: #f04471;
}
.inner_shop_list .shop_label{
	display: flex;
	flex-wrap: wrap;
    width: 90%;
}
.inner_shop_list .shop_label > li{
	font-size: 1.1rem;
	font-weight: 500;
	color: #fff;
	padding: 0.1rem 0.5rem 0.2rem;
	margin: 1rem 0.5rem 0.5rem 0;
}
.area_list .acc_ic{
	width: 1.6rem;
	height: 1.6rem;
	border: 1.5px solid #000;
	position: relative;
}
.area_list .acc_ic::before,.area_list .acc_ic::after{
	position: absolute;
	content: '';
	width: 0.1rem;
    height: 0.8rem;
    background-color: #000;
    top: 0.3rem;
    left: 50%;
	transition: .3s;
}
.area_list .acc_ic::after{
	transform: rotate(90deg);
}
.area_list dt.active .acc_ic::before{
	transform: rotate(90deg);
}
@media (min-width: 500px) {
  .area_list > dt {
    font-size: 2.2rem;
    padding: 0 28px;
    height: 56px;
  }
  .area_inner_list > dt {
    font-size: 2rem;
    padding: 0 28px;
    height: 56px;
  }
  .area_shop_list > dt {
    font-size: 2rem;
    padding: 0 28px;
    height: 56px;
  }
  .inner_shop_list > li::before {
    width: 32px;
    height: 32px;
    top: calc(50% - 16px);
    right: 28px;
  }
  .inner_shop_list > li::after {
    top: calc(50% - 6px);
    right: 40px;
    width: 12px;
    height: 12px;
  }
  .inner_shop_list > li > a {
    padding: 16px 28px;
  }
  .inner_shop_list .shop_name {
    font-size: 2rem;
  }
  .inner_shop_list .shop_cp_tx {
    font-size: 1.6rem;
  }
  .inner_shop_list .shop_label {
    margin-top: 8px;
  }
  .inner_shop_list .shop_label > li {
    font-size: 1.6rem;
    padding: 1px 8px 3px;
    margin: 10px 5px 5px 0;
  }
  .area_list .acc_ic {
    width: 20px;
    height: 20px;
    border: 1.5px solid #000;
  }
  .area_list .acc_ic::before, .area_list .acc_ic::after {
    width: 1px;
    height: 12px;
    top: 4px;
  }
}
/*shop_label*/
.inner_shop_list .shop_label > li.lady_only{
	background-color: #f3698d;
}
.inner_shop_list .shop_label > li.h_water{
	background-color: #6ec8e6;
}
.inner_shop_list .shop_label > li.woodstone{
	background-color: #987150;
}
.inner_shop_list .shop_label > li.unisex{
	background-color: #8d439a;
}
.inner_shop_list .shop_label > li.light{
	background-color: #fff83d;
	color: #000;
}
.inner_shop_list .shop_label > li.floating{
	background-color: #bfe5f7;
	color: #000;
}
.inner_shop_list .shop_label > li.aesthetic{
	background-color: #dc3816;
}
.inner_shop_list .shop_label > li.ems{
	background: rgb(90,178,222);
    background: linear-gradient(150deg, rgba(90,178,222, 1) 0%, rgba(166,204,125, 1) 100%);
}
.inner_shop_list .shop_label > li.screen{
	background-color: #b9b8c3;
}
.inner_shop_list .shop_label > li.yoga_school{
	background-color: #afe570;
}
.inner_shop_list .shop_label > li.burnes{
	background-color: #674498;
}

/*追従ボタン*/
#cta_follow{
	display: none;
}
#cta_follow {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}
#cta_follow .btn_inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.cta_follow_wrap {
  max-width: 500px;
  margin: 0 auto;
  display: flex;
  height: 7.2rem;
  align-items: center;
  padding: 0 0.5rem;
  justify-content: space-between;
  background: rgb(255, 133, 87);
  background: linear-gradient(90deg, rgba(255, 133, 87, 1) 0%, rgba(255, 63, 131, 1) 100%);
}
.cta_follow_wrap .follow_anchor_btn {
  width: 10.5rem;
}
.cta_follow_wrap .follow_reserve_btn {
  position: relative;
  width: 25.2rem;
  margin-left: 0.7rem;
}
@media (min-width: 500px) {
  .cta_follow_wrap {
    height: 97px;
    padding: 4px 8px;
  }
  .cta_follow_wrap .follow_anchor_btn {
    width: 139px;
  }
  .cta_follow_wrap .follow_reserve_btn {
    width: 335px;
    margin-left: 9px;
  }
}
/*footer*/
footer {
  text-align: center
}

#company nav {
  padding: 30px 0
}

#company ul li, #company ul li a {
  display: inline-block
}

#company ul li a {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 .5em;
  font-size: 9pt;
  line-height: 2.5em;
  color: #403e3e
}

#company ul li span, .ft-bottom {
  font-size: 10px
}

.ft-bottom {
  color: #fff;
  background: #de580d
}

.ft-copyright {
  padding: 20px 0;
  display: inline-block
}
#search #maparea small {
  display: block;
  padding: 5px 0 0
}
#search small:first-of-type {
  display: block;
  padding: 6% 0 0
}
#contentWrap {
  padding: 30px 0
}
#search small:first-of-type {
  padding: 14% 0 0;
  text-align: center
}
#maparea, map {
  margin-top: 50px;
}
@media all and (min-width: 751px) {
  .map_exp_l, .map_exp_r {
    font-size: 20px
  }
}
.area {
  background-color: #fff
}
area {
  border: 0;
  outline: 0
}
.area h2 {
font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: .3em;
    color: #fff;
    height: 56px;
    padding: 0 28px;
    display: flex;
    align-items: center;
}
#area00 h2, #area01 h2, #area02 h2, #area03 h2, #area04 h2, #area05 h2, #area06 h2, #area07 h2, #area08 h2, #area09 h2, #area10 h2, #area11 h2 {
  background: #b6ada8
}
.area h3 {
  padding: 1.3em 1em;
  background: #e0dbd9;
  background-size: auto 100%;
  color: #58585d;
  letter-spacing: .3em;
  border-top: 2px solid #fff
}
.area h3, .area h4 {
position: relative;
    font-weight: 400;
    line-height: .1;
    padding: 0 28px;
    height: 56px;
    align-items: center;
    display: flex;
}
.area h4 {
  background: #f7f6f5;
  background-size: auto 100%;
  border-top: #ccc 1px solid;
  letter-spacing: .2em;
  color: #404040
}
.area h3:after {
position: absolute;
    top: 63%;
    right: 1.4rem;
    margin-top: -1.2rem;
    width: 10px;
    height: 10px;
    content: "+";
    color: #585858;
    display: flex;
    align-items: center;
}
.area h3.open:after {
  content: "-"
}
.area h4:after {
  position: absolute;
  top: 70%;
  right: 1.7rem;
  margin-top: -.85rem;
  width: 10px;
  height: 10px;
  content: "+"
}
.area h4.open:after {
  content: "-"
}
.area ul {
  font-size: 1.5rem;
  overflow: hidden;
  background: #fff
}
.areaBox ul li {
  border-bottom: 1px dashed #dee1e1
}
.areaBox ul a li, .areaBox ul li:last-child {
  border-bottom: 0
}
.area ul li {
  padding: 0 0.9em;
}
.area ul li.icon_female_sp_lp {
  background: #fc7796
}
.area ul li.icon_female_sp_lp, .area ul li.icon_male_sp_lp {
  color: #fff;
  display: inline;
  font-size: 9pt;
  float: left;
  margin: 10px 5px 5px 0
}
.area ul li.icon_male_sp_lp {
  background: #8d439a
}
.area ul li.icon_water_sp_lp {
  background: #20cdff
}
.area ul li.icon_screen_sp_lp, .area ul li.icon_water_sp_lp {
  color: #fff;
  display: inline;
  font-size: 9pt;
  float: left;
  margin: 10px 5px 5px 0
}
.area ul li.icon_screen_sp_lp {
  background: #b9b8c3
}
.area ul li.icon_light_sp_lp {
  background: #fff83d;
  color: #333
}
.area ul li.icon_cashless_sp_lp {
  background: #e6b422;
  color: #fff;
}
.area ul li.icon_floating_sp_lp, .area ul li.icon_light_sp_lp, .area ul li.icon_pilates_sp_lp, .area ul li.icon_surf_sp_lp, .area ul li.icon_burnes_sp_lp, .area ul li.icon_cashless_sp_lp, ul li.icon_hot_m-pilates {
  display: inline;
  font-size: 9pt;
  float: left;
  margin: 10px 5px 5px 0;
}
.area ul li.icon_floating_sp_lp {
  background: #bfe5f7;
  color: #433f3f
}
.area ul li.icon_pilates_sp_lp {
  background: #62bd8b;
  background: linear-gradient(150deg, #62bd8b 0%, #10b1e9 100%);
  color: #fff
}
.area ul li.icon_surf_sp_lp {
  background: #00b8ee;
  background: linear-gradient(150deg, #00b8ee 0%, #5e8fcb 100%);
  color: #fff
}
.area ul li.icon_burnes_sp_lp {
  background: #674498;
  background: linear-gradient(150deg, #674498 0%, #3f2a5c 100%);
  color: #fff
}

.area ul li.icon_hot_m-pilates {
  background: #fa8072;
  color: #fff
}
.area ul li.icon_hk_sp_lp {
  background: #dc3816;
  color: #fff;
  display: inline;
  font-size: 9pt;
  float: left;
  margin: 10px 5px 5px 0
}
.area ul a {
  display: block;
  padding: .5rem;
  color: #433f3f;
  text-decoration: none;
  line-height: 1.6em
}
/*.area ul a:before {
  font-family: Font Awesome\ 5 Free;
  display: inline-block;
  width: 1.5rem;
  height: 1.5rem;
  content: "\f152";
  border-bottom: 0
}*/
.shop_info_studio {
  color: #f04471;
  font-size: .9em;
  letter-spacing: 1px
}
.area ul li.icon_d_circuit_lp {
  display: inline;
  font-size: 9pt;
  float: left;
  margin: 10px 5px 5px 0;
  background: rgb(183,91,152);
  background: linear-gradient(150deg, rgba(183,91,152, 1) 0%, rgba(148,58,136, 1) 100%);
  color: #fff;
}
.area ul li.icon_wood_stone_lp {
  display: inline;
  font-size: 9pt;
  float: left;
  margin: 10px 5px 5px 0;
  background: #708090;
  color: #fff
}
.area ul li.icon_feel {
  display: inline;
  font-size: 9pt;
  float: left;
  margin: 10px 5px 5px 0;
  background: rgb(183,91,152);
  background: linear-gradient(150deg, rgba(69,17,1, 1) 0%, rgba(69,5,124, 1) 100%);
  color: #fff;
}
.area ul li.icon_spa {
  display: inline;
  font-size: 9pt;
  float: left;
  margin: 10px 5px 5px 0;
  background: #ac5500;
  color: #fff
}
.area ul li.icon_ems_lp {
  display: inline;
  font-size: 9pt;
  float: left;
  margin: 10px 5px 5px 0;
  background: rgb(90,178,222);
  background: linear-gradient(150deg, rgba(90,178,222, 1) 0%, rgba(166,204,125, 1) 100%);
  color: #fff;
}
.area ul li.icon_d-jump {
  display: inline;
  font-size: 9pt;
  float: left;
  margin: 10px 5px 5px 0;
  background: #a38974;
  color: #fff;
}
/* 211201 ヨガスクール併設　追記　あとらす21 姉崎　ここから*/
.area ul li.icon_firstship_lp {
  display: inline;
  font-size: 9pt;
  float: left;
  margin: 10px 5px 5px 0;
  background: #afe570;
  color: #333;
}
/*----------------店舗情報---------------*/
.h2_jap {
    font-size: 6vw;
}
.text_wide {
    letter-spacing: 1px;
}
.text_center {
    text-align: center;
}
.shop_info_area {
  text-align: left;
}
.shop_ico {
  font-size: 4vw;
  padding: 0 20px 20px;
  border-bottom: 1px dashed #404040;
  margin-top: 20px
}
#shop_info > h2 {
  background-color: #EA736B;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 6px, rgba(234, 115, 107, 0.2) 6px, rgba(255, 255, 255, 0.2) 7px);
  padding: 20px 1em;
  color: #fff;
  letter-spacing: .1em;
  line-height: 1.3em;
  font-size: 7vw;
  text-align: center;
}
#shop_info > h2 span {
  font-size: .75em;
  line-height: 1.4;
  display: block
}
.shop_info_area > h3 {
  margin: 30px auto 0;
  display: block;
  font-family: Pacifico, cursive;
  text-align: center
}
#top_shop #shop_info .shop_ttl {
  display: none
}
#second_shop #shop_info .shop_ttl {
  border-radius: 50px 50px 0 0;
  background: url(../../1911/img/shop_name_bg.png)0 0 repeat;
  padding: 20px 0 0;
  font-size: 1.5em;
  color: #fff;
  letter-spacing: .3em;
  margin-top: 20px
}
.shop_ico ul {
  overflow: hidden;
  padding: 10px 0 0;
}
.shop_ico ul li {
  display: inline-block;
  padding: 5px;
  margin: 0 5px 10px 0;
  font-size: .8em;
  font-weight: 700;
  line-height: 1;
  border: 1px solid #404040;
  float: left
}
.holiday {
  color: #c30d23
}
.multi_shop {
  padding-top: 20px;
  position: relative
}
.multi_shop_inner {
  background: #efefef;
  border-radius: 5px;
  margin: 0 auto;
  padding: 15px;
  text-align: center;
  width: 80%;
}
.multi_shop_inner em {
  font-size: 1.4em;
  background: linear-gradient(transparent 70%, #FFEB27 70%);
}
.multi_shop_inner p {
  font-size: 1.5em
}
.multi_shop_inner span {
  font-size: 1.0em;
  line-height: 1.5;
  display: block
}
.multi_shop_inner span.small {
  font-size: .7em;
  line-height: 2.0;
  display: block
}
/*.multi_shop_inner:after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #efefef
}*/
.multi_shop_name {
  color: #EA736B;
  font-size: 7vw;
  line-height: 1.4em;
  padding: 20px 20px 0 20px;
  letter-spacing: 1px;
}
.price {
  padding: 50px 0;
  border-top: 1px dashed #404040
}
.price > ul {
  max-width: 600px;
  margin: 0 auto
}
.price > p {
  font-family: Pacifico, cursive;
  letter-spacing: .05em;
  text-align: center;
  font-size: 5vw
}
.price h2 {
  border-top: 2px solid #2f353c;
  line-height: 1;
  padding: 10px 0 20px;
  text-align: center;
  width: 13rem;
  margin: 0 auto;
  font-size: 4vw;
  font-weight: 400
}
.price ul .price_notax {
  font-size: 7.5vw
}
.price .yen {
  font-size: .6em
}
.price ul .price_detail {
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 1.6;
}
.price ul .plus_one {
  line-height: 1.6em;
  display: block;
  padding-bottom: 5px
}
.price .child .plus_one {
  font-size: .9em;
  padding: 10px 0
}
.price a {
  display: block
}
.price a span {
  font-size: 1.2em;
  line-height: 1.6em;
  font-weight: 700;
  color: #434343;
}
.price a span.place_limit {
  font-size: .8em;
  background: #eeefef;
  padding: 5px
}
.price .child {
  display: none;
  padding: 0;
  background: #e5e1e0;
  text-align: left;
  width: 93.3%;
  margin: 0 auto;
  border-bottom: 1px solid #e5e1e0;
}
.price .child .menu:hover {
  background: #d0d0d0
}
.price .child > li {
  display: flex;
  align-items: center;
  padding: 15px 0 10px
}
.price .small {
  padding-top: 0.5em;
}
.price_w_bg {
  background: #fff;
  width: 90%;
  margin: 0 auto 12px;
  padding: 5px
}
.student_note {
	padding: 0 20px 20px;
}
.anchor_button {
  position: relative;
  margin-top: 30px
}
.anchor_button a {
  display: block
}
.anchor_button p {
  position: absolute;
  color: #ff5b00;
  top: 12%;
  display: block;
  left: 2%;
  font-size: 4vw
}
.switch .menu.active:after, .switch .menu:after {
  content: "";
  position: absolute;
  right: 10px;
  top: 55%;
  display: block;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  background-image: url(/common_old/images/icon_oc.svg);
  background-repeat: no-repeat;
  background-size: 100% 200%
}
.switch .menu.active:after {
  background-position: center bottom
}
.menu {
  display: block;
  position: relative;
  margin: 0 20px;
  padding: 20px 0;
  border-bottom: 1px solid #e5e1e0;
  font-size: 5vw
}
.menu:hover {
  text-decoration: none
}
.full_or_daytime {
  float: left;
  position: relative;
  display: inline-block;
  width: 60px;
  height: 60px;
  margin: -5px 10px 5px 28px;
}
.full {
  background: #fff;
  color: #000
}
.day {
  background: #000;
  color: #fff
}
.full_or_daytime span {
  position: absolute;
  display: inline-block;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 60px;
  text-align: center;
  font-size: .7em;
  line-height: 1.3em;
  font-weight: 700;
}
.price_detail {
  color: #c30d23
}
.shop_info_area {
  border: 1px solid #434343;
  background: linear-gradient(#EC868E 1%, #fff 1%);
  width: 98%;
  margin: 20px auto 20px;
	color: #434343;
}
.muti .shop_info_area {
    margin: 0px auto 20px;
}
@media all and (min-width:600px) {
  .h2_jap {
    font-size: 30px;
}
  #shop_info > h2 {
    font-size: 30px;
    padding: 30px 1em;
  }
  .shop_info_area {
    border-left: 1px solid #434343;
    border-right: 1px solid #434343;
    /*border-top: 1px solid #F6A322;*/
    border-bottom: 1px solid #434343;
    text-align: left;
    margin-bottom: 30px;
  }
  .multi .shop_info_area {
    border-top: 1px solid #434343;
    background: linear-gradient(#EC868E 1%, #fff 1%);
  }
  .multi .shop_info_area > h3 {
    padding-top: 50px;
  }
  .shop_info_area > h3 {
    margin: 0 auto 0;
    font-size: 18px;
    padding-top: 50px;
  }
  .multi_shop_inner {
    width: 90%;
  }
  .multi_shop_name {
    font-size: 28px
  }
  .address_code {
    font-size: 20px;
    line-height: 1.6em
  }
  .multi_shop_inner p {
    font-size: 36px;
    padding-top: 20px
  }
  .multi_shop_inner span, .shop_ico ul li {
    font-size: 15px
  }
	
	.multi_shop_inner span.small {
    font-size: 13px;
}
  .holiday {
    font-size: 20px
  }
  .price > p {
    font-size: 33px;
    padding-bottom: 10px
  }
  .price h2 {
    font-size: 26px
  }
  .menu {
    font-size: 20px
  }
  .full_or_daytime span {
    font-size: 15px
  }
  .price ul .price_notax {
    font-size: 40px
  }
  .price .small {
    font-size: 18px;
    vertical-align: bottom;
    line-height: 1.6;
    /*padding-bottom: 50px;*/
    padding-top: 18px;
  }
  .price_w_bg {
    padding: 8px;
    font-size: 18px
  }
  .price ul .price_detail {
    font-size: 16px
  }
  .anchor_button p {
    font-size: 28px
  }
}
/*===================================
200601_複合店舗_広瀬追加
===================================*/
.small {
    font-size: .9em;
    letter-spacing: -1px;
}
/*===================================
    wss
===================================*/
#ws_area > a > img {
    width: 95%;
    display: block;
    margin: 20px auto;
}
#experience_promotion img {
  width: 94%;
  max-width: 600px;
  display: block;
  margin: 30px auto 30px;
  text-align: center;
}
.after0904_class #experience_promotion img {
  margin: 7px auto 30px;
}
.remodal.wss_modal {
    background: transparent;
    max-width: 500px;
    padding: 0;
	position: relative;
}
.wss_modal .remodal-close.close_top{
	width: 3.8rem;
    height: 3.8rem;
    right: -0.5rem;
    left: unset;
    top: -0.5rem;
	filter: drop-shadow(0px 0px 4px rgba(0,0,0,0.5));
}
.wss_modal .remodal-close.close_top::before{
	color: #666666;
    width: 3.8rem;
    height: 3.8rem;
    font-size: 4.4rem;
    background-color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.wss_modal .remodal-close.close_bottom{
	position: absolute;
    width: 13rem;
    height: 4.2rem;
    top: 97%;
    left: calc(50% - 6.5rem);
}
.wss_modal .remodal-close.close_bottom::before{
	display: none;
}
@media (min-width: 500px) {
  .wss_modal .remodal-close.close_bottom {
    width: 178px;
    height: 56px;
    top: 97%;
    left: calc(50% - 89px);
  }
}
/*===================================
    multi_contents
===================================*/
#multi_contents{
	background-color: #ebe8e7;
	padding-bottom: 3rem;
    margin-bottom: 2rem;
}
.contents_detail{
	width: 33.45rem;
	margin: 2.5rem auto 0;
}
.contents_detail > dd{
    position: relative;
    box-sizing: border-box;
    /*以下お好み*/
    /* ボーダーを付ける場合 */
   padding: 1.5rem 1.8rem;
    border: 1px solid #000;
	background-color: #fff;
}
.detail_inner{
    position: relative;
    overflow: hidden;
    /*以下お好み*/
    /*高さの初期値*/
    height: 100px;
}
.detail_inner::before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    content: "";
    /*以下お好み グラデーションの色と高さ 高さはreadmoreのheight以下にすること*/
    height: 50px;
    background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0.8) 50%, #fff 100%);
    background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 50%, rgba(255,255,255,0.8) 50%, #fff 100%);
}
.detail_inner .inner_tx{
	font-size: 1.4rem;
	margin-top: 1rem;
	line-height: 1.8;
}
.detail_inner .small_tx{
	margin-top: 0.6rem;
	line-height: 1.7;
}
.detail_inner .small_tx li{
	font-size: 1rem;
}
/* もっと見るボタン */
.readmore-label{
    display: table;
    bottom: 1.5rem;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    margin: 0 auto;
    z-index: 2;
    padding: 0.2rem 3rem 0.3rem 1.6rem;
    border: 1px solid;
    background-color: #fff;
    border-radius: 2rem;
    font-size: 1.5rem;
	cursor: pointer;
}
.readmore-label:before{
    content: 'もっと見る';
}
.readmore-label:after{
	content: '';
    display: block;
    position: absolute;
    right: 1.2rem;
    bottom: 1.1rem;
    width: 1rem;
    height: 1rem;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    transform: rotate(135deg);
}
.readmore-check{
    display: none;
}
/*チェック時にボタンを非表示*/
.readmore-check:checked ~ .readmore-label{
    position: static;
    transform: translateX(0);
    /* 「もっと見る」を押した後、元に戻す必要がない場合は、上のオプションを消してこの1行だけにする */
    /* display: none; */
	margin-top: 1.5rem;
}
.readmore-check:checked ~ .readmore-label:before{
    content: '閉じる';
}
.readmore-check:checked ~ .readmore-label:after{
	transform: rotate(-45deg);
    bottom: 0.7rem;
}
/*チェック時に高さを自動に戻す*/
.readmore-check:checked ~ .detail_inner{
    height: auto;
}
/*チェック時グラデーション等を削除*/
.readmore-check:checked ~ .detail_inner::before {
    display: none;
}
@media (min-width: 500px) {
  #multi_contents {
    padding-bottom: 40px;
    margin-bottom: 28px;
  }
  .contents_detail {
    width: 446px;
    margin: 32px auto 0;
  }
  .contents_detail > dd {
    padding: 20px 24px;
  }
  .detail_inner {
    height: 166px;
  }
  .detail_inner::before {
    height: 75px;
  }
  .detail_inner .inner_tx {
    font-size: 1.9rem;
    margin-top: 12px;
  }
  .detail_inner .small_tx {
    margin-top: 8px;
  }
  .detail_inner .small_tx li {
    font-size: 1.2rem;
  }
  /* もっと見るボタン */
  .readmore-label {
    bottom: 20px;
    padding: 4px 40px 4px 20px;
    border-radius: 28px;
    font-size: 2rem;
  }
  .readmore-label:after {
    right: 16px;
    bottom: 16px;
    width: 12px;
    height: 12px;
  }
  /*チェック時にボタンを非表示*/
  .readmore-check:checked ~ .readmore-label {
    margin-top: 20px;
  }
  .readmore-check:checked ~ .readmore-label:after {
    bottom: 8px;
  }
}
  /* contents_evolv */
.ems_tx {
  font-weight: bold;
  color: #cc9966;
}
/*個店・複合店*/
.multi_reserve_btn {
  width: 30.45rem;
  margin: 2rem auto 0;
}
#top_shop {
    margin-top: 2rem;
}
@media (min-width: 500px) {
  .multi_reserve_btn {
    width: 406px;
    margin: 30px auto 0;
  }
  #top_shop {
    margin-top: 28px;
  }
}
/*複合店　もっと見る*/
.show_more {
  position: absolute;
  DISPLAY: FLEX;
    ALIGN-ITEMS: CENTER;
    JUSTIFY-CONTENT: CENTER;
	width: 11.7REM;
  bottom: 1.5rem;
  left: CALC(50% - 5.85REM);
  height: auto;
  text-align: center;
  background: #fff;
  cursor: pointer;
  transition: bottom 0.2s;
  padding: 0 2.5rem 0.25rem 1.0rem;
  border: 1px solid;
  border-radius: 2rem;
  font-size: 1.5rem;
}
.show_more:after{
	content: '';
    display: block;
    position: absolute;
    right: 1.2rem;
    bottom: 1.1rem;
    width: 1rem;
    height: 1rem;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    transform: rotate(135deg);
}
.show_more.active:after{
    transform: rotate(-45deg);
	bottom: 0.5rem;
}
.show_more.active {
  background: none;
}
.detail_inner.open::before{
  display: none;
}
.detail_inner.open{
  padding-bottom: 3.75rem;
}

@media (min-width: 500px) {
  .show_more {
    width: 156PX;
    left: CALC(50% - 78PX);
    bottom: 20px;
    padding: 0 33px 3px 13PX;
    border-radius: 28px;
    font-size: 2rem;
  }
  .show_more:after {
    right: 16px;
    bottom: 14px;
    width: 12px;
    height: 12px;
  }
  .show_more.active:after {
    bottom: 8px;
  }
  .detail_inner.open {
    padding-bottom: 50px;
  }
}
/*追従NAV*/
#nav_follow{
	display: none;
}
@media (min-width: 1040px) {
  #nav_follow {
    display: block;
    position: fixed;
    bottom: 50px;
    left: auto;
    z-index: 100;
  }
	.nav_follow_wrap{
		margin: 0 auto;
    max-width: 220px;
    box-shadow: rgba(60, 64, 67, 0.6) 0px 1px 4px 0px;
    left: -250px;
    bottom: 0px;
    position: absolute;
	}
  .nav_follow_wrap li a {
    display: block;
    font-size: 1.4rem;
    width: 220px;
    padding: 4px 6px 3px 10px;
    background-color: #fff;
    text-decoration: none;
    position: relative;
  }
  .nav_follow_wrap li.gray a {
    background-color: #f1f1f1;
  }
  .nav_follow_wrap li a:hover,.nav_follow_wrap li a.current{
    background-color: #d8d2cf;
  }
	.nav_follow_wrap li a.current::before{
		    position: absolute;
    display: block;
    content: '';
    width: 0;
    height: 0;
    right: -20px;
    top: 0;
    border-style: solid;
    border-width: 14px 0 14px 20px;
    border-color: transparent transparent transparent #d8d2cf;
    opacity: 1;
  }
}
/*coupon_follow*/
#coupon_follow {
  position: fixed;
  bottom: 3rem;
  width: 14.1rem;
  z-index: 9;
}
.coupon_follow_btn{
	left: 25.5rem;
  bottom: 5rem;
  position: absolute;
  width: 80%;
}
/*フッターまでスクロールしたら消す*/
.is-hidden {
  visibility: hidden;
  opacity: 0;
}
@media (min-width: 500px) {
  #coupon_follow {
    bottom: 122px;
    width: 188px;
  }
  .coupon_follow_btn {
    left: 344px;
    bottom: -20px;
  }
}
/*modal z-index*/
.remodal-wrapper {
    z-index: 300 !important;
}
.remodal-overlay {
    z-index: 300 !important;
}
/*wss_contents*/
#ws_contents{
	background: #f6f5ef;
	position: relative;
    z-index: 0;
	padding: 6rem 0 11.25rem;
	text-align: center;
}
#ws_contents::before{
	position: absolute;
	display: block;
	content: '';
	background: url(../img/ws/2307/ws_bg01.png) no-repeat 0 0/cover;
    width: 100%;
    height: 23.25rem;
	top: 0;
	left: 0;
	z-index: -1;
}
#ws_contents::after{
	position: absolute;
	display: block;
	content: '';
	background: url(../img/ws/2307/ws_bg02.png) no-repeat 0 0/cover;
    width: 100%;
    height: 32.2rem;
	bottom: 0;
	left: 0;
	z-index: -1;
}
#ws_contents p{
	font-size: 1.4rem;
}
#ws_contents .ws_shop_name{
	color: #0f4236;
	font-weight: 500;
	font-size: 3.4rem;
	border-bottom: 0.75rem solid #0f4236;
    padding-bottom: 0.3rem;
	margin: 0 2.4rem;
	display: inline-block;
}
#ws_contents .ws_title{
	color: #0f4236;
	font-size: 2.5rem;
	font-weight: 500;
	margin: 1.8rem auto;
}
#ws_contents .ws_title .l_tx{
	font-size: 2.6rem;
}
#ws_contents .ws_title .s_tx{
	font-size: 2.1rem;
	padding-left: 0.6rem;
}
.ws_logo {
    width: 14.4rem;
}
.ws_stadio_img {
    margin: 2.4rem auto;
}
.align_left {
    text-align: left;
    padding: 0 2.1rem;
	line-height: 1.8;
}
.ws_about {
    width: 8.85rem;
    margin: 4.5rem auto 1.8rem;
	display: block;
}
#ws_contents .ws_tx {
    color: #0f4236;
    font-weight: 500;
    font-size: 1.9rem;
    border-bottom: 0.45rem solid #0f4236;
    display: inline-block;
    padding-bottom: 0.3rem;
	margin-bottom: 3rem;
}
.ws_img {
    margin-top: 4.5rem;
}
.ws_voice {
    width: 15rem;
    margin: 5.4rem auto 1.8rem;
    display: block;
}
.ws_voice_item+.ws_voice_item {
    margin-top: 3.2rem;
}
@media (min-width: 500px) {
  #ws_contents {
    padding: 80px 0 150px;
  }
  #ws_contents::before {
    width: 500px;
    height: 310px;
  }
  #ws_contents::after {
    width: 500px;
    height: 429px;
  }
  #ws_contents p {
    font-size: 1.9rem;
  }
  #ws_contents .ws_shop_name {
    font-size: 4.5rem;
    border-bottom: 10px solid #0f4236;
    padding-bottom: 4px;
    margin: 0 32px;
  }
  #ws_contents .ws_title {
    font-size: 3.3rem;
    margin: 24px auto;
  }
  #ws_contents .ws_title .l_tx {
    font-size: 3.5rem;
  }
  #ws_contents .ws_title .s_tx {
    font-size: 2.8rem;
    padding-left: 8px;
  }
  .ws_logo {
    width: 192px;
  }
  .ws_stadio_img {
    margin: 32px auto;
  }
  .align_left {
    text-align: left;
    padding: 0 28px;
  }
  .ws_about {
    width: 118px;
    margin: 60px auto 24px;
  }
  #ws_contents .ws_tx {
    font-size: 2.5rem;
    border-bottom: 6px solid #0f4236;
    padding-bottom: 4px;
    margin-bottom: 40px;
  }
  .ws_img {
    margin-top: 60px;
  }
  .ws_voice {
    width: 200px;
    margin: 72px auto 24px;
  }
  .ws_voice_item + .ws_voice_item {
    margin-top: 42px;
  }
}
/*cta_follow_shop*/
#cta_follow .cta_follow_shop {
  justify-content: center;
}
/*shop_name*/
#shop_name {
    background-color: #E63178;
    background-image: repeating-linear-gradient(45deg, transparent, transparent 6px, rgba(234, 115, 107, 0.2) 6px, rgba(255, 255, 255, 0.2) 7px);
    padding: 20px 1em;
    color: #fff;
    letter-spacing: .1em;
    line-height: 1.3em;
    font-size: 5vw;
    text-align: center;
}
@media (min-width: 500px) {
    #shop_name {
        font-size: 27px;
        padding: 30px 1em;
    }
}
/*countdown*/
.cta_lead {
    color: #fff;
    font-size: 1.35rem;
    font-weight: bold;
    text-align: center;
    padding-top: 0.45rem;
}
.countdown {
  padding: 0.6rem 0 1rem;
  font-size: 1.4rem;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
.countdown span {
  margin-right: 0.3rem;
  padding: 0 0.45rem;
  border-radius: 0.45rem;
  color: #333;
  background: #fff;
  font-size: 1.65rem;
  box-shadow: 0 0.23rem 0.45rem -0.15rem #333;
}
@media (min-width: 500px) {
  .cta_lead {
    font-size: 1.8rem;
    padding-top: 6px;
}
  .countdown {
    padding: 8px 0 13px;
    font-size: 1.87rem;
  }
  .countdown span {
    margin-right: 4px;
    padding: 0px 6px;
    border-radius: 6px;
    font-size: 2.2rem;
    box-shadow: 0 3px 6px -2px #333;
  }
}
/*line_banner*/
.line_banner {
  margin: 2rem auto 12rem;
}
#point .line_banner {
  width: 33rem;
  margin: 2rem auto;
}
.paypay_line_banner .line_banner {
  width: 33rem;
  margin: 2rem auto;
}
.triallesson_line_banner {
  width: 33rem;
  margin: 2rem auto;
}
@media (min-width: 500px) {
  .line_banner {
    margin: 28px auto 150px;
  }
  #point .line_banner {
    width: 400px;
    margin: 26px auto;
  }
  .paypay_line_banner .line_banner {
    width: 400px;
    margin: 26px auto;
  }
  .triallesson_line_banner {
    width: 400px;
    margin: 26px auto;
  }
}
/*注釈修正*/
#try .s_tx li {
  padding-left: 5.4vw;
  position: relative;
}
#try .s_tx li span {
  position: absolute;
  top: 0;
  left: 0;
}
#chance .s_tx dd {
  padding-left: 1em;
  text-indent: -1em;
}
#chance .s_tx li {
  padding-left: 1em;
  text-indent: -1em;
}
#chance .plan02_tx li {
  padding-left: 5.4vw;
  position: relative;
  text-indent: unset;
}
#chance .plan02_tx li span {
  position: absolute;
  top: 0;
  left: 0;
}
@media (min-width: 500px) {
  #try .s_tx li {
    padding-left: 28px;
  }
  #chance .plan02_tx li {
    padding-left: 28px;
  }
}
/*個店・複合店用の調整*/
#campaign .lesson_shop .tab_btn_wrap {
  top: 23rem;
}
#cta_follow .cta_follow_multi {
   height: 8.2rem;
   justify-content: center;
}
#cta_follow .cta_follow_multi .follow_reserve_btn {
  width: 30.2rem;
}
@media (min-width: 500px) {
  #campaign .lesson_shop .tab_btn_wrap {
    top: 307px;
  }
  #cta_follow .cta_follow_multi {
     height: 108px;
  }
  #cta_follow .cta_follow_multi .follow_reserve_btn {
    width: 406px;
  }
}
/*231124_CTAアニメーション追加*/
@-webkit-keyframes shine {
  0% {
    left: -200%;
    opacity: 0;
  }
  70% {
    left: -200%;
    opacity: 0.5;
  }
  71% {
    left: -200%;
    opacity: 1;
  }
  100% {
    left: -20%;
    opacity: 0;
  }
}
@keyframes shine {
  0% {
    left: -200%;
    opacity: 0;
  }
  70% {
    left: -200%;
    opacity: 0.5;
  }
  71% {
    left: -200%;
    opacity: 1;
  }
  100% {
    left: -20%;
    opacity: 0;
  }
}
.kirari .shine_inner {
  position: relative;
  overflow: hidden;
  display: block;
}
.kirari .shine_mask {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-mask-image: url(../img/2311/reserve_btn.png); mask-image: url(../img/2311/reserve_btn.png);
  -webkit-mask-size: 100% auto; mask-size: 100% auto;
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  -webkit-mask-position: left top; mask-position: left top;
  display: block;
}
.kirari .shine {
  content: "";
  -webkit-animation: shine 3s cubic-bezier(0.25, 0, 0.25, 1) infinite;
  animation: shine 3s cubic-bezier(0.25, 0, 0.25, 1) infinite;
  background-color: #fff;
  width: 140%;
  height: 100%;
  -webkit-transform: skewX(-45deg);
  transform: skewX(-45deg);
  top: 0;
  left: -160%;
  opacity: 0.5;
  position: absolute;
  z-index: 1;
  display: block;
}
/*2402_微調整*/
#campaign .lesson_cta_btn {
  bottom: 23.8rem;
}
.rakuten_img_01 img {
  margin-top: -1px;
}
@media (min-width: 500px) {
  #campaign .lesson_cta_btn {
    bottom: 317px;
  }
}
/*2403_追従ヘッダーメニュー*/
/*追従ヘッダーメニュー*/
#header {
  padding-top: 0.4rem;
}
#eventCTAClickHd {
  margin-right: 4rem;
}
#menu_nav_wrap {
  position: fixed;
  top: 0.5rem;
  right: 0.5rem;
  z-index: 200;
}
#menu_nav {
  position: fixed;
  width: 30rem;
  top: 0;
  right: -500px;
  background: rgba(179,39,38,1);
  background: linear-gradient(0deg, rgba(179,39,38,0.97) 0%, rgba(214,94,28,0.97) 50%, rgba(232,143,27,0.97) 100%);
  height: 100%;
  padding-top: 6rem;
  z-index: 201;
}
#menu_nav ul li {
  width: 100%;
}
#menu_nav ul li a {
  color: #ffffff;
  padding-left: 2rem;
  text-decoration: none;
  padding: 1.5rem 1rem 1.5rem 5rem;
  font-weight: 500;
}
#menu_nav_wrap .openbtn_wrap {
  position: relative;
  padding: 2rem;
  background: rgba(255,255,255,0.85);
  border-radius: 0.5rem;
}
#menu_nav_wrap .openbtn {
  position: absolute;
  top: 1rem;
  right: 0.7rem;
  width: 2.5rem;
  height: 2rem;
  z-index: 500;
  cursor: pointer;
  transition: all 400ms;
}
#menu_nav_wrap .openbtn span {
  position: absolute;
  width: 2.5rem;
  height: 0.3rem;
  border-radius: 10px;
  -webkit-transition: all 400ms;
  transition: all 400ms
}
#menu_nav_wrap .openbtn span:nth-child(1) {
  top: 0;
  background-color: #E88F1B;
}
#menu_nav_wrap .openbtn span:nth-child(2) {
  top: 0.8rem;
  background-color: #D65E1C;
}
#menu_nav_wrap .openbtn span:nth-child(3) {
  top: 1.6rem;
  background-color: #B32726;
}
#menu_nav_wrap .openbtn.hb-open {
transform: rotate(180deg);
}
#menu_nav_wrap .openbtn.hb-open span {
  background: #fff;
}
#menu_nav_wrap .openbtn.hb-open span:nth-child(1) {
  transform: translateY(0.6rem) rotate(-45deg);
  top: calc(50% - 0.66rem);
}
#menu_nav_wrap .openbtn.hb-open span:nth-child(2) {
  opacity: 0;/*真ん中の線は透過*/
}
#menu_nav_wrap .openbtn.hb-open span:nth-child(3) {
  transform: translateY(-0.6rem) rotate(45deg);
}
#menu_nav .menu_top_wrap {
  text-align: center;
  margin: 3.5rem auto 0;
}
#menu_nav ul li a.menu_top {
  display: inline-block;
  border: 0.2rem solid #fff;
  border-radius: 3rem;
  padding: 1rem 7.5rem;
}
#menu_nav ul li.white a {
  background-color: rgba(250,250,250,0.2);
  color: #fff;
}
#menu_nav ul li.menu_nav01 {
  background: url(../img/2402/menu_nav_bg01.png) no-repeat 1.2rem 1.1rem/2.9rem 2.8rem;
}
#menu_nav ul li.menu_nav02 {
  background: url(../img/2402/menu_nav_bg02.png) no-repeat 1.2rem 1.3rem/2.3rem 2.4rem;
}
#menu_nav ul li.menu_nav03 {
  background: url(../img/2402/menu_nav_bg03.png) no-repeat 1.4rem 1.2rem/1.8rem 2.6rem;
}
#menu_nav ul li.menu_nav04 {
  background: url(../img/2402/menu_nav_bg04.png) no-repeat 1.2rem 1.6rem/2.1rem 2.1rem;
}
#menu_nav ul li.menu_nav05 {
  background: url(../img/2402/menu_nav_bg05.png) no-repeat 1rem 1rem/2.4rem 2.7rem;
}
#menu_nav ul li.menu_nav06 {
  background: url(../img/2402/menu_nav_bg06.png) no-repeat 1.2rem 1.5rem/2.3rem 2rem;
}
@media (min-width: 500px) {
  #header {
    padding-top: 0;
  }
  #eventCTAClickHd {
    margin-right: 0;
  }
  #menu_nav_wrap {
    display: none;
  }
}
/*2403*/
/*モーダル*/
.remodal.cpn.modal_coupon {
  filter: drop-shadow(0px 0px 4px rgba(0,0,0,0.5));
}
.remodal.cpn {
  max-width: 500px;
  position: relative;
  padding: 0;
  background: transparent;
}
.coupon_ticket {
  display: block;
  width: 35rem;
  margin: 4rem auto 0;
}
.remodal.cpn .remodal-close.close_top{
	width: 3rem;
  height: 3rem;
  right: 0rem;
  left: unset;
  top: 3.5rem;
	filter: drop-shadow(0px 0px 4px rgba(0,0,0,0.5));
}
.remodal.cpn .remodal-close.close_top::before{
	color: #666666;
  width: 3rem;
  height: 3rem;
  font-size: 4rem;
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.modal_cta_wrap {
  position: absolute;
  width: 30.3rem;
  bottom: 1.4rem;
  left: calc(50% - 15.15rem);
}
.modal_text {
  font-weight: bold;
  font-size: 1.8rem;
  color: #fff;
  text-align: center;
}
.modal_reserve_btn .reserve_btn {
  margin-top: 0.8rem;
}
.coupon_modal_btn {
  position: absolute;
  width: 30rem;
  left: calc(50% - 15rem);
}
@media (min-width: 500px) {
  .coupon_ticket {
    width: 500px;
    margin: 0 auto;
  }
  .remodal.cpn .remodal-close.close_top{
    width: 50px;
    height: 50px;
    right: -10px;
    top: 0px;
  }
  .remodal.cpn .remodal-close.close_top::before{
    width: 50px;
    height: 50px;
    font-size: 5rem;
  }
  .modal_cta_wrap {
    width: 500px;
    bottom: 25px;
    left: calc(50% - 250px);
  }
  .modal_text {
    font-size: 2.6rem;
  }
  .modal_reserve_btn .reserve_btn {
    margin: 10px auto;
    width: 406px;
  }
  .coupon_modal_btn {
    width: 390px;
    left: calc(50% - 195px);
  }
}
/*mv*/
.mv_btn_wrap {
  position: relative;
  margin: 0 auto;
  max-width: 500px;
}
.mv_btn_wrap .float_reserve_btn {
  position: absolute;
  top: -6rem;
  right: calc(50% - 15.15rem);
}
.mv_comment {
  padding: 2.7rem 3rem;
}
.mv_btn_wrap .coupon_modal_btn {
  top: -12.5rem;
}
@media (min-width: 500px) {
  .mv_btn_wrap .float_reserve_btn {
    top: -78px;
    right: calc(50% - 203px);
  }
  .mv_comment {
    padding: 40px 30px 10px;
  }
  .mv_btn_wrap .coupon_modal_btn {
    top: -168px;
  }
}
/*campaign*/
#campaign .lesson_cta_btn {
  left: calc(50% - 15.15rem);
  bottom: 18.5rem;
  width: 30.3rem;
}
.lesson_cta_btn .reserve_btn {
  margin-top: 5rem;
}
@media (min-width: 500px) {
  #campaign .lesson_cta_btn {
    left: calc(50% - 203px);
    bottom: 250px;
    width: 406px;
  }
  .lesson_cta_btn .reserve_btn {
    margin-top: 65px;
  }
}
/*キャンペーンエリア_スライダー*/
.campaign_slide_container {
  position: absolute;
  bottom: 27rem;
  left: calc(50% - 16rem);
  width: 32rem;
}
.campaign_lesson_btn {
  position: absolute;
  width: 30.3rem;
  bottom: 16.8rem;
  left: calc(50% - 15.15rem);
}
#campaign ul li:last-of-type {
  box-shadow: rgba(0, 0, 0, 0.2) 0 0.6rem 0.4rem -0.25rem;
}
@media (min-width: 500px) {
  .campaign_slide_container {
    bottom: 354px;
    width: 390px;
    left: calc(50% - 195px);
  }
  .campaign_lesson_btn {
    width: 406px;
    bottom: 224px;
    left: calc(50% - 203px);
  }
}
/*try*/
.try_btn_wrap {
  position: absolute;
  width: 30.3rem;
  top: 14rem;
  left: calc(50% - 15.15rem);
}
#try .reserve_btn {
  margin-top: 5rem;
  top: 0;
}
@media (min-width: 500px) {
  .try_btn_wrap {
    width: 406px;
    top: 190px;
    left: calc(50% - 203px);
  }
  #try .reserve_btn {
    margin-top: 65px;
  }
}
/*ノリカエ割*/
.norikae_wrap::after{
	position: absolute;
  display: block;
  content: '';
  background: url(../img/bg_shadow.png) no-repeat 0 0/100%;
  width: 37.5rem;
  height: 19.2rem;
  left: calc(50% - 18.75rem);
  bottom: -1.5rem;
  z-index: -1;
}
.norikae_wrap {
  position: relative;
  background: rgb(198, 188, 182);
  background: linear-gradient(135deg, rgba(198, 188, 182, 1) 8%, rgba(227, 224, 221, 1) 27%, rgba(198, 188, 182, 1) 52%, rgba(215, 210, 207, 1) 73%, rgba(198, 188, 182, 1) 86%);
  width: 34.5rem;
  margin: 6rem auto 2rem;
  padding: 3rem 0.5rem 0.5rem;
}
.norikae_wrap .norikae_lead{
	position: absolute;
	top: -4.5rem;
  left: 0;
}
.norikae_otoku {
  padding-bottom: 1rem;
}
.norikae_wrap .bg_white{
	background-color: #fff;
  padding-top: 2rem;
}
.norikae_wrap .s_tx{
	font-size: 1rem;
	padding: 1rem 1.8rem;
}
#chance .tabs {
  margin-bottom: 2.8rem;
}
.web_btn_wrap {
  text-align: center;
}
#chance .web_btn,
#point .web_btn,
#uservoice .web_btn {
  margin: 1rem auto 0;
  display: inline-block;
}
#chance .web_btn::after,
#point .web_btn::after,
#uservoice .web_btn::after {
  position: absolute;
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.5rem 0 0.5rem 0.8rem;
  border-color: transparent transparent transparent #a9a9a9;
  top: calc(50% - 0.45rem);
	right: -2rem;
}
@media (min-width: 500px) {
  .norikae_wrap {
    width: 460px;
    margin: 78px auto 26px;
    padding: 42px 4px 4px;
  }
  .norikae_wrap .norikae_lead {
    top: -58px;
  }
  .norikae_otoku {
    padding-bottom: 8px;
  }
  .norikae_wrap .bg_white{
    padding-top: 30px;
  }
  .norikae_wrap .s_tx {
    font-size: 1.2rem;
    padding: 16px 24px;
  }
  .norikae_wrap::after{
    width: 500px;
    height: 256px;
    left: calc(50% - 250px);
    bottom: -20px;
  }
  #chance .tabs {
    margin-bottom: 28px;
  }
  #chance .web_btn,
  #point .web_btn,
  #uservoice .web_btn {
    margin: 16px auto 0;
    font-size: 2rem;
  }
  #chance .web_btn::after,
  #point .web_btn::after,
  #uservoice .web_btn::after {
    right: -30px;
    border-width: 8px 0 8px 12px;
    top: calc(50% - 7px);
  }
}
/*モーダルずれ修正*/
.cta_follow_wrap {
  width: 100vw;
}
@media (min-width: 500px) {
  .cta_follow_wrap {
    width: 100%;
  }
  body,
  #cta_follow {
    width: calc(100vw - 17px);
  }
}
/*240311_クーポン画像サイズ調整、CTAボタン変更*/
/*クーポン画像サイズ調整*/
.coupon_ticket {
  width: 80%;
  margin-top: 0;
}
.remodal.cpn .remodal-close.close_top {
  right: 3rem;
  top: -0.5rem;
}
.modal_text {
  font-size: 1.4rem;
}
.modal_reserve_btn .reserve_btn {
  width: 80%;
}
.modal_cta_wrap {
  bottom: 1.2rem;
}
@media (min-width: 500px) {
  .remodal.cpn .remodal-close.close_top {
    right: 40px;
    top: -10px;
  }
  .modal_text {
    font-size: 2rem;
  }
  .modal_reserve_btn .reserve_btn {
    width: 330px;
  }
  .modal_cta_wrap {
    bottom: 12px;
  }
}
/*CTAボタン変更*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240311/reserve_btn.png); mask-image: url(../img/240311/reserve_btn.png);
}
.mv_btn_wrap .float_reserve_btn {
  top: -6.6rem;
}
.mv_comment {
  padding-top: 3.5rem;
}
.campaign_lesson_btn {
  bottom: 20rem;
}
.campaign_slide_container {
  bottom: 31rem;
}
#campaign .cp_tx {
  bottom: 2rem;
}
.try_btn_wrap {
  top: 14.5rem;
}
.cta_follow_wrap {
  height: 7.9rem;
  align-items: baseline;
}
#cta_follow .btn_inner {
  padding: 0.5rem 0;
}
.modal_cta_wrap {
  bottom: 1.5rem;
}
@media (min-width: 500px) {
  .mv_btn_wrap .float_reserve_btn {
    top: -84px;
  }
  .mv_comment {
    padding-top: 46px;
  }
  .campaign_lesson_btn {
    bottom: 270px;
  }
  .campaign_slide_container {
    bottom: 416px;
  }
  #campaign .cp_tx {
    bottom: 30px;
  }
  .try_btn_wrap {
    top: 194px;
  }
  .cta_follow_wrap {
    height: 100px;
  }
  #cta_follow .btn_inner {
    padding: 0;
  }
  .modal_cta_wrap {
    bottom: 20px;
  }
}
/*ボタンホバー時明るくする*/
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240311/reserve_btn.png); mask-image: url(../img/240311/reserve_btn.png);
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; 
  border-radius: 0;
  mask-size: contain;
}
/*240322_限定人数訴求20名、250万人突破背景変更*/
/*.kirari .shine_mask {
  -webkit-mask-image: url(../img/240322/reserve_btn.png); mask-image: url(../img/240322/reserve_btn.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240322/reserve_btn.png); mask-image: url(../img/240322/reserve_btn.png);
}*/
#reason {
  background: url(../img/240322/why_bg_01.png) no-repeat 0 0 / 100% 100%;
  padding-bottom: 1rem;
}
#reason .s_tx {
  margin-top: 2rem;
}
@media (min-width: 500px) {
  #reason {
    padding-bottom: 16px;
  }
  #reason .s_tx {
    margin-top: 30px;
  }
}
/*2404_SEO対策追加*/
#uservoice .swiper-slide .pink_tx {
  color: #E80070;
}
#area00 h2, #area01 h2, #area02 h2, #area03 h2, #area04 h2, #area05 h2, #area06 h2, #area07 h2, #area08 h2, #area09 h2, #area10 h2, #area11 h2 {
  background: #aaa09b;
  font-weight: bold;
  text-shadow: 1px 1px 0px rgba(0,0,0,0.3);
}
#reason .s_tx,
#plus_reason > .s_tx,
#effect .s_tx,
#try .s_tx,
.tab_content .s_tx,
.norikae_wrap .s_tx,
#company ul li span, .ft-bottom {
  font-size: 1.2rem;
}
.ft-copyright {
  padding: 20px 0.5rem;
}
.tab_content .s_tx {
  padding: 1.5rem 1.3rem 3rem;
}
@media (min-width: 500px) {
  #reason .s_tx,
  #plus_reason > .s_tx,
  #effect .s_tx,
  #try .s_tx,
  .tab_content .s_tx,
  .norikae_wrap .s_tx,
  #company ul li span, .ft-bottom {
    font-size: 12px;
  }
  #try .s_tx {
    margin: 0 30px;
  }
  .tab_content .s_tx {
    padding: 20px 30px 40px;
  }
}
/*キャッシュレス店舗用調整*/
#campaign .campaign_cashless .campaign_slide_container {
  bottom: 35.7rem;
}
#campaign .campaign_cashless .campaign_lesson_btn {
  bottom: 24rem;
}
#campaign  .campaign_cashless .cp_tx {
  bottom: 3rem;
}
@media (min-width: 500px) {
  #campaign .campaign_cashless .campaign_slide_container {
    bottom: 472px;
  }
  #campaign .campaign_cashless .campaign_lesson_btn {
    bottom: 320px;
  }
  #campaign .campaign_cashless .cp_tx {
    bottom: 38px;
  }
}
/*240405_短尺に統一*/
#reason {
  background: url(../img/2509/why_tx_01.webp) no-repeat 0 0 / 100% 100%;
  padding-bottom: 1rem;
}
#reason .s_tx {
  margin-top: 2rem;
}
#pace {
  position: relative;
  background: #fff3f7;
}
.member_plan {
  background-color: #fff;
}
#uservoice {
  padding: 3rem 0;
}
@media (min-width: 500px) {
  #reason {
    padding-bottom: 16px;
  }
  #reason .s_tx {
    margin-top: 30px;
  }
  #uservoice {
    padding: 46px 0;
  }
}
/*240408修正_広告用LPポップアップ表示*/
#sapporo_popup,
#kyoto_popup,
#sendai_popup,
#osaka_popup,
#nagoya_popup {
  display: none;
}
#layer_board_area {
  z-index: 500!important;
  display: none;
}
.layer_board_bg {
  cursor: inherit!important;
  display: none;
}
.layer_board .mdl_btn_close.circle_btn {
  display: none;
}
.layer_board,
.layer_board.shortLayer {
  padding: 0!important;
  width: 33rem;
  max-width: 470px;
  background: unset!important;
}
.layer_borad_content {
  max-width: 470px;
}
.area_popup_title {
  position: relative;
  padding: 2rem 3rem;
  background: rgb(255,111,59);
  background: linear-gradient(90deg, rgba(255,111,59,1) 0%, rgba(255,145,59,1) 100%);
  color: #fff;
  text-align: center;
  border-radius: 20px 20px 0 0;
}
.area_popup_shop {
  font-weight: 500;
  font-size: 3rem;
}
.area_popup_shop_lead {
  font-size: 1.6rem;
}
.area_popup_content {
  padding: 2rem 1.5rem 4rem;
  text-align: center;
  position: relative;
  background-color: #fff;
  border-radius: 0 0 20px 20px;
  margin-bottom: 5rem;
}
.area_popup_shop_list {
  display: flex;
  flex-wrap: wrap;
  color: #333;
}
.area_popup_shop_list a {
  display: flex;
  width: calc(100%/2 - 1rem);
  height: 5.2rem;
  justify-content: center;
  align-items: center;
  border-radius: 15px;
  margin: 0 0.5rem;
  font-weight: 500;
  text-decoration: none;
  position: relative;
}
.area_popup_shop_list a:nth-of-type(n+3) {
  margin-top: 1.5rem;
}
.area_popup_shop_list a:hover {
  opacity: .7;
}
.shop_women,
.shop_unisex {
  background: #fdb8b8;
  box-shadow: 0px 4px 0px 0px rgba(252, 139, 141, 1);
}
.shop_unisex {
  position: relative;
}
.popup_comment_icon {
  position: absolute;
  display: inline-block;
  bottom: 0;
  right: 0.6rem;
  font-size: 1.2rem;
}
.popup_comment {
  position: absolute;
  bottom: 1rem;
  right: 2rem;
  font-size: 1.2rem;
}
@media (min-width: 500px) {
  .layer_board,
  .layer_board.shortLayer {
    width: 470px;
  }
  .area_popup {
    width: 470px;
    margin: 20px auto;
  }
  .area_popup_title {
    padding: 20px 30px;
  }
  .area_popup_shop {
    font-size: 3.6rem;
  }
  .area_popup_shop_lead {
    font-size: 2.4rem;
  }
  .area_popup_content {
    padding: 20px 15px 40px;
    margin-bottom: 50px;
  }
  .area_popup_shop_list a {
    width: calc(100%/2 - 10px);
    height: 65px;
    margin: 0 5px;
    font-size: 2rem;
  }
  .area_popup_shop_list a:nth-of-type(n+3) {
    margin-top: 15px;
  }
  .popup_comment_icon {
    bottom: 0;
    right: 6px;
    font-size: 1.4rem;
  }
  .popup_comment {
    bottom: 10px;
    right: 20px;
    font-size: 1.4rem;
  }
}
/*240415*/
/*mv*/
.mv_btn_wrap .coupon_modal_btn {
  top: -20rem;
}
.mv_btn_wrap .float_reserve_btn {
  top: -6.2rem;
}
.mv .CDT_area {
  position: absolute;
  bottom: 15rem;
  left: calc(50% - 15rem);
  width: 30rem;
}
.mv .CDT_wrap {
  align-items: baseline;
  margin-top: 0.4rem;
  display: flex;
  justify-content: center;
}
.mv .CDT_area_text {
  color: #fff;
  font-size: 1.6rem;
  font-weight: bold;
}
.mv .CDT_area_text_limit {
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
}
.mv .countdown span {
  font-size: 2.1rem;
  margin: 0 0.3rem;
}
@media (min-width: 500px) {
  .mv_btn_wrap .coupon_modal_btn {
    top: -266px;
  }
  .mv_btn_wrap .float_reserve_btn {
    top: -80px;
  }
  .mv .CDT_area {
    bottom: 162px;
    left: calc(50% - 235px);
    width: 470px;
  }
  .mv .CDT_wrap {
    margin-top: 10px;
  }
  .mv .CDT_area_text {
    font-size: 2rem;
  }
  .mv .CDT_area_text_limit {
    font-size: 2.6rem;
  }
  .mv .countdown span {
    font-size: 2.5rem;
    margin: 0 5px;
  }
}
/*追従タイマー*/
/*#cta_follow .cta_follow_wrap,
#cta_follow .cta_follow_shop {
  display: block;
  height: 11.3rem;
}
#cta_follow .CDT_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #44403F;
}
.countdown_follow_wrap {
  padding-top: 0.5rem;
}
#countdown_follow {
  padding: 0.2rem 0 0;
}
#cta_follow .countdown span {
  font-size: 1.8rem;
  margin: 0 0.3rem;
}
p.CDT_area_text_limit {
  font-size: 1.2rem;
  line-height: 1.2;
  margin-right: 0.5rem;
  color: #44403F;
}
.cta_follow_shop .btn_inner {
  justify-content: center!important;
}
@media (min-width: 500px) {
  #cta_follow .cta_follow_wrap,
  #cta_follow .cta_follow_shop {
    height: 148px;
  }
  .countdown_follow_wrap {
    padding-top: 2px;
  }
  #countdown_follow {
    padding: 4px 0 8px;
  }
  #cta_follow .countdown span {
    font-size: 2.3rem;
    margin: 0 3px;
  }
  p.CDT_area_text_limit {
    font-size: 1.4rem;
    margin-right: 5px;
  }
}*/
/*クーポン追従*/
#coupon_follow {
  bottom: 7rem;
}
@media (min-width: 500px) {
  #coupon_follow {
    bottom: 174px;
  }
}
/*LINEバナー余白調整*/
/*.line_banner {
  margin: 2rem auto 16rem;
}
.triallesson_line_banner,
#point .line_banner {
  margin: 2rem auto;
}
@media (min-width: 500px) {
  .line_banner {
    margin: 28px auto 200px;
  }
  .triallesson_line_banner,
  #point .line_banner {
    margin: 26px auto;
  }
}*/
/*2405*/
/*PFF料金箇所_pace*/
#pace .pace_pff_comment,
#pace .pace_small {
  font-size: 1.2rem;
  font-weight: normal;
}
#pace .pace_pff_comment {
  padding-top: 0.5rem;
  text-indent: -1em;
  padding-left: 1em;
}
.pc_only {
  display: none;
}
#top_shop .price_detail_wrap {
  display: flex;
}
.price_detail_text_indent,
.student_text_indent {
  padding-left: 1em!important;
  text-indent: -1em;
}
.price_detail01_left {
  width: 9.5rem;
}
.price_detail02_left {
  width: 8rem;
}
.price_detail03_left {
  width: 9.5rem;
}
.price_detail04_left {
  width: 4.6rem;
}
.price_detail01_right {
  width: calc(100% - 9.5rem);
}
.price_detail02_right {
  width: calc(100% - 8rem);
}
.price_detail03_right {
  width: calc(100% - 9.5rem);
}
.price_detail04_right {
  width: calc(100% - 4.6rem);
}
@media (min-width: 500px) {
  #pace .pace_small {
    font-size: 1.4rem;
  }
  #pace .pace_pff_comment {
    padding-top: 5px;
  }
  .sp_only {
    display: none;
  }
  .pc_only {
    display: block;
  }
  .price_detail01_left {
    width: 108px;
  }
  .price_detail02_left {
    width: 90px;
  }
  .price_detail03_left {
    width: 110px;
  }
  .price_detail04_left {
    width: 52px;
  }
  .price_detail01_right {
    width: calc(100% - 108px);
  }
  .price_detail02_right {
    width: calc(100% - 90px);
  }
  .price_detail03_right {
    width: calc(100% - 110px);
  }
  .price_detail04_right {
    width: calc(100% - 52px);
  }
}
/*mv*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/2405/reserve_btn_a.png);
  mask-image: url(../img/2405/reserve_btn_a.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/2405/reserve_btn_a.png); mask-image: url(../img/2405/reserve_btn_a.png);
}
.mv_btn_wrap {
  margin: 6.5rem auto;
}
.mv_comment {
  padding: 5rem 3rem 1.8rem; 
}
.mv_comment.pt-0 {
  padding-top: 0;
}
@media (min-width: 500px) {
  .mv_btn_wrap {
    margin: 90px auto;
  }
  .mv_comment {
    padding: 46px 30px 13px; 
  }
}
/*個店店舗名色変更*/
#shop_name {
  background-color: #e23239;
}
/*campaign*/
#campaign img {
  display: block;
}
#campaign ul li:last-of-type {
  box-shadow: none;
}
#campaign .lesson_cta_btn {
  bottom: 27.8rem;
}
.cp_acc_wrap {
  background: url("../img/2405/campaign_bg.png") no-repeat 0 0 / 100% 100%; 
  position: relative;
}
.cp_img_top {
  z-index: 1;
  position: relative;
}
.cp_white_bg01 {
  background: #fff;
  position: absolute;
  width: 35.2rem;
  left: calc(50% - 17.6rem);
  height: 36rem;
  top: 19rem;
}
.machine_pilates,
.burnes_style {
  position: relative;
}
.cp_white_bg02 {
  background: #fff;
  position: absolute;
  width: 35.2rem;
  left: calc(50% - 17.6rem);
  height: 10rem;
  top: 0;
}
.cp_machine_pilates_wrap,
.cp_burnes_style_wrap {
  background: #fff;
}
.campaign_acc dt:hover {
  cursor: pointer;
  opacity: .6;
}
#campaign .cp_text_right {
  text-align: right;
  padding-top: 0.8rem;
}
#campaign .campaign_list {
  background: rgb(217,44,76);
  background: linear-gradient(0deg, rgba(217,44,76,1) 0%, rgba(236,47,77,1) 50%, rgba(214,43,76,1) 100%);
}
/*#campaign .acc_box .acc:first-of-type > dd{
	display: block;
}*/
#campaign .acc_box_bg {
  background: #fff;
  width: 35.2rem;
  margin: 0 auto;
}
#campaign .acc_box .acc {
  width: 32rem;
  margin: 0 auto;
  background: #fff;
}
.acc_box {
  padding-bottom: 1rem;
}
#campaign .cp_machine_pilates_wrap .acc_box .acc dt,
#campaign .cp_burnes_style_wrap .acc_box .acc dt {
  font-size: 1.6rem;
  position: relative;
  padding: 1rem 1.8rem;
  font-weight: 500;
}
#campaign .cp_machine_pilates_wrap .acc_box .acc dt {
  color: #5e8fcb;
  background-color: #dee9f4;
  border-top: 0.1rem solid #5e8fcb;
}
#campaign .cp_burnes_style_wrap .acc_box .acc dt {
  color: #612aaf;
  background-color: #f0e9f6;
  border-top: 0.1rem solid #612aaf;
}
/*#campaign .cp_machine_pilates_wrap .acc_box .acc:last-of-type > dt{
	border-bottom: 0.1rem solid #5e8fcb;
}*/
/*#campaign .cp_burnes_style_wrap .acc_box .acc:last-of-type > dt{
	border-bottom: 0.1rem solid #612aaf;
}*/
#campaign .cp_machine_pilates_wrap .acc_box .acc:last-of-type > dt.active,
#campaign .cp_burnes_style_wrap .acc_box .acc:last-of-type > dt.active{
	border-bottom: unset;
}
#campaign .acc_box .acc dd {
  padding: 0.5rem 0 0.5rem 1.8rem;;
  font-size: 1.2rem;
}
#campaign .acc_box dt::before,
#campaign .acc_box dt::after {
  content: '';
  display: inline-block;
  width: 1.5rem;
  height: 0.1rem;
  background-color: #5e8fcb;
  position: absolute;
  right: 1.6rem;
  top: 50%;
  transform: translateY(-50%);
  transition: opacity 0.5s;
}
#campaign .cp_machine_pilates_wrap .acc_box dt::before,
#campaign .cp_machine_pilates_wrap .acc_box dt::after {
  background-color: #5e8fcb;
}
#campaign .cp_burnes_style_wrap .acc_box dt::before,
#campaign .cp_burnes_style_wrap .acc_box dt::after {
  background-color: #612aaf;
}
#campaign .acc_box dt::after {
  transform: translateY(-50%) rotate(90deg);
  transition: transform 0.5s;
}
/*#campaign .acc_box .acc:first-of-type dt::after {
  transform: rotate(0deg);
}*/
#campaign .acc_box dt.active::before {
  opacity: 0;
}
/*#campaign .acc_box .acc:first-of-type dt::before {
  transform: rotate(0deg);
}*/
#campaign .acc_box dt.active::after {
    transform: translateY(-50%) rotate(180deg);
}
/*#campaign .acc_box .acc:first-of-type dt.active::after {
  transform: rotate(-90deg);
}*/
/*#campaign .acc_box:first-of-type dt.active::before {
  opacity: 1;
}*/
#campaign .cp_tx {
  bottom: 3.5rem;
}
@media (min-width: 500px) {
  #campaign .lesson_cta_btn {
    bottom: 368px;
  }
  .cp_white_bg01 {
    width: 470px;
    left: calc(50% - 235px);
    height: 476px;
    top: 260px;
  }
  .cp_white_bg02 {
    width: 470px;
    left: calc(50% - 235px);
    height: 132px;
  }
  #campaign .cp_text_right {
    padding-top: 10px;
  }
  #campaign .acc_box_bg {
    width: 470px;
  }
  #campaign .acc_box .acc {
    width: 426px;
  }
  .acc_box {
    padding-bottom: 10px;
  }
  #campaign .cp_machine_pilates_wrap .acc_box .acc dt,
  #campaign .cp_burnes_style_wrap .acc_box .acc dt {
    font-size: 1.6rem;
    padding: 10px 20px;
  }
  /*#campaign .cp_machine_pilates_wrap .acc_box .acc:last-of-type > dt{
    border-bottom: 1px solid #5e8fcb;
  }*/
  /*#campaign .cp_burnes_style_wrap .acc_box .acc:last-of-type > dt{
    border-bottom: 1px solid #612aaf;
  }*/
  #campaign .acc_box .acc dd {
    padding: 10px 0 10px 20px;
    font-size: 1.4rem;
  }
  #campaign .acc_box dt::before,
  #campaign .acc_box dt::after {
    width: 15px;
    height: 1px;
    right: 20px;
  }
  #campaign .cp_tx {
    bottom: 42px;
  }
}
/*キャッシュレス店舗*/
#campaign .campaign_cashless .lesson_cta_btn {
  bottom: 32.5rem;
}
#campaign .campaign_cashless_c .lesson_cta_btn {
  bottom: 32rem;
}
#campaign .campaign_cashless_notice .lesson_cta_btn {
  bottom: 33.5rem;
}
#campaign .campaign_cashless .cp_tx,
#campaign .campaign_cashless_notice .cp_tx{
  bottom: 5rem;
}
#campaign .campaign_cashless_c .cp_tx {
  bottom: 3rem;
}
#campaign .campaign_pff_a .cp_tx {
  bottom: 5rem;
}
@media (min-width: 500px) {
  #campaign .campaign_cashless .lesson_cta_btn {
    bottom: 430px;
  }
  #campaign .campaign_cashless_c .lesson_cta_btn {
    bottom: 426px;
  }
  #campaign .campaign_cashless_notice .lesson_cta_btn {
    bottom: 446px;
  }
  #campaign .campaign_cashless .cp_tx,
  #campaign .campaign_cashless_notice .cp_tx {
    bottom: 60px;
  }
  #campaign .campaign_cashless_c .cp_tx {
    bottom: 40px;
  }
  #campaign .campaign_pff_a .cp_tx {
    bottom: 60px;
  }
}
/*ボタンホバー時明るくする*/
#campaign .machine_pilates::before,
#campaign .burnes_style::before {
  display: none;
  content: "";
  width: 90%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 5%;
  background-color: #FFF;
  opacity: 0.5;
  z-index: 2;
}
#campaign .machine_pilates,
#campaign .burnes_style {
  position: relative;
}
#campaign .machine_pilates:hover,
#campaign .burnes_style:hover {
  opacity: 1!important;
}
#campaign .machine_pilates:hover::before,
#campaign .burnes_style:hover::before {
  display: inline-block;
}
/*try*/
#try .reserve_btn {
  margin-top: 0;
  top: 0;
}
/*240510*/
/*楽天エリア*/
#rakuten_area {
  position: relative;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0.6rem 0.4rem -0.25rem;
  display: none;
}
.rakuten_btn_wrap {
  position: absolute;
  bottom: 1.6rem;
  left: calc(50% - 15.1rem);
  text-align: center;
}
.wrapper a.rakuten_modal_btn {
  display: inline-block;
  margin-bottom: 1.4rem;
  font-weight: bold;
  color: #725237;
  position: relative;
}
.wrapper a.rakuten_modal_btn::after {
  position: absolute;
  display: block;
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.5rem 0 0.5rem 0.8rem;
  border-color: transparent transparent transparent #725237;
  top: calc(50% - 0.45rem);
  right: -1.5rem;
}
.modal_rakuten {
  background: unset!important;
  max-width: 500px!important;
  padding: 1rem!important;
  filter: drop-shadow(0 0 0.5rem rgba(0,0,0,0.5));
}
.modal_rakuten .remodal-close {
  top: 1.3rem;
  right: 1.3rem;
  left: inherit;
  width: 3.2rem;
  height: 3.2rem;
  background: #fff;
  border-radius: 50%;
  color: #666;
  filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.5));
}
.modal_rakuten .remodal-close::before {
  font-size: 3.2rem;
  line-height: 3.2rem;
  width: 3.2rem;
}
@media (min-width: 500px) {
  .rakuten_btn_wrap {
    bottom: 22px;
    left: calc(50% - 203px);
  }
  .wrapper a.rakuten_modal_btn {
    margin-bottom: 20px;
    font-size: 1.9rem;
  }
  .wrapper a.rakuten_modal_btn::after {
    border-width: 8px 0 8px 12px;
    top: calc(50% - 7px);
    right: -20px;
  }
  .modal_rakuten {
    padding: 35px!important;
    filter: drop-shadow(0 0 10px rgba(0,0,0,0.5));
  }
  .modal_rakuten .remodal-close {
    top: 40px;
    right: 40px;
    width: 40px;
    height: 40px;
  }
  .modal_rakuten .remodal-close::before {
    font-size: 40px;
    line-height: 40px;
    width: 40px;
  }
}
/*楽天ポップアップ*/
#rakuten_popup {
  z-index: 999;
  position: inherit;
}
.bg_rakuten_popup {
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 999;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  transition: 0.5s;
}
.open_popup .bg_rakuten_popup {
  opacity: 1;
  visibility: visible;
}
.rakuten_popup {
  position: absolute;
  top: 50%;
  left: 49.4%;
  transform: translateX(-50%) translateY(-50%);
  width: 90%;
  max-width: 500px;
  filter: drop-shadow(0 0 10px rgba(0,0,0,0.5));
  border-radius: 5px;
  z-index: 20000;
}
.rakuten_popup_title_close {
  position: absolute;
  top: 1.8rem;
  right: 0.3rem;
  width: 3rem;
  height: 3rem;
  transform: translateY(-50%);
  cursor: pointer;background-color: #fff;
  border-radius: 50%;
  filter: drop-shadow(0 0 3px rgba(0,0,0,0.5));
  z-index: 2;
}
.rakuten_popup_title_close::before,
.rakuten_popup_title_close::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 70%;
  height: 2px;
  background-color: #666;
  content: "";
}
.rakuten_popup_title_close::before {
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
.rakuten_popup_title_close::after {
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}
.rakuten_popup_content {
  text-align: center;
  max-width: 500px;
}
.rakuten_popup_img_a {
  max-width: 500px;
  position: relative;
}
.countdown_popup_wrap {
  position: absolute;
  bottom: 10.5rem;
  left: 0;
}
@media (min-width: 500px) {
  .bg_rakuten_popup {
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 999;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: 0.5s;
  }
  .open_popup .bg_rakuten_popup {
    opacity: 1;
    visibility: visible;
  }
  .rakuten_popup {
    position: absolute;
    top: 50%;
    left: 49.4%;
    transform: translateX(-50%) translateY(-50%);
    width: 50%;
    max-width: 500px;
    filter: drop-shadow(0 0 10px rgba(0,0,0,0.5));
    border-radius: 5px;
  }
  .rakuten_popup_title_close {
    position: absolute;
    top: 27px;
    right: 7px;
    width: 40px;
    height: 40px;
    transform: translateY(-50%);
    cursor: pointer;background-color: #fff;
    border-radius: 50%;
    filter: drop-shadow(0 0 3px rgba(0,0,0,0.5));
    z-index: 2;
  }
  .rakuten_popup_title_close::before,
  .rakuten_popup_title_close::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 70%;
    height: 3px;
    background-color: #666;
    content: "";
  }
  .rakuten_popup_title_close::before {
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
  }
  .rakuten_popup_title_close::after {
    transform: translateX(-50%) translateY(-50%) rotate(-45deg);
  }
  .rakuten_popup_content {
    text-align: center;
    max-width: 500px;
  }
  .rakuten_popup_img_a {
    max-width: 500px;
    position: relative;
  }
  .countdown_popup_wrap {
    position: absolute;
    bottom: 144px;
    left: 0;
  }
}
/*カウントダウンタイマー*/
#rakuten_popup .limited_wrap {
  position: relative;
}
#rakuten_popup .limited_text {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 33.81rem;
}
#rakuten_popup .countdown {
  position: absolute;
  left: 7.7rem;
  bottom: -0.3rem;
  width: 25.9rem;
}
#rakuten_popup .cdt_tx,
#rakuten_popup .cdt_num {
  background: unset;
  color: #fff;
  box-shadow: unset;
  padding: 0 0.2rem;
  margin-right: 0;
}
#rakuten_popup .cdt_tx {
  font-size: 1.5rem;
}
#rakuten_popup .cdt_num {
  font-size: 1.9rem;
}
#rakuten_popup .countdown_popup_wrap .reserve_btn {
  position: absolute;
  bottom: -7.7rem;
  left: 4rem;
  width: 26rem;
}
@media (min-width: 500px) {
  #rakuten_popup .limited_wrap {
    position: relative;
  }
  #rakuten_popup .limited_text {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 500px;
  }
  #rakuten_popup .countdown {
    position: absolute;
    left: 54px;
    bottom: -5px;
    width: 500px;
  }
  #rakuten_popup .cdt_tx {
    font-size: 2.3rem;
    padding: 0 3px;
  }
  #rakuten_popup .cdt_num {
    font-size: 3.4rem;
    padding: 0 3px;
  }
  #rakuten_popup .countdown_popup_wrap .reserve_btn {
    position: absolute;
    bottom: -104px;
    left: 66px;
    width: 370px;
  }
}
@media (min-width: 768px) and (max-height: 768px){
  .countdown_popup_wrap {
    bottom: 117px;
  }
  #rakuten_popup .countdown {
    left: 40px;
  }
  #rakuten_popup .cdt_tx {
    font-size: 1.7rem;
    padding: 0 2px;
  }
  #rakuten_popup .cdt_num {
    font-size: 2.4rem;
    padding: 0 2px;
  }
  #rakuten_popup .countdown_popup_wrap .reserve_btn {
    width: 300px;
    left: 43px;
    bottom: -88px;
  }
}
/*240517*/
/*追従タイマー上部*/
#CDT_follow {
  background: #FCCF00;
  width: 100%;
  max-width: 500px;
  height: 6.8rem;
  padding-top: 0.5rem;
  z-index: 3;
  position: fixed;
  top: 0;
}
.CDT_follow_wrap {
  position: relative;
  text-align: center;
}
.CDT_follow_lead {
  width: 35rem;
}
.CDT_wrap {
  display: flex;
  justify-content: center;
  align-items: baseline;
}
#CDT_follow span {
  color: #54341E;
  box-shadow: unset;
  background: #fff;
  font-size: 2rem;
  margin: 0 0.2rem;
  font-weight: bold!important;
  padding: 0 0.4rem;
}
#CDT_follow .CDT_area_text {
  color: #54341E;
  font-size: 1.5rem;
  margin: 0;
  font-weight: bold!important;
  padding: 0 0.1rem;
}
@media (min-width: 500px) {
  #CDT_follow {
    height: 92px;
    padding-top: 8px;
  }
  .CDT_follow_lead {
    width: 473px;
  }
  #CDT_follow span {
    font-size: 2.7rem;
    padding: 0 5px;
  }
  #CDT_follow .CDT_area_text {
    font-size: 1.8rem;
    padding: 0 5px;
  }
}
/*アンカーリンク位置調整*/
/*#campaign,
#worries,
#effect,
#triallesson,
#search,
#area00,
#area01,
#area02,
#area03,
#area04,
#area05 {
  padding-top: 6.8rem;
  margin-top: -6.8rem;
}
#point {
  padding-top: 10.8rem;
  margin-top: -6.8rem;
}
#uservoice {
  padding-top: 0;
}
.uservoice_inner {
  padding-top: 2rem;
}
#uservoice::before {
  content: "";
  display: block;
  background-color: #fff;
  padding-top: 6.8rem;
  margin-top: -6.8rem;
}
.uservoice_inner {
  background: rgb(255, 222, 231);
  background: linear-gradient(90deg, rgba(255, 222, 231, 1) 0%, rgba(255, 187, 205, 1) 100%);
  padding-top: 2rem;
}
@media (min-width: 500px) {
  #campaign,
  #worries,
  #effect,
  #triallesson,
  #search,
  #area00,
  #area01,
  #area02,
  #area03,
  #area04,
  #area05 {
    padding-top: 92px;
    margin-top: -92px;
  }
  #point {
    padding-top: 142px;
    margin-top: -92px;
  }
  .uservoice_inner {
    padding-top: 28px;
  }
  #uservoice::before {
    content: "";
    display: block;
    background-color: #fff;
    padding-top: 92px;
    margin-top: -92px;
  }
  .uservoice_inner {
    background: rgb(255, 222, 231);
    background: linear-gradient(90deg, rgba(255, 222, 231, 1) 0%, rgba(255, 187, 205, 1) 100%);
    padding-top: 28px;
  }
}*/
/*調整*/
#try .reserve_btn {
  top: -0.7rem;
}
.mv_btn_wrap .float_reserve_btn {
  top: -6.7rem;
}
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240517/reserve_btn_30.png);
  mask-image: url(../img/240517/reserve_btn_30.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240517/reserve_btn_30.png); mask-image: url(../img/240517/reserve_btn_30.png);
}
#eventCTAClickHd {
  margin-right: 0;
}
.cp_machine_pilates_wrap, .cp_burnes_style_wrap {
  margin-top: -1px;
}
#campaign .campaign_cashless_notice .lesson_cta_btn {
  bottom: 33.9rem;
}
@media (min-width: 500px) {
  #try .reserve_btn {
    top: -7px;
  }
  .mv_btn_wrap .float_reserve_btn {
    top: -88px;
  }
  #campaign .campaign_cashless_notice .lesson_cta_btn {
    bottom: 452px;
  }
}
/*240522*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240522/reserve_btn_25.png);
  mask-image: url(../img/240522/reserve_btn_25.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240522/reserve_btn_25.png); mask-image: url(../img/240522/reserve_btn_25.png);
}
/*240527*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240527/reserve_btn_20.png);
  mask-image: url(../img/240527/reserve_btn_20.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240527/reserve_btn_20.png); mask-image: url(../img/240527/reserve_btn_20.png);
}
#campaign .lesson_cta_btn {
  bottom: 28rem;
}
/*#campaign .cp_tx {
  bottom: 4rem;
}*/
@media (min-width: 500px) {
  #campaign .lesson_cta_btn {
    bottom: 372px;
  }
  /*#campaign .cp_tx {
    bottom: 48px;
  }*/
}
/*2406*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/2406/reserve_btn.png);
  mask-image: url(../img/2406/reserve_btn.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/2406/reserve_btn.png); mask-image: url(../img/2406/reserve_btn.png);
}
#shop_name {
  background-color: #F44F2D;
}
#campaign .cp_tx {
  bottom: 3rem;
}
@media (min-width: 500px) {
  #campaign .cp_tx {
    bottom: 40px;
  }
}
/*240607*/
/*追従メニュー位置変更用*/
#menu_nav_wrap,
#menu_nav {
  transition: .3s;
}
#menu_nav_wrap.position_down {
  top: 7.5rem;
}
#eventCTAClickHd img {
  margin-right: 5rem;
}
@media (min-width: 500px) {
  #eventCTAClickHd img {
    margin-right: 12px;
  }
}
/*240617*/
/*キャンペーンエリアテキスト化*/
#campaign img {
  display: block;
}
.cp_red_bg {
  background: rgb(250,83,95);
  background: linear-gradient(90deg, rgba(250,83,95,1) 0%, rgba(227,54,61,1) 100%);
  padding-bottom: 2rem;
}
li.lesson {
  padding: 12rem 0 8rem;
  margin-top: 6rem;
  z-index: 0;
}
li.lesson::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 1.5rem;
  left: 0;
  z-index: -1;
}
.cp_tx_01 {
  position: absolute;
  top: -7rem;
  left: 0;
  display: inline-block;
}
.cp_lesson_white_bg {
  background: #fff;
  border-radius: 8px 8px 0 0;
  margin: 0 1.5rem;
  position: relative;
  padding: 3rem 2rem 3rem;
}
.cp_lesson_white_bg::before {
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 17.2rem solid transparent;
  border-left: 17.2rem solid transparent;
  border-top: 5rem solid #fff;
  border-bottom: 0;
  content: "";
  display: inline-block;
  position: absolute;
  bottom: -4.92rem;
  left: calc(50% - 17.2rem);
  z-index: 1;
}
.cp_lesson_white_bg::after {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(../img/240617/cp_shadow_01.png) no-repeat 0 0 / 36rem 10rem;
  width: 35rem;
  height: 10rem;
  left: -0.5rem;
  bottom: -4.8rem;
  z-index: -1;
}
.cp_lesson_white_bg.bottom-obj-none::after {
  background: url(../img/240617/cp_shadow_02.png) no-repeat 0 0 / 37rem 10rem;
  width: 37rem;
  left: -1rem;
  bottom: -1.5rem;
}
.cp_tx_02 {
  width: 100%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -2rem;
}
.cp_tx_03 {
  width: 28.5rem;
  margin: 0 auto;
}
#campaign .lesson_cta_btn {
  top: 9.5rem;
}
.cp_set_img_01 {
  margin-top: 10rem;
}
ul.cp_lesson_note_wrap {
  font-size: 1.2rem;
  margin-top: 1.5rem;
}
ul.cp_lesson_note_wrap li {
  position: relative;
  padding-left: 2.4rem;
}
ul.cp_lesson_note_wrap li span {
  position: absolute;
  top: 0;
  left: 0;
}
.cp_acc_wrap {
  background: rgb(250,83,95);
  background: linear-gradient(90deg, rgba(250,83,95,1) 0%, rgba(227,54,61,1) 100%);
  padding-top: 41rem;
}
.cp_white_bg01 {
  top: 14rem;
}
.burnes_style .cp_white_bg02 {
  height: 28rem;
}
.cp_tx_04,
.cp_tx_05,
.cp_tx_06,
.cp_tx_07 {
  position: absolute;
  left: 0;
  z-index: 1;
}
.cp_tx_04 {
  top: -6rem;
}
.cp_tx_05 {
  top: 12rem;
}
.cp_tx_06 {
  top: 17rem;
}
.cp_tx_07 {
  top: 26rem;
}
#campaign .campaign_list {
  background: rgb(250,83,95);
  background: linear-gradient(90deg, rgba(250,83,95,1) 0%, rgba(227,54,61,1) 100%);
}
.cp_threemonth_white_bg {
  background: #fff;
  border-radius: 8px 8px 0 0;
  margin: 0 1.5rem;
  position: relative;
  padding: 3rem 2rem 2rem;
}
.cp_special_wrap {
  padding-bottom: 5rem;
  position: relative;
  z-index: 0;
}
.cp_special_wrap::after {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(../img/240617/cp_shadow_02.png) no-repeat 0 0 / 38rem 10rem;
  width: 38rem;
  height: 10rem;
  left: -0.5rem;
  bottom: 3.5rem;
  z-index: -1;
}
.cp_special_white_bg {
  background: #fff;
  position: relative;
  padding: 1rem 0rem 10rem;
  margin: 0 1.15rem;
}
.cp_special_img_01 {
  width: 100%;
  margin: 0 auto;
}
.cp_plan_note_wrap {
  padding: 2rem 1.5rem;
  font-size: 1.2rem;
}
.cp_plan_note_wrap dd {
  padding-left: 1em;
  text-indent: -1em;
}
.cp_plan_note_wrap dd.tx_red {
  color: #E5353B;
}
#campaign .cp_tx {
  bottom: 2.5rem;
}
#campaign .cp_norikae_wrap {
  position: relative;
  width: 34.5rem;
  margin: 1.5rem auto 0;
  z-index: 0;
}
#campaign .cp_norikae::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(../img/240617/cp_shadow_02.png) no-repeat 0 0 / 37rem 10rem;
  width: 36rem;
  height: 10rem;
  left: -1.5rem;
  bottom: -1.3rem;
  z-index: -1;
}
#campaign .cp_norikae_gray_bg {
  background: rgb(198, 188, 182);
  background: linear-gradient(135deg, rgba(198, 188, 182, 1) 8%, rgba(227, 224, 221, 1) 27%, rgba(198, 188, 182, 1) 52%, rgba(215, 210, 207, 1) 73%, rgba(198, 188, 182, 1) 86%);
  padding: 3rem 0.5rem 0.5rem;
}
#campaign .norikae_lead {
  position: absolute;
  width: 34rem;
  top: -3rem;
  left: -1.8rem;
}
#campaign .norikae_otoku {
  width: 31rem;
  margin: 0 auto;
}
#campaign .cp_norikae_wrap .bg_white {
  background-color: #fff;
  padding: 1.8rem 1.5rem 1rem;
}
#campaign .cp_norikae_wrap .s_tx {
  padding: 1rem 0;
}
#campaign .cp_norikae_wrap .s_tx li {
  padding-left: 1em;
  text-indent: -1em;
  font-size: 1.2rem;
}
@media (min-width: 500px) {
  .cp_red_bg {
    padding-bottom: 40px;
  }
  li.lesson {
    padding: 180px 0 80px;
    margin-top: 60px;
  }
  li.lesson::before {
    width: 100%;
    height: 100%;
    top: 40px;
    left: 0;
  }
  .cp_tx_01 {
    top: -72px;
    left: 0;
  }
  .cp_lesson_white_bg {
    border-radius: 0;
    margin: 0 15px;
    padding: 40px 20px 40px;
  }
  .cp_lesson_white_bg::before {
    width: 0;
    height: 0;
    border-right: 234px solid transparent;
    border-left: 234px solid transparent;
    border-top: 50px solid #fff;
    border-bottom: 0;
    bottom: -50px;
    left: calc(50% - 234px);
  }
  .cp_lesson_white_bg::after {
    background: url(../img/240617/cp_shadow_01.png) no-repeat 0 0 / 500px 161px;
    width: 500px;
    height: 161px;
    left: -14px;
    bottom: -65px;
  }
  .cp_lesson_white_bg.bottom-obj-none::after {
    background: url(../img/240617/cp_shadow_02.png) no-repeat 0 0 / 500px 150px;
    width: 500px;
    height: 150px;
    left: -18px;
    bottom: -20px;
  }
  .cp_tx_02 {
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
    top: -30px;
  }
  .cp_tx_03 {
    width: 374px;
  }
  #campaign .lesson_cta_btn {
    top: 120px;
  }
  .cp_set_img_01 {
    margin-top: 130px;
  }
  ul.cp_lesson_note_wrap {
    font-size: 12px;
    margin-top: 15px;
  }
  ul.cp_lesson_note_wrap li {
    padding-left: 24px;
  }
  .cp_acc_wrap {
    padding-top: 560px;
  }
  .cp_white_bg01 {
    top: 210px;
  }
  .burnes_style .cp_white_bg02 {
    height: 350px;
  }
  .cp_tx_04 {
    top: -60px;
  }
  .cp_tx_05 {
    top: 180px;
  }
  .cp_tx_06 {
    top: 240px;
  }
  .cp_tx_07 {
    top: 364px;
  }
  .cp_threemonth_white_bg {
    border-radius: 8px 8px 0 0;
    margin: 0 15px;
    padding: 20px 20px 20px;
  }
  .cp_special_wrap {
    padding-bottom: 50px;
  }
  .cp_special_wrap::after {
    background: url(../img/240617/cp_shadow_02.png) no-repeat 0 0 / 500px 150px;
    width: 500px;
    height: 150px;
    left: 0;
    bottom: 30px;
  }
  .cp_special_white_bg {
    padding: 10px 0 176px;
    margin: 0 15px;
  }
  .cp_special_img_01 {
    width: 428px;
  }
  .cp_plan_note_wrap {
    padding: 10px 20px;
  }
  #campaign .cp_tx {
    bottom: 16px;
  }
  #campaign .cp_norikae_wrap {
    width: 460px;
    margin: 30px auto 0;
  }
  #campaign .cp_norikae::before {
    background: url(../img/240617/cp_shadow_02.png) no-repeat 0 0 / 500px 150px;
    width: 500px;
    height: 150px;
    left: -20px;
    bottom: -18px;
  }
  #campaign .cp_norikae_gray_bg {
    padding: 50px 5px 5px;
  }
  #campaign .norikae_lead {
    width: 454px;
    top: -30px;
    left: -20px;
  }
  #campaign .norikae_otoku {
    width: 416px;
    padding-bottom: 16px;
  }
  #campaign .cp_norikae_wrap .bg_white {
    padding: 18px 15px 10px;
  }
  #campaign .cp_norikae_wrap .s_tx {
    padding: 10px 0;
  }
}
/*mv*/
.cta_area_wrap {
  background: #E20D3E;
  padding: 4.4rem 0 3rem;
  position: relative;
}
.mv .CDT_area {
  bottom: 1.6rem;
}
.countdown span {
  box-shadow: unset;
}
.mv_comment {
  font-size: 1.2rem;
}
@media (min-width: 500px) {
  .cta_area_wrap {
    padding: 56px 0;
  }
  .mv .CDT_area {
    bottom: 20px;
  }
}
/*追従CTAボタン*/
.cta_follow_wrap {
  display: block;
  height: 12rem;
}
.CDT_wrap {
  align-items: center;
}
.CDT_area_text_limit {
  font-size: 1.2rem;
  margin-right: 0.5rem;
  line-height: 1.3;
}
.countdown {
  padding: 0.6rem 0 0;
}
.countdown span {
  margin: 0 0.3rem;
  font-size: 1.9rem;
}
#cta_follow .btn_inner {
  align-items: baseline;
  justify-content: center;
}
@media (min-width: 500px) {
  .cta_follow_wrap {
    height: 148px;
  }
  .CDT_area_text_limit {
    font-size: 1.4rem;
    margin-right: 5px;
  }
  .countdown {
    padding: 3px 0 5px;
  }
  .countdown span {
    margin: 0 5px;
    font-size: 2.3rem;
  }
}
/*調整*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240517/reserve_btn_30.png);
  mask-image: url(../img/240517/reserve_btn_30.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240517/reserve_btn_30.png); mask-image: url(../img/240517/reserve_btn_30.png);
}
#campaign {
  padding-top: 1rem;
}
#campaign .lesson_cta_btn {
  top: 13.7rem;
}
#campaign .campaign_ff .cp_special_white_bg {
  padding-bottom: 0;
}
#campaign .campaign_ff .cp_tx {
  bottom: 7.5rem;
}
ul.cp_lesson_note_wrap {
  font-size: 1.2rem;
}
.lesson_cta_btn .reserve_btn {
  margin-top: 0;
}
.burnes_style .cp_white_bg02 {
  height: 11rem;
}
.line_banner {
  margin-bottom: 17rem;
}
.triallesson_line_banner {
  margin-bottom: 2rem;
}
@media (min-width: 500px) {
  #campaign {
    padding-top: 10px;
  }
  #campaign .lesson_cta_btn {
    top: 180px;
  }
  #campaign .campaign_ff .cp_special_white_bg {
    padding-bottom: 0;
  }
  #campaign .campaign_ff .cp_tx {
    bottom: 115px;
  }
  .burnes_style .cp_white_bg02 {
    height: 135px;
  }
  .line_banner {
    margin-bottom: 200px;
  }
  .triallesson_line_banner {
    margin-bottom: 26px;
  }
}
/*ff用*/
.campaign_ff .cp_acc_wrap {
  padding-top: 20.8rem;
}
.campaign_ff .cp_tx_04 {
  top: -7rem;
}
.campaign_ff .cp_tx_05 {
  top: 11rem;
}
.campaign_ff .cp_tx_06 {
  top: 13rem;
}
.campaign_ff .cp_white_bg01 {
  top: 15rem;
}
.mv h1 img {
  display: block;
}
@media (min-width: 500px) {
  .campaign_ff .cp_acc_wrap {
    padding-top: 314px;
  }
  .campaign_ff .cp_tx_04 {
    top: -60px;
  }
  .campaign_ff .cp_tx_05 {
    top: 190px;
  }
  .campaign_ff .cp_tx_06 {
    top: 204px;
  }
  .campaign_ff .cp_white_bg01 {
    top: 240px;
  }
}
/*240621*/
/*アコーディオン部分*/
#campaign .cp_machine_pilates_wrap .acc_box .acc_inner_shop_wrap .acc_inner_shop_first_dd,
#campaign .cp_burnes_style_wrap .acc_box .acc_inner_shop_wrap .acc_inner_shop_first_dd {
	display: block;
}
#campaign .cp_machine_pilates_wrap .acc_box .acc_inner_shop_wrap dt.acc_inner_shop_last_dt {
	border-bottom: 0.1rem solid #5e8fcb;
}
#campaign .cp_burnes_style_wrap .acc_box .acc_inner_shop_wrap dt.acc_inner_shop_last_dt {
	border-bottom: 0.1rem solid #612aaf;
}
#campaign .cp_machine_pilates_wrap .acc_box .acc_inner_shop_wrap dt.acc_inner_shop_last_dt.active,
#campaign .cp_burnes_style_wrap .acc_box .acc_inner_shop_wrap dt.acc_inner_shop_last_dt.active{
	border-bottom: unset;
}
#campaign .acc_box .acc_inner_shop_wrap dt::before,
#campaign .acc_box .acc_inner_shop_wrap dt::after {
  content: '';
  display: inline-block;
  width: 1.5rem;
  height: 0.1rem;
  background-color: #5e8fcb;
  position: absolute;
  right: 1.6rem;
  top: 50%;
  transform: translateY(-50%);
  transition: opacity 0.5s;
}
#campaign .cp_machine_pilates_wrap .acc_box .acc_inner_shop_wrap dt::before,
#campaign .cp_machine_pilates_wrap .acc_box .acc_inner_shop_wrap dt::after {
  background-color: #5e8fcb;
}
#campaign .cp_burnes_style_wrap .acc_box .acc_inner_shop_wrap dt::before,
#campaign .cp_burnes_style_wrap .acc_box .acc_inner_shop_wrap dt::after {
  background-color: #612aaf;
}
#campaign .acc_box .acc_inner_shop_wrap dt::after {
  transform: translateY(-50%) rotate(90deg);
  transition: transform 0.5s;
}
#campaign .acc_box .acc_inner_shop_wrap dt.acc_inner_shop_first_dt::after {
  transform: rotate(0deg);
}
#campaign .acc_box .acc_inner_shop_wrap dt.active::before {
  opacity: 0;
}
#campaign .acc_box .acc_inner_shop_wrap dt.acc_inner_shop_first_dt::before {
  transform: rotate(0deg);
}
#campaign .acc_box .acc_inner_shop_wrap dt.active::after {
    transform: translateY(-50%) rotate(180deg);
}
#campaign .acc_box .acc_inner_shop_wrap dt.acc_inner_shop_first_dt.active::after {
  transform: rotate(-90deg);
}
#campaign .acc_box .acc_inner_shop_wrap dt.acc_inner_shop_first_dt.active::before {
  opacity: 1;
}
@media (min-width: 500px) {
  #campaign .acc_box .acc_inner_shop_wrap {
    width: 426px;
  }
  #campaign .cp_machine_pilates_wrap .acc_box .acc_inner_shop_wrap dt,
  #campaign .cp_burnes_style_wrap .acc_box .acc_inner_shop_wrap dt {
    font-size: 1.6rem;
    padding: 10px 20px;
  }
  #campaign .cp_machine_pilates_wrap .acc_box .acc_inner_shop_wrap dt.acc_inner_shop_last_dt{
    border-bottom: 1px solid #5e8fcb;
  }
  #campaign .cp_burnes_style_wrap .acc_box .acc_inner_shop_wrap dt.acc_inner_shop_last_dt{
    border-bottom: 1px solid #612aaf;
  }
  #campaign .acc_box .acc_inner_shop_wrap dd {
    padding: 10px 0 10px 20px;
    font-size: 1.4rem;
  }
  #campaign .acc_box .acc_inner_shop_wrap dt::before,
  #campaign .acc_box .acc_inner_shop_wrap dt::after {
    width: 15px;
    height: 1px;
    right: 20px;
  }
}
/*アコーディオンタイトル部分*/
#campaign .campaign_list .acc_box_bg {
  z-index: 2;
  position: relative;
}
.machine_pilates .cp_white_bg02,
.burnes_style .cp_white_bg02 {
  height: 30rem;
}
.burnes_style {
  padding-top: 2rem;
}
.cp_acc_more_wrap,
.cp_acc_more_wrap02 {
  z-index: 3;
  text-align: center;
  padding: 0.5rem;
  width: 32rem;
  margin: 0 auto;
  background: #fff;
  position: absolute;
  left: calc(50% - 16rem);
  transition: 0.7s;
}
.cp_machine_pilates_wrap .cp_acc_more_wrap,
.cp_machine_pilates_wrap .cp_acc_more_wrap02 {
  border: 1px solid #5E8FCB;
  top: 22rem;
}
.cp_machine_pilates_wrap .cp_acc_more_wrap02 {
  top: 25.8rem;
}
.cp_burnes_style_wrap .cp_acc_more_wrap,
.cp_burnes_style_wrap .cp_acc_more_wrap02 {
  border: 1px solid #612AAF;
  top: 24rem;
}
.cp_burnes_style_wrap .cp_acc_more_wrap02 {
  top: 17rem;
}
.machine_pilates.active > .machine_pilates_acc_title_wrap,
.burnes_style.active > .burnes_style_acc_title_wrap {
  padding-bottom: 0;
}
.cp_acc_more {
  display: inline-block;
  position: relative;
}
.cp_acc_more::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 0.8rem solid transparent;
  border-left: 0.8rem solid transparent;
  border-bottom: 1rem solid #fff;
  border-top: 0;
  top: -1.3rem;
  left: calc(50% - 0.8rem);
}
.machine_pilates_acc_title_wrap,
.burnes_style_acc_title_wrap {
  width: 32rem;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  padding-bottom: 3rem;
}
.machine_pilates_acc_title_wrap {
  background: #5E8FCB;
}
.machine_pilates_acc_title_wrap.hot_m-pilates {
  background: #E83C5D;
}

.machine_pilates_acc_title_wrap.hotyoga {
  background: #ff5f02;
}
.burnes_style_acc_title_wrap {
  background: #612AAF;
}
.machine_pilates_acc_tx_wrap,
.burnes_style_acc_tx_wrap {
  width: 32rem;
  margin: 0 auto;
  padding: 0 1.1rem 2.5rem;
}
.machine_pilates_acc_tx_wrap {
  background: #5E8FCB;
}
.machine_pilates_acc_tx_wrap.hot_m-pilates {
  background: #E83C5D;
}
.machine_pilates_acc_tx_wrap.hotyoga {
  background: #ff5f02;
}
.burnes_style_acc_tx_wrap {
  background: #612AAF;
}
.machine_pilates_acc_tx,
.burnes_style_acc_tx {
  padding: 1rem 1rem;
  border-radius: 8px 8px 0 0;
  background-color: rgba(255,255,255,0.8);
  font-size: 1.2rem;
  line-height: 1.7;
}
.burnes_style_acc_tx {
  border-radius: 8px;
}
.acc_box .tx_yellow {
  background-image: linear-gradient(transparent 60%, #FFFF00 60%);
  font-weight: 600;
}
.machine_pilates_acc_img_box {
  display: flex;
  justify-content: center;
  align-content: center;
  border-radius: 0 0 8px 8px;
  background-color: rgba(255,255,255,0.8);
  padding-bottom: 1rem;
}
.machine_pilates_acc_img_box picture {
  width: 13rem;
  height: auto;
  margin: 0 0.5rem;
}
#campaign br.pc_only {
  display: none;
}
.burnes_style_acc_tx_ic {
  font-size: 1.2rem;
  vertical-align: top;
}
.burnes_style_acc_tx_comment {
  font-size: 1.2rem;
  padding-top: 1rem;
  display: inline-block;
}
#campaign .acc_box .acc {
  padding-top: 2.5rem;
}
@media (min-width: 500px) {
  .machine_pilates .cp_white_bg02,
  .burnes_style .cp_white_bg02 {
    height: 350px;
  }
  .burnes_style {
    padding-top: 20px;
  }
  .cp_acc_more_wrap,
  .cp_acc_more_wrap02 {
    padding: 5px;
    width: 426px;
    left: calc(50% - 213px);
  }
  .cp_machine_pilates_wrap .cp_acc_more_wrap {
    top: 296px;
  }
  .cp_machine_pilates_wrap .cp_acc_more_wrap02 {
    top: 302px;
  }
  .cp_burnes_style_wrap .cp_acc_more_wrap {
    top: 314px;
  }
  .cp_burnes_style_wrap .cp_acc_more_wrap02 {
    top: 194px;
  }
  .cp_acc_more::before {
    border-right: 12px solid transparent;
    border-left: 12px solid transparent;
    border-bottom: 14px solid #fff;
    top: -14px;
    left: calc(50% - 12px);
  }
  .machine_pilates_acc_title_wrap,
  .burnes_style_acc_title_wrap {
    width: 426px;
    padding-bottom: 30px;
  }
  .machine_pilates_acc_tx_wrap,
  .burnes_style_acc_tx_wrap {
    width: 426px;
    padding: 0 28px 28px;
  }
  .machine_pilates_acc_tx,
  .burnes_style_acc_tx {
    padding: 10px 17px;
    font-size: 1.4rem;
  }
  .machine_pilates_acc_img_box {
    padding-bottom: 10px;
  }
  .machine_pilates_acc_img_box picture {
    width: 160px;
    margin: 0 5px;
  }
  #campaign br.pc_only {
    display: block;
  }
}
/*タイトルプラスマイナスボタン*/
#campaign .acc_title_btn_wrap {
  content: '';
  display: inline-block;
  width: 3rem;
  height: 3rem;
  position: absolute;
  right: 1.7rem;
  top: 2.3rem;
  background-color: #fff;
  z-index: 1;
  border-radius: 50%;
}
#campaign span.acc_title_btn {
  position: relative;
  display: inline-block;
}
#campaign span.acc_title_btn::before,
#campaign span.acc_title_btn::after {
  content: '';
  display: inline-block;
  width: 1.5rem;
  height: 0.2rem;
  position: absolute;
  transform: translateY(-50%);
  transition: opacity 0.5s;
  top: -0.1rem;
  left: 0.75rem;
}
#campaign .machine_pilates span.acc_title_btn::before,
#campaign .machine_pilates span.acc_title_btn::after {
  background-color: #5E8FCB;
}
#campaign .machine_pilates span.acc_title_btn.hotyoga::before,
#campaign .machine_pilates span.acc_title_btn.hotyoga::after {
  background-color: #ff5f02;
}
#campaign .burnes_style span.acc_title_btn::before,
#campaign .burnes_style span.acc_title_btn::after {
  background-color: #612AAF;
}
#campaign span.acc_title_btn::after {
  transform: translateY(-50%) rotate(90deg);
  transition: transform 0.5s;
}
#campaign .machine_pilates.active span.acc_title_btn::before,
#campaign .burnes_style.active span.acc_title_btn::before {
  opacity: 0;
}
#campaign .machine_pilates.active span.acc_title_btn::after,
#campaign .burnes_style.active span.acc_title_btn::after {
  transform: translateY(-50%) rotate(180deg);
}
@media (min-width: 500px) {
  #campaign .acc_title_btn_wrap {
    width: 32px;
    height: 32px;
    right: 40px;
    top: 34px;
  }
  #campaign span.acc_title_btn::before,
  #campaign span.acc_title_btn::after {
    width: 16px;
    height: 2px;
    top: 0;
    left: 8px;
  }
}
/*キャンペーンエリアテキスト化*/
#campaign img {
  display: block;
}
.cp_red_bg {
  background: rgb(250,83,95);
  background: linear-gradient(90deg, rgba(250,83,95,1) 0%, rgba(227,54,61,1) 100%);
  padding-bottom: 2rem;
}
li.lesson {
  padding: 12rem 0 8rem;
  margin-top: 6rem;
  z-index: 0;
}
li.lesson::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 1.5rem;
  left: 0;
  z-index: -1;
}
.cp_tx_01 {
  position: absolute;
  top: -7rem;
  left: 0;
  display: inline-block;
}
.cp_lesson_white_bg {
  background: #fff;
  border-radius: 0;
  margin: 0 1.5rem;
  position: relative;
  padding: 3rem 2rem 3rem;
}
.cp_lesson_white_bg::before {
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 17.2rem solid transparent;
  border-left: 17.2rem solid transparent;
  border-top: 5rem solid #fff;
  border-bottom: 0;
  content: "";
  display: inline-block;
  position: absolute;
  bottom: -4.95rem;
  left: calc(50% - 17.2rem);
  z-index: 1;
}
.cp_lesson_white_bg::after {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(../img/240617/cp_shadow_01.png) no-repeat 0 0 / 36rem 10rem;
  width: 35rem;
  height: 10rem;
  left: -0.5rem;
  bottom: -4.8rem;
  z-index: -1;
}
.cp_lesson_white_bg.bottom-obj-none::after {
  background: url(../img/240617/cp_shadow_02.png) no-repeat 0 0 / 37rem 10rem;
  width: 37rem;
  left: -1rem;
  bottom: -1.5rem;
}
.cp_tx_02 {
  width: 105%;
  position: absolute;
  transform: translateX(-50%);
  top: -3rem;
}
.cp_tx_03 {
  width: 28.5rem;
  margin: 0 auto;
}
#campaign .lesson_cta_btn {
  top: 9.5rem;
}
.cp_set_img_01 {
  margin-top: 10rem;
}
ul.cp_lesson_note_wrap {
  font-size: 1.2rem;
  margin-top: 1.5rem;
}
ul.cp_lesson_note_wrap li {
  position: relative;
  padding-left: 2.4rem;
}
ul.cp_lesson_note_wrap li span {
  position: absolute;
  top: 0;
  left: 0;
}
.cp_acc_wrap {
  background: rgb(250,83,95);
  background: linear-gradient(90deg, rgba(250,83,95,1) 0%, rgba(227,54,61,1) 100%);
  padding-top: 41rem;
}
.cp_white_bg01 {
  top: 14rem;
}
.burnes_style .cp_white_bg02 {
  height: 28rem;
}
.cp_tx_04,
.cp_tx_05,
.cp_tx_06,
.cp_tx_07 {
  position: absolute;
  left: 0;
  z-index: 1;
}
.cp_tx_04 {
  top: -6rem;
}
.cp_tx_05 {
  top: 12rem;
}
.cp_tx_06 {
  top: 17rem;
}
.cp_tx_07 {
  top: 26rem;
}
#campaign .campaign_list {
  background: rgb(250,83,95);
  background: linear-gradient(90deg, rgba(250,83,95,1) 0%, rgba(227,54,61,1) 100%);
}
.cp_threemonth_white_bg {
  background: #fff;
  border-radius: 8px 8px 0 0;
  margin: 0 1.5rem;
  position: relative;
  padding: 3rem 2rem 2rem;
}
.cp_special_wrap {
  padding-bottom: 0;
  position: relative;
  z-index: 0;
}
.cp_special_wrap::after {
  display: none;
}
.cp_special_white_bg {
  background: #fff;
  position: relative;
  padding: 1rem 0rem 0 0;
  margin: 0 1.15rem;
}
.cp_special_img_01 {
  margin: 0 auto;
}
.cp_plan_note_wrap {
  position: absolute;
  padding: 1rem 2.8rem 0;
  font-size: 0.9rem;
  top: 0;
}
.cp_plan_note_wrap.ff {
  bottom: calc((100vw / var(--vw-sp)) * 240);
}
.cp_plan_note_wrap dd {
  padding-left: 1em;
  text-indent: -1em;
}
.cp_plan_note_wrap dd.tx_red {
  color: #E5353B;
}
#campaign .cp_tx {
  bottom: 2rem;
}
#campaign .cp_norikae_wrap {
  position: relative;
  width: 34.5rem;
  margin: 1.5rem auto 0;
  z-index: 0;
}
#campaign .cp_norikae::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(../img/240617/cp_shadow_02.png) no-repeat 0 0 / 37rem 10rem;
  width: 36rem;
  height: 10rem;
  left: -1.5rem;
  bottom: -1.3rem;
  z-index: -1;
}
#campaign .cp_norikae_gray_bg {
  background: rgb(198, 188, 182);
  background: linear-gradient(135deg, rgba(198, 188, 182, 1) 8%, rgba(227, 224, 221, 1) 27%, rgba(198, 188, 182, 1) 52%, rgba(215, 210, 207, 1) 73%, rgba(198, 188, 182, 1) 86%);
  padding: 3rem 0.5rem 0.5rem;
}
#campaign .norikae_lead {
  position: absolute;
  width: 34rem;
  top: -3rem;
  left: -1.8rem;
}
#campaign .norikae_otoku {
  width: 31rem;
  margin: 0 auto;
}
#campaign .cp_norikae_wrap .bg_white {
  background-color: #fff;
  padding: 1.8rem 1.5rem 1rem;
}
#campaign .cp_norikae_wrap .s_tx {
  padding: 1rem 0;
}
#campaign .cp_norikae_wrap .s_tx li {
  padding-left: 1em;
  text-indent: -1em;
  font-size: 1.2rem;
}
@media (min-width: 500px) {
  .cp_red_bg {
    padding-bottom: 40px;
  }
  li.lesson {
    padding: 180px 0 80px;
    margin-top: 60px;
  }
  li.lesson::before {
    width: 100%;
    height: 100%;
    top: 40px;
    left: 0;
  }
  .cp_tx_01 {
    top: -72px;
    left: 0;
  }
  .cp_lesson_white_bg {
    margin: 0 15px;
    padding: 40px 20px 40px;
  }
  .cp_lesson_white_bg::before {
    width: 0;
    height: 0;
    border-right: 234px solid transparent;
    border-left: 234px solid transparent;
    border-top: 50px solid #fff;
    border-bottom: 0;
    bottom: -50px;
    left: calc(50% - 234px);
  }
  .cp_lesson_white_bg::after {
    background: url(../img/240617/cp_shadow_01.png) no-repeat 0 0 / 500px 161px;
    width: 500px;
    height: 161px;
    left: -14px;
    bottom: -65px;
  }
  .cp_lesson_white_bg.bottom-obj-none::after {
    background: url(../img/240617/cp_shadow_02.png) no-repeat 0 0 / 500px 150px;
    width: 500px;
    height: 150px;
    left: -18px;
    bottom: -20px;
  }
  .cp_tx_02 {
    width: 104%;
    left: 50%;
    transform: translateX(-50%);
    top: -39px;
  }
  .cp_tx_03 {
    width: 374px;
  }
  #campaign .lesson_cta_btn {
    top: 120px;
  }
  .cp_set_img_01 {
    margin-top: 130px;
  }
  ul.cp_lesson_note_wrap {
    font-size: 12px;
    margin-top: 15px;
  }
  ul.cp_lesson_note_wrap li {
    padding-left: 24px;
  }
  .cp_acc_wrap {
    padding-top: 560px;
  }
  .cp_white_bg01 {
    top: 210px;
  }
  .burnes_style .cp_white_bg02 {
    height: 350px;
  }
  .cp_tx_04 {
    top: -60px;
  }
  .cp_tx_05 {
    top: 180px;
  }
  .cp_tx_06 {
    top: 240px;
  }
  .cp_tx_07 {
    top: 364px;
  }
  .cp_threemonth_white_bg {
    border-radius: 8px 8px 0 0;
    margin: 0 15px;
    padding: 20px 20px 20px;
  }
  .cp_special_wrap {
    padding-bottom: 0;
  }
  .cp_special_wrap::after {
    display: none;
  }
  .cp_special_white_bg {
    padding: 10px 0 0 0;
    margin: 0 15px;
  }
  .cp_special_img_01 {
    position: relative;
    width: 100%;
    left: 0;
    margin-top: -37px;
  }
  .cp_plan_note_wrap {
    font-size: 1.2rem;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    padding: 10px 30px;
    width: 100%;
  }
  .cp_plan_note_wrap.ff {
    top: 0;
  }
  #campaign .cp_tx {
    bottom: 35px;
  }
  #campaign .cp_norikae_wrap {
    width: 460px;
    margin: 30px auto 0;
  }
  #campaign .cp_norikae::before {
    background: url(../img/240617/cp_shadow_02.png) no-repeat 0 0 / 500px 150px;
    width: 500px;
    height: 150px;
    left: -20px;
    bottom: -18px;
  }
  #campaign .cp_norikae_gray_bg {
    padding: 50px 5px 5px;
  }
  #campaign .norikae_lead {
    width: 454px;
    top: -30px;
    left: -20px;
  }
  #campaign .norikae_otoku {
    width: 416px;
    padding-bottom: 16px;
  }
  #campaign .cp_norikae_wrap .bg_white {
    padding: 18px 15px 10px;
  }
  #campaign .cp_norikae_wrap .s_tx {
    padding: 10px 0;
  }
}
/*mv*/
.cta_area_wrap {
  background: #E20D3E;
  padding: 4.4rem 0 3rem;
  position: relative;
}
.mv .CDT_area {
  bottom: 1.6rem;
}
.countdown span {
  box-shadow: unset;
}
.mv_comment {
  font-size: 0.9rem;
  display: inline-block;
  margin: 0 auto;
  text-align: left;
}
.mv_comment_wrap {
  text-align: center;
}
@media (min-width: 500px) {
  .cta_area_wrap {
    padding: 56px 0;
  }
  .mv .CDT_area {
    bottom: 20px;
  }
}
/*調整*/
#campaign {
  padding-top: 1rem;
}
#campaign .lesson_cta_btn {
  top: 13.7rem;
}
ul.cp_lesson_note_wrap {
  font-size: 1.2rem;
  line-height: 1.4;
  position: absolute;
  z-index: 10;
  top: 696px;
  width: 400px;
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 500px) {
  ul.cp_lesson_note_wrap {
    font-size: 0.9rem;
    top: calc((100vw / var(--vw-sp)) * 540);
    width: calc((100vw / var(--vw-sp)) * 315);
  }
}
.lesson_cta_btn .reserve_btn {
  margin-top: 0;
}
.line_banner {
  margin-bottom: 17rem;
}
.triallesson_line_banner {
  margin-bottom: 2rem;
}
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240522/reserve_btn_25.png);
  mask-image: url(../img/240522/reserve_btn_25.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240522/reserve_btn_25.png); mask-image: url(../img/240522/reserve_btn_25.png);
}
@media (min-width: 500px) {
  #campaign {
    padding-top: 10px;
  }
  #campaign .lesson_cta_btn {
    top: 180px;
  }
  .line_banner {
    margin-bottom: 200px;
  }
  .triallesson_line_banner {
    margin-bottom: 26px;
  }
}
/*240627*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240527/reserve_btn_20.png);
  mask-image: url(../img/240527/reserve_btn_20.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240527/reserve_btn_20.png); mask-image: url(../img/240527/reserve_btn_20.png);
}
/*翌月スタート訴求*/
/*.start_lead_tx01 {
  position: absolute;
  z-index: 1;
  top: 17rem;
}
.cp_tx_06 {
  top: 22.2rem;
}
.start_lead_tx02 {
  z-index: 1;
  position: absolute;
  top: 32rem;
}
.cp_tx_07 {
  top: 35.6rem;
}
.cp_acc_wrap {
  padding-top: 50rem;
}
.campaign_ff .start_lead_tx01 {
  top: 13rem;
}
.campaign_ff .cp_tx_06 {
  top: 18.2rem;
}
.campaign_ff .start_lead_tx02 {
  top: 28rem;
}
.campaign_ff .cp_special_white_bg {
  padding-top:  11.5rem;
}
@media (min-width: 500px) {
  .start_lead_tx01 {
    top: 248px;
  }
  .cp_tx_06 {
    top: 314px;
  }
  .start_lead_tx02 {
    top: 444px;
  }
  .cp_tx_07 {
    top: 495px;
  }
  .cp_acc_wrap {
    padding-top: 684px;
  }
  .campaign_ff .start_lead_tx01 {
    top: 210px;
  }
  .campaign_ff .cp_tx_06 {
    top: 276px;
  }
  .campaign_ff .start_lead_tx02 {
    top: 406px;
  }
  .campaign_ff .cp_special_white_bg {
    padding-top: 150px;
  }
}*/
/*2407*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240311/reserve_btn.png);
  mask-image: url(../img/240311/reserve_btn.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240311/reserve_btn.png); mask-image: url(../img/240311/reserve_btn.png);
}
/*mv*/
.mv_pff .mv_btn_wrap {
  margin: 0 auto;
}
.mv_pff .mv_btn_wrap .float_reserve_btn {
  top: -5rem;
}
.mv_pff .mv_comment {
  padding: 4.7rem 3rem 1rem;
}
.special_mv .mv_btn_wrap .float_reserve_btn {
  margin-top: 1.3rem;
}
.special_mv .mv_btn_wrap .float_reserve_btn.hot_m-pilates {
  top: -16rem;
}
.special_mv .mv_comment {
  padding-top: 7.3rem;
}
.mv_ff .mv_btn_wrap .coupon_modal_btn {
  top: -17rem;
}
.mv_ff .mv_btn_wrap .float_reserve_btn {
  top: -12rem;
}
.mv_ff .mv_comment {
  padding: 0 3rem 0;
  margin: -2.2rem auto -1rem;
}
@media (min-width: 500px) {
  .mv_pff .mv_btn_wrap .float_reserve_btn {
    top: -76px;
  }
  .mv_pff .mv_comment {
    padding: 50px 30px 20px;
  }
  .special_mv .mv_btn_wrap .float_reserve_btn {
    margin-top: 10px;
  }
  .special_mv .mv_comment {
    padding-top: 85px;
    font-size: 1.2rem;
  }
  .mv_ff .mv_btn_wrap .coupon_modal_btn {
    top: -230px;
  }
  .mv_ff .mv_btn_wrap .float_reserve_btn {
    top: -170px;
  }
  .mv_ff .mv_comment {
    padding-top: 0;
    margin: -42px auto 5px;
  }
}
/*campaign*/
.cp_bg {
  background: rgb(60,203,243);
  background: linear-gradient(165deg, rgba(60,203,243,1) 0%, rgba(0,164,201,1) 45%, rgba(23,179,226,1) 76%, rgba(60,203,243,1) 100%);
}
.cp_acc_wrap {
  background: unset;
}
#campaign ul li.cp_bg {
  padding-bottom: 0;
  box-shadow: rgba(0, 0, 0, 0.2) 0 0.6rem 0.4rem -0.25rem;
}
#campaign ul li.cp_bg.pd-small {
  padding-bottom: 3rem;
}
li.lesson::before {
  top: 0.4rem;
  left: 0;
}
.cp_tx_01 {
  top: -6.5rem;
}
.cp_tx_03 {
  width: 30rem;
}
.cp_set_img_01 {
  margin-top: 15rem;
}
#campaign .lesson_cta_btn {
  top: 14rem;
}
.lesson_cta_btn .reserve_btn {
  margin-top: 4.8rem;
}
#campaign .campaign_list {
  background: #00a9d0;
}
#campaign .cp_norikae_wrap {
  margin: 0 auto;
}
#campaign .norikae_lead {
  width: 11rem;
  top: -2.3rem;
  left: calc(50% - 5.5rem);
}
.cp_lesson_white_bg {
  margin: 0 1.25rem;
}
.cp_white_bg01,
.cp_white_bg02 {
  width: 35rem;
  left: calc(50% - 17.5rem);
}
.cp_special_white_bg {
  margin: 0;
}
.cp_lesson_white_bg::before {
  border-right: 17.6rem solid transparent;
  border-left: 17.6rem solid transparent;
  border-top: 5rem solid #fff;
  bottom: -4.9rem;
  left: calc(50% - 17.6rem);
}
.cp_lesson_white_bg.bottom-obj-none::before {
  display: none;
}
#campaign .acc_box_bg {
  width: 35rem;
}
@media (min-width: 500px) {
  #campaign ul li.cp_bg {
    padding-bottom: 0;
  }
  #campaign ul li.cp_bg.pd-small {
    padding-bottom: 40px;
  }
  li.lesson::before {
    top: 38px;
  }
  .cp_tx_01 {
    top: -72px;
  }
  .cp_tx_03 {
    width: 430px;
  }
  .cp_set_img_01 {
    margin-top: 195px;
  }
  #campaign .lesson_cta_btn {
    top: 196px;
  }
  .lesson_cta_btn .reserve_btn {
    margin-top: 60px;
  }
  #campaign .norikae_lead {
    width: 142px;
    top: -30px;
    left: calc(50% - 71px);
  }
  .cp_lesson_white_bg {
    margin: 0 17px;
  }
  .cp_white_bg01,
  .cp_white_bg02 {
    width: 466px;
    left: calc(50% - 233px);
  }
  .cp_special_white_bg {
    margin: 0;
  }
  .cp_lesson_white_bg::before {
    border-right: 234px solid transparent;
    border-left: 234px solid transparent;
    border-top: 50px solid #fff;
    bottom: -50px;
    left: calc(50% - 234px);
  }
  .cp_lesson_white_bg.bottom-obj-none::before {
    display: none;
  }
  #campaign .acc_box_bg {
    width: 466px;
  }
}
/*coupon*/
.modal_cta_wrap {
  bottom: 1.2rem;
}
.modal_text {
  color: #df580d;
  position: relative;
  z-index: 1;
  width: 22rem;
  margin: 0rem auto 1rem;
  padding: 0.2rem 0;
}
.modal_text::before {
  transform: skewX(-20deg);
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
  background: #fff000;
}
.modal_text:after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -0.7rem;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #fff000 transparent transparent transparent;
  border-width: 1.2rem 0.8rem 0 0.8rem;
}
@media (min-width: 500px) {
  .modal_cta_wrap {
    bottom: 12px;
  }
  .modal_text {
    width: 320px;
    margin: 0rem auto 12px;
    padding: 2px 0;
  }
  .modal_text:after{
    bottom: -10px;
    border-width: 16px 10px 0 10px;
  }
}
/*try*/
.try_btn_wrap {
  top: 15.5rem;
}
#try .reserve_btn {
  top: 5.1rem;
}
@media (min-width: 500px) {
  .try_btn_wrap {
    top: 210px;
  }
  #try .reserve_btn {
    top: 64px;
  }
}
/*chance*/
.norikae_wrap {
  margin-top: 4rem;
  padding-top: 2.4rem;
}
.norikae_wrap .norikae_lead {
  top: -2.3rem;
}
.norikae_wrap .norikae_otoku {
  width: 31rem;
  margin: 0 auto;
  display: block;
}
.norikae_wrap .bg_white {
  padding-top: 1.2rem;
}
.norikae_tx_03 {
  width: 29rem;
  margin: 0 auto;
  display: block;
}
@media (min-width: 500px) {
  .norikae_wrap {
    margin-top: 60px;
    padding-top: 36px;
  }
  .norikae_wrap .norikae_lead {
    top: -28px;
  }
  .norikae_wrap .norikae_otoku {
    width: 416px;
    padding-bottom: 16px;
  }
  .norikae_wrap .bg_white {
    padding-top: 20px;
  }
  .norikae_tx_03 {
    width: 382px;
  }
}
/*追従*/
.cta_follow_wrap {
  display: flex;
  height: 7.9rem;
}
.coupon_follow_btn {
  bottom: -2.5rem;
}
@media (min-width: 500px) {
  .cta_follow_wrap {
    height: 100px;
  }
  .coupon_follow_btn {
    bottom: -125px;
    left: 346px;
  }
}
/*SEO改善_CTAボタン仕様変更*/
button.reserve_btn,
button.multi_reserve_btn {
  display: block;
}
/*240719*/
/*SEO改善_個店料金表*/
#top_shop .price_detail_wrap {
  font-size: 1.4rem;
}
.price .menu span {
  font-size: 1.2em;
  line-height: 1.6em;
  font-weight: 700;
  color: #434343;
}
.price .menu span.place_limit {
  font-size: .8em;
  background: #eeefef;
  padding: 5px
}
.price li.price_w_bg {
  padding: 5px;
}
.price .child li.plus_one {
  font-size: 1.2rem;
}
.menu:hover {
  cursor: pointer;
  opacity: .8;
}
@media (min-width: 500px) {
  #top_shop .price_detail_wrap {
    font-size: 18px;
  }
  .price_detail {
    font-size: 16px;
  }
  .price li.price_w_bg {
    padding: 8px;
  }
  .price .child li.plus_one {
    font-size: 1.6rem;
  }
}
/*ユーザー補助改善*/
.ft-copyright {
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.3);
}
/*栄店FIRST SHIP修正*/
.sakae_firstship_wrap {
  padding: 2.5rem 1.25rem 1rem;
}
.sakae_firstship_ttl {
  font-size: 1.75rem;
  padding-left: 1rem;
  border-left: 0.6rem solid #AF6927;
  font-weight: 800;
  color: #AF6927;
}
.sakae_firstship_dtl {
  padding-top: 0.7rem;
  font-weight: 500;
  line-height: 1.65;
}
.sakae_firstship_dtl span {
  font-size: 1.2rem;
  margin-top: 0.7rem;
}
@media (min-width: 500px) {
  .sakae_firstship_wrap {
    padding: 40px 17px 20px;
  }
  .sakae_firstship_ttl {
    font-size: 2.4rem;
    padding-left: 10px;
    border-left: 6px solid #AF6927;
  }
  .sakae_firstship_dtl {
    padding-top: 10px;
    font-size: 1.8rem;
  }
  .sakae_firstship_dtl span {
    font-size: 1.4rem;
    margin-top: 5px;
  }
}
/*240816*/
#coupon_follow {
  bottom: 10.5rem;
}
@media (min-width: 500px) {
  #coupon_follow {
    bottom: 223px;
  }
}
/*mv*/
.mv_ff .mv_btn_wrap {
  margin: 0 auto 6.5rem;
}
.mv .CDT_area {
  bottom: 7.5rem;
  left: calc(50% - 17rem);
  width: 34rem;
}
.mv_ff .mv_btn_wrap .coupon_modal_btn {
  top: -18.5rem;
}
.mv .countdown span {
  font-size: 2rem;
}
.mv_ff .mv_btn_wrap .float_reserve_btn {
  top: -6rem;
}
@media (min-width: 500px) {
  .mv_ff .mv_btn_wrap {
    margin: 0 auto 90px;
  }
  .mv .CDT_area {
    bottom: 90px;
    left: calc(50% - 235px);
    width: 470px;
  }
  .mv_ff .mv_btn_wrap .coupon_modal_btn {
    top: -248px;
  }
  .mv .countdown span {
    font-size: 2.5rem;
  }
  .mv_ff .mv_btn_wrap .float_reserve_btn {
    top: -84px;
  }
}
/*追従タイマー*/
#cta_follow .cta_follow_wrap,
#cta_follow .cta_follow_shop {
  display: block;
  height: 11.3rem;
}
#cta_follow .CDT_wrap {
  justify-content: center;
  align-items: center;
  color: #44403F;
}
.countdown_follow_wrap {
  padding-top: 0.5rem;
}
#countdown_follow {
  padding: 0.2rem 0 0;
}
#cta_follow .countdown span {
  font-size: 1.8rem;
  margin: 0 0.3rem;
}
p.CDT_area_text_limit {
  font-size: 1.2rem;
  line-height: 1.2;
  margin-right: 0.5rem;
  color: #44403F;
}
.cta_follow_shop .btn_inner {
  justify-content: center!important;
}
@media (min-width: 500px) {
  #cta_follow .cta_follow_wrap,
  #cta_follow .cta_follow_shop {
    height: 148px;
  }
  .countdown_follow_wrap {
    padding-top: 2px;
  }
  #countdown_follow {
    padding: 4px 0 0 0;
  }
  #cta_follow .countdown span {
    font-size: 2.3rem;
    margin: 0 3px;
  }
  p.CDT_area_text_limit {
    font-size: 1.4rem;
    margin-right: 5px;
  }
}
/*240822*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240322/reserve_btn.png);
  mask-image: url(../img/240322/reserve_btn.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240322/reserve_btn.png); mask-image: url(../img/240322/reserve_btn.png);
}
/*2409*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/2409/reserve_btn.png);
  mask-image: url(../img/2409/reserve_btn.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/2409/reserve_btn.png); mask-image: url(../img/2409/reserve_btn.png);
}
/*rakuten_popup*/
.rakuten_popup_content {
  position: relative;
}
.rakuten_popup_content .reserve_btn {
  position: absolute;
  bottom: 3.2rem;
  left: calc(50% - 15.15rem);
}
/*mv*/
.mv_btn_wrap {
  margin: 0 auto 1.5rem;
}
.mv_ff .mv_btn_wrap {
  margin: 0 auto 7.3rem;
}
.mv_btn_wrap .float_reserve_btn {
  top: -4rem;
}
.mv_ff .mv_btn_wrap .float_reserve_btn {
  top: -4.5rem;
}
/*campaign*/
.cp_bg {
  background: transparent;
}
.cp_tx_01 {
  top: -7.5rem;
}
#campaign .campaign_list {
  background: rgb(231,129,114);
  background: linear-gradient(130deg, rgba(231,129,114,1) 0%, rgba(229,93,72,1) 100%);
}
#campaign .lesson_cta_btn {
  top: 9.5rem;
}
.cp_video_wrap {
  position: relative;
  margin-top: 11rem;
}
.cp_video_bg {
  width: 31rem;
  margin: 0 auto;
}
.cp_video_inner_wrap {
  position: absolute;
  bottom: 1.5rem;
  left: calc(50% - 14rem);
  width: 28rem;
  box-shadow: rgba(215, 110, 67, 0.8) 0 0 6px;
}
.cp_video_inner {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.cp_video_inner iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.cp_set_img_01 {
  margin-top: 2rem;
}
li.lesson {
  padding: 10rem 0 5rem;
}
.cp_tx_04 {
  top: -3rem;
}
.campaign_ff li.lesson.pd-none {
  padding-bottom: 0;
}
#campaign .campaign_ff .lesson_cta_btn .reserve_btn {
  margin-top: 0;
}
/*rakuten_area*/
.rakuten_btn_wrap {
  bottom: 0.5rem;
  left: calc(50% - 8.4rem);
}
/*try*/
#try .set_tx {
  padding: 4rem 0 0;
}
#try .reserve_btn {
  top: 0.5rem;
}
/*cta_follow*/
#cta_follow .cta_follow_wrap,
#cta_follow .cta_follow_shop {
  display: flex;
  height: auto;
  justify-content: center;
}
@media (min-width: 500px) {
  /*rakuten_popup*/
  .rakuten_popup_content .reserve_btn {
    bottom: 52px;
    left: calc(50% - 203px);
  }
  .reserve_btn,
  .try_restart_btn {
    width: 408px;
  }
  /*mv*/
  .mv_btn_wrap {
    margin: 0 auto 20px;
  }
  .mv_ff .mv_btn_wrap {
    margin: 0 auto 110px;
  }
  .mv_btn_wrap .float_reserve_btn {
    top: -60px;
  }
  .mv_ff .mv_btn_wrap .float_reserve_btn {
    top: -55px;
  }
  /*campaign*/
  .cp_tx_01 {
    top: -70px;
  }
  #campaign .lesson_cta_btn {
    top: 140px;
  }
  .cp_video_wrap {
    margin-top: 150px;
  }
  .cp_video_bg {
    width: 406px;
  }
  .cp_video_inner_wrap {
    bottom: 20px;
    left: calc(50% - 175px);
    width: 350px;
  }
  .cp_set_img_01 {
    margin-top: 20px;
  }
  li.lesson {
    padding: 165px 0 30px;
  }
  .cp_tx_04 {
    top: -15px;
  }
  .campaign_ff li.lesson.pd-none {
    padding-bottom: 0;
  }
  #campaign .campaign_ff .lesson_cta_btn .reserve_btn {
    margin-top: 0;
  }
  /*rakuten_area*/
  .rakuten_btn_wrap {
    bottom: 5px;
    left: calc(50% - 112px);
  }
  /*try*/
  #try .set_tx {
    padding: 50px 0 0;
  }
  #try .reserve_btn {
    top: 5px;
    width: 408px;
  }
  /*cta_follow*/
  #cta_follow .cta_follow_wrap,
  #cta_follow .cta_follow_shop {
    height: auto;
  }
}
/*複合店MV調整*/
.special_mv.m-pilates .mv_btn_wrap,
.special_mv.burnesstyle .mv_btn_wrap {
  margin: 5rem auto 1.5rem;
}
.special_mv.m-pilates .mv_btn_wrap.hot_m-pilates {
  margin: 0;
}
.special_mv.m-pilates .mv_btn_wrap + .mv_comment,
.special_mv.burnesstyle .mv_btn_wrap + .mv_comment {
  padding-top: 5.3rem;
}
@media (min-width: 500px) {
  .special_mv.m-pilates .mv_btn_wrap,
  .special_mv.burnesstyle .mv_btn_wrap {
    margin: 70px auto 0 auto;
  }
  .special_mv.m-pilates .mv_btn_wrap + .mv_comment,
  .special_mv.burnesstyle .mv_btn_wrap + .mv_comment {
    padding-top: 63px;
  }
}
/*240918*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240918/reserve_btn.png);
  mask-image: url(../img/240918/reserve_btn.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240918/reserve_btn.png); mask-image: url(../img/240918/reserve_btn.png);
}
.try_btn_wrap {
  top: 15rem;
}
.special_mv .mv_btn_wrap .float_reserve_btn {
  margin-top: 2.5rem;
}
.special_mv .mv_btn_wrap .float_reserve_btn .hot_m-pilates {
  top: -16rem;
}
@media (min-width: 500px) {
  .try_btn_wrap {
    top: 205px;
  }
  .special_mv .mv_btn_wrap .float_reserve_btn {
    margin-top: 5px;
  }
}
/*料金表下オファー追加*/
.sakae_firstship_wrap {
  padding-top: 2rem;
}
.shop_info_offer_wrap {
  padding: 2rem 0 10.5rem;
  position: relative;
}
.shop_info_offer_bg_orange {
  background-color: #E0570B;
  position: relative;
  padding: 5.4rem 2rem 2rem;
}
.shop_info_offer_tx01 {
  width: 34rem;
  position: absolute;
  top: -1.5rem;
  left: calc(50% - 17rem);
}
.shop_info_offer_bg_white {
  background-color: #fff;
  padding: 3rem 0 1rem;
  position: relative;
}
.shop_info_offer_tx02 {
  width: 34rem;
  position: absolute;
  top: -2.2rem;
  left: calc(50% - 17rem);
}
.shop_info_offer_tx03 {
  width: 100%;
}
.shop_info_offer_wrap .float_reserve_btn {
  bottom: 0;
  top: unset;
}
.shop_info_anchor_btn {
  color: #fff;
  font-weight: bold;
  font-size: 1.8rem;
  display: inline-block;
  text-align: center;
  padding-top: 1rem;
}
.shop_info_offer_comment {
  color: #fff;
  text-align: center;
  font-size: 1.2rem;
  margin-top: 1rem;
}
@media (min-width: 500px) {
  .sakae_firstship_wrap {
    padding-top: 30px;
  }
  .shop_info_offer_wrap {
    padding: 20px 0 130px;
    margin-bottom: 10px;
  }
  .shop_info_offer_bg_orange {
    padding: 70px 30px 20px;
  }
  .shop_info_offer_tx01 {
    width: 452px;
    top: -20px;
    left: calc(50% - 226px);
  }
  .shop_info_offer_bg_white {
    padding: 45px 0 15px;
  }
  .shop_info_offer_tx02 {
    width: 452px;
    top: -30px;
    left: calc(50% - 226px);
  }
  .shop_info_offer_tx03 {
    width: 100%;
  }
  .shop_info_anchor_btn {
    font-size: 2.5rem;
    padding-top: 10px;
  }
  .shop_info_offer_comment {
    font-size: 1.4rem;
    margin-top: 10px;
  }
}
/*ポップアップ検証用*/
.remodal-overlay,
.remodal-wrapper {
  z-index: 1001!important;
}
.countdown_popup_wrap {
  bottom: 12rem;
}
#rakuten_popup .countdown {
  bottom: 0.5rem;
}
#rakuten_popup .countdown_popup_wrap .reserve_btn {
  bottom: -8.8rem;
}
.rakuten_popup_title_close {
  top: 2rem;
  right: 0.5rem;
}
#rakuten_popup .cdt_tx {
  font-size: 1.4rem;
}
#rakuten_popup .cdt_num {
  font-size: 2.2rem;
}
#rakuten_popup .cdt_tx,
#rakuten_popup .cdt_num {
  padding: 0 0.1rem;
  margin-left: 0.1rem;;
}
@media (min-width: 500px) {
  .countdown_popup_wrap {
    bottom: 175px;
  }
  #rakuten_popup .countdown {
    bottom: 2px;
  }
  #rakuten_popup .countdown_popup_wrap .reserve_btn {
    width: 360px;
  }
  .rakuten_popup_title_close {
    top: 30px;
    right: 10px;
  }
  #rakuten_popup .cdt_tx {
    font-size: 2rem;
  }
  #rakuten_popup .cdt_num {
    font-size: 3.2rem;
  }
  #rakuten_popup .cdt_tx,
  #rakuten_popup .cdt_num {
    padding: 0 2px;
    margin-left: 4px;
  }
}
@media (min-width: 768px) and (max-height: 768px) {
  .countdown_popup_wrap {
    bottom: 13.8rem;
  }
  #rakuten_popup .countdown {
    bottom: 0.2rem;
  }
  #rakuten_popup .countdown_popup_wrap .reserve_btn {
    bottom: -11rem;
    width: 35rem;
    left: 1.65rem;
  }
  .rakuten_popup_title_close {
    top: 2.3rem;
    right: 0.6rem;
    width: 3.5rem;
    height: 3.5rem;
  }
  #rakuten_popup .cdt_tx {
    font-size: 1.6rem;
  }
  #rakuten_popup .cdt_num {
    font-size: 2.6rem;
  }
  #rakuten_popup .cdt_tx,
  #rakuten_popup .cdt_num {
    padding: 0 2px;
    margin-left: 2px;
  }
}
/*240924*/
/*.kirari .shine_mask {
  -webkit-mask-image: url(../img/240924/reserve_btn.png);
  mask-image: url(../img/240924/reserve_btn.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240924/reserve_btn.png); mask-image: url(../img/240924/reserve_btn.png);
}
@media (min-width: 500px) {
  .mv_ff .mv_btn_wrap .float_reserve_btn {
    top: -65px;
  }
}*/
/*240927*/
/*.kirari .shine_mask {
  -webkit-mask-image: url(../img/240927/reserve_btn.png);
  mask-image: url(../img/240927/reserve_btn.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240927/reserve_btn.png); mask-image: url(../img/240927/reserve_btn.png);
}*/
/*241016*/
.cta_area_wrap {
  background: unset;
  padding: 6rem 0;
}
.fv_cdt_tx {
  display: block;
  width: 25rem;
  margin: 0 auto 1rem;
}
.mv .CDT_area {
  bottom: 11.5rem;
}
.mv .CDT_area.top {
  bottom: 12rem;
}
.mv .CDT_area_text,
.countdown span {
  color: #E94829;
}
.countdown span {
  box-shadow: 0 2px 2px rgba(0,0,0,.45);
}
.cp_acc_wrap {
  padding-top: 48.4rem;
}
.cp_acc_wrap.pff_b {
  padding-top: 38.4rem;
}
.start_lead_tx01 {
  position: absolute;
  top: 17rem;
  left: 0;
  z-index: 1;
}
.cp_tx_06 {
  width: 99.5%;
  top: 22.5rem;
}
.cp_tx_07 {
  top: 41rem;
  width: 99.5%;
}
.campaign_ff .cp_acc_wrap {
  padding-top: 26.5rem;
}
.campaign_ff .start_lead_tx01 {
  top: 13rem;
}
.campaign_ff .cp_tx_06 {
  top: 18rem;
}
#cta_follow .cta_follow_wrap,
#cta_follow .cta_follow_shop {
  display: block;
  height: 11.3rem;
}
#cta_follow .countdown span {
  color: #44403F;
}
@media (min-width: 500px) {
  .cta_area_wrap {
    padding: 75px 0;
  }
  .fv_cdt_tx {
    width: 320px;
    margin: 0 auto 10px;
  }
  .mv .CDT_area {
    bottom: 165px;
  }
  .mv .CDT_area.top {
    bottom: 150px;
  }
  .mv_ff .mv_btn_wrap .float_reserve_btn {
    top: -60px;
  }
  .cp_acc_wrap {
    padding-top: 643px;
  }
  .cp_acc_wrap.pff_b {
    padding-top: 510px;
  }
  .start_lead_tx01 {
    top: 245px;
  }
  .cp_tx_06 {
    top: 315px;
  }
  .cp_tx_07 {
    top: 435px;
  }
  .campaign_ff .cp_acc_wrap {
    padding-top: 390px;
  }
  .campaign_ff .start_lead_tx01 {
    top: 210px;
  }
  .campaign_ff .cp_tx_06 {
    top: 275px;
  }
  #cta_follow .cta_follow_wrap,
  #cta_follow .cta_follow_shop {
    height: 150px;
  }
}
/*241018*/
/*動画位置virabhadra_aに統一*/
.cp_video_bg {
  width: 33rem;
}
.cp_video_inner_wrap {
  width: 30rem;
  left: calc(50% - 15rem);
}
.cp_video_wrap {
  margin: 2rem auto 0 auto;
  text-align: center;
}
#campaign .lesson_cta_btn {
  top: 9.2rem;
}
.cp_set_img_01 {
  margin-top: 10rem;
}
.countdown_popup_wrap {
  bottom: 12rem;
}
@media (min-width: 500px) {
  .cp_video_bg {
    width: 435px;
  }
  .cp_video_inner_wrap {
    width: 380px;
    left: calc(50% - 190px);
  }
  .cp_video_wrap {
    margin: 20px auto 0 auto;
  }
  #campaign .lesson_cta_btn {
    top: 132px;
  }
  .cp_set_img_01 {
    margin-top: 130px;
  }
  .countdown_popup_wrap {
    bottom: 220px;
  }
}
/*241021*/
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240924/reserve_btn.png);
  mask-image: url(../img/240924/reserve_btn.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/240924/reserve_btn.png); mask-image: url(../img/240924/reserve_btn.png);
}
/*2411*/
/*調整*/
.modal_text::before {
  transform: unset;
  border-radius: 5px;
}
.coupon_ticket {
  width: 77%;
}
.modal_cta_wrap {
  bottom: 0.8rem;
}
.modal_text {
  color: #E5004F;
}
@media (min-width: 500px) {
  .modal_cta_wrap {
    bottom: 10px;
  }
}
.kirari .shine_mask {
  -webkit-mask-image: url(../img/240311/reserve_btn.png);
  mask-image: url(../img/240311/reserve_btn.png);
}
.reserve_btn::before,
.follow_reserve_btn::before {
  -webkit-mask-image: url(../img/2412/reserve_btn_2501_80.png); mask-image: url(../img/2412/reserve_btn_2501_80.png);
}
/*mv*/
.mv_btn_wrap .coupon_modal_btn {
  top: -9.5rem;
}
@media (min-width: 500px) {
  .mv_btn_wrap .coupon_modal_btn {
    top: -140px;
  }
  .mv_btn_wrap .float_reserve_btn {
    top: -58px;
  }
  .mv_comment {
    padding: 60px 25px 15px;
    text-align: left;
    display: inline-block;
    margin: 0 auto;
    font-size: 1.2rem;
  }
  .mv_comment_wrap {
    text-align: center;
  }
  .mv_comment.pt-0 {
    padding-top: 0;
  }
  .reserve_btn {
    width: 406px;
  }
  .special_mv .mv_btn_wrap .float_reserve_btn {
    margin-top: 22px;
  }
  .special_mv .mv_btn_wrap .float_reserve_btn.hot_m-pilates {
    top: -19rem;
  }
}
/*campaign*/
#campaign {
  padding-top: 0;
}
.cp_tx_01 {
  position: relative;
  top: unset;
}
li.lesson {
  margin-top: 0;
  padding: 0;
  z-index: 1;
}
li.lesson::before {
  top: 20.7rem;
}
.cp_lesson_white_bg {
  margin-top: 3rem;
}
#campaign .lesson_cta_btn {
  position: absolute;
  top: calc((100vw / var(--vw-sp)) * 260);
}

#campaign .lesson_cta_btn .reserve_btn {
  margin-top: 1.5rem;
}
#campaign .coupon_modal_btn {
  position: relative;
  top: unset;
  left: unset;
  margin: 0 auto;
}
.cp_set_img_01 {
  margin-top: 1.5rem;
}
.cp_tx_04-1 {
  position: absolute;
  top: 1.5rem;
  left: 0;
  z-index: 1;
}
.cp_tx_04-2 {
  position: absolute;
  top: 0;
  left: 0;
}
.cp_tx_05 {
  top: 20rem;
  width: 99.5%;
}
.cp_white_bg01 {
  top: 24rem;
}
.cp_img_top {
  width: 32rem;
  margin: 0 auto;
}
#campaign .campaign_list {
  background: unset;
}
#campaign .machine_pilates::before,
#campaign .burnes_style::before {
  width: 32rem;
  left: calc(50% - 16rem);
}
.cp_machine_pilates_wrap,
.cp_burnes_style_wrap {
  background: unset;
}
.cp_special_white_bg {
  padding-top: 0;
}
@media (min-width: 500px) {
  li.lesson::before {
    top: 280px;
  }
  .cp_lesson_white_bg {
    margin-top: 30px;
  }
  #campaign .lesson_cta_btn {
    position: absolute;
    top: 340px;
    bottom: auto;
    margin-top: 0;
  }
  #campaign .lesson_cta_btn .reserve_btn {
    margin-top: 15px;
  }
  .cp_set_img_01 {
    margin-top: 15px;
  }
  .cp_tx_04-1 {
    top: 10px;
  }
  .cp_tx_04-2 {
    top: -1px;
  }
  .cp_tx_05 {
    top: 263px;
    width: 98%;
    left: 50%;
    transform: translateX(-50%);
  }
  .cp_tx_06 {
    top: 350px;
  }
  .cp_tx_07 {
    top: 538px;
    width: 98%;
    left: 50%;
    transform: translateX(-50%);
  }
  .cp_white_bg01 {
    top: 310px;
  }
  .cp_img_top {
    width: 426px;
  }
  #campaign .machine_pilates::before,
  #campaign .burnes_style::before {
    width: 426px;
    left: calc(50% - 213px);
  }
  .cp_special_white_bg {
    padding-top: 0;
    margin-bottom: -37px;
  }
}
/*FF用調整*/
#campaign .campaign_ff .lesson_cta_btn .reserve_btn {
  margin-top: 1.5rem;
}
.campaign_ff .cp_tx_04-1 {
  top: -8rem;
}
.campaign_ff .cp_tx_06 {
  top: 13.5rem;
}
.campaign_ff .cp_acc_wrap {
  padding-top: 37rem;
}
@media (min-width: 500px) {
  #campaign .campaign_ff .lesson_cta_btn .reserve_btn {
    margin-top: 15px;
  }
  .campaign_ff .cp_tx_04-1 {
    top: -70px;
  }
  .campaign_ff .cp_tx_06 {
    top: 210px;
  }
  .campaign_ff .cp_acc_wrap {
    padding-top: 500px;
  }
}
/*try*/
.try_btn_wrap {
  top: 12rem;
}
#try .reserve_btn {
  margin-top: 4.5rem;
}
@media (min-width: 500px) {
  .try_btn_wrap {
    top: 165px;
  }
  #try .reserve_btn {
    margin-top: 60px;
    width: 406px;
  }
}
/*cta_follow*/
#cta_follow .cta_follow_wrap,
#cta_follow .cta_follow_shop {
  height: auto;
}
@media (min-width: 500px) {
  #cta_follow .cta_follow_wrap,
  #cta_follow .cta_follow_shop {
    height: auto;
  }
}
/*coupon_follow*/
#coupon_follow {
  bottom: 7rem;
}
@media (min-width: 500px) {
  #coupon_follow {
    bottom: 174px;
  }
}
/*マシンジムコンテンツ追加*/
.multi_cp_m-gym {
  margin-top: 2rem;
}
@media (min-width: 500px) {
  .multi_cp_m-gym {
    margin-top: 20px;
  }
}

.cp_video_bg {
  width: 100%;
  height: 444px;
  object-fit: cover;
}
.cp_video_inner_wrap {
  width: 100%;
  left: 0;
  bottom: 2rem;
  box-shadow: none;
}
@media (max-width: 500px) {
  .cp_video_bg {
    height: 365px;
  }
}
.campaign2__wrapper {
  margin-top: 50px;
}
.campaign2__wrapper.large {
  margin-top: 120px;
}

.cta_follow_wrap.banner-v {
  padding: 0;
  background: rgba(255, 255, 255, 0.9);
}
.btn_inner.banner-v {
  height: 100%;
  padding: 0 !important;
}
.follow_anchor_btn.banner-v {
  width: auto;
  background: #fef071;
}
.follow_anchor_btn.banner-v::before {
  display: none;
}
.follow_reserve_btn.banner-v {
  margin: 0;
  padding: 0;
  width: auto;
  background: #64b83a;
}
.follow_reserve_btn.banner-v::before {
  display: none;
}
.logo_hd.shop-name__layout {
  align-items: center;
  justify-content: flex-start;
  gap: 5%;
}

.header__shop-name {
  font-size: 1.8rem;
  font-family: serif;
}

/*241016_shop料金表*/
.price_more_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 26rem;
  height: 5rem;
  font-size: 1.8rem;
  position: relative;
  border: 2px solid #E0570B;
  border-radius: 50px;
  margin: 2rem auto 3rem;
  color: #E0570B;
  font-weight: bold;
}
.price_more_btn::before,
.price_more_btn::after {
  position: absolute;
  content: '';
  width: 0.2rem;
  height: 1.6rem;
  background-color: #E0570B;
  top: calc(50% - 0.8rem);
  right: 4rem;
  transition: .3s;
}
.price_more_btn::after {
  transform: rotate(90deg);
}
.price_more_btn.active::before {
  transform: rotate(90deg);
}
.price {
  padding-bottom: 30px;
}
.price > p {
  font-size: 2.5rem;
}
.price h2 {
  font-size: 2.5rem;
  width: 13rem;
}
.shop_info_offer_wrap {
  padding-bottom: 0;
}
.shop_info_offer_bg_orange {
  margin-bottom: 1rem;
}
.price .float_reserve_btn {
  position: relative;
  top: unset;
  left: unset;
  margin-top: 2rem;
}
@media (min-width: 500px) {
  .price_more_btn {
    width: 330px;
    height: 70px;
    font-size: 2.5rem;
    border-radius: 100px;
    margin: 30px auto;
  }
  .price_more_btn::before,
  .price_more_btn::after {
    width: 2px;
    height: 20px;
    top: calc(50% - 10px);
    right: 45px;
  }
  .price_more_btn:hover {
    cursor: pointer;
    opacity: .8;
  }
  .price > p {
    font-size: 2.6rem;
  }
  .price h2 {
    font-size: 2.6rem;
    width: 130px;
    padding-bottom: 35px;
  }
  .shop_info_offer_bg_orange {
    margin-bottom: 10px;
  }
  .price .float_reserve_btn {
    margin-top: 20px;
  }
}

/* 241125バナー */
.countdown__text__wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  width: 100%;
  bottom: 184px;
  padding: 0.8rem 0;
  left: 0;
}
.countdown__text {
  font-weight: 700;
  font-size: 3rem;
  color: #fff;
}

.countdown__text .number {
  margin-left: 15px;
  font-size: 1.5em;
}

#rakuten_popup .countdown_popup_wrap .reserve_btn {
  bottom: -190px;
}
@media (max-width: 500px) {
  .countdown__text__wrapper {
    bottom: calc((100vw / var(--vw-sp))* 130);
  }

  .countdown__text {
    font-size: 1.8rem;
  }

  .countdown__text.left {
    font-size: 1.2rem;
  }

  .countdown__text .number {
    margin-left: 0.8rem; 
  }

  #rakuten_popup .countdown_popup_wrap .reserve_btn {
    bottom: -10rem;
  }
}
@media (max-width: 320px) {
  .countdown__text__wrapper {
    bottom: 120px;
  }
  #rakuten_popup .countdown_popup_wrap .reserve_btn {
    bottom: -85px;
  }
}

.mv_comment.bottom {
  padding: 10px 0 !important;
  width: 100%;
}
@media (max-width: 500px) {
  .mv_comment.bottom {
    padding: 20px 0 !important;
    font-size: 0.9rem;
  }
}
.mv_comment.bottom .text-link {
  display: inline-block;
  color: #10b1e9;
}

/* 相互利用店舗 */
.multi_shop_name__top-text__wrapper {
  display: flex;
  padding: 20px 20px 0 20px;
  font-size: 20px;
  gap: 30px;
  align-items: center;
}
.multi_shop_name__top-text__left {
  border: 1px solid #000;
  text-align: center;
  padding: 8px 20px;
}
#campaign .campaign_ff .cp_special_white_bg.annotated {
  padding-bottom: 260px;
}
@media (max-width: 600px) {
  .multi_shop_name__top-text__wrapper {
    font-size: 1em;
  }
  #campaign .campaign_ff .cp_special_white_bg.annotated {
    padding-bottom: 24rem;
  }
}

.cta_area_wrap.countdown-timer {
  padding: 10px 0;
}
.mv .CDT_area_text {
  color: #fff;
}
.countdown span {
  color: #E94829;
}
.mv_btn_wrap .coupon_modal_btn.countdown-timer {
  top: -55px;
}
.mv_btn_wrap .float_reserve_btn.countdown-timer {
  top: -145px;
}
.mv_btn_wrap .float_reserve_btn.countdown-timer.top {
  top: -140px;
}
@media (max-width: 600px) {
  .mv_btn_wrap .float_reserve_btn.countdown-timer {
    top: -10rem;
  }
  .mv_btn_wrap .float_reserve_btn.countdown-timer.top {
    top: -10rem;
  }
}
#coupon_follow.countdown-timer {
  bottom: 230px;
}
.mv_countdown_text {
  text-align: center;
  color: #fff;
  font-size: 1.2em;
}
#cta_follow .countdown span {
  box-shadow: none;
  border: 1px solid rgba(0, 0, 0, 0.4);
}
@media (max-width: 600px) {
  .mv_btn_wrap .coupon_modal_btn.countdown-timer {
    top: -50px;
  }
  #coupon_follow.countdown-timer {
    bottom: 10.5rem;
  }
}
.cp_under_obj {
  position: absolute;
  right: -17px;
  width: 500px;
  bottom: -33px;

  &.bottom {
    width: 466px;
  }
}
@media (max-width: 600px) {
  .cp_under_obj {
    bottom: -4%;
    width: 100%;
    right: -1.25rem;

    &.bottom {
      bottom: -1%;
      width: 100%;
    }
  }
}
.lesson_red_line {
  position: absolute;
  display: block;
  width: 96%;
  height: 98%;
  border: 3px solid #c20b18;
  top: 1%;
  left: 50%;
  transform: translateX(-50%);
}
.cp_white_bg02::after {
  content: '';
  position: absolute;
  width: 98%;
  height: 100%;
  top: 0;
  border: 3px solid #c20b18;
  border-top: none;
  border-bottom: none;
  left: 50%;
  transform: translateX(-50%);
}
.campaign_acc {
  width: 466px;
  margin: auto;
  position: relative;
}
@media (max-width: 600px) {
  .campaign_acc {
    width: 35rem;
  }
}
.cp_special_white_bg {
  position: relative;
}
.cp_accordion_gold_bg {
  text-align: center;
  font-size: 18px;
  padding: 5px 0;
  font-weight: 700;
  text-decoration: underline;
  position: relative;
  top: -66px;
  

  &.terms {
    text-decoration: none;
    font-size: 12.5px;
    padding: 10px 44px 52px;
    font-weight: normal;
    text-align: left;
    top: 0;
    background-image: url(../img/2509/paypay_03.webp);
    background-size: contain;
    background-repeat: repeat-y;

    .head-line {
      font-weight: 700;
    }

    ul {
      padding-left: 10px;

      li {
        list-style: disc;
      }
    }
  }

  &.chance {
    /* position: static; */
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
  }
}
.cp_accordion_body {
  display: none;
}
.cp_sp_accordion {
  cursor: pointer;
}
.cp_tx_07.ff {
  top: 466px;
}
.cp_special_white_bg.ff {
  padding-top: 150px;
}
@media (max-width: 600px) {
  .cp_tx_07.ff {
    top: 32rem;
  }
  .cp_special_white_bg.ff {
    padding-top: 11rem;
  }
  .cp_accordion_gold_bg {
    margin-bottom: -3.6rem;

    &.terms {
      padding: 1rem 3.5rem 5rem;
      font-size: 10px;
    }
  }
}
.z-index-20 {
  position: relative;
  z-index: 20;
}
.z-index-40 {
  z-index: 40;
}
.z-index-50 {
  position: relative;
  z-index: 50;
}
.cp_special_img_01.chance {
  /* position: static; */
  width: 100%;
  margin-top: 0;
}
.top_minus_2px {
  top: -2px;
}
@media (max-width: 600px) {
  .top_minus_2px {
    top: -8px;
  }
}
#transfer .norikae_lead {
  width: 11rem;
  top: -2.3rem;
  left: calc(50% - 5.5rem);
}
@media (min-width: 500px) {
  #transfer .norikae_lead {
      width: 142px;
      top: -30px;
      left: calc(50% - 71px);
  }
}
.cp_special_img_wrapper {
  position: relative;

  .parts-left {
    position: absolute;
    top: 0;
    left: -13px;
    z-index: 20;
    transform: none;
  }
}
@media (max-width: 600px) {
  .cp_special_img_wrapper {
  
    .parts-left {
      left: -1rem;
    }
  }
}
.cp_tx.annotated {
  bottom: 88px !important;
  left: 50% !important;
  transform: translateX(-50%);
}
@media (max-width: 600px) {
  .cp_tx.annotated {
    bottom: 4rem !important;
  }
}

.cp_accordion_bottom_annotation {
  background-image: url(../img/2501/cp_special_img_bg2.webp);
  background-size: contain;
  background-repeat: repeat-y;
  width: calc(100% + 24px);
  position: relative;
  left: -13px;
  font-size: 12px;
  padding-left: 68px;
  padding-top: 5px;

  &.chance {
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
    padding-left: 58px;
  }

}
@media (max-width: 600px) {
  .cp_accordion_bottom_annotation {
    width: calc(100% + 1.9rem);
    left: -1rem;
    font-size: 10px;
    padding-left: 52px;

    &.chance {
      width: 100%;
      left: 50%;
      transform: translateX(-50%);
      padding-left: 40px;
      padding-bottom: 10px;
      font-size: 9px;
    }
  
  }
}

.cp_machine_pilates_wrap .cp_acc_more_wrap {
  &.image_none {
    top: 97px;
  }
}
.cp_burnes_style_wrap .cp_acc_more_wrap {
  &.image_none {
    top: 116px;
  }
}
@media (max-width: 600px) {
  .cp_machine_pilates_wrap .cp_acc_more_wrap {
    &.image_none {
      top: 7.5rem;
    }
  }
  .cp_burnes_style_wrap .cp_acc_more_wrap {
    &.image_none {
      top: 9.5rem;
    }
  }
}

.header_bottom_line_text {
  background: #e1243c;
  text-align: center;
  color: #fff;
  margin-bottom: 30px;
  font-size: 16px;
  white-space: nowrap;
  padding: 4px 0;
  letter-spacing: 0.3rem;

  .yellow-text {
    color: #fff812;
  }
}
@media (max-width: 600px) {
  .header_bottom_line_text {
    font-size: 3.7vw;
    padding: 2px 0;
    letter-spacing: normal;
  }
}

@media (max-width: 370px) {
  .header_bottom_line_text {
    font-size: 2.6vw;
  }
}

.cp_movie {
  width: 426px;
  height: 568px;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
}
.cp_white_bg01.movie {
  height: 1250px;
}

@media (max-width: 600px) {
  .cp_movie {
    width: 32rem;
    height: 42.6rem;
  }
}

/* @media (max-width: 400px) {
  .header_bottom_line_text {
      font-size: 9px;
  }
}

@media (max-width: 360px) {
  .header_bottom_line_text {
      font-size: 8px;
  }
}

@media (max-width: 310px) {
  .header_bottom_line_text {
      font-size: 7px;
  }
} */

.countdown__text__wrapper.banner {
  position: absolute;
  bottom: 205px;
  left: 135px;
  transform: none;
  width: auto;
}

.countdown__text.banner {
  color: #fff;
  font-weight: 700;
  font-size: 4rem;
  width: 100%;
}

.countdown__text.banner .text {
  font-size: 3rem;
}

.countdown_popup_wrap.banner {
  bottom: 140px;
}

@media (max-width: 500px) {
  .countdown__text__wrapper.banner {
    bottom: 29%;
    left: 27%;
  }
  .countdown__text.banner {
    font-size: 2.5rem;
  }
  .countdown__text.banner .text {
    font-size: 2rem;
  }
  .countdown_popup_wrap.banner {
    bottom: 10rem;
  }
}

.cp_accordion_wrap {
  background-image: url(../img/2511/co_img_03.webp);
  background-size: 100%;
  background-repeat: repeat;
}
.campaign_list.acc.pt {
  padding-top: 10px;
}

.cp_special_text_wrap {
  position: relative;
}

.ask_doctors_wrapper {
  position: relative;
}

.ask_doctors_wrapper::before {
  position: absolute;
  display: block;
  content: '';
  width: 100%;
  height: 5.25rem;
  top: 0;
  left: 0;
  z-index: 1;
  background: url(../img/evidence_bg_03.png) no-repeat 0 0 / cover;
  mix-blend-mode: multiply;
}
.ask_doctors_wrapper::after {
  position: absolute;
  display: block;
  content: '';
  width: 100%;
  height: 5.25rem;
  top: -1px;
  left: 0;
  z-index: 1;
  background: url(../img/evidence_bg_02.png) no-repeat 0 0 / cover;
}

@media (min-width: 500px) {
  .ask_doctors_wrapper::before, 
  .ask_doctors_wrapper::after{
      height: 70px;
  }
}

.mv_top_comment {
  font-size: 1.2rem;
  position: absolute;
  top: 665px;
  right: 63px;
}

.mv_top_comment.multi {
  top: 677px;
}

@media (max-width: 500px) {
  .mv_top_comment {
    top: calc((100vw / 390) * 520);
    right: calc((100vw / 390) * 35);
  }
  .mv_top_comment.multi {
    top: calc((100vw / 390) * 541);
  }
}

.cp_video_bg.multi_campaign {
  height: 670px;
}

.cp_video_inner.multi_campaign {
  padding-top: 56.25%;
}

.cp_video_inner.multi_campaign iframe {
  top: -110px;
}

.cp_acc_wrap.multi_campaign {
  padding-top: 692px;
}
.cp_acc_wrap.multi_campaign.pt-short {
  padding-top: 644px;
}
.machine_pilates_acc_title_wrap.multi_campaign, .burnes_style_acc_title_wrap.multi_campaign {
  padding-bottom: 0;
}

.cp_tx.multi_campaign {
  bottom: 115px !important;
}

.cp_plan_note_wrap.multi_campaign {
  top: -10px;
}

.cp_lesson_note_wrap.multi_campaign {
  top: 700px;
  font-size: 1rem;
}
.campaign_list.acc.pt-large {
  padding-top: 30px;
}
.campaign_list.acc.pb-large {
  padding-bottom: 30px;
}

@media (max-width: 500px) {
  .cp_video_bg.multi_campaign {
    height: calc((100vw / 390) * 560);
  }
  .cp_video_inner.multi_campaign iframe {
    top: calc((100vw / 390) * -85);
  }
  .cp_acc_wrap.multi_campaign {
    padding-top: calc((100vw / 390) * 530);
  }
  .cp_acc_wrap.multi_campaign.pt-short {
    padding-top: calc((100vw / 390) * 503);
  }
  .cp_tx.multi_campaign {
    bottom: 7.5rem !important;
  }
  .cp_lesson_note_wrap.multi_campaign {
    top: calc((100vw / var(--vw-sp))* 540);
    font-size: 0.8rem;
  }
}

.flyer_popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  display: block;
}

.flyer_popup.hidden {
  display: none;
}

.flyer_popup_body {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 350px;
  background-color: #fff;
  z-index: 1010;
  border-radius: 20px;
  overflow: hidden;
  display: none;
}

.flyer_popup_body.active {
  display: block;
}

.flyer_popup_title {
  background: linear-gradient(to right, #DE580D 0%, #F08C00 50%, #F7B200 100%);
  color: #fff;
  height: 90px;
  font-size: 24px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.flyer_popup_title .small-text {
  font-size: 18px;
}

.flyer_popup_area {
  padding: 28px;
  height: 380px;
  overflow-y: scroll;
}

.flyer_popup_area_btn {
  width: 100%;
  padding: 15.4px 16.8px 12.09px 16.8px;
  border-bottom: 1px solid #E0E0E0;
  font-size: 16px;
  text-align: left;
  text-decoration: none;
  display: flex !important;
  justify-content: space-between;
  align-items: center;
}

.flyer_popup_area_btn:first-of-type {
  border-top: 1px solid #E0E0E0;
}

.flyer_popup_area_btn::after {
  content: '';
  background-image: url(../img/flyer_popup_arrow_icon.svg);
  width: 24px;
  height: 24px;
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
}

.flyer_popup_area_btn.flyer-popup-back-btn {
  border-top: none;
  justify-content: flex-start;
  gap: 20px;
}

.flyer_popup_area_btn.flyer-popup-back-btn::after {
  display: none;
}
.flyer_popup_area_btn.flyer-popup-back-btn::before {
  content: '';
  background-image: url(../img/flyer_popup_arrow_icon.svg);
  width: 24px;
  height: 24px;
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  transform: rotate(180deg);
}

.content_title.ff {
  width: 80%;
  left: 50%;
  transform: translateX(-50%);
}

.cp_accordion_inner {
  border: 1px solid #000;
  padding: 20px;
}

.cp_accordion_body-title {
  background: #4c4948;
  color: #fff;
  text-align: center;
  border-radius: 9999px;
  margin-bottom: 20px;
}

.mv_m-pilates_bottom_text {
  text-align: center;
  background: #FFFBC3;
  padding: 20px 0;
  font-size: 28px;
  position: relative;
}

.mv_m-pilates_bottom_text::before,.mv_m-pilates_bottom_text::after {
  content: '';
  height: 40px;
  width: 2px;
  background: #000;
  position: absolute;
  bottom: 25px;
}

.mv_m-pilates_bottom_text::before {
  left: 20px;
  transform: rotate(-20deg);
}

.mv_m-pilates_bottom_text::after {
  right: 20px;
  transform: rotate(20deg);
}


@media (max-width: 500px) {
  .mv_m-pilates_bottom_text {
    padding: calc((100vw / 390) * 27) 0;
    font-size: calc((100vw / 390) * 24);
  }
  
}

.mv_m-pilates_bottom_text .pink_text {
  color: #E33060;
  font-weight: 700;
}

.hot_m-pilates_contents_wrapper {
  position: relative;
}

.hot_m-pilates_contents_btn-wrapper {
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
}

.hot_m-pilates_contents .swiper-button-next, .hot_m-pilates_contents .swiper-button-prev {
  color: #000;
}

.cp_video_wrap.shop {
  margin-top: 0;
}

.mv_btn_wrap.s_FF_2 {
  padding-top: 80px;
}

.mv_comment.s_FF_2 {
  padding-top: 0;
}

@media (max-width: 500px) {
  .mv_btn_wrap.s_FF_2 {
    padding-top: calc((100vw / 390) * 60);
  }
  
}
#chance.s_FF_2::after,#chance.s_FF_2::before {
  display: none;
}
#point.s_FF_2 {
  padding: 0;
}
#try.s_FF_2::after {
  display: none;
}

#try.s_FF_2 .try_inner {
  padding-top: 120px;
}

@media (max-width: 500px) {
  #try.s_FF_2 .try_inner {
    padding-top: 9.6rem;
  }
  
}

.try_btn_wrap.s_FF_2 {
  top: 132px;
  padding-top: 176px;
}

@media (max-width: 500px) {
  .try_btn_wrap.s_FF_2 {
    top: calc((100vw / 390) * 107);
    padding-top: calc((100vw / 390) * 142);
  }
  
}

.shop_campaign_top {
  position: relative;
}

.shop_campaign_top_text {
  position: absolute;
  bottom: 90px;
  text-align: center;
  width: 100%;
  color: #fff;
}

@media (max-width: 500px) {
  .shop_campaign_top_text {
    bottom: calc((100vw / 390) * 70);
    font-size: 1rem;
  }
  
}

.shop_campaign_top_link {
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  text-decoration: none;
  color: #fff;
  font-size: 2.2rem;
  bottom: 30px;
  white-space: nowrap;
  font-weight: 700;
}

@media (max-width: 500px) {
  .shop_campaign_top_link {
    bottom: calc((100vw / 390) * 25);
    font-size: 1.8rem;
  }
  
}

.shop_campaign_top_link .under_line {
  text-decoration: underline;
}

.shop_campaign_contents_btn_wrapper {
  padding: 4rem 0;
}

.shop_campaign_contents_table_annotation {
  text-align: center;
  margin: 1rem 0 4rem;
}

@media (max-width: 500px) {
  .shop_campaign_contents_table_annotation {
    font-size: 1.2rem;
  }
  
}


.shop_campaign_contents_slider_wrapper {
  background: #FFF0BD;
  padding: 5rem 0;
}

.shop_campaign_contents_slider_title {
  margin-bottom: 3rem;
}

.shop_campaign_contents_slider_wrapper_under_text {
  text-align: center;
  font-size: 1.2rem;
  margin-top: 1.5rem;
}

.shop_campaign_contents .swiper-button-prev,
.shop_campaign_contents .swiper-button-next {
  width: 50px;
  height: 50px;
}

@media (max-width: 500px) {
  .shop_campaign_contents .swiper-button-prev,
  .shop_campaign_contents .swiper-button-next  {
    width: calc((100vw / 390) * 40);
    height: calc((100vw / 390) * 40);
  }
  
}

.shop_campaign_contents .swiper-button-prev::after,
.shop_campaign_contents .swiper-button-next::after {
  content: '';
  background-image: url(../img/2511/shop/voice_arrow.webp);
  background-size: contain;
  width: 100%;
  height: 100%;
}

.shop_campaign_contents .swiper-button-prev {
  transform: rotate(180deg);
}

.campaign_hmp_btn_wrapper {
  position: relative;
}

.cp_lesson_note_wrap.multi_campaign.hmp {
  top: auto;
  bottom: 80px;
}

@media (max-width: 500px) {
  .cp_lesson_note_wrap.multi_campaign.hmp {
    bottom: calc((100vw / 390) * 56);
  }
}

.campaign_hmp_accordion_wrapper {
  background-image: url(../img/2511/hmp/co_img_01b_bg.webp);
  background-size: contain;
  background-repeat: repeat-y;
  padding: 2rem 0;
}

.campaign_hmp_accordion_contents_wrapper {
  background: #e4012e;
  padding-top: 1rem;
  width: 80%;
  margin: 0 auto;
}

.campaign_hmp_accordion_contents_wrapper .acc_inner_shop_wrap {
  padding-top: 0 !important;
  width: 85% !important;
}

.campaign_hmp_accordion_contents_title {
  width: 80%;
  margin: 0 auto;
}

.campaign_hmp_accordion_contents_subtitle {
  text-align: center;
  padding: 0.8rem 0;
  color: #fff;
}

@media (max-width: 500px) {
  .campaign_hmp_accordion_contents_subtitle  {
    font-size: 1.2rem;
  }

  .campaign_hmp_accordion_contents_wrapper .cp_machine_pilates_wrap .acc_box .acc dt {
    font-size: 1.5rem !important;
    padding: 0.8rem 1.5rem !important;

  }
  
}

.chance_inner.s_FF_2 {
  padding-top: 0;
  background-image: url(../img/2511/chance_b_bg.webp);
  background-size: cover;
}

.chance_inner.s_FF_2::before {
  display: none;
}

.campaign_hmp_accordion_contents_wrapper .cp_machine_pilates_wrap .acc_box .acc dt {
  background: #fce5ea !important;
}