@charset "UTF-8";

body {letter-spacing: 0px;}
header .top_menu ul {display: flex;flex-wrap: nowrap;gap: 0 2%;justify-content: flex-end;width:70%;font-size: 15px;letter-spacing: 0px;padding: 6px 1vw 0 0;}

.jp_disnone {display: none;}
.en_disnone {display: block!important;}

.top_plan .top_plan_head h2 {font-size: 32px;letter-spacing: 2px;font-weight: 600;display: inline-block;margin-bottom: 20px;line-height: 120%;white-space: normal;padding: 22px 0 0 0;}

.top_plan .top_plan_base .top_plan_baseinfo ul li {display: flex;flex-wrap: nowrap;gap: 0 4%;justify-content: flex-start;margin-bottom: 15px;width: 22%;align-items: center;white-space: normal;line-height: 120%;}

.top_plan .top_plan_base .top_plan_baseinfo ul li span {display: inline-block;font-size: 15px;line-height: 120%;}

.service_details .serviceCost::after {
  content:' per person';
  }


  #change_calendar_return span::after {content:''!important;}
  #change_calendar_next span::after {content:''!important;}
  


@media screen and (min-width : 840px) and (max-width : 2400px) {
    .cpbtn a {
        z-index: 1000;width: 660px;
        position: fixed; bottom: 120px; text-align: center; left:calc(50% -  350px);
        padding: 12px 20px;font-size: 17px;  font-weight: bold;  color: white;  text-align: center;  text-decoration: none;  border: none;  border-radius: 20px;  background: linear-gradient(to bottom, #ff4d4d, #ffbb99);  background-size: 200% 200%; /* アニメーションの滑らかさを向上 */
      animation: gradientPulse 1s infinite ease-in-out; /* フェード用のアニメーション */
      cursor: pointer;}
    
}

  @media screen and (max-width: 840px) {
    .cpbtn {position: fixed; bottom: 15vw; text-align: center; width: 90%!important; z-index: 1000;left: 5%;bro}
    .cpbtn a {display: inline-block;padding: 2vw 2vw;font-size: 3vw;  font-weight: bold;  color: white;  text-align: center;  text-decoration: none;  border: none;  border-radius: 20px;  background: linear-gradient(to bottom, #ff4d4d, #ff9966);  background-size: 200% 200%; /* アニメーションの滑らかさを向上 */
        animation: gradientPulse 2s infinite ease-in-out; /* フェード用のアニメーション */
        cursor: pointer;line-height: 160%;}

    .top_hair p {width: 90%;margin: 0 auto 6vw auto;}
    .top_concept p {width: 90%;margin: 0 auto 6vw auto;}
    .top_feature .top_feature_head h2 {font-size: 4vw;letter-spacing: 0.2vw;font-weight: 600;display: inline-block;margin: 0 auto 6vw auto;line-height: 120%;white-space: normal;padding: 3vw 0 0 0;width: 90%;line-height: 140%;}

    .top_shop p {width: 90%;margin: 0 auto 6vw auto;}
    .top_shop .top_shop_wrap div h3 {font-size: 3.8vw;font-weight: 600;letter-spacing: 0.1vw;margin-bottom: 1vw;white-space: nowrap;text-align: center;}

.top_plan .top_plan_base .top_plan_baseinfo ul li span {display: inline-block;font-size: 2.8vw;line-height: 120%;}

.plan_detail .plan_set ul li {display: flex;flex-wrap: nowrap;gap: 0 1.25vw;justify-content: flex-start;align-items: center;font-weight: bold;width: 30%;margin-bottom: 2vw;font-size: 3.2vw;line-height: 120%;}

.plan_detail .plan_feature ul {display: flex;flex-wrap: wrap;gap: 0 1%;justify-content: flex-start;margin-bottom: 2vw;}
.plan_detail .plan_feature ul li {padding: 1.125vw 2vw 1.25vw 2vw;border-radius: 2.5vw;color: #fff;background-color: #D3699F;white-space: nowrap;line-height: 140%;font-size: 3.2vw;margin-bottom: 2vw;}

.plan_price {display: flex;flex-wrap: nowrap;gap: 0 1%;justify-content: flex-end;align-items: center;width: 100%;line-height: 110%;white-space: wrap;}
.plan_price div:nth-child(1) {font-size: 2.9vw;padding: 0 1vw 0 0;}
.plan_price div:nth-child(2) {font-size: 4.5vw;font-weight: bold;padding: 0 0 0.5vw 0;white-space: nowrap;}
.plan_price div:nth-child(3) {font-size: 2.8vw;font-weight: normal;}
.plan_optionlist p {text-align: center;margin-bottom: 2.5vw;width: 90%;margin: 0 auto 2.5vw auto;}


.page_link p {width: 90%;margin: 0 auto 5vw auto;}

  }