/* 20251016料金プラン変更 */
:root {
  --white: #fff;
  --ac-bl: #0096F1;
  --ac-or: #F39200;
  --ac-rd: #FF4722;
  --ac-ye: #FAD35E;
}
.u-text-bl {
  color: var(--ac-bl);
}
.u-text-or {
  color: var(--ac-or);
}
.u-text-rd {
  color: var(--ac-rd);
}
.u-text-ye {
  color: var(--ac-ye);
}
.c-plan__order {
  display: flex;
  flex-direction: column;
}
.c-plan__note {
  margin-top: calc(20 * var(--width-ratio));
  font-size: calc(16 * var(--width-ratio));
  line-height: 2;
  text-align: center;
}
.c-plan__container {
  margin-top: calc(40 * var(--width-ratio));
  background: rgba(0, 150, 241, 0.1);
  border-radius: 20px;
  padding: calc(50 * var(--width-ratio));
}
.c-plan__container.--ticket {
  background: rgba(243, 146, 0, 0.1);
}
.c-plan__title {
  text-align: center;
}
.c-plan__title strong {
  display: block;
  font-size: calc(40 * var(--width-ratio));
}
.c-plan__titleSub {
  font-size: calc(20 * var(--width-ratio));
  font-weight: 500;
}
.c-plan__titleSub span {
  font-weight: 700;
}
.c-plan__titleCounseling {
  margin-top: calc(50 * var(--width-ratio));
  font-size: calc(40 * var(--width-ratio));
  text-align: center;
  font-weight: 700;
}
.c-plan__titleCounseling img {
  display: inline-block;
  width: calc(40 * var(--width-ratio));
  margin-right: calc(8 * var(--width-ratio));
}
.c-plan__textNote {
  margin-top: calc(20 * var(--width-ratio));
  font-size: calc(16 * var(--width-ratio));
  font-weight: 500;
  text-align: center;
}
.c-plan__list {
  width: 100%;
  margin-top: calc(40 * var(--width-ratio));
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: calc(20 * var(--width-ratio));
}
.c-plan__list + .c-plan__list {
  margin-top: calc(20 * var(--width-ratio));
}
.c-plan__item {
  position: relative;
  width: calc(25% - 15 * var(--width-ratio));
}
.c-plan__item.--pick img {
  position: absolute;
  width: calc(80 * var(--width-ratio));
  top: 0;
  right: 0;
  transform: translate(30%, -50%);
}
.c-plan__item.--pick::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: calc(100% + 8 * var(--width-ratio));
  height: calc(100% + 8 * var(--width-ratio));
  background: var(--ac-ye);
  border-radius: 15px;
  z-index: -1;
}
.c-plan__name {
  padding: calc(15 * var(--width-ratio)) 0;
  border-radius: 15px 15px 0 0;
  background: var(--ac-bl);
  color: var(--white);
  font-size: calc(24 * var(--width-ratio));
  text-align: center;
  line-height: 1.4;
}
.--ticket .c-plan__name {
  background: var(--ac-or);
}
.c-plan__name strong {
  margin: 0 calc(5 * var(--width-ratio));
  font-size: calc(36 * var(--width-ratio));
}
.c-plan__name.--daytime {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.c-plan__name.--daytime div {
  margin-right: calc(5 * var(--width-ratio));
  font-size: calc(20 * var(--width-ratio));
  text-align: left;
  line-height: 1.3;
}
.--counseling .c-plan__name {
  padding: calc(10 * var(--width-ratio)) 0;
}
.c-plan__detail {
  margin-top: calc(2 * var(--width-ratio));
  padding: calc(30 * var(--width-ratio)) calc(20 * var(--width-ratio));
  border-radius: 0 0 15px 15px;
  background: var(--white);
  text-align: center;
}
.c-plan__detail.--per {
  padding-top: calc(15 * var(--width-ratio));
  padding-bottom: calc(15 * var(--width-ratio));
}
.c-plan__fee {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(10 * var(--width-ratio));
}
.c-plan__monthly {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  padding: calc(5 * var(--width-ratio)) calc(1.5 * var(--width-ratio));
  font-size: calc(16 * var(--width-ratio));
  font-weight: 500;
  border: 1px solid #555555;
  border-radius: 5px;
}
.c-plan__money {
  font-size: calc(28 * var(--width-ratio));
  font-weight: 700;
}
.c-plan__money strong {
  font-size: calc(36 * var(--width-ratio));
}
.c-plan__money span {
  font-size: calc(14 * var(--width-ratio));
  font-weight: 500;
}
.c-plan__per {
  margin-top: calc(10 * var(--width-ratio));
  padding: calc(10 * var(--width-ratio));
  font-weight: 500;
  font-size: calc(16 * var(--width-ratio));
  border-top: 1px solid #555555;
}
.c-plan__per strong {
  margin-left: calc(15 * var(--width-ratio));
}
.c-plan__per span {
  font-size: calc(24 * var(--width-ratio));
}
.c-plan__remarks {
  margin-top: calc(40 * var(--width-ratio));
  font-size: calc(16 * var(--width-ratio));
  text-align: center;
}
.--ticket .c-plan__remarks {
  padding-left: calc(60 * var(--width-ratio));
  padding-right: calc(60 * var(--width-ratio));
  text-align: left;
}
@media (max-width: 768px) {
  .c-plan__order {
    flex-direction: column-reverse;
  }
  .c-plan-2 {
    margin-top: calc(-20 * var(--width-ratio));
    margin-bottom: calc(-20 * var(--width-ratio));
  }
  .c-plan__note {
    font-size: calc(14 * var(--width-ratio));
  }
  .c-plan__container {
    display: none;
    opacity: 0;
    visibility: hidden;
    width: calc(100% + 30 * var(--width-ratio));
    margin-left: calc(-15 * var(--width-ratio));
    margin-top: 0;
    border-radius: 0 0 20px 20px;
    padding: calc(40 * var(--width-ratio)) calc(15 * var(--width-ratio));
    transition: all 0.3s ease;
  }
  .c-plan__container.is-show {
    display: block;
    opacity: 1;
    visibility: visible;
  }
  .c-plan__titleWrapper {
    margin-top: calc(40 * var(--width-ratio));
    display: flex;
    align-items: flex-end;
    width: calc(100% + 30 * var(--width-ratio));
    margin-left: calc(-15 * var(--width-ratio));
  }
  .c-plan__title {
    position: relative;
    border-radius: 10px 10px 0 0;
    padding: calc(10 * var(--width-ratio)) 0 calc(8 * var(--width-ratio));
    transition: all 0.3s ease;
  }
  .c-plan__title.--monthly {
    width: 50%;
    background: var(--ac-bl);
  }
  .c-plan__title.--ticket {
    width: 50%;
    background: var(--ac-or);
  }
  .c-plan__title.is-active {
    padding: calc(20 * var(--width-ratio)) 0 calc(12 * var(--width-ratio));
  }
  .c-plan__titleCounseling {
    margin-top: calc(40 * var(--width-ratio));
    font-size: calc(24 * var(--width-ratio));
  }
  .c-plan__titleCounseling img {
    width: calc(30 * var(--width-ratio));
  }
  .c-plan__title strong {
    color: var(--white);
    font-size: calc(18 * var(--width-ratio));
  }
  .c-plan__title img {
    display: inline-block;
    width: calc(40 * var(--width-ratio));
    margin-right: calc(8 * var(--width-ratio));
  }
  .c-plan__titleSub {
    position: absolute;
    width: 100%;
    top: 0;
    left: 50%;
    transform: translate(-50%, -120%);
    font-size: calc(14 * var(--width-ratio));
  }
  .c-plan__textNote {
    font-size: calc(14 * var(--width-ratio));
    text-align-last: left;
  }
  .c-plan__textNote  + .c-plan__list {
    margin-top: calc(30 * var(--width-ratio));
  }
  .--ticket .c-plan__textNote {
    margin-top: 0;
  }
  .c-plan__list {
    margin-top: 0;
    gap: calc(15 * var(--width-ratio));
  }
  .c-plan__list + .c-plan__list {
    margin-top: calc(15 * var(--width-ratio));
  }
  .c-plan__item {
    width: calc(50% - 7.5 * var(--width-ratio));
  }
  .c-plan__item.--pick img {
    width: calc(60 * var(--width-ratio));
    transform: translate(20%, -40%);
  }
  .c-plan__item.--pick::before {
    width: calc(100% + 6 * var(--width-ratio));
    height: calc(100% + 6 * var(--width-ratio));
    border-radius: 12px;
  }
  .c-plan__name {
    padding: calc(12 * var(--width-ratio)) 0;
    border-radius: 10px 10px 0 0;
    font-size: calc(14 * var(--width-ratio));
  }
  .c-plan__name strong {
    margin: 0 calc(4 * var(--width-ratio));
    font-size: calc(28 * var(--width-ratio));
  }
  .c-plan__name.--daytime div {
    font-size: calc(14 * var(--width-ratio));
  }
  .--counseling .c-plan__name {
    padding: calc(8 * var(--width-ratio)) 0;
  }
  .c-plan__detail {
    padding: calc(15 * var(--width-ratio)) calc(5 * var(--width-ratio));
    border-radius: 0 0 10px 10px;
  }
  .c-plan__detail.--per {
    padding-top: calc(10 * var(--width-ratio));
    padding-bottom: calc(10 * var(--width-ratio));
  }
  .c-plan__monthly {
    padding: calc(4 * var(--width-ratio)) calc(1 * var(--width-ratio));
    font-size: calc(13 * var(--width-ratio));
  }
  .c-plan__money {
    font-size: calc(18 * var(--width-ratio));
  }
  .c-plan__money strong {
    font-size: calc(24 * var(--width-ratio));
  }
  .c-plan__money span {
    font-size: calc(12 * var(--width-ratio));
  }
  .c-plan__per {
    margin-top: calc(8 * var(--width-ratio));
    padding: calc(8 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
  }
  .c-plan__per strong {
    margin-left: calc(5 * var(--width-ratio));
  }
  .c-plan__per span {
    font-size: calc(20 * var(--width-ratio));
  }
  .c-plan__remarks {
    margin-top: calc(20 * var(--width-ratio));
    font-size: calc(14 * var(--width-ratio));
  }
  .--ticket .c-plan__remarks {
    padding-left: 0;
    padding-right: 0;
  }
}
/* end 20251016料金プラン変更 */
