@charset "UTF-8";
/* ホバーで拡大 */
/* ホバーで画像拡大 */
/* ホバーでカラー変更 */
/* ホバーで */
.p-price-simulator {
  position: relative;
  margin-top: min(70px, 4.8611111111vw);
  padding-block: min(50px, 3.4722222222vw) min(100px, 6.9444444444vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator {
    margin-top: 10.1781170483vw;
    padding-block: 10.1781170483vw 3.7037037037rem;
  }
}

.p-price-simulator__top-deco {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: min(248px, 17.2222222222vw);
  background: linear-gradient(180deg, var(--color-bg) 0%, var(--color-white) 100%);
  pointer-events: none;
  z-index: 0;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__top-deco {
    height: 63.1043256997vw;
  }
}

.p-price-simulator__form-wrap {
  position: relative;
  z-index: 1;
  margin-inline: auto;
  max-width: min(998px, 69.3055555556vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__form-wrap {
    max-width: 84.7328244275vw;
  }
}

.p-price-simulator__head.c-heading .c-heading__en {
  color: #7eb9ce;
  font-size: min(18px, 1.25vw);
  padding-left: min(24px, 1.6666666667vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__head.c-heading .c-heading__en {
    font-size: 3.3078880407vw;
    padding-left: 5.3435114504vw;
  }
}

.p-price-simulator__head.c-heading .c-heading__main {
  margin-top: min(12px, 0.8333333333vw);
  font-size: min(30px, 2.0833333333vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__head.c-heading .c-heading__main {
    margin-top: 2.0356234097vw;
    font-size: 5.0890585242vw;
  }
}

.p-price-simulator__card {
  display: flex;
  flex-direction: column;
  margin-top: min(80px, 5.5555555556vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__card {
    margin-top: 10.6870229008vw;
  }
}

.p-price-simulator__field {
  display: flex;
  flex-direction: column;
  gap: min(23px, 1.5972222222vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__field {
    gap: 4.5801526718vw;
  }
}

.p-price-simulator__label-head {
  display: flex;
  flex-direction: column;
  gap: min(15px, 1.0416666667vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__label-head {
    gap: 3.0534351145vw;
  }
}

.p-price-simulator__label-deco {
  display: block;
  width: min(12px, 0.8333333333vw);
  height: min(4px, 0.2777777778vw);
}
.p-price-simulator__label-deco::before {
  content: "";
  display: block;
  width: min(4px, 0.2777777778vw);
  height: min(4px, 0.2777777778vw);
  border-radius: 50%;
  background-color: var(--color-accent-red);
  box-shadow: min(8px, 0.5555555556vw) 0 0 var(--color-accent-blue);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__label-deco {
    width: 2.2900763359vw;
    height: 1.0178117048vw;
  }
  .p-price-simulator__label-deco::before {
    width: 0.7633587786vw;
    height: 0.7633587786vw;
    box-shadow: 1.5267175573vw 0 0 var(--color-accent-blue);
  }
}

.p-price-simulator__label {
  display: block;
  margin: 0;
  color: var(--color-secondary);
  font-weight: 700;
  letter-spacing: 0.07em;
  line-height: 1.4;
  font-size: min(26px, 1.8055555556vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__label {
    font-size: 4.0712468193vw;
  }
}

.p-price-simulator__family-panels,
.p-price-simulator__usage-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(16px, 1.1111111111vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__family-panels,
  .p-price-simulator__usage-list {
    gap: 1.272264631vw;
  }
}

.p-price-simulator__family-panel {
  --family-text-color: #1f343b;
  appearance: none;
  width: 100%;
  margin: 0;
  font: inherit;
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  gap: min(50px, 3.4722222222vw);
  height: min(130px, 9.0277777778vw);
  padding: min(14px, 0.9722222222vw) min(16px, 1.1111111111vw);
  border: max(1px, min(2px, 0.1388888889vw)) solid #e5e6e6;
  border-radius: min(10px, 0.6944444444vw);
  background-color: var(--color-white);
  cursor: pointer;
  transition: border-color 0.2s, background-color 0.2s, border-width 0.2s;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__family-panel {
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 2.5445292621vw;
    height: 30.0254452926vw;
    padding: 3.0534351145vw 2.0356234097vw;
    border: 1px solid #e5e6e6;
    border-radius: 1.272264631vw;
    text-align: center;
  }
}

.p-price-simulator__family-text {
  flex-shrink: 0;
  color: var(--family-text-color);
  font-weight: 700;
  letter-spacing: min(2px, 0.1388888889vw);
  line-height: 1.4;
  white-space: nowrap;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__family-text {
    letter-spacing: 0.2544529262vw;
  }
}

.p-price-simulator__family-text-num {
  font-size: min(28px, 1.9444444444vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__family-text-num {
    font-size: 4.0712468193vw;
  }
}

.p-price-simulator__family-text-unit {
  font-size: min(20px, 1.3888888889vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__family-text-unit {
    font-size: 2.7989821883vw;
  }
}

.p-price-simulator__family-icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__family-icon {
    flex: 1;
    min-height: 0;
  }
}

.p-price-simulator__family-icon img {
  display: block;
  width: auto;
  height: min(102px, 7.0833333333vw);
  max-width: 100%;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__family-icon img {
    height: 15.5216284987vw;
  }
}

.p-price-simulator__family-panel.is-selected {
  border: max(2px, min(3px, 0.2083333333vw)) solid var(--color-secondary);
  background-color: var(--color-bg);
  --family-text-color: var(--color-secondary);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__family-panel.is-selected {
    border: 0.5089058524vw solid var(--color-secondary);
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__family-icon img {
    height: 15.5216284987vw;
    max-height: 100%;
    width: auto;
  }
}
.p-price-simulator__child {
  display: flex;
  justify-content: center;
  margin-top: min(30px, 2.0833333333vw);
  border: none;
  background-color: #ffecf1;
  padding: min(20px, 1.3888888889vw);
  border-radius: min(5px, 0.3472222222vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__child {
    margin-top: 4.5801526718vw;
    padding: 3.5623409669vw 3.0534351145vw;
    border-radius: 1.272264631vw;
  }
}

.p-price-simulator__child + .p-price-simulator__field {
  margin-top: min(60px, 4.1666666667vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__child + .p-price-simulator__field {
    margin-top: 5.8524173028vw;
  }
}

.p-price-simulator__child-label {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  cursor: pointer;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__child-label {
    width: 100%;
  }
}

.p-price-simulator__child-row {
  display: flex;
  align-items: center;
  width: 100%;
  gap: min(10px, 0.6944444444vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__child-row {
    gap: 2.5445292621vw;
  }
}

.p-price-simulator__child-input {
  appearance: none;
  flex-shrink: 0;
  width: min(20px, 1.3888888889vw);
  height: min(20px, 1.3888888889vw);
  margin: 0;
  border: max(1px, min(2px, 0.1388888889vw)) solid var(--color-secondary);
  border-radius: min(2px, 0.1388888889vw);
  background-color: var(--color-white);
  cursor: pointer;
}
.p-price-simulator__child-input:checked {
  border-color: var(--color-secondary);
  background-color: var(--color-secondary);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10' fill='none'%3E%3Cpath d='M1 5.2 4.2 8.4 11 1.6' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: min(12px, 0.8333333333vw) min(10px, 0.6944444444vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__child-input {
    width: 3.5623409669vw;
    height: 3.5623409669vw;
    border-radius: 0.5089058524vw;
  }
  .p-price-simulator__child-input:checked {
    background-size: 2.0356234097vw 1.7811704835vw;
  }
}

.p-price-simulator__child-text {
  color: #31464e;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.07em;
  font-size: min(20px, 1.3888888889vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__child-text {
    font-size: 3.5623409669vw;
    line-height: 1.5;
  }
}

.p-price-simulator__child-note {
  display: block;
  width: 100%;
  margin-top: min(10px, 0.6944444444vw);
  color: var(--color-text-gray);
  font-weight: 500;
  line-height: 1;
  letter-spacing: min(1px, 0.0694444444vw);
  text-align: center;
  font-size: min(16px, 1.1111111111vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__child-note {
    margin-top: 1.272264631vw;
    font-size: 3.0534351145vw;
    line-height: 1.5;
  }
}

.p-price-simulator__usage {
  --usage-text-color: #1f343b;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  gap: min(50px, 3.4722222222vw);
  height: min(130px, 9.0277777778vw);
  padding: min(14px, 0.9722222222vw) min(16px, 1.1111111111vw);
  border: max(1px, min(2px, 0.1388888889vw)) solid #e5e6e6;
  border-radius: min(10px, 0.6944444444vw);
  background-color: var(--color-white);
  cursor: pointer;
  transition: border-color 0.2s, background-color 0.2s;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__usage {
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 0.5089058524vw;
    height: 30.0254452926vw;
    padding: 4.3256997455vw 2.0356234097vw;
    border: 1px solid #e5e6e6;
    border-radius: 1.272264631vw;
    text-align: center;
  }
}

.p-price-simulator__usage-input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.p-price-simulator__usage-text {
  flex-shrink: 0;
  color: var(--usage-text-color);
  font-weight: 700;
  letter-spacing: min(2px, 0.1388888889vw);
  line-height: 1.4;
  font-size: min(22px, 1.5277777778vw);
  transition: color 0.2s;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__usage-text {
    font-size: 3.3078880407vw;
    letter-spacing: 0.07em;
    line-height: 1.4;
  }
}

.p-price-simulator__usage-icon {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__usage-icon {
    flex: 1;
    min-height: 0;
  }
}

.p-price-simulator__usage-icon img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
}

.p-price-simulator__usage-list .p-price-simulator__usage:nth-child(1) .p-price-simulator__usage-icon img {
  width: min(40px, 2.7777777778vw);
  aspect-ratio: 40/58;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__usage-list .p-price-simulator__usage:nth-child(1) .p-price-simulator__usage-icon img {
    width: 6.106870229vw;
  }
}

.p-price-simulator__usage-list .p-price-simulator__usage:nth-child(2) .p-price-simulator__usage-icon img {
  width: min(48px, 3.3333333333vw);
  aspect-ratio: 1;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__usage-list .p-price-simulator__usage:nth-child(2) .p-price-simulator__usage-icon img {
    width: 7.3791348601vw;
  }
}

.p-price-simulator__usage-list .p-price-simulator__usage:nth-child(3) .p-price-simulator__usage-icon img {
  width: min(27px, 1.875vw);
  aspect-ratio: 27/57;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__usage-list .p-price-simulator__usage:nth-child(3) .p-price-simulator__usage-icon img {
    width: 4.0712468193vw;
  }
}

.p-price-simulator__usage.is-selected {
  border: max(2px, min(3px, 0.2083333333vw)) solid var(--color-secondary);
  background-color: var(--color-bg);
  --usage-text-color: var(--color-secondary);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__usage.is-selected {
    border: 0.5089058524vw solid var(--color-secondary);
  }
}

.p-price-simulator__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border: max(1px, min(1px, 0.0694444444vw)) solid var(--color-secondary);
  background-color: var(--color-secondary);
  color: var(--color-white);
  cursor: pointer;
  transition: color 0.4s, background-color 0.4s;
  gap: min(20px, 1.3888888889vw);
  width: min(277px, 19.2361111111vw);
  height: min(53px, 3.6805555556vw);
  padding-inline: min(28px, 1.9444444444vw);
  border-radius: min(4px, 0.2777777778vw);
  margin-top: min(60px, 4.1666666667vw);
  margin-inline: auto;
  box-shadow: none;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__submit {
    justify-content: space-between;
    gap: 0;
    width: 100%;
    height: 12.7226463104vw;
    padding: 2.0356234097vw 4.0712468193vw 2.0356234097vw 5.5979643766vw;
    border: max(1px, 0.2544529262vw) solid var(--color-secondary);
    border-radius: 1.0178117048vw;
    margin-top: 8.1424936387vw;
  }
}

.p-price-simulator__submit:disabled {
  border-color: #e5e6e6;
  background-color: #e5e6e6;
  color: var(--color-white);
  cursor: not-allowed;
}

@media (any-hover: hover) {
  .p-price-simulator__submit:hover,
  .p-price-simulator__submit:focus-visible {
    color: var(--color-secondary);
    background-color: var(--color-white);
  }
  .p-price-simulator__submit:disabled:hover,
  .p-price-simulator__submit:disabled:focus-visible {
    border-color: #e5e6e6;
    background-color: #e5e6e6;
    color: var(--color-white);
  }
}
.p-price-simulator__submit::after {
  content: "";
  display: block;
  flex-shrink: 0;
  width: min(7px, 0.4861111111vw);
  aspect-ratio: 7/11;
  background-color: currentColor;
  mask-image: url("../img/price/simulator/submit-arrow_pc.svg");
  mask-position: center;
  mask-size: contain;
  mask-repeat: no-repeat;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__submit::after {
    width: 2.7989821883vw;
    aspect-ratio: 11/7;
    mask-image: url("../img/price/simulator/submit-arrow_sp.svg");
  }
}

.p-price-simulator__submit-text {
  font-weight: 700;
  line-height: min(16px, 1.1111111111vw);
  font-size: min(16px, 1.1111111111vw);
  letter-spacing: min(1px, 0.0694444444vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__submit-text {
    line-height: 4.0712468193vw;
    font-size: 3.5623409669vw;
    letter-spacing: 0.2544529262vw;
  }
}

.p-price-simulator__result {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  margin-top: 0;
  padding-block: 0;
  background-color: var(--color-bg-secondary);
  transition: grid-template-rows 0.45s ease, opacity 0.35s ease, visibility 0s linear 0.45s, margin-top 0.45s ease, padding 0.45s ease;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__result {
    margin-top: 0;
    padding-block: 0;
  }
}

.p-price-simulator__result.is-visible {
  grid-template-rows: 1fr;
  visibility: visible;
  opacity: 1;
  margin-top: min(94px, 6.5277777778vw);
  padding-block: min(92px, 6.3888888889vw) min(72px, 5vw);
  transition: grid-template-rows 0.45s ease, opacity 0.35s ease 0.08s, visibility 0s linear 0s, margin-top 0.45s ease, padding 0.45s ease;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__result.is-visible {
    margin-top: 10.1781170483vw;
    padding: 7.6335877863vw 0 9.1603053435vw;
  }
}

@media (prefers-reduced-motion: reduce) {
  .p-price-simulator__result {
    transition: none;
  }
  .p-price-simulator__result.is-visible {
    transition: none;
  }
  .p-price-simulator__result-inner {
    transition: none;
    transform: none;
    opacity: 1;
  }
}
.p-price-simulator__result.is-child-active .p-price-simulator__plan-note.is-child-only {
  display: flex;
}

.p-price-simulator__result:not(.is-child-active) .p-price-simulator__plan-notes:not(:has(> .p-price-simulator__plan-note:not(.is-child-only))) {
  display: none;
}

.p-price-simulator__result-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: min(1128px, 78.3333333333vw);
  width: 100%;
  min-height: 0;
  overflow: hidden;
  opacity: 0;
  transform: translateY(min(20px, 1.3888888889vw));
  transition: opacity 0.35s ease 0.12s, transform 0.45s ease 0.12s;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__result-inner {
    max-width: initial;
    transform: translateY(4.0712468193vw);
  }
}

.p-price-simulator__result.is-visible .p-price-simulator__result-inner {
  opacity: 1;
  transform: translateY(0);
}

.p-price-simulator__result-heading {
  margin: 0;
  color: var(--color-secondary);
  font-weight: 700;
  letter-spacing: 0.07em;
  line-height: 1.4;
  text-align: center;
  font-size: min(30px, 2.0833333333vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__result-heading {
    font-size: 4.0712468193vw;
  }
}

.p-price-simulator__bottle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(10px, 0.6944444444vw);
  margin-top: min(28px, 1.9444444444vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__bottle {
    gap: 2.5445292621vw;
    margin-top: 1.272264631vw;
  }
}

.p-price-simulator__bottle-count-wrap {
  display: flex;
  align-items: baseline;
  gap: min(6px, 0.4166666667vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__bottle-count-wrap {
    gap: 0.7633587786vw;
  }
}

.p-price-simulator__bottle-count {
  color: var(--color-secondary);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.07em;
  font-size: min(60px, 4.1666666667vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__bottle-count {
    font-size: 8.6513994911vw;
  }
}

.p-price-simulator__bottle-unit {
  color: var(--color-black);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.07em;
  font-size: min(28px, 1.9444444444vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__bottle-unit {
    font-size: 4.0712468193vw;
  }
}

.p-price-simulator__bottle-images {
  display: flex;
  align-items: flex-end;
  gap: min(2px, 0.1388888889vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__bottle-images {
    gap: 0.5089058524vw;
  }
}

.p-price-simulator__bottle-img {
  display: block;
  height: auto;
  width: min(35px, 2.4305555556vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__bottle-img {
    width: 5.5979643766vw;
  }
}

.p-price-simulator__liters {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg, #7ec8e3 0%, var(--color-secondary) 100%);
  color: var(--color-white);
  font-weight: 700;
  line-height: 1;
  width: min(65px, 4.5138888889vw);
  height: min(65px, 4.5138888889vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__liters {
    width: 9.6692111959vw;
    height: 9.6692111959vw;
  }
}

.p-price-simulator__liters-num {
  font-size: min(24px, 1.6666666667vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__liters-num {
    font-size: 3.8167938931vw;
  }
}

.p-price-simulator__liters-unit {
  font-size: min(20px, 1.3888888889vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__liters-unit {
    font-size: 3.0534351145vw;
  }
}

.p-price-simulator__plans {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(4, 1fr);
  gap: min(11px, 0.7638888889vw);
  max-width: min(1126px, 78.1944444444vw);
  margin-top: min(33px, 2.2916666667vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plans {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.2900763359vw;
    max-width: 84.7328244275vw;
    margin-top: 6.6157760814vw;
  }
}

.p-price-simulator__plan {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  border: none;
  background-color: var(--color-white);
  padding-block: min(50px, 3.4722222222vw) min(42px, 2.9166666667vw);
  padding-inline: min(8px, 0.5555555556vw);
  border-radius: min(5px, 0.3472222222vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan {
    min-height: auto;
    padding-block: 4.5801526718vw 4.3256997455vw;
    padding-inline: 4.5801526718vw;
    border-radius: 1.272264631vw;
  }
}

.p-price-simulator__plan.is-featured {
  border: max(2px, min(2px, 0.1388888889vw)) solid #ff721b;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured {
    border: max(2px, 0.5089058524vw) solid #ff721b;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured,
  .p-price-simulator__plan.is-norikae {
    grid-column: 1/-1;
  }
}

.p-price-simulator__plan.is-start,
.p-price-simulator__plan.is-basic {
  border-radius: min(8px, 0.5555555556vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start,
  .p-price-simulator__plan.is-basic {
    padding: 5.5979643766vw 2.0356234097vw 4.0712468193vw;
    border-radius: 1.272264631vw;
  }
}

.p-price-simulator__plan-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(30px, 2.0833333333vw);
  width: 100%;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-inner {
    gap: 0;
    width: 100%;
  }
}

.p-price-simulator__plan-main {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(16px, 1.1111111111vw);
  width: 100%;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-main {
    gap: 0;
    width: 100%;
  }
}

.p-price-simulator__plan-primary {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(14px, 0.9722222222vw);
  width: 100%;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-primary {
    gap: 0;
    width: auto;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-main,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-main {
    display: flex;
    flex-flow: row wrap;
    align-items: flex-end;
    justify-content: center;
    gap: 1.0178117048vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-inner,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.0356234097vw;
    width: 100%;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-main,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-main {
    display: contents;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-primary,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-primary {
    display: contents;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-name,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-name {
    order: 1;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-price,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-price {
    order: 2;
    margin-top: 0;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-period,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-period {
    order: 3;
    margin-top: 0;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-notes,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-notes {
    order: 4;
    margin-top: 0;
  }
}

.p-price-simulator__plan-badge {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: min(6px, 0.4166666667vw);
  border-radius: 50%;
  background-color: #fff8c5;
  top: 0;
  translate: 0 -50%;
  left: min(4px, 0.2777777778vw);
  width: min(62px, 4.3055555556vw);
  aspect-ratio: 1;
  padding-bottom: min(10px, 0.6944444444vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-badge {
    gap: 1.272264631vw;
    top: 2.0356234097vw;
    translate: none;
    left: 3.0534351145vw;
    width: 12.9770992366vw;
    padding-bottom: 2.0356234097vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-badge {
    top: 1.272264631vw;
    translate: 0 -50%;
    left: 3.5623409669vw;
  }
}

.p-price-simulator__plan-badge-icon {
  position: relative;
  z-index: 1;
  height: auto;
  width: min(14px, 0.9722222222vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-badge-icon {
    width: 3.5623409669vw;
  }
}

.p-price-simulator__plan-badge-text {
  position: relative;
  z-index: 1;
  color: var(--color-secondary);
  font-weight: 700;
  line-height: 1.1;
  text-align: center;
  font-size: min(12px, 0.8333333333vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-badge-text {
    font-size: 2.5445292621vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-name,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-name {
    order: 1;
    line-height: 1;
    letter-spacing: 0.068em;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-name-lg {
    font-size: 4.5801526718vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-name-md,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-name-md {
    font-size: 4.0712468193vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-name-sm,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-name-sm {
    font-size: 3.3078880407vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-period,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-period {
    order: 2;
    border: none;
    background-color: #f5f8f8;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-period-label,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-period-label {
    color: var(--color-secondary);
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-period-value,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-period-value {
    color: var(--color-secondary);
    font-size: 2.7989821883vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-primary,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-primary {
    display: contents;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-price,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-price {
    order: 3;
    flex-basis: 100%;
    align-items: center;
    margin-top: 0.7633587786vw;
    color: var(--color-secondary);
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-price-label,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-price-label {
    flex-direction: column;
    align-items: flex-end;
    gap: 0;
    margin-right: 1.272264631vw;
    font-size: 3.5623409669vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-price-label-line,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-price-label-line {
    display: block;
    line-height: 1.1;
    font-size: 3.5623409669vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-price-num,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-price-num {
    font-size: 9.6692111959vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-price-unit,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-price-unit {
    margin-left: -1.272264631vw;
    padding-bottom: 1.0178117048vw;
    font-size: 5.8524173028vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-notes,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-notes {
    gap: 1.272264631vw;
    margin-top: 2.5445292621vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-note,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-note {
    gap: 0.5089058524vw;
    color: var(--color-secondary);
    line-height: 1.2;
    font-size: 3.0534351145vw;
    letter-spacing: 0.03em;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-note img,
  .p-price-simulator__plan.is-norikae .p-price-simulator__plan-note img {
    width: 3.5623409669vw;
    height: 3.5623409669vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-name,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-name {
    line-height: 1;
    letter-spacing: 0.068em;
    font-size: inherit;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-name-md,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-name-md {
    font-size: 4.0712468193vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-name-sm,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-name-sm {
    font-size: 3.3078880407vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-period,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-period {
    border: none;
    background-color: #f5f8f8;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-period-label,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-period-label {
    color: var(--color-secondary);
  }
}

.p-price-simulator__plan.is-basic .p-price-simulator__plan-period-value {
  font-size: min(14px, 0.9722222222vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-period-value {
    font-size: 2.2900763359vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-price,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-price {
    align-items: center;
    color: var(--color-secondary);
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-price-label,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-price-label {
    flex-direction: column;
    align-items: flex-end;
    gap: 0;
    margin-top: 0.5089058524vw;
    margin-right: 1.272264631vw;
    font-size: 3.3078880407vw;
  }
}

.p-price-simulator__plan-name {
  margin: 0;
  color: var(--color-black);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.11em;
  text-align: center;
  font-size: min(26px, 1.8055555556vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-name {
    line-height: 1.4;
    letter-spacing: normal;
    font-size: 4.5801526718vw;
  }
}

.p-price-simulator__plan-name-lg {
  font-size: min(26px, 1.8055555556vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-name-lg {
    font-size: inherit;
  }
}

.p-price-simulator__plan.is-featured .p-price-simulator__plan-name-md {
  font-size: min(24px, 1.6666666667vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-featured .p-price-simulator__plan-name-md {
    font-size: 4.0712468193vw;
  }
}

.p-price-simulator__plan-name-md {
  font-size: min(26px, 1.8055555556vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-name-md {
    font-size: inherit;
  }
}

.p-price-simulator__plan-name-sm {
  font-size: min(22px, 1.5277777778vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-name-sm {
    font-size: inherit;
  }
}

.p-price-simulator__plan-period {
  display: inline-flex;
  align-items: center;
  gap: min(5px, 0.3472222222vw);
  border: none;
  border-radius: min(3px, 0.2083333333vw);
  background-color: #f5f8f8;
  line-height: 1;
  padding: min(5px, 0.3472222222vw) min(8px, 0.5555555556vw);
  font-size: min(16px, 1.1111111111vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-period {
    gap: 0.5089058524vw;
    border: 1px solid var(--color-border);
    background-color: var(--color-bg);
    padding: 0.7633587786vw 1.272264631vw;
    font-size: 2.5445292621vw;
  }
}

.p-price-simulator__plan-period-label {
  color: var(--color-secondary);
  letter-spacing: 0.07em;
  font-size: min(16px, 1.1111111111vw);
  font-weight: 700;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-period-label {
    color: var(--color-text-gray);
    font-size: inherit;
  }
}

.p-price-simulator__plan-period-value {
  color: var(--color-secondary);
  font-weight: 700;
  letter-spacing: 0.07em;
  font-size: min(18px, 1.25vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-period-value {
    font-size: inherit;
  }
}

.p-price-simulator__plan-price {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0;
  color: var(--color-secondary);
  line-height: 1;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-price {
    align-items: baseline;
    margin-top: 2.0356234097vw;
    color: var(--color-black);
  }
}

.p-price-simulator__plan-price-label {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  flex-shrink: 0;
  margin-top: min(3px, 0.2083333333vw);
  margin-right: min(5px, 0.3472222222vw);
  font-weight: 700;
  letter-spacing: 0.07em;
  text-align: right;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-price-label {
    flex-direction: row;
    align-items: baseline;
    margin-top: 0;
    margin-right: 0;
    gap: 0.5089058524vw;
    font-size: 3.3078880407vw;
  }
}

.p-price-simulator__plan-price-label-line {
  display: block;
  line-height: 1.1;
  font-size: min(18px, 1.25vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-price-label-line {
    display: inline;
    line-height: inherit;
    font-size: inherit;
  }
}

.p-price-simulator__plan-price-num {
  font-family: var(--font-en);
  font-weight: 700;
  letter-spacing: 0.02em;
  font-size: min(52px, 3.6111111111vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-price-num {
    font-size: 9.6692111959vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-price-label-line,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-price-label-line {
    display: block;
    line-height: 1.1;
    font-size: 3.3078880407vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-price-num,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-price-num {
    font-size: 8.6513994911vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-price-unit,
  .p-price-simulator__plan.is-basic .p-price-simulator__plan-price-unit {
    margin-left: -1.272264631vw;
    padding-bottom: 1.0178117048vw;
    font-size: 4.5801526718vw;
  }
}

.p-price-simulator__plan-price-unit {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  margin-left: max(-2px, -0.1388888889vw);
  padding-bottom: min(4px, 0.2777777778vw);
  font-weight: 700;
  font-size: min(26px, 1.8055555556vw);
  line-height: 1;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-price-unit {
    margin-left: 0;
    padding-bottom: 0;
    font-size: 4.5801526718vw;
  }
}

.p-price-simulator__plan-price-tax {
  font-size: min(10px, 0.6944444444vw);
  line-height: 1.1;
  letter-spacing: 0;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-price-tax {
    font-size: 2.5445292621vw;
  }
}

.p-price-simulator__plan-price-yen {
  line-height: 1;
}

.p-price-simulator__plan-notes {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: min(8px, 0.5555555556vw);
  margin-top: 0;
  width: 100%;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-notes {
    margin-top: 2.0356234097vw;
  }
}

.p-price-simulator__plan-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: min(3px, 0.2083333333vw);
  color: var(--color-secondary);
  font-weight: 500;
  line-height: 1.2;
  font-size: min(16px, 1.1111111111vw);
  letter-spacing: 0.03em;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-note {
    gap: 1.0178117048vw;
    color: var(--color-text-gray);
    line-height: 1.4;
    font-size: 3.5623409669vw;
  }
}

@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-start .p-price-simulator__plan-note {
    gap: 0.7633587786vw;
    color: var(--color-secondary);
    line-height: 1.2;
    font-size: 2.5445292621vw;
    letter-spacing: 0.03em;
  }
}

.p-price-simulator__plan-note.is-basic-note {
  color: var(--color-text-gray);
  letter-spacing: 0.03em;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-note.is-basic-note {
    color: #929292;
    font-size: 2.5445292621vw;
    line-height: 1.2;
    letter-spacing: 0.03em;
    text-align: center;
  }
}

.p-price-simulator__plan-note img {
  flex-shrink: 0;
  width: min(20px, 1.3888888889vw);
  height: min(20px, 1.3888888889vw);
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan-note img {
    width: 3.5623409669vw;
    height: 3.5623409669vw;
  }
}

.p-price-simulator__plan-note.is-child-only {
  display: none;
}

.p-price-simulator__plan.is-norikae {
  border: max(2px, min(2px, 0.1388888889vw)) solid #dda600;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__plan.is-norikae {
    border: max(2px, 0.5089058524vw) solid #dda600;
  }
}

.p-price-simulator__note {
  margin-block-start: min(20px, 1.3888888889vw);
  color: #929292;
  font-size: min(10px, 0.6944444444vw);
  font-weight: 500;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 834px) {
  .p-price-simulator__note {
    margin-block-start: 3.5623409669vw;
    width: 100%;
    max-width: 84.7328244275vw;
    font-size: 2.0356234097vw;
    text-align: left;
  }
}
