@charset "UTF-8";
:where(.reform-sim) {
  --rs-main: #276759;
  --rs-main-deep: #183f37;
  --rs-main-tint: #ffffff;
  --rs-point: #e0a32a;
  --rs-point-deep: #c98a1f;
  --rs-point-light: #e6b657;
  --rs-bg: #f7f4ec;
  --rs-base: #f1eee5;
  --rs-text: #22282e;
  --rs-error: #c0563a;
  --rs-white: #fff;
  --rs-gray-100: #f1f1f1;
  --rs-gray-300: #d9d9d9;
  --rs-gray-400: #cccccc;
  --rs-gray-700: #7f7f7f;
  --rs-gray-800: #666666;
  --rs-ill-line: #2c5048;
  --rs-ill-fill: #bfe0d9;
  --rs-shadow: 0 1px 2px rgba(0, 0, 0, 0.04), 0 8px 22px rgba(0, 0, 0, 0.06);
  --rs-shadow-bar: 0 -6px 24px rgba(0, 0, 0, 0.18);
  --rs-shadow-modal: 0 12px 40px rgba(0, 0, 0, 0.28);
  --rs-radius-scale: 1;
  --rs-radius-pill: 999px;
  --rs-jump-offset: 90px;
}

.reform-sim {
  background: var(--rs-bg);
  color: var(--rs-text);
  -webkit-font-smoothing: antialiased;
  letter-spacing: 0.01em;
  /* ---- TOP ---- */
  /* ---- App header ---- */
  /* ---- 上部のジャンプリンク ---- */
  /* ---- Category card ---- */
}
.reform-sim .tile__img .ill svg,
.reform-sim .choice__icon .ill svg,
.reform-sim .apphead__bldg-icon .ill svg {
  color: var(--rs-ill-line);
}
.reform-sim * {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
.reform-sim h1,
.reform-sim h2,
.reform-sim h3,
.reform-sim h4,
.reform-sim h5,
.reform-sim h6 {
  line-height: 1.5;
}
.reform-sim.reform-sim--full {
  width: var(--rs-viewport, 100vw);
  max-width: var(--rs-viewport, 100vw);
  margin-left: calc(50% - var(--rs-viewport, 100vw) / 2);
  margin-right: calc(50% - var(--rs-viewport, 100vw) / 2);
}
.reform-sim.rs-fixed-layer {
  background: none;
}
.reform-sim.rs-fixed-layer .bar {
  display: none;
}
.reform-sim.rs-fixed-layer.is-bar-visible .bar {
  display: block;
}
.reform-sim .rs-sp-only {
  display: none;
}
@media screen and (max-width: 959px) {
  .reform-sim .rs-sp-only {
    display: inline;
  }
}
.reform-sim button {
  font-family: inherit;
  cursor: pointer;
}
.reform-sim .sim-screen {
  display: none;
}
.reform-sim .sim-screen.is-active {
  display: block;
}
.reform-sim .sim-wrap {
  max-width: 800px;
  margin: 0 auto;
  padding-left: 16px;
  padding-right: 16px;
  padding-bottom: 150px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sim-wrap {
    max-width: 65.5737704918vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .sim-wrap {
    max-width: 100%;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sim-wrap {
    padding-left: 1.3114754098vw;
    padding-right: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .sim-wrap {
    padding-left: 3.2vw;
    padding-right: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sim-wrap {
    padding-bottom: 12.2950819672vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .sim-wrap {
    padding-bottom: 30vw;
  }
}
.reform-sim #top .sim-wrap {
  padding-top: 54px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim #top .sim-wrap {
    padding-top: 4.4262295082vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim #top .sim-wrap {
    padding-top: 10.8vw;
  }
}
.reform-sim .top__head {
  text-align: center;
  margin-bottom: 34px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__head {
    margin-bottom: 2.7868852459vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__head {
    margin-bottom: 6.8vw;
  }
}
.reform-sim .top__kicker {
  display: inline-block;
  font-size: 11px;
  letter-spacing: 0.3em;
  font-weight: 700;
  color: var(--rs-point-deep);
  padding-top: 6px;
  padding-bottom: 6px;
  padding-left: 16px;
  padding-right: 16px;
  margin-bottom: 16px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__kicker {
    font-size: 0.902vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .top__kicker {
    font-size: 2.933vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__kicker {
    padding-top: 0.4918032787vw;
    padding-bottom: 0.4918032787vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__kicker {
    padding-top: 1.2vw;
    padding-bottom: 1.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__kicker {
    padding-left: 1.3114754098vw;
    padding-right: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__kicker {
    padding-left: 3.2vw;
    padding-right: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__kicker {
    margin-bottom: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__kicker {
    margin-bottom: 3.2vw;
  }
}
.reform-sim .top__title {
  font-size: 38px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.35;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__title {
    font-size: 3.115vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .top__title {
    font-size: 6.933vw;
  }
}
.reform-sim .top__title-caption {
  font-size: 14px;
  font-weight: 500;
  color: var(--rs-gray-700);
  line-height: 1.6;
  margin-top: 8px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__title-caption {
    font-size: 1.148vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .top__title-caption {
    font-size: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__title-caption {
    margin-top: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__title-caption {
    margin-top: 1.6vw;
  }
}
.reform-sim .top__pick-label {
  display: inline-block;
  font-size: 15px;
  font-weight: 700;
  color: var(--rs-main);
  background: var(--rs-white);
  border: 2px solid var(--rs-main);
  border-radius: var(--rs-radius-pill);
  letter-spacing: 0.08em;
  line-height: 1.4;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 22px;
  padding-right: 22px;
  margin-top: 18px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__pick-label {
    font-size: 1.23vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .top__pick-label {
    font-size: 3.733vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__pick-label {
    padding-top: 0.8196721311vw;
    padding-bottom: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__pick-label {
    padding-top: 2vw;
    padding-bottom: 2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__pick-label {
    padding-left: 1.8032786885vw;
    padding-right: 1.8032786885vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__pick-label {
    padding-left: 4.4vw;
    padding-right: 4.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__pick-label {
    margin-top: 1.4754098361vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__pick-label {
    margin-top: 3.6vw;
  }
}
.reform-sim .top__lead {
  font-size: 13px;
  color: var(--rs-text);
  line-height: 1.7;
  margin-top: 10px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__lead {
    font-size: 1.066vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .top__lead {
    font-size: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__lead {
    margin-top: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__lead {
    margin-top: 2vw;
  }
}
.reform-sim .top__choices {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__choices {
    gap: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__choices {
    gap: 4.2666666667vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__choices {
    grid-template-columns: 1fr;
  }
}
.reform-sim .top__foot {
  text-align: center;
  font-size: 11px;
  color: var(--rs-gray-700);
  margin-top: 28px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__foot {
    font-size: 0.902vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .top__foot {
    font-size: 2.933vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .top__foot {
    margin-top: 2.2950819672vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .top__foot {
    margin-top: 5.6vw;
  }
}
.reform-sim .choice {
  cursor: pointer;
  background: var(--rs-white);
  border: 1px solid var(--rs-gray-300);
  border-radius: calc(18px * var(--rs-radius-scale));
  box-shadow: var(--rs-shadow);
  padding-top: 34px;
  padding-bottom: 34px;
  padding-left: 24px;
  padding-right: 24px;
  text-align: center;
  transition: 0.16s;
  border-top: 6px solid transparent;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice {
    padding-top: 2.7868852459vw;
    padding-bottom: 2.7868852459vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .choice {
    padding-top: 6.8vw;
    padding-bottom: 6.8vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice {
    padding-left: 1.9672131148vw;
    padding-right: 1.9672131148vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .choice {
    padding-left: 4.8vw;
    padding-right: 4.8vw;
  }
}
.reform-sim .choice:hover {
  transform: translateY(-3px);
}
.reform-sim .choice__icon {
  line-height: 1;
  margin-bottom: 12px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice__icon {
    margin-bottom: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .choice__icon {
    margin-bottom: 2.4vw;
  }
}
.reform-sim .choice__icon .ill svg {
  width: auto;
  height: 150px;
}
.reform-sim .choice__icon .photo img,
.reform-sim .choice__icon .perspective img {
  width: auto;
  height: 150px;
  max-width: 100%;
  object-fit: cover;
  border-radius: calc(10px * var(--rs-radius-scale));
}
@media screen and (max-width: 959px) {
  .reform-sim .choice__icon .photo img,
  .reform-sim .choice__icon .perspective img {
    height: auto;
  }
}
.reform-sim .choice__icon .perspective img {
  object-fit: contain;
  border-radius: 0;
}
.reform-sim .choice__title {
  font-size: 21px;
  font-weight: 800;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice__title {
    font-size: 1.721vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .choice__title {
    font-size: 5.6vw;
  }
}
.reform-sim .choice__en {
  display: block;
  font-size: 10px;
  letter-spacing: 0.22em;
  color: var(--rs-gray-700);
  font-weight: 700;
  text-transform: uppercase;
  margin-top: 4px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice__en {
    font-size: 0.82vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .choice__en {
    font-size: 2.667vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice__en {
    margin-top: 0.3278688525vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .choice__en {
    margin-top: 0.8vw;
  }
}
.reform-sim .choice__desc {
  font-size: 12.5px;
  color: var(--rs-gray-700);
  margin-top: 12px;
  text-align: left;
  line-height: 1.7;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice__desc {
    font-size: 1.025vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .choice__desc {
    font-size: 3.333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice__desc {
    margin-top: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .choice__desc {
    margin-top: 2.4vw;
  }
}
.reform-sim .choice__desc--sp {
  display: none;
}
@media screen and (max-width: 959px) {
  .reform-sim .choice__desc--pc {
    display: none;
  }
  .reform-sim .choice__desc--sp {
    display: block;
  }
}
.reform-sim .choice__go {
  display: inline-block;
  margin-top: 18px;
  font-size: 13.5px;
  font-weight: 800;
  padding-top: 11px;
  padding-bottom: 11px;
  padding-left: 22px;
  padding-right: 22px;
  border-radius: var(--rs-radius-pill);
  border: 1px solid var(--rs-gray-800);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice__go {
    margin-top: 1.4754098361vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .choice__go {
    margin-top: 3.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice__go {
    font-size: 1.107vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .choice__go {
    font-size: 3.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice__go {
    padding-top: 0.9016393443vw;
    padding-bottom: 0.9016393443vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .choice__go {
    padding-top: 2.2vw;
    padding-bottom: 2.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .choice__go {
    padding-left: 1.8032786885vw;
    padding-right: 1.8032786885vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .choice__go {
    padding-left: 4.4vw;
    padding-right: 4.4vw;
  }
}
.reform-sim .topbar {
  max-width: 800px;
  margin: 0 auto;
  padding-top: 16px;
  padding-left: 16px;
  padding-right: 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .topbar {
    max-width: 65.5737704918vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .topbar {
    max-width: 100%;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .topbar {
    padding-top: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .topbar {
    padding-top: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .topbar {
    padding-left: 1.3114754098vw;
    padding-right: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .topbar {
    padding-left: 3.2vw;
    padding-right: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .topbar {
    gap: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .topbar {
    gap: 3.2vw;
  }
}
.reform-sim .topbar__back {
  cursor: pointer;
  border: 1.5px solid var(--rs-gray-300);
  background: var(--rs-white);
  color: var(--rs-text);
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  padding-top: 9px;
  padding-bottom: 9px;
  padding-left: 15px;
  padding-right: 15px;
  border-radius: var(--rs-radius-pill);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .topbar__back {
    font-size: 1.066vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .topbar__back {
    font-size: 3.467vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .topbar__back {
    padding-top: 0.737704918vw;
    padding-bottom: 0.737704918vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .topbar__back {
    padding-top: 1.8vw;
    padding-bottom: 1.8vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .topbar__back {
    padding-left: 1.2295081967vw;
    padding-right: 1.2295081967vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .topbar__back {
    padding-left: 3vw;
    padding-right: 3vw;
  }
}
.reform-sim .topbar__back:hover {
  border-color: var(--rs-main);
}
.reform-sim .apphead {
  text-align: center;
  padding-top: 24px;
  padding-bottom: 18px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .apphead {
    padding-top: 1.9672131148vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .apphead {
    padding-top: 4.8vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .apphead {
    padding-bottom: 1.4754098361vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .apphead {
    padding-bottom: 3.6vw;
  }
}
.reform-sim .apphead__title {
  font-size: 34px;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.35;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .apphead__title {
    font-size: 2.787vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .apphead__title {
    font-size: 5.867vw;
  }
}
.reform-sim .apphead__title-caption {
  font-size: 14px;
  font-weight: 500;
  color: var(--rs-gray-700);
  line-height: 1.6;
  margin-top: 8px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .apphead__title-caption {
    font-size: 1.148vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .apphead__title-caption {
    font-size: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .apphead__title-caption {
    margin-top: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .apphead__title-caption {
    margin-top: 1.6vw;
  }
}
.reform-sim .apphead__bldg {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  line-height: 1;
  margin-top: 14px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .apphead__bldg {
    gap: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .apphead__bldg {
    gap: 2.1333333333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .apphead__bldg {
    margin-top: 1.1475409836vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .apphead__bldg {
    margin-top: 2.8vw;
  }
}
.reform-sim .apphead__bldg-icon .ill svg {
  width: auto;
  height: 88px;
}
.reform-sim .apphead__bldg-icon .photo img,
.reform-sim .apphead__bldg-icon .perspective img {
  width: auto;
  height: 200px;
  max-width: 100%;
  object-fit: cover;
  border-radius: calc(10px * var(--rs-radius-scale));
}
@media screen and (max-width: 959px) {
  .reform-sim .apphead__bldg-icon .photo img,
  .reform-sim .apphead__bldg-icon .perspective img {
    height: auto;
  }
}
.reform-sim .apphead__bldg-icon .perspective img {
  object-fit: contain;
  border-radius: 0;
}
.reform-sim .apphead__bldg .topbar__mode {
  font-size: 12px;
  font-weight: 800;
  color: var(--rs-main-deep);
  letter-spacing: 0.03em;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .apphead__bldg .topbar__mode {
    font-size: 0.984vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .apphead__bldg .topbar__mode {
    font-size: 3.2vw;
  }
}
.reform-sim .apphead__lead {
  font-size: 12.5px;
  color: var(--rs-gray-700);
  margin-top: 10px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .apphead__lead {
    font-size: 1.025vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .apphead__lead {
    font-size: 3.333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .apphead__lead {
    margin-top: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .apphead__lead {
    margin-top: 2vw;
  }
}
.reform-sim .jump {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .jump {
    gap: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .jump {
    gap: 2.1333333333vw 1.0666666667vw;
  }
}
.reform-sim .jump__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--rs-white);
  border: 1px solid var(--rs-gray-300);
  border-radius: var(--rs-radius-pill);
  color: var(--rs-text);
  text-decoration: none;
  font-weight: 700;
  font-size: 12px;
  padding-top: 8px;
  padding-bottom: 8px;
  padding-left: 14px;
  padding-right: 14px;
  transition: 0.12s;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .jump__link {
    gap: 0.4918032787vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .jump__link {
    gap: 1.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .jump__link {
    font-size: 0.984vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .jump__link {
    font-size: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .jump__link {
    padding-top: 0.6557377049vw;
    padding-bottom: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .jump__link {
    padding-top: 1.6vw;
    padding-bottom: 1.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .jump__link {
    padding-left: 1.1475409836vw;
    padding-right: 1.1475409836vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .jump__link {
    padding-left: 2.8vw;
    padding-right: 2.8vw;
  }
}
.reform-sim .jump__link:hover {
  border-color: var(--rs-main);
  background: var(--rs-main-tint);
}
.reform-sim .jump__link[hidden] {
  display: none;
}
.reform-sim .jump__icon {
  flex: none;
  line-height: 1;
  font-size: 14px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .jump__icon {
    font-size: 1.148vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .jump__icon {
    font-size: 3.733vw;
  }
}
.reform-sim .jump__icon--yen {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--rs-text);
  color: var(--rs-white);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 800;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .jump__icon--yen {
    font-size: 0.82vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .jump__icon--yen {
    font-size: 2.667vw;
  }
}
.reform-sim .jump__text {
  line-height: 1.2;
}
.reform-sim .jump__link--total {
  background: var(--rs-text);
  border-color: var(--rs-text);
  color: var(--rs-white);
}
.reform-sim .jump__link--total .jump__icon--yen {
  background: var(--rs-white);
  color: var(--rs-text);
}
.reform-sim .jump__link--total:hover {
  background: var(--rs-text);
  border-color: var(--rs-text);
  color: var(--rs-white);
  opacity: 0.85;
}
.reform-sim .cat {
  background: var(--rs-white);
  border: 1px solid var(--rs-gray-300);
  border-radius: calc(16px * var(--rs-radius-scale));
  box-shadow: var(--rs-shadow);
  margin-top: 14px;
  overflow: hidden;
  scroll-margin-top: var(--rs-jump-offset);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat {
    margin-top: 1.1475409836vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat {
    margin-top: 2.8vw;
  }
}
.reform-sim .cat.is-off {
  opacity: 0.5;
}
.reform-sim .cat__head {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 13px;
  padding-top: 16px;
  padding-bottom: 16px;
  padding-left: 18px;
  padding-right: 18px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__head {
    gap: 1.0655737705vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__head {
    gap: 2.1333333333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__head {
    padding-top: 1.3114754098vw;
    padding-bottom: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__head {
    padding-top: 3.2vw;
    padding-bottom: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__head {
    padding-left: 1.4754098361vw;
    padding-right: 1.4754098361vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__head {
    padding-left: 3.6vw;
    padding-right: 3.6vw;
  }
}
.reform-sim .cat__title-block {
  display: flex;
  align-items: center;
  gap: 13px;
  flex: 1;
  min-width: 0;
  order: 1;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__title-block {
    gap: 1.0655737705vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__title-block {
    gap: 3.4666666667vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__title-block {
    flex: 1 1 0;
  }
}
.reform-sim .cat__icon {
  flex: none;
  width: 38px;
  height: 38px;
  border-radius: calc(10px * var(--rs-radius-scale));
  background: var(--rs-main-tint);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__icon {
    font-size: 1.557vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .cat__icon {
    font-size: 5.067vw;
  }
}
.reform-sim .cat__title {
  min-width: 0;
}
.reform-sim .cat__name {
  font-size: 16px;
  font-weight: 800;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__name {
    font-size: 1.311vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .cat__name {
    font-size: 4.267vw;
  }
}
.reform-sim .cat__en {
  display: block;
  font-size: 10px;
  letter-spacing: 0.18em;
  color: var(--rs-gray-700);
  font-weight: 700;
  text-transform: uppercase;
  margin-top: 4px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__en {
    font-size: 0.82vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .cat__en {
    font-size: 2.667vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__en {
    margin-top: 0.3278688525vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__en {
    margin-top: 0.8vw;
  }
}
.reform-sim .cat__sub {
  font-size: 14px;
  font-weight: 800;
  color: var(--rs-text);
  white-space: nowrap;
  order: 2;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__sub {
    font-size: 1.148vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .cat__sub {
    font-size: 3.733vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__sub {
    order: unset;
  }
}
.reform-sim .cat__sub:empty {
  display: none;
}
.reform-sim .cat__actions {
  display: contents;
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__actions {
    display: flex;
    align-items: center;
    flex: none;
    order: 2;
    margin-left: auto;
  }
}
.reform-sim .cat__toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: none;
  background: transparent;
  font-weight: 800;
  font-size: 12.5px;
  color: var(--rs-text);
  white-space: nowrap;
  flex: none;
  order: 3;
  cursor: pointer;
  background-color: var(--rs-gray-100);
  border-radius: var(--rs-radius-pill);
  padding-top: 8px;
  padding-bottom: 8px;
  padding-left: 12px;
  padding-right: 12px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__toggle {
    gap: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__toggle {
    gap: 2.6666666667vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__toggle {
    font-size: 1.025vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .cat__toggle {
    font-size: 3.333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__toggle {
    padding-top: 0.6557377049vw;
    padding-bottom: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__toggle {
    padding-top: 1.6vw;
    padding-bottom: 1.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__toggle {
    padding-left: 0.9836065574vw;
    padding-right: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__toggle {
    padding-left: 2.4vw;
    padding-right: 2.4vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__toggle {
    flex: none;
    order: 3;
    gap: 0;
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 6px;
    padding-right: 6px;
    justify-content: center;
    background-color: transparent;
  }
}
@media screen and (max-width: 959px) and (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__toggle {
    padding-top: 0.4918032787vw;
    padding-bottom: 0.4918032787vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .reform-sim .cat__toggle {
    padding-top: 1.2vw;
    padding-bottom: 1.2vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__toggle {
    padding-left: 0.4918032787vw;
    padding-right: 0.4918032787vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .reform-sim .cat__toggle {
    padding-left: 1.2vw;
    padding-right: 1.2vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__toggle [data-toggle-label] {
    display: none;
  }
}
.reform-sim .cat__toggle:not(.is-on) {
  color: var(--rs-gray-700);
}
.reform-sim .cat__toggle-track {
  flex: none;
  width: 44px;
  height: 24px;
  border-radius: 999px;
  background: var(--rs-gray-300);
  position: relative;
  transition: background 0.2s;
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__toggle-track {
    width: 11.7333333333vw;
    height: 6.4vw;
  }
}
.reform-sim .cat__toggle-knob {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--rs-white);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.18);
  transition: transform 0.2s;
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__toggle-knob {
    top: 0.8vw;
    left: 0.8vw;
    width: 4.8vw;
    height: 4.8vw;
  }
}
.reform-sim .cat__toggle.is-on .cat__toggle-track {
  background: var(--rs-main);
}
.reform-sim .cat__toggle.is-on .cat__toggle-knob {
  transform: translateX(20px);
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__toggle.is-on .cat__toggle-knob {
    transform: translateX(5.3333333333vw);
  }
}
.reform-sim .cat__body {
  padding-top: 18px;
  padding-left: 18px;
  padding-right: 18px;
  padding-bottom: 18px;
  border-top: 1px solid var(--rs-gray-300);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__body {
    padding-top: 1.4754098361vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__body {
    padding-top: 3.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__body {
    padding-left: 1.4754098361vw;
    padding-right: 1.4754098361vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__body {
    padding-left: 3.6vw;
    padding-right: 3.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__body {
    padding-bottom: 1.4754098361vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__body {
    padding-bottom: 3.6vw;
  }
}
.reform-sim .cat__body--empty {
  border-top: none;
  padding: 24px;
  text-align: center;
  color: var(--rs-gray-700);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cat__body--empty {
    padding: 1.9672131148vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cat__body--empty {
    padding: 4.8vw;
  }
}
.reform-sim .cat.is-collapsed .cat__body {
  display: none;
}
.reform-sim .grp {
  padding-top: 13px;
  padding-bottom: 13px;
  border-top: 1px dashed var(--rs-gray-300);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .grp {
    padding-top: 1.0655737705vw;
    padding-bottom: 1.0655737705vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .grp {
    padding-top: 2.6vw;
    padding-bottom: 2.6vw;
  }
}
.reform-sim .grp:first-child {
  border-top: none;
}
.reform-sim .grp__head {
  font-size: 12.5px;
  font-weight: 800;
  margin-bottom: 9px;
  display: flex;
  gap: 7px;
  align-items: baseline;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .grp__head {
    font-size: 1.025vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .grp__head {
    font-size: 3.333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .grp__head {
    margin-bottom: 0.737704918vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .grp__head {
    margin-bottom: 1.8vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .grp__head {
    gap: 0.5737704918vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .grp__head {
    gap: 1.8666666667vw;
  }
}
.reform-sim .grp__en {
  font-size: 9.5px;
  letter-spacing: 0.16em;
  color: var(--rs-gray-700);
  font-weight: 700;
  text-transform: uppercase;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .grp__en {
    font-size: 0.779vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .grp__en {
    font-size: 2.533vw;
  }
}
.reform-sim .grp__multi {
  font-size: 10px;
  color: var(--rs-point-deep);
  font-weight: 700;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .grp__multi {
    font-size: 0.82vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .grp__multi {
    font-size: 2.667vw;
  }
}
.reform-sim .grp__box {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .grp__box {
    gap: 0.5737704918vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .grp__box {
    gap: 1.8666666667vw;
  }
}
.reform-sim .grp__box--tiles {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .grp__box--tiles {
    gap: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .grp__box--tiles {
    gap: 2.6666666667vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .grp__box--tiles {
    grid-template-columns: 1fr 1fr;
  }
}
.reform-sim .chip {
  font-size: 12.5px;
  font-weight: 700;
  padding-top: 8px;
  padding-bottom: 8px;
  padding-left: 13px;
  padding-right: 13px;
  border-radius: var(--rs-radius-pill);
  border: 1.5px solid var(--rs-gray-300);
  background: var(--rs-bg);
  color: var(--rs-text);
  transition: 0.12s;
  user-select: none;
  cursor: pointer;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .chip {
    font-size: 1.025vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .chip {
    font-size: 3.333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .chip {
    padding-top: 0.6557377049vw;
    padding-bottom: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .chip {
    padding-top: 1.6vw;
    padding-bottom: 1.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .chip {
    padding-left: 1.0655737705vw;
    padding-right: 1.0655737705vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .chip {
    padding-left: 2.6vw;
    padding-right: 2.6vw;
  }
}
.reform-sim .chip:hover {
  border-color: var(--rs-main);
}
.reform-sim .chip.is-on {
  background: var(--rs-main);
  border-color: var(--rs-main);
  color: var(--rs-white);
}
.reform-sim .chip--amber.is-on {
  background: var(--rs-point);
  border-color: var(--rs-point);
}
.reform-sim .tile {
  position: relative;
  cursor: pointer;
  border-radius: calc(14px * var(--rs-radius-scale));
  background: var(--rs-bg);
  padding-top: 12px;
  padding-left: 12px;
  padding-right: 12px;
  padding-bottom: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  transition: 0.12s;
  text-align: center;
  border: 2px solid #fff;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .tile {
    padding-top: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .tile {
    padding-top: 2.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .tile {
    padding-left: 0.9836065574vw;
    padding-right: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .tile {
    padding-left: 2.4vw;
    padding-right: 2.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .tile {
    padding-bottom: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .tile {
    padding-bottom: 2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .tile {
    gap: 0.5737704918vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .tile {
    gap: 1.8666666667vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .tile {
    border-radius: calc(3.7333333333vw * var(--rs-radius-scale));
    padding-left: 6px;
    padding-right: 6px;
  }
}
@media screen and (max-width: 959px) and (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .tile {
    padding-left: 0.4918032787vw;
    padding-right: 0.4918032787vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .reform-sim .tile {
    padding-left: 1.2vw;
    padding-right: 1.2vw;
  }
}
.reform-sim .tile:hover {
  border-color: var(--rs-main);
}
.reform-sim .tile.is-on {
  border-color: var(--rs-main);
  background: var(--rs-main-tint);
  box-shadow: 0 0 0 1.5px var(--rs-main) inset;
  border: 2px solid var(--rs-main);
}
.reform-sim .tile.is-fixed {
  pointer-events: none;
}
.reform-sim .tile__img {
  width: 100%;
  height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 959px) {
  .reform-sim .tile__img {
    height: 40vw;
  }
}
.reform-sim .tile__img .ill {
  display: block;
  width: 150px;
  height: 150px;
}
@media screen and (max-width: 959px) {
  .reform-sim .tile__img .ill {
    width: 26.6666666667vw;
    height: 26.6666666667vw;
  }
}
.reform-sim .tile__img .ill svg {
  width: 100%;
  height: 100%;
}
.reform-sim .tile__img .photo,
.reform-sim .tile__img .perspective {
  display: block;
  height: 100%;
  max-width: 100%;
}
.reform-sim .tile__img .photo img,
.reform-sim .tile__img .perspective img {
  display: block;
  width: auto;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  border-radius: calc(6px * var(--rs-radius-scale));
}
@media screen and (max-width: 959px) {
  .reform-sim .tile__img .photo img,
  .reform-sim .tile__img .perspective img {
    border-radius: calc(1.6vw * var(--rs-radius-scale));
  }
}
.reform-sim .tile__img .perspective img {
  border-radius: 0;
}
.reform-sim .tile__name {
  font-size: 13px;
  font-weight: 800;
  color: var(--rs-text);
  line-height: 1.3;
  /* SPは選択肢が2列に並ぶため、名前を置ける幅が11文字ほどしかない。
     日本語は文字と文字の間で折り返せるので、そのままだと
     「スタンダード タンクレ／ス」のように1文字だけ次の行に落ちてしまう。
     keep-all で文字単位の折り返しをやめ、半角スペースの位置だけで折る。
     括弧の前はJSの breakBeforeParen が改行を入れる（PC・SP共通）。
     anywhere は保険。空白も括弧も無い長い名前を登録されたときに、
     折り返せずタイルからはみ出すのを防ぐ。 */
  word-break: keep-all;
  overflow-wrap: anywhere;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .tile__name {
    font-size: 1.066vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .tile__name {
    font-size: 3.2vw;
  }
}
.reform-sim .tile.is-on .tile__name {
  color: var(--rs-main-deep);
}
.reform-sim .tile__check {
  position: absolute;
  top: 7px;
  right: 7px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--rs-main);
  display: none;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 959px) {
  .reform-sim .tile__check {
    top: 1.8666666667vw;
    right: 1.8666666667vw;
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
}
.reform-sim .tile__check::before {
  content: "";
  display: block;
  width: 5px;
  height: 9px;
  border-right: 2px solid var(--rs-white);
  border-bottom: 2px solid var(--rs-white);
  transform: rotate(45deg) translate(-1px, -1px);
  box-sizing: border-box;
}
@media screen and (max-width: 959px) {
  .reform-sim .tile__check::before {
    width: 1.3333333333vw;
    height: 2.4vw;
    border-width: 0.5333333333vw;
    transform: rotate(45deg) translate(-0.2666666667vw, -0.2666666667vw);
  }
}
.reform-sim .tile.is-on .tile__check {
  display: flex;
}
.reform-sim .note {
  font-size: 11px;
  color: var(--rs-gray-700);
  margin-top: 10px;
  background: var(--rs-base);
  border-radius: calc(9px * var(--rs-radius-scale));
  padding-top: 9px;
  padding-bottom: 9px;
  padding-left: 11px;
  padding-right: 11px;
  line-height: 1.6;
  margin-bottom: 10px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .note {
    font-size: 0.902vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .note {
    font-size: 2.933vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .note {
    margin-top: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .note {
    margin-top: 2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .note {
    padding-top: 0.737704918vw;
    padding-bottom: 0.737704918vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .note {
    padding-top: 1.8vw;
    padding-bottom: 1.8vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .note {
    padding-left: 0.9016393443vw;
    padding-right: 0.9016393443vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .note {
    padding-left: 2.2vw;
    padding-right: 2.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .note {
    margin-bottom: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .note {
    margin-bottom: 2vw;
  }
}
.reform-sim .room {
  border: 1.5px solid var(--rs-gray-300);
  border-radius: calc(12px * var(--rs-radius-scale));
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 13px;
  padding-right: 13px;
  margin-bottom: 20px;
  background: var(--rs-bg);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .room {
    padding-top: 0.9836065574vw;
    padding-bottom: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .room {
    padding-top: 2.4vw;
    padding-bottom: 2.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .room {
    padding-left: 1.0655737705vw;
    padding-right: 1.0655737705vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .room {
    padding-left: 2.6vw;
    padding-right: 2.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .room {
    margin-bottom: 1.6393442623vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .room {
    margin-bottom: 4vw;
  }
}
.reform-sim .room__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .room__head {
    margin-bottom: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .room__head {
    margin-bottom: 1.6vw;
  }
}
.reform-sim .room__title {
  font-size: 13px;
  font-weight: 800;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .room__title {
    font-size: 1.066vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .room__title {
    font-size: 3.467vw;
  }
}
.reform-sim .room__delete {
  font-size: 11px;
  font-weight: 700;
  color: var(--rs-error);
  border: 1.5px solid var(--rs-gray-300);
  background: var(--rs-white);
  border-radius: calc(8px * var(--rs-radius-scale));
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 10px;
  padding-right: 10px;
  cursor: pointer;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .room__delete {
    font-size: 0.902vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .room__delete {
    font-size: 2.933vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .room__delete {
    padding-top: 0.3278688525vw;
    padding-bottom: 0.3278688525vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .room__delete {
    padding-top: 0.8vw;
    padding-bottom: 0.8vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .room__delete {
    padding-left: 0.8196721311vw;
    padding-right: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .room__delete {
    padding-left: 2vw;
    padding-right: 2vw;
  }
}
.reform-sim .room__sub {
  font-size: 12px;
  font-weight: 800;
  color: var(--rs-main-deep);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .room__sub {
    font-size: 0.984vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .room__sub {
    font-size: 3.2vw;
  }
}
.reform-sim .room-add {
  width: 100%;
  border: 1.5px dashed var(--rs-main);
  background: var(--rs-main-tint);
  color: var(--rs-main-deep);
  font-weight: 800;
  font-size: 13.5px;
  padding: 12px;
  border-radius: calc(11px * var(--rs-radius-scale));
  cursor: pointer;
  transition: 0.12s;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .room-add {
    font-size: 1.107vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .room-add {
    font-size: 3.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .room-add {
    padding: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .room-add {
    padding: 2.4vw;
  }
}
.reform-sim .room-add:hover {
  background: var(--rs-main-tint);
}
.reform-sim .sec-head {
  display: flex;
  align-items: baseline;
  gap: 11px;
  position: relative;
  margin-top: 30px;
  margin-bottom: 12px;
  scroll-margin-top: var(--rs-jump-offset);
  /* #sec-total の上に浮かせる吹き出し（bar__balloon と同系統＋枠線のみ追加） */
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sec-head {
    gap: 0.9016393443vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .sec-head {
    gap: 2.9333333333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sec-head {
    margin-top: 2.4590163934vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .sec-head {
    margin-top: 6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sec-head {
    margin-bottom: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .sec-head {
    margin-bottom: 2.4vw;
  }
}
.reform-sim .sec-head#sec-total {
  margin-top: 65px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sec-head#sec-total {
    margin-top: 5.3278688525vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .sec-head#sec-total {
    margin-top: 13vw;
  }
}
.reform-sim .sec-head__num {
  font-size: 12px;
  font-weight: 800;
  color: var(--rs-white);
  background: var(--rs-text);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: none;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sec-head__num {
    font-size: 0.984vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .sec-head__num {
    font-size: 3.2vw;
  }
}
.reform-sim .sec-head__title {
  font-size: 16px;
  font-weight: 800;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sec-head__title {
    font-size: 1.311vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .sec-head__title {
    font-size: 4.267vw;
  }
}
.reform-sim .sec-head__description {
  position: absolute;
  bottom: 100%;
  left: 0;
  margin-bottom: 12px;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 12px;
  padding-right: 12px;
  border-radius: var(--rs-radius-pill);
  border: 1px solid var(--rs-gray-300);
  background: var(--rs-white);
  color: var(--rs-text);
  font-weight: 700;
  line-height: 1.4;
  white-space: nowrap;
  font-size: 12px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sec-head__description {
    margin-bottom: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .sec-head__description {
    margin-bottom: 2.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sec-head__description {
    padding-top: 0.4098360656vw;
    padding-bottom: 0.4098360656vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .sec-head__description {
    padding-top: 1vw;
    padding-bottom: 1vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sec-head__description {
    padding-left: 0.9836065574vw;
    padding-right: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .sec-head__description {
    padding-left: 2.4vw;
    padding-right: 2.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .sec-head__description {
    font-size: 0.984vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .sec-head__description {
    font-size: 3.2vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .sec-head__description {
    left: 50%;
    transform: translateX(-50%);
  }
}
.reform-sim .sec-head__description-em {
  color: var(--rs-error);
}
.reform-sim .sec-head__description::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  width: 8px;
  height: 8px;
  background: var(--rs-white);
  border-right: 1px solid var(--rs-gray-300);
  border-bottom: 1px solid var(--rs-gray-300);
  transform: translateX(-50%) rotate(45deg);
}
.reform-sim .fin {
  display: grid;
  gap: 9px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .fin {
    gap: 0.737704918vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .fin {
    gap: 2.4vw;
  }
}
.reform-sim .fin__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  background: var(--rs-white);
  border: 1px solid var(--rs-gray-300);
  border-radius: calc(11px * var(--rs-radius-scale));
  padding-top: 13px;
  padding-bottom: 13px;
  padding-left: 16px;
  padding-right: 16px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .fin__row {
    gap: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .fin__row {
    gap: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .fin__row {
    padding-top: 1.0655737705vw;
    padding-bottom: 1.0655737705vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .fin__row {
    padding-top: 2.6vw;
    padding-bottom: 2.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .fin__row {
    padding-left: 1.3114754098vw;
    padding-right: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .fin__row {
    padding-left: 3.2vw;
    padding-right: 3.2vw;
  }
}
.reform-sim .fin__row--calc {
  background: var(--rs-main-tint);
}
.reform-sim .fin__label {
  font-size: 13px;
  font-weight: 700;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .fin__label {
    font-size: 1.066vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .fin__label {
    font-size: 3.467vw;
  }
}
.reform-sim .fin__label-note {
  display: block;
  font-weight: 600;
  color: var(--rs-gray-700);
  margin-top: 4px;
  font-size: 10.5px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .fin__label-note {
    margin-top: 0.3278688525vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .fin__label-note {
    margin-top: 0.8vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .fin__label-note {
    font-size: 0.861vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .fin__label-note {
    font-size: 2.8vw;
  }
}
.reform-sim .fin__value {
  font-size: 17px;
  font-weight: 800;
  white-space: nowrap;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .fin__value {
    font-size: 1.393vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .fin__value {
    font-size: 4.533vw;
  }
}
.reform-sim .bar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 50;
  background: var(--rs-text);
  color: var(--rs-white);
  box-shadow: var(--rs-shadow-bar);
  /* bar__inner の上に浮かせる吹き出し（工事費込みの注記だけ）。
     mailpick__balloon と同じく absolute で配置する。 */
}
.reform-sim .bar__inner {
  max-width: 800px;
  margin: 0 auto;
  position: relative;
  padding-top: 13px;
  padding-bottom: 13px;
  padding-top: 30px;
  padding-left: 18px;
  padding-right: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 50px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__inner {
    max-width: 65.5737704918vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__inner {
    max-width: 100%;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__inner {
    padding-top: 1.0655737705vw;
    padding-bottom: 1.0655737705vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__inner {
    padding-top: 2.6vw;
    padding-bottom: 2.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__inner {
    padding-top: 2.4590163934vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__inner {
    padding-top: 6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__inner {
    padding-left: 1.4754098361vw;
    padding-right: 1.4754098361vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__inner {
    padding-left: 3.6vw;
    padding-right: 3.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__inner {
    gap: 4.0983606557vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__inner {
    gap: 2.6666666667vw 1.0666666667vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__inner {
    flex-wrap: wrap;
    justify-content: center;
    padding-top: 20px;
    padding-bottom: 20px;
    padding-top: 30px;
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media screen and (max-width: 959px) and (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__inner {
    padding-top: 1.6393442623vw;
    padding-bottom: 1.6393442623vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .reform-sim .bar__inner {
    padding-top: 4vw;
    padding-bottom: 4vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__inner {
    padding-top: 2.4590163934vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .reform-sim .bar__inner {
    padding-top: 6vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__inner {
    padding-left: 0.8196721311vw;
    padding-right: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .reform-sim .bar__inner {
    padding-left: 2vw;
    padding-right: 2vw;
  }
}
.reform-sim .bar__sum {
  flex: none;
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__sum {
    flex: 1 1 0;
    min-width: 0;
    text-align: center;
  }
}
.reform-sim .bar__balloon {
  position: absolute;
  top: -10%;
  left: 0;
  margin-bottom: 12px;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 12px;
  padding-right: 12px;
  border-radius: var(--rs-radius-pill);
  background: var(--rs-white);
  color: var(--rs-text);
  font-weight: 700;
  line-height: 1.4;
  white-space: nowrap;
  font-size: 12px;
  animation: rs-float 2.5s ease-in-out infinite;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__balloon {
    margin-bottom: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__balloon {
    margin-bottom: 2.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__balloon {
    padding-top: 0.4098360656vw;
    padding-bottom: 0.4098360656vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__balloon {
    padding-top: 1vw;
    padding-bottom: 1vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__balloon {
    padding-left: 0.9836065574vw;
    padding-right: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__balloon {
    padding-left: 2.4vw;
    padding-right: 2.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__balloon {
    font-size: 0.984vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .bar__balloon {
    font-size: 3.2vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__balloon {
    left: 50%;
    transform: translateX(-50%);
    animation: rs-float-center 2.5s ease-in-out infinite;
  }
}
@media (prefers-reduced-motion: reduce) {
  .reform-sim .bar__balloon {
    animation: none;
  }
}
.reform-sim .bar__balloon-em {
  color: var(--rs-error);
}
.reform-sim .bar__balloon::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: 50%;
  margin-left: -6px;
  border: 6px solid transparent;
  border-top-color: var(--rs-white);
}
.reform-sim .bar__cap {
  font-size: 10.5px;
  letter-spacing: 0.14em;
  color: #cdbf8f;
  font-weight: 700;
  margin-bottom: 10px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__cap {
    font-size: 0.861vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .bar__cap {
    font-size: 2.8vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__cap {
    margin-bottom: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__cap {
    margin-bottom: 2vw;
  }
}
.reform-sim .bar__total {
  font-size: 30px;
  font-weight: 900;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__total {
    font-size: 2.459vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .bar__total {
    font-size: 5.867vw;
  }
}
.reform-sim .bar__yen {
  font-size: 0.55em;
  font-weight: 800;
  color: var(--rs-point);
}
.reform-sim .bar__note {
  font-size: 9.5px;
  color: #9a937f;
  margin-top: 4px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__note {
    font-size: 0.779vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .bar__note {
    font-size: 2.533vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__note {
    margin-top: 0.3278688525vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__note {
    margin-top: 0.8vw;
  }
}
.reform-sim .bar__ctas {
  flex: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__ctas {
    gap: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__ctas {
    gap: 1.6vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__ctas {
    width: 100%;
  }
}
.reform-sim .bar__cta {
  background: var(--rs-point);
  color: var(--rs-text);
  font-weight: 800;
  font-size: 13px;
  text-decoration: none;
  border-radius: var(--rs-radius-pill);
  padding-top: 11px;
  padding-bottom: 11px;
  padding-left: 20px;
  padding-right: 20px;
  white-space: nowrap;
  flex: none;
  border: none;
  /* 会社リンクは枠線だけの控えめな見た目にする。
     受け取りボタンと同じ塗りにすると、どちらを押せばよいか迷わせてしまう */
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__cta {
    font-size: 1.066vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .bar__cta {
    font-size: 3.467vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__cta {
    padding-top: 0.9016393443vw;
    padding-bottom: 0.9016393443vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__cta {
    padding-top: 2.2vw;
    padding-bottom: 2.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__cta {
    padding-left: 1.6393442623vw;
    padding-right: 1.6393442623vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__cta {
    padding-left: 4vw;
    padding-right: 4vw;
  }
}
.reform-sim .bar__cta:hover {
  background: var(--rs-point-light);
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__cta {
    width: 100%;
  }
}
.reform-sim .bar__cta--sub {
  background: transparent;
  color: var(--rs-white);
  border: 1px solid var(--rs-white);
  text-align: center;
}
.reform-sim .bar__cta--sub:hover {
  background: var(--rs-white);
  color: var(--rs-text);
}
.reform-sim .bar__breakdown {
  flex: 1 1 auto;
}
.reform-sim .bar__breakdown[hidden] {
  display: none;
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__breakdown {
    flex: 1 1 0;
    min-width: 0;
  }
}
.reform-sim .bar__breakdown-inner {
  display: grid;
  gap: 3px;
  font-size: 11px;
  padding-left: 10px;
  padding-right: 10px;
  max-width: 180px;
  margin: 0 auto;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__breakdown-inner {
    gap: 0.2459016393vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__breakdown-inner {
    gap: 1.0666666667vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__breakdown-inner {
    font-size: 0.902vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .bar__breakdown-inner {
    font-size: 2.667vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__breakdown-inner {
    padding-left: 0.8196721311vw;
    padding-right: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__breakdown-inner {
    padding-left: 2vw;
    padding-right: 2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .bar__breakdown-inner {
    max-width: 14.7540983607vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__breakdown-inner {
    max-width: 100%;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .bar__breakdown-inner {
    padding-left: 5.3333333333vw;
  }
}
.reform-sim .bar__item {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1em;
  font-weight: 800;
}
.reform-sim .bar__item-name {
  color: #cdbf8f;
}
.reform-sim .bar__item-val {
  white-space: nowrap;
}
.reform-sim .cta-contact {
  display: block;
  width: 100%;
  text-align: center;
  text-decoration: none;
  margin-top: 14px;
  background: var(--rs-main);
  color: var(--rs-white);
  font-weight: 800;
  font-size: 14px;
  border: none;
  border-radius: var(--rs-radius-pill);
  padding-top: 14px;
  padding-bottom: 14px;
  cursor: pointer;
  transition: 0.12s;
  /* 会社リンクは枠線だけの控えめな見た目にする。
     受け取りボタンと同じ塗りにすると、どちらを押せばよいか迷わせてしまう */
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cta-contact {
    margin-top: 1.1475409836vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cta-contact {
    margin-top: 2.8vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cta-contact {
    font-size: 1.148vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .cta-contact {
    font-size: 3.733vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .cta-contact {
    padding-top: 1.1475409836vw;
    padding-bottom: 1.1475409836vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .cta-contact {
    padding-top: 2.8vw;
    padding-bottom: 2.8vw;
  }
}
.reform-sim .cta-contact:hover {
  background: var(--rs-main-deep);
}
.reform-sim .cta-contact--mail {
  background: var(--rs-point);
  color: var(--rs-text);
}
.reform-sim .cta-contact--mail:hover {
  background: var(--rs-point-light);
}
.reform-sim .cta-contact--sub {
  background: transparent;
  color: var(--rs-main);
  border: 1px solid var(--rs-main);
}
.reform-sim .cta-contact--sub:hover {
  background: var(--rs-main);
  color: var(--rs-white);
}
.reform-sim .mailmodal {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
  /* 「受け取り方法を選び直す」。入力フォームでもQRコードでも同じ位置に出すため、
     パネル直下に1つだけ置いている。display を block にしているので、
     hidden で消えるように打ち消しを足しておく。 */
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailmodal {
    padding: 3.2786885246vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailmodal {
    padding: 8vw;
  }
}
.reform-sim .mailmodal[hidden] {
  display: none;
}
.reform-sim .mailmodal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
}
.reform-sim .mailmodal__box {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  width: 100%;
  max-width: 440px;
  gap: 12px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailmodal__box {
    max-width: 36.0655737705vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailmodal__box {
    max-width: 100%;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailmodal__box {
    gap: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailmodal__box {
    gap: 3.2vw;
  }
}
.reform-sim .mailmodal__panel {
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  background: var(--rs-white);
  border-radius: calc(16px * var(--rs-radius-scale));
  box-shadow: var(--rs-shadow-modal);
  padding-top: 24px;
  padding-bottom: 24px;
  padding-left: 20px;
  padding-right: 20px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailmodal__panel {
    padding-top: 1.9672131148vw;
    padding-bottom: 1.9672131148vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailmodal__panel {
    padding-top: 4.8vw;
    padding-bottom: 4.8vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailmodal__panel {
    padding-left: 1.6393442623vw;
    padding-right: 1.6393442623vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailmodal__panel {
    padding-left: 4vw;
    padding-right: 4vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailmodal__panel {
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 12px;
    padding-right: 12px;
  }
}
@media screen and (max-width: 959px) and (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailmodal__panel {
    padding-top: 1.3114754098vw;
    padding-bottom: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .reform-sim .mailmodal__panel {
    padding-top: 3.2vw;
    padding-bottom: 3.2vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailmodal__panel {
    padding-left: 0.9836065574vw;
    padding-right: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) and (max-width: 959px) {
  .reform-sim .mailmodal__panel {
    padding-left: 2.4vw;
    padding-right: 2.4vw;
  }
}
.reform-sim .mailmodal__close {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: none;
  background: var(--rs-white);
  color: var(--rs-gray-700);
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
}
@media screen and (max-width: 959px) {
  .reform-sim .mailmodal__close {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    font-size: 6.4vw;
  }
}
.reform-sim .mailmodal__close:hover {
  background: var(--rs-base);
  color: var(--rs-text);
}
.reform-sim .mailmodal__title {
  font-size: 16px;
  font-weight: 800;
  margin-bottom: 14px;
  text-align: center;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailmodal__title {
    font-size: 1.311vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailmodal__title {
    font-size: 4.267vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailmodal__title {
    margin-bottom: 1.1475409836vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailmodal__title {
    margin-bottom: 2.8vw;
  }
}
.reform-sim .mailmodal__back {
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  color: var(--rs-gray-700);
  text-decoration: underline;
  font-size: 11.5px;
  margin-bottom: 14px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailmodal__back {
    font-size: 0.943vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailmodal__back {
    font-size: 2.933vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailmodal__back {
    margin-bottom: 1.1475409836vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailmodal__back {
    margin-bottom: 2.8vw;
  }
}
.reform-sim .mailmodal__back[hidden] {
  display: none;
}
.reform-sim .mailmodal__back:hover {
  color: var(--rs-text);
}
.reform-sim .mailpick {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 30px;
  /* 「友だち追加不要！」の吹き出し。ボタンの上に浮かせる。
     下向きのしっぽは :after で作る。透明な三角の上側だけに色を付けると、
     下を向いた三角に見える（よくある吹き出しの作り方）。 */
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailpick {
    gap: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailpick {
    gap: 2.6666666667vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailpick {
    margin-top: 2.4590163934vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailpick {
    margin-top: 6vw;
  }
}
.reform-sim .mailpick[hidden] {
  display: none;
}
.reform-sim .mailpick__btn {
  position: relative;
  display: grid;
  align-content: start;
  justify-items: center;
  gap: 6px;
  width: 100%;
  text-align: center;
  cursor: pointer;
  border: 1.5px solid var(--rs-gray-300);
  border-radius: calc(12px * var(--rs-radius-scale));
  background: var(--rs-white);
  padding-top: 16px;
  padding-bottom: 16px;
  padding-left: 10px;
  padding-right: 10px;
  transition: 0.12s;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailpick__btn {
    gap: 0.4918032787vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailpick__btn {
    gap: 1.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailpick__btn {
    padding-top: 1.3114754098vw;
    padding-bottom: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailpick__btn {
    padding-top: 3.2vw;
    padding-bottom: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailpick__btn {
    padding-left: 0.8196721311vw;
    padding-right: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailpick__btn {
    padding-left: 2vw;
    padding-right: 2vw;
  }
}
.reform-sim .mailpick__btn:hover {
  border-color: var(--rs-main);
  background: var(--rs-base);
}
.reform-sim .mailpick__icon {
  width: 40px;
  line-height: 1;
  color: var(--rs-main);
}
.reform-sim .mailpick__icon svg,
.reform-sim .mailpick__icon img {
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 959px) {
  .reform-sim .mailpick__icon {
    width: 9.6vw;
  }
}
.reform-sim .mailpick__btn--line:hover {
  border-color: #06c755;
  background: rgba(6, 199, 85, 0.06);
}
.reform-sim .mailpick__balloon {
  position: absolute;
  bottom: 84%;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: 12px;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 12px;
  padding-right: 12px;
  border-radius: var(--rs-radius-pill);
  background: #06c755;
  color: #fff;
  font-weight: 800;
  line-height: 1.4;
  white-space: nowrap;
  font-size: 11.5px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailpick__balloon {
    margin-bottom: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailpick__balloon {
    margin-bottom: 2.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailpick__balloon {
    padding-top: 0.4098360656vw;
    padding-bottom: 0.4098360656vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailpick__balloon {
    padding-top: 1vw;
    padding-bottom: 1vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailpick__balloon {
    padding-left: 0.9836065574vw;
    padding-right: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailpick__balloon {
    padding-left: 2.4vw;
    padding-right: 2.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailpick__balloon {
    font-size: 0.943vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailpick__balloon {
    font-size: 2.933vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailpick__balloon {
    bottom: 88%;
  }
}
.reform-sim .mailpick__balloon::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -6px;
  border: 6px solid transparent;
  border-top-color: #06c755;
}
.reform-sim .mailpick__label {
  font-size: 13.5px;
  font-weight: 800;
  line-height: 1.4;
  color: var(--rs-text);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailpick__label {
    font-size: 1.107vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailpick__label {
    font-size: 3.467vw;
  }
}
.reform-sim .mailpick__note {
  font-size: 11px;
  line-height: 1.5;
  color: var(--rs-gray-700);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailpick__note {
    font-size: 0.902vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailpick__note {
    font-size: 2.8vw;
  }
}
.reform-sim .mailqr {
  display: grid;
  justify-items: center;
  gap: 12px;
  text-align: center;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailqr {
    gap: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailqr {
    gap: 3.2vw;
  }
}
.reform-sim .mailqr[hidden] {
  display: none;
}
.reform-sim .mailqr__lead {
  font-size: 13.5px;
  line-height: 1.7;
  color: var(--rs-text);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailqr__lead {
    font-size: 1.107vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailqr__lead {
    font-size: 3.467vw;
  }
}
.reform-sim .mailqr__code {
  width: 220px;
  padding: 10px;
  border: 1.5px solid var(--rs-gray-300);
  border-radius: calc(12px * var(--rs-radius-scale));
  background: var(--rs-white);
}
@media screen and (max-width: 959px) {
  .reform-sim .mailqr__code {
    width: 53.3333333333vw;
  }
}
.reform-sim .mailqr__code svg {
  display: block;
  width: 100%;
  height: auto;
}
.reform-sim .mailqr__msg {
  font-size: 11.5px;
  line-height: 1.6;
  color: var(--rs-gray-700);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailqr__msg {
    font-size: 0.943vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailqr__msg {
    font-size: 2.933vw;
  }
}
.reform-sim .mailqr__msg.is-error {
  color: var(--rs-error);
  font-weight: 700;
}
.reform-sim .mailqr__mail {
  cursor: pointer;
  border: 1.5px solid var(--rs-gray-300);
  border-radius: var(--rs-radius-pill);
  background: var(--rs-white);
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 18px;
  padding-right: 18px;
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1.4;
  color: var(--rs-text);
  transition: 0.12s;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailqr__mail {
    padding-top: 0.8196721311vw;
    padding-bottom: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailqr__mail {
    padding-top: 2vw;
    padding-bottom: 2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailqr__mail {
    padding-left: 1.4754098361vw;
    padding-right: 1.4754098361vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailqr__mail {
    padding-left: 3.6vw;
    padding-right: 3.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailqr__mail {
    font-size: 1.025vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailqr__mail {
    font-size: 3.2vw;
  }
}
.reform-sim .mailqr__mail:hover {
  border-color: var(--rs-main);
  background: var(--rs-base);
}
.reform-sim .mailform {
  display: grid;
  gap: 12px;
  /* 「LINEでの連絡を希望する」。上の「ご希望（1つ以上）」とは別の項目なので、
     線で区切って、3つ目の選択肢に見えないようにする */
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform {
    gap: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform {
    gap: 3.2vw;
  }
}
.reform-sim .mailform[hidden] {
  display: none;
}
.reform-sim .mailform__field[hidden] {
  display: none;
}
.reform-sim .mailform__field {
  display: block;
}
.reform-sim .mailform__label {
  display: block;
  font-size: 12.5px;
  font-weight: 800;
  margin-bottom: 6px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__label {
    font-size: 1.025vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__label {
    font-size: 3.333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__label {
    margin-bottom: 0.4918032787vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__label {
    margin-bottom: 1.2vw;
  }
}
.reform-sim .mailform__req {
  display: inline-block;
  margin-left: 0.5em;
  padding: 0.2em 0.6em;
  border-radius: calc(4px * var(--rs-radius-scale));
  background: var(--rs-point);
  color: var(--rs-text);
  font-size: 10.5px;
  font-weight: 800;
  vertical-align: middle;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__req {
    font-size: 0.861vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__req {
    font-size: 2.667vw;
  }
}
.reform-sim .mailform__hint {
  display: block;
  margin-top: 6px;
  font-size: 11.5px;
  line-height: 1.6;
  color: var(--rs-gray-700);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__hint {
    margin-top: 0.4918032787vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__hint {
    margin-top: 1.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__hint {
    font-size: 0.943vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__hint {
    font-size: 2.933vw;
  }
}
.reform-sim .mailform__error {
  display: block;
  margin-top: 6px;
  font-size: 11.5px;
  line-height: 1.6;
  font-weight: 700;
  color: var(--rs-error);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__error {
    margin-top: 0.4918032787vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__error {
    margin-top: 1.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__error {
    font-size: 0.943vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__error {
    font-size: 2.933vw;
  }
}
.reform-sim .mailform__error[hidden] {
  display: none;
}
.reform-sim .mailform__input {
  width: 100%;
  font: inherit;
  font-size: 14px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 12px;
  padding-right: 12px;
  border: 1.5px solid var(--rs-gray-300);
  border-radius: calc(9px * var(--rs-radius-scale));
  background: var(--rs-bg);
  color: var(--rs-text);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__input {
    font-size: 1.148vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__input {
    font-size: 3.733vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__input {
    padding-top: 0.8196721311vw;
    padding-bottom: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__input {
    padding-top: 2vw;
    padding-bottom: 2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__input {
    padding-left: 0.9836065574vw;
    padding-right: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__input {
    padding-left: 2.4vw;
    padding-right: 2.4vw;
  }
}
.reform-sim .mailform__input::placeholder {
  font-size: 14px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__input::placeholder {
    font-size: 1.148vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__input::placeholder {
    font-size: 3.733vw;
  }
}
.reform-sim .mailform__input:focus {
  outline: none;
  border-color: var(--rs-main);
}
.reform-sim .mailform__input.is-error {
  border-color: var(--rs-error);
}
.reform-sim .mailform__optin {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 12.5px;
  line-height: 1.6;
  cursor: pointer;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__optin {
    gap: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__optin {
    gap: 2.1333333333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__optin {
    font-size: 1.025vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__optin {
    font-size: 3.333vw;
  }
}
.reform-sim .mailform__optin input {
  width: 13px;
  height: 13px;
  margin-top: 3px;
  flex: none;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__optin input {
    margin-top: 0.2459016393vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__optin input {
    margin-top: 0.6vw;
  }
}
.reform-sim .mailform__policy {
  color: var(--rs-main-deep);
  text-decoration: underline;
}
.reform-sim .mailform__linehint {
  margin: 0;
  font-size: 11.5px;
  line-height: 1.7;
  color: var(--rs-gray-800);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__linehint {
    font-size: 0.943vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__linehint {
    font-size: 2.933vw;
  }
}
.reform-sim .mailform__linehint[hidden] {
  display: none;
}
.reform-sim .mailform__linehint strong {
  font-weight: 800;
  color: var(--rs-text);
}
.reform-sim .mailform__submit {
  position: relative;
  overflow: hidden;
  width: 100%;
  border: none;
  border-radius: var(--rs-radius-pill);
  background: var(--rs-main);
  color: var(--rs-white);
  font-weight: 800;
  font-size: 14px;
  padding-top: 13px;
  padding-bottom: 13px;
  cursor: pointer;
  transition: 0.12s;
  /* LINEを選んだときはこのボタンがそのままLINEを開く。
     色はLINEのデザインガイドの指定（通常 #06C755／ホバー #05B34D） */
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__submit {
    font-size: 1.148vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__submit {
    font-size: 3.733vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__submit {
    padding-top: 1.0655737705vw;
    padding-bottom: 1.0655737705vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__submit {
    padding-top: 2.6vw;
    padding-bottom: 2.6vw;
  }
}
.reform-sim .mailform__submit:hover {
  background: var(--rs-main-deep);
}
.reform-sim .mailform__submit--line {
  background: #06c755;
}
.reform-sim .mailform__submit--line:hover {
  background: #05b34d;
}
.reform-sim .mailform__submit:disabled {
  background: var(--rs-gray-400);
  cursor: not-allowed;
  box-shadow: none;
}
.reform-sim .mailform__submit.is-ready {
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.22);
}
.reform-sim .mailform__submit.is-ready::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -40%;
  width: 40%;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.55) 50%, rgba(255, 255, 255, 0) 100%);
  transform: skewX(-20deg);
  animation: rs-shine 3.6s ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .reform-sim .mailform__submit.is-ready::after {
    animation: none;
    display: none;
  }
}
.reform-sim .mailform__msg {
  font-size: 12.5px;
  line-height: 1.6;
  min-height: 1em;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__msg {
    font-size: 1.025vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__msg {
    font-size: 3.333vw;
  }
}
.reform-sim .mailform__msg.is-ok {
  color: var(--rs-main-deep);
  font-weight: 700;
}
.reform-sim .mailform__msg.is-error {
  color: var(--rs-error);
  font-weight: 700;
}
.reform-sim .mailform__hp {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.reform-sim .mailform__detail {
  border: 1.5px solid var(--rs-gray-300);
  border-radius: calc(10px * var(--rs-radius-scale));
  background: var(--rs-base);
  overflow: hidden;
}
.reform-sim .mailform__detail-summary {
  cursor: pointer;
  list-style: none;
  font-weight: 800;
  font-size: 13px;
  padding-top: 12px;
  padding-bottom: 12px;
  padding-left: 12px;
  padding-right: 12px;
  color: var(--rs-main-deep);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__detail-summary {
    font-size: 1.066vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__detail-summary {
    font-size: 3.467vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__detail-summary {
    padding-top: 0.9836065574vw;
    padding-bottom: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__detail-summary {
    padding-top: 2.4vw;
    padding-bottom: 2.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__detail-summary {
    padding-left: 0.9836065574vw;
    padding-right: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__detail-summary {
    padding-left: 2.4vw;
    padding-right: 2.4vw;
  }
}
.reform-sim .mailform__detail-summary::-webkit-details-marker {
  display: none;
}
.reform-sim .mailform__detail-summary::after {
  content: "＋";
  float: right;
  font-weight: 700;
}
.reform-sim .mailform__detail[open] .reform-sim .mailform__detail-summary::after {
  content: "－";
}
.reform-sim .mailform__detail-body {
  display: grid;
  gap: 12px;
  padding-left: 12px;
  padding-right: 12px;
  padding-bottom: 12px;
  border-top: 1px solid var(--rs-gray-300);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__detail-body {
    gap: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__detail-body {
    gap: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__detail-body {
    padding-left: 0.9836065574vw;
    padding-right: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__detail-body {
    padding-left: 2.4vw;
    padding-right: 2.4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__detail-body {
    padding-bottom: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__detail-body {
    padding-bottom: 2.4vw;
  }
}
.reform-sim .mailform__detail-lead {
  font-size: 12px;
  line-height: 1.6;
  color: var(--rs-gray-800);
  margin: 0;
  margin-top: 8px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__detail-lead {
    font-size: 0.984vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__detail-lead {
    font-size: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__detail-lead {
    margin-top: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__detail-lead {
    margin-top: 1.6vw;
  }
}
.reform-sim .mailform__wants {
  margin: 0;
  padding: 0;
  border: none;
  display: grid;
  gap: 8px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__wants {
    gap: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__wants {
    gap: 2.1333333333vw;
  }
}
.reform-sim .mailform__want {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 12.5px;
  line-height: 1.6;
  cursor: pointer;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__want {
    gap: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__want {
    gap: 2.1333333333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__want {
    font-size: 1.025vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__want {
    font-size: 3.333vw;
  }
}
.reform-sim .mailform__want input {
  width: 13px;
  height: 13px;
  margin-top: 3px;
  flex: none;
}
.reform-sim .mailform__want[hidden] {
  display: none;
}
.reform-sim .mailform__want--line {
  padding-top: 12px;
  border-top: 1px solid var(--rs-gray-300);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__want--line {
    padding-top: 0.9836065574vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__want--line {
    padding-top: 2.4vw;
  }
}
.reform-sim .mailform__want-note {
  display: block;
  color: var(--rs-gray-700);
  font-size: 11px;
  margin-top: 2px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__want-note {
    font-size: 0.902vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .mailform__want-note {
    font-size: 2.8vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .mailform__want-note {
    margin-top: 0.1639344262vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .mailform__want-note {
    margin-top: 0.4vw;
  }
}
.reform-sim .maildone {
  display: grid;
  gap: 20px;
  /* 緑はLINEのデザインガイドの指定（通常 #06C755／ホバー #05B34D）。
     配色設定の対象にせず、改変しないでおく */
  /* 送信と同時にLINEが開いた方向け。大きな緑ボタンは出さず、テキストリンクだけ残す */
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone {
    gap: 1.6393442623vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .maildone {
    gap: 5.3333333333vw;
  }
}
.reform-sim .maildone[hidden] {
  display: none;
}
.reform-sim .maildone__msg {
  margin: 0;
  font-size: 13px;
  line-height: 1.8;
  color: var(--rs-text);
  white-space: pre-line;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__msg {
    font-size: 1.066vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .maildone__msg {
    font-size: 3.467vw;
  }
}
.reform-sim .maildone__line {
  display: grid;
  gap: 10px;
  padding-top: 16px;
  padding-bottom: 16px;
  padding-left: 16px;
  padding-right: 16px;
  border: 1.5px solid var(--rs-gray-300);
  border-radius: calc(12px * var(--rs-radius-scale));
  background: var(--rs-white);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__line {
    gap: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .maildone__line {
    gap: 2.6666666667vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__line {
    padding-top: 1.3114754098vw;
    padding-bottom: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .maildone__line {
    padding-top: 3.2vw;
    padding-bottom: 3.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__line {
    padding-left: 1.3114754098vw;
    padding-right: 1.3114754098vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .maildone__line {
    padding-left: 3.2vw;
    padding-right: 3.2vw;
  }
}
.reform-sim .maildone__line[hidden] {
  display: none;
}
.reform-sim .maildone__line-lead {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  color: var(--rs-text);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__line-lead {
    font-size: 1.066vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .maildone__line-lead {
    font-size: 3.467vw;
  }
}
.reform-sim .maildone__line-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  border: 1.5px solid #06c755;
  border-radius: var(--rs-radius-pill);
  background: #06c755;
  color: var(--rs-white);
  font-weight: 800;
  font-size: 14px;
  padding-top: 13px;
  padding-bottom: 13px;
  text-decoration: none;
  transition: 0.12s;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__line-btn {
    gap: 0.6557377049vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .maildone__line-btn {
    gap: 2.1333333333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__line-btn {
    font-size: 1.148vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .maildone__line-btn {
    font-size: 3.733vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__line-btn {
    padding-top: 1.0655737705vw;
    padding-bottom: 1.0655737705vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .maildone__line-btn {
    padding-top: 2.6vw;
    padding-bottom: 2.6vw;
  }
}
.reform-sim .maildone__line-btn:hover {
  background: #05b34d;
  border-color: #05b34d;
}
.reform-sim .maildone__line-icon {
  flex: none;
  width: 20px;
  line-height: 1;
}
.reform-sim .maildone__line-icon svg {
  display: block;
  width: 100%;
  height: auto;
}
.reform-sim .maildone__line-note {
  margin: 0;
  font-size: 11px;
  line-height: 1.7;
  color: var(--rs-gray-800);
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__line-note {
    font-size: 0.902vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .maildone__line-note {
    font-size: 2.933vw;
  }
}
.reform-sim .maildone__line-note[hidden] {
  display: none;
}
.reform-sim .maildone__line--sub {
  padding: 0;
  border: none;
  background: transparent;
  justify-items: center;
  margin-top: 4px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__line--sub {
    margin-top: 0.3278688525vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .maildone__line--sub {
    margin-top: 0.8vw;
  }
}
.reform-sim .maildone__line--sub .maildone__line-btn {
  width: auto;
  gap: 0;
  border: none;
  background: transparent;
  color: var(--rs-gray-700);
  font-weight: 600;
  font-size: 11.5px;
  padding-top: 0px;
  padding-bottom: 0px;
  text-decoration: underline;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__line--sub .maildone__line-btn {
    font-size: 0.943vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .maildone__line--sub .maildone__line-btn {
    font-size: 2.933vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__line--sub .maildone__line-btn {
    padding-top: 0vw;
    padding-bottom: 0vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .maildone__line--sub .maildone__line-btn {
    padding-top: 0vw;
    padding-bottom: 0vw;
  }
}
.reform-sim .maildone__line--sub .maildone__line-btn:hover {
  background: transparent;
  border-color: transparent;
  color: var(--rs-text);
}
.reform-sim .maildone__line--sub .maildone__line-icon {
  display: none;
}
.reform-sim .maildone__actions {
  display: grid;
  gap: 10px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__actions {
    gap: 0.8196721311vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .maildone__actions {
    gap: 2.6666666667vw;
  }
}
.reform-sim .maildone__btn {
  width: 100%;
  border: 1.5px solid var(--rs-main);
  border-radius: var(--rs-radius-pill);
  background: var(--rs-main);
  color: var(--rs-white);
  font-weight: 800;
  font-size: 14px;
  padding-top: 13px;
  padding-bottom: 13px;
  cursor: pointer;
  transition: 0.12s;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__btn {
    font-size: 1.148vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .maildone__btn {
    font-size: 3.733vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .maildone__btn {
    padding-top: 1.0655737705vw;
    padding-bottom: 1.0655737705vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .maildone__btn {
    padding-top: 2.6vw;
    padding-bottom: 2.6vw;
  }
}
.reform-sim .maildone__btn:hover {
  background: var(--rs-main-deep);
  border-color: var(--rs-main-deep);
}
.reform-sim .maildone__btn--sub {
  border-color: var(--rs-gray-300);
  background: var(--rs-white);
  color: var(--rs-gray-800);
}
.reform-sim .maildone__btn--sub:hover {
  border-color: var(--rs-gray-700);
  background: var(--rs-gray-100);
  color: var(--rs-text);
}
.reform-sim .appfoot {
  text-align: center;
  font-size: 11px;
  color: var(--rs-gray-700);
  margin-top: 34px;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .appfoot {
    font-size: 0.902vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .appfoot {
    font-size: 2.933vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .appfoot {
    margin-top: 2.7868852459vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .appfoot {
    margin-top: 6.8vw;
  }
}
.reform-sim .appclear {
  display: block;
  width: 100%;
  max-width: 320px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
  padding-top: 11px;
  padding-bottom: 11px;
  padding-left: 18px;
  padding-right: 18px;
  border: 1.5px solid var(--rs-gray-300);
  border-radius: var(--rs-radius-pill);
  background: var(--rs-white);
  color: var(--rs-gray-700);
  font-size: 12px;
  font-weight: 700;
  text-align: center;
  cursor: pointer;
  transition: 0.12s;
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .appclear {
    max-width: 26.2295081967vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .appclear {
    max-width: 85.3333333333vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .appclear {
    margin-top: 1.6393442623vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .appclear {
    margin-top: 4vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .appclear {
    padding-top: 0.9016393443vw;
    padding-bottom: 0.9016393443vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .appclear {
    padding-top: 2.2vw;
    padding-bottom: 2.2vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .appclear {
    padding-left: 1.4754098361vw;
    padding-right: 1.4754098361vw;
  }
}
@media screen and (max-width: 959px) {
  .reform-sim .appclear {
    padding-left: 3.6vw;
    padding-right: 3.6vw;
  }
}
@media (max-width: 1220px) and (min-width: 960px) {
  .reform-sim .appclear {
    font-size: 0.984vw;
  }
}
@media (max-width: 959px) {
  .reform-sim .appclear {
    font-size: 3.2vw;
  }
}
.reform-sim .appclear:hover {
  border-color: var(--rs-gray-700);
  color: var(--rs-text);
  background: var(--rs-gray-100);
}
@keyframes rs-shine {
  0% {
    left: -40%;
  }
  30% {
    left: 140%;
  }
  100% {
    left: 140%;
  }
}
@keyframes rs-float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-4px);
  }
}
@keyframes rs-float-center {
  0%, 100% {
    transform: translateX(-50%) translateY(0);
  }
  50% {
    transform: translateX(-50%) translateY(-4px);
  }
}
