#mainContents .container > .contentsWrapper {
  max-width: none;
}

#main_contents {
  max-width: none;
}
#main_contents * {
  font-family: "Noto Sans JP", sans-serif;
  color: #231F20;
}

@media screen and (max-width: 1050px) and (min-width: 751px) {
  #mainContents.haveSide .container > .contentsWrapper {
    max-width: none;
    padding: 0;
  }
}
@media screen and (min-width: 768px) {
  #main_contents .inner {
    margin-inline: auto;
    width: 80vw;
  }
  #main_contents .obj {
    opacity: 0;
    scale: 0.5;
    -webkit-transition: scale 0.5s cubic-bezier(0.06, 1.22, 0.69, 1.43);
    transition: scale 0.5s cubic-bezier(0.06, 1.22, 0.69, 1.43);
  }
  #main_contents .obj.js-appear {
    opacity: 1;
    scale: 1;
  }
  #main_contents .obj02 {
    -webkit-animation: laggy 2000ms 1500ms infinite step-end;
            animation: laggy 2000ms 1500ms infinite step-end;
  }
  @-webkit-keyframes laggy {
    0% {
      rotate: z 2deg;
    }
    10% {
      rotate: z -2deg;
    }
    20% {
      rotate: z 2deg;
    }
    30% {
      rotate: z 0deg;
    }
    100% {
      rotate: z 0deg;
    }
  }
  @keyframes laggy {
    0% {
      rotate: z 2deg;
    }
    10% {
      rotate: z -2deg;
    }
    20% {
      rotate: z 2deg;
    }
    30% {
      rotate: z 0deg;
    }
    100% {
      rotate: z 0deg;
    }
  }
  #main_contents .btn {
    position: relative;
    cursor: pointer;
    display: grid;
    place-content: center;
    width: var(--btn-width);
    height: var(--btn-height);
  }
  #main_contents .btn:before {
    content: "";
    position: absolute;
    top: 0.7444168734vw;
    left: var(--bg-position-l);
    width: 99%;
    height: calc(100% - var(--border-width) * 2);
    border: 0.2vw solid #000;
    border-radius: var(--btn-radius);
    background-color: #00A9B8;
  }
  #main_contents .btn:hover {
    top: 0.4962779156vw;
  }
  #main_contents .btn:hover::before {
    top: 0;
  }
  #main_contents .btn.js-open {
    top: 0.4962779156vw;
  }
  #main_contents .btn.js-open::before {
    top: 0;
  }
  #main_contents .btn .btn__link {
    display: grid;
    place-content: center;
    position: relative;
    padding: 0 0 0.1240694789vw 0;
    width: var(--btn-width);
    height: var(--btn-height);
    border: var(--border-width) solid #000;
    border-radius: var(--btn-radius);
    background-color: #FFDF00;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: var(--btn-fontsize);
    letter-spacing: 0.26em;
    cursor: pointer;
  }
  #main_contents .btn--square {
    --border-width: 0.24vw;
    --btn-width: 27.64vw;
    --btn-height: 5.69vw;
    --btn-radius: 1vw;
    --btn-fontsize: 1.52vw;
    --bg-position: 0.9vw;
    --bg-position-l: -0.2vw;
  }
  #main_contents .btn--square .btn__link::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 2.2332506203vw;
    translate: 0 -50%;
    width: 0.9925558313vw;
    height: 0.1861042184vw;
    background-color: #000;
  }
  #main_contents .btn--square .btn__link::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 2.2332506203vw;
    translate: 0 -50%;
    rotate: 90deg;
    width: 0.9925558313vw;
    height: 0.1861042184vw;
    background-color: #000;
    -webkit-transition: rotate 0.3s;
    transition: rotate 0.3s;
  }
  #main_contents .btn--square.js-open .btn__link::after {
    rotate: 0deg;
  }
  #main_contents .btn--round {
    --border-width: 0.186vw;
    --btn-width: 17.59vw;
    --btn-height: 4.56vw;
    --btn-radius: 6.61vw;
    --btn-fontsize: 1.32vw;
    --bg-position: 0.7vw;
    --bg-position-l: -0.1vw;
  }
  #main_contents .btn--round .btn__link {
    color: #231F20;
  }
  #main_contents .btn--round .btn__link:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  #main_contents .btn--round .btn__link::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 1.8610421836vw;
    translate: 0 -50%;
    rotate: 45deg;
    width: 0.4962779156vw;
    height: 0.4962779156vw;
    border-top: 0.2vw solid #000;
    border-right: 0.2vw solid #000;
  }
  .pageTop {
    position: fixed;
    bottom: 20px !important;
    right: 20px;
    z-index: 98;
  }
  .pageTop a {
    width: 3.9682539683vw !important;
    height: 3.9682539683vw !important;
  }
  .pageTop img {
    width: 1.5873015873vw !important;
  }
}
@media screen and (max-width: 767px) {
  .sp_btn, .pageTop, #side .sidebar {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.5s, visibility 0.5s;
    transition: opacity 0.5s, visibility 0.5s;
  }
  .sp_btn.js-appear, .pageTop.js-appear, #side .sidebar.js-appear {
    opacity: 1;
    visibility: visible;
  }
  #side .sidebar {
    background: none;
  }
  #main_contents .inner {
    margin-inline: auto;
    width: 90.2564102564vw;
  }
  #main_contents .obj {
    opacity: 0;
    scale: 0.5;
    -webkit-transition: scale 0.5s cubic-bezier(0.06, 1.22, 0.69, 1.43);
    transition: scale 0.5s cubic-bezier(0.06, 1.22, 0.69, 1.43);
  }
  #main_contents .obj.js-appear {
    opacity: 1;
    scale: 1;
  }
  #main_contents .obj02 {
    -webkit-animation: laggy 2000ms 1500ms infinite step-end;
            animation: laggy 2000ms 1500ms infinite step-end;
  }
  @-webkit-keyframes laggy {
    0% {
      rotate: z 2deg;
    }
    10% {
      rotate: z -2deg;
    }
    20% {
      rotate: z 2deg;
    }
    30% {
      rotate: z 0deg;
    }
    100% {
      rotate: z 0deg;
    }
  }
  @keyframes laggy {
    0% {
      rotate: z 2deg;
    }
    10% {
      rotate: z -2deg;
    }
    20% {
      rotate: z 2deg;
    }
    30% {
      rotate: z 0deg;
    }
    100% {
      rotate: z 0deg;
    }
  }
  #main_contents .btn {
    position: relative;
    cursor: pointer;
    place-content: center;
    width: var(--btn-width);
    height: var(--btn-height);
  }
  #main_contents .btn:before {
    content: "";
    position: absolute;
    top: var(--bg-position);
    width: 100%;
    height: calc(100% - var(--border-width) * 2);
    border: var(--border-width) solid #000;
    border-radius: var(--btn-radius);
    background-color: #00A9B8;
  }
  #main_contents .btn.js-open {
    top: 2.0512820513vw;
  }
  #main_contents .btn.js-open::before {
    top: 0;
  }
  #main_contents .btn .btn__link {
    display: grid;
    place-content: center;
    position: relative;
    width: var(--btn-width);
    height: var(--btn-height);
    border: var(--border-width) solid #000;
    border-radius: var(--btn-radius);
    background-color: #FFDF00;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 900;
    font-size: var(--btn-fontsize);
    letter-spacing: 0.21em;
    cursor: pointer;
  }
  #main_contents .btn--square {
    --border-width: 3px;
    --btn-width: 66.67vw;
    --btn-height: 16.92vw;
    --btn-radius: 3.85vw;
    --btn-fontsize: 4.10vw;
    --bg-position: 2.5vw;
  }
  #main_contents .btn--square .btn__link::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 6.6666666667vw;
    translate: 0 -50%;
    width: 3.5897435897vw;
    height: 0.641025641vw;
    background-color: #000;
  }
  #main_contents .btn--square .btn__link::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 6.6666666667vw;
    translate: 0 -50%;
    rotate: 90deg;
    width: 3.5897435897vw;
    height: 0.641025641vw;
    background-color: #000;
  }
  #main_contents .btn--round {
    --border-width: 2px;
    --btn-width: 46.15vw;
    --btn-height: 12.56vw;
    --btn-radius: 12.56vw;
    --btn-fontsize: 3.59vw;
    --bg-position: 2vw;
  }
  #main_contents .btn--round .btn__link {
    padding: 0;
    color: #231F20;
  }
  #main_contents .btn--round .btn__link:hover {
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  #main_contents .btn--round .btn__link::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 5.641025641vw;
    translate: 0 -50%;
    rotate: 45deg;
    width: 1.7948717949vw;
    height: 1.7948717949vw;
    border-top: 0.5128205128vw solid #000;
    border-right: 0.5128205128vw solid #000;
  }
  .pageTop {
    bottom: 18% !important;
  }
}
@media screen and (min-width: 768px) {
  .tokuten_ticket__header {
    padding: 1.1904761905vw 2.4470899471vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.5291005291vw;
  }
  .tokuten_ticket__header img {
    display: block;
    height: 2.380952381vw;
    width: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #main_contents .intro {
    position: relative;
    background-color: #f6f6f6;
  }
  #main_contents .intro__logo {
    position: absolute;
    top: 1.1243386243vw;
    left: 2.380952381vw;
    width: 10.2513227513vw;
  }
  #main_contents .intro__logo img {
    width: 100%;
  }
  #main_contents .intro__bnr {
    margin-bottom: 5.291005291vw;
    margin-inline: auto;
    width: 41.6666666667vw;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main_contents .intro__bnr:hover {
    opacity: 0.8;
  }
  #main_contents .intro__bnr img {
    width: 100%;
  }
  #main_contents .logo-list {
    padding: 1.3888888889vw 2.4470899471vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.5291005291vw;
    position: absolute;
  }
  #main_contents .logo-list__img {
    display: block;
    height: 2.5132275132vw;
    width: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #main_contents .kv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
    aspect-ratio: 1515/700;
    padding-left: 3vw;
    padding-bottom: 3.3068783069vw;
    overflow: hidden;
  }
  #main_contents .kv__subttl {
    display: grid;
    place-content: center;
    width: 26.2566137566vw;
    height: 3.7037037037vw;
    border-radius: 6.3492063492vw;
    background-color: #FFDF00;
    font-weight: 900;
    font-size: 1.455026455vw;
    letter-spacing: 0.08em;
    position: relative;
    top: -0.5291005291vw;
    padding: 0 0 0 0.7275132275vw;
    margin-bottom: 1.3227513228vw;
  }
  #main_contents .kv__mainttl {
    margin-top: 1.3227513228vw;
    margin: 0 auto;
  }
  #main_contents .kv__mainttl__text {
    width: 40.7407407407vw;
  }
  #main_contents .kv__mainttl__logo {
    margin-top: 1.7195767196vw;
    margin-inline: auto;
    width: 50.9259259259vw;
  }
  #main_contents .kv__movie {
    padding-top: 2.8439153439vw;
    margin-left: -1.3227513228vw;
    width: 42.9894179894vw;
  }
  #main_contents .kv__movie img {
    position: absolute;
    width: 13.3597883598vw;
    right: 7.2751322751vw;
    top: 1.9841269841vw;
  }
  #main_contents .lead {
    position: relative;
    padding-bottom: 8.3994708995vw;
  }
  #main_contents .lead__obj {
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
  }
  #main_contents .lead__obj--n01 {
    top: 0vw;
    right: 2.7116402116vw;
    width: 20.6349206349vw;
    height: 25.5291005291vw;
    background-image: url("../img/ill_lead_01_img.png");
  }
  #main_contents .lead__obj--n02 {
    bottom: -7.9365079365vw;
    width: 33.5264550265vw;
    height: 34.9867724868vw;
    background-image: url("../img/ill_lead_02_img.png");
  }
  #main_contents .lead:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2.2486772487vw;
    background-image: url("../img/ill_line.png");
    background-size: contain;
    background-repeat: repeat-x;
    z-index: 1;
  }
  #main_contents .lead__inner {
    position: relative;
    padding-block: 4.8941798942vw 5.8201058201vw;
    border-radius: 33.0687830688vw;
    background-color: #fff;
  }
  #main_contents .lead__ttl {
    text-align: center;
    padding-left: 0.9920634921vw;
  }
  #main_contents .lead__mainttl {
    width: 35.8465608466vw;
    margin: 0 auto;
  }
  #main_contents .lead__subttl {
    margin-top: 1.3227513228vw;
    font-weight: 900;
    font-size: 2.1825396825vw;
    letter-spacing: 0.18em;
  }
  #main_contents .lead__text {
    margin-top: 2.2vw;
    font-weight: 700;
    font-size: 1.3888888889vw;
    line-height: 2.2;
    letter-spacing: 0.12em;
    text-align: center;
    padding-left: 1.1904761905vw;
  }
  #main_contents .lead__note {
    margin-top: 1.3227513228vw;
    font-weight: 500;
    font-size: 0.9259259259vw;
    letter-spacing: 0.2em;
    text-align: center;
  }
  #main_contents .lead .point-banner {
    background: #FBF7D8;
    border-radius: 2.380952381vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 48.9417989418vw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-inline: auto;
    position: relative;
    margin-top: 27px;
    padding: 1.5vw 1.7195767196vw 1.5vw 2.5vw;
  }
  #main_contents .lead .point-banner__inner {
    display: grid;
    gap: 0.3968253968vw;
  }
  #main_contents .lead .point-banner__lead {
    margin: 0;
    font-weight: 700;
    font-size: 1.1904761905vw;
    letter-spacing: 0.17em;
  }
  #main_contents .lead .point-banner__catch {
    margin-top: 0.1984126984vw;
    font-weight: 800;
    font-size: 1.7195767196vw;
    letter-spacing: 0.07em;
    line-height: 1.25;
  }
  #main_contents .lead .point-banner__catch span {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(55%, transparent), color-stop(55%, #FFDF00));
    background: linear-gradient(transparent 55%, #FFDF00 55%);
    padding: 0 0.12em;
  }
  #main_contents .lead .point-banner__figs {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    position: relative;
    top: 0.2645502646vw;
  }
  #main_contents .lead .point-banner .ico {
    display: block;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #main_contents .lead .point-banner .ico-jre {
    width: 6.1507936508vw;
    position: relative;
    top: -0.3306878307vw;
    left: -0.9259259259vw;
  }
  #main_contents .lead .point-banner .ico-arrow {
    width: 1.3227513228vw;
    position: relative;
    top: -0.3968253968vw;
  }
  #main_contents .lead .point-banner .ico-phone {
    width: 8.0687830688vw;
  }
}
@media screen and (max-width: 767px) {
  .tokuten_ticket__header {
    padding: 3.5897435897vw 5.1282051282vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2.0512820513vw;
  }
  .tokuten_ticket__header img {
    display: block;
    height: 6.6666666667vw;
    width: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #main_contents .intro {
    position: relative;
    background-color: #f6f6f6;
  }
  #main_contents .intro__logo {
    position: absolute;
    top: 3.0769230769vw;
    left: 4.1025641026vw;
    width: 24.358974359vw;
  }
  #main_contents .intro__logo img {
    width: 100%;
  }
  #main_contents .intro__bnr {
    margin-top: 5.1282051282vw;
    margin-bottom: 10.2564102564vw;
    margin-inline: auto;
    width: 96.1538461538vw;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main_contents .intro__bnr:hover {
    opacity: 0.8;
  }
  #main_contents .intro__bnr img {
    width: 100%;
  }
  #main_contents .logo-list {
    padding: 3.5897435897vw 5.1282051282vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2.0512820513vw;
  }
  #main_contents .logo-list__img {
    display: block;
    height: 7.4358974359vw;
    width: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #main_contents .kv {
    overflow: hidden;
    position: relative;
    margin-bottom: -3.8461538462vw;
  }
  #main_contents .kv__ttl {
    padding: 2.5641025641vw 0;
  }
  #main_contents .kv__subttl {
    display: grid;
    place-content: center;
    margin-top: 2.1641025641vw;
    margin-inline: auto;
    padding-left: 2.9769230769vw;
    width: 75.1282051282vw;
    height: 10.0051282051vw;
    border-radius: 25.9820512821vw;
    background-color: #FFDF00;
    font-weight: 900;
    font-size: 3.8461538462vw;
    letter-spacing: 0.12em;
  }
  #main_contents .kv__mainttl {
    margin-top: 5.1282051282vw;
  }
  #main_contents .kv__mainttl__text {
    width: 53.8461538462vw;
    margin-inline: auto;
  }
  #main_contents .kv__mainttl__logo {
    margin-top: 3.3333333333vw;
    margin-inline: auto;
    width: 92.1641025641vw;
  }
  #main_contents .kv__movie img {
    position: absolute;
    width: 32.3076923077vw;
    right: 11.7948717949vw;
    top: 52.5641025641vw;
  }
  #main_contents .lead {
    position: relative;
    padding-bottom: 42.3076923077vw;
    overflow: hidden;
  }
  #main_contents .lead__obj {
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
  }
  #main_contents .lead__obj--n01 {
    bottom: 35.1282051282vw;
    right: -1.0256410256vw;
    width: 35.6384615385vw;
    height: 35.7461538462vw;
    background-image: url("../img/ill_lead_01_img.png");
  }
  #main_contents .lead__obj--n02 {
    bottom: 0vw;
    width: 60.4692307692vw;
    height: 55.4897435897vw;
    background-image: url("../img/ill_lead_02_sp_img.png");
  }
  #main_contents .lead:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 6.6666666667vw;
    background-image: url("../img/ill_line.png");
    background-size: cover;
    background-repeat: repeat-x;
    z-index: 1;
  }
  #main_contents .lead__inner {
    position: relative;
    padding: 15.3846153846vw 6.9230769231vw 18.9743589744vw;
    border-radius: 20.5128205128vw;
    background-color: #fff;
  }
  #main_contents .lead__ttl {
    text-align: center;
    padding-left: 3.8461538462vw;
  }
  #main_contents .lead__mainttl {
    width: 66.1564102564vw;
  }
  #main_contents .lead__subttl {
    margin-top: 0.5128205128vw;
    font-weight: 900;
    font-size: 5.1615384615vw;
    letter-spacing: 0.18em;
    display: block;
    position: relative;
    right: 5.641025641vw;
  }
  #main_contents .lead__text {
    margin-top: 5.3846153846vw;
    font-weight: 700;
    font-size: 4.6153846154vw;
    line-height: 2.05;
    letter-spacing: 0.05em;
    padding: 0 3.8461538462vw;
    text-align: justify;
  }
  #main_contents .lead__note {
    margin-top: 5.1282051282vw;
    font-weight: 500;
    font-size: 3.5897435897vw;
    letter-spacing: 0.2em;
    text-align: center;
  }
  #main_contents .lead .point-banner {
    background: #FBF7D8;
    border-radius: 9.2307692308vw;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-top: 6.9230769231vw;
    padding: 8.2051282051vw 8.2051282051vw 6.5vw 8.2051282051vw;
    text-align: center;
  }
  #main_contents .lead .point-banner__inner {
    display: grid;
    gap: 1.5384615385vw;
  }
  #main_contents .lead .point-banner__lead {
    margin: 0;
    font-weight: 700;
    font-size: 3.8461538462vw;
    letter-spacing: 0.1em;
  }
  #main_contents .lead .point-banner__catch {
    margin-top: 0.7692307692vw;
    font-weight: 800;
    font-size: 5.641025641vw;
    letter-spacing: 0.07em;
    line-height: 1.4;
    text-align: center;
  }
  #main_contents .lead .point-banner__catch span {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(55%, transparent), color-stop(55%, #FFDF00));
    background: linear-gradient(transparent 55%, #FFDF00 55%);
    padding: 0 0.12em;
  }
  #main_contents .lead .point-banner__figs {
    margin-top: 5.3846153846vw;
    position: relative;
    left: 1.7948717949vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #main_contents .lead .point-banner .ico {
    display: block;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
  #main_contents .lead .point-banner .ico-jre {
    width: 18.7051282051vw;
    position: relative;
    top: -1.2820512821vw;
    left: -3.5897435897vw;
  }
  #main_contents .lead .point-banner .ico-arrow {
    width: 5.0641025641vw;
    position: relative;
    top: -1.5384615385vw;
  }
  #main_contents .lead .point-banner .ico-phone {
    width: 24.6153846154vw;
  }
}
@media screen and (min-width: 768px) {
  #main_contents .contents {
    position: relative;
    padding-bottom: 7.8784119107vw;
    background-color: #BEE9ED;
    overflow: hidden;
    background-image: url("../img/bg_pc.png");
    background-size: cover;
  }
  #main_contents .contents::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2.1091811414vw;
    background-image: url("../img/ill_line.png");
    background-size: contain;
    background-repeat: repeat-x;
    z-index: 1;
  }
  #main_contents .contents .obj-wrapper {
    position: relative;
  }
  #main_contents .contents .anchor {
    position: relative;
    padding-top: 6.4516129032vw;
    padding-bottom: 2.6054590571vw;
  }
  #main_contents .contents .anchor__btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 4.7146401985vw;
       -moz-column-gap: 4.7146401985vw;
            column-gap: 4.7146401985vw;
    font-weight: 900;
    padding-right: 10px;
  }
  #main_contents .contents .anchor__btns .btn:before {
    width: 98.5%;
    left: 0;
  }
  #main_contents .contents .anchor__btns .btn--round {
    --btn-width: pcvw(420);
    --btn-height: 5.29vw;
    --btn-fontsize: pcvw(22);
    --border-width: 0.2vw;
  }
  #main_contents .contents .anchor__btns .btn img.ic_shinkansen {
    width: 3.7220843672vw;
    position: relative;
    left: -1.6749379653vw;
  }
  #main_contents .contents .anchor__btns .btn img.ic_exp {
    width: 2.8535980149vw;
    position: relative;
    left: -0.9925558313vw;
  }
  #main_contents .contents .anchor__btns .btn__link {
    grid-auto-flow: column;
    place-items: center;
    width: 26.0545905707vw;
    height: 5.29vw;
    font-size: 1.364764268vw;
    border-width: 0.2vw;
  }
  #main_contents .contents .anchor__btns .btn__link:before {
    rotate: 135deg;
    border-top: 0.2vw solid #000;
    border-right: 0.2vw solid #000;
  }
  #main_contents .contents__obj {
    position: absolute;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 0;
  }
  #main_contents .contents__obj--rail--n01 {
    top: 10vw;
    width: 99vw;
    height: 78vw;
    background-image: url("../img/ill_contents_line_01_img.png");
  }
  #main_contents .contents__obj--rail--n02 {
    top: 89vw;
    width: 100vw;
    height: 60vw;
    background-image: url("../img/ill_contents_line_02_img.png");
  }
  #main_contents .contents__obj--rail--n03 {
    top: 138vw;
    width: 100vw;
    height: 96vw;
    background-image: url("../img/ill_contents_line_03_img.png");
  }
  #main_contents .contents__obj--train--n01 {
    top: 44.3548387097vw;
    left: -3.5980148883vw;
    width: 8.064516129vw;
    height: 8.064516129vw;
    background-image: url("../img/ill_contents_02_img.png");
    -webkit-animation-delay: 0.5s;
            animation-delay: 0.5s;
  }
  #main_contents .contents__obj--train--n02 {
    top: 84.1191066998vw;
    right: -3.5359801489vw;
    width: 8.064516129vw;
    height: 8.064516129vw;
    background-image: url("../img/ill_contents_03_img.png");
  }
  #main_contents .contents__obj--train--n03 {
    top: 14.2679900744vw;
    left: -13.523573201vw;
    width: 8.064516129vw;
    height: 8.064516129vw;
    background-image: url("../img/ill_contents_05_img.png");
  }
  #main_contents .contents__obj--train--n04 {
    top: 22.1464019851vw;
    right: -13.6476426799vw;
    width: 8.064516129vw;
    height: 8.064516129vw;
    background-image: url("../img/ill_contents_06_img.png");
    -webkit-animation-delay: 0.1s;
            animation-delay: 0.1s;
  }
  #main_contents .contents__obj--ill--n01 {
    top: -9.7394540943vw;
    right: -1.2406947891vw;
    width: 25.682382134vw;
  }
  #main_contents .contents__obj--ill--n02 {
    top: -4.8387096774vw;
    left: -6.5vw;
    width: 23.5421836228vw;
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
  #main_contents .contents__obj--ill--n03 {
    top: 23.9454094293vw;
    left: -5.8933002481vw;
    width: 15.3846153846vw;
    height: 15.3846153846vw;
    background-image: url("../img/ill_contents_08_img.png");
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
  #main_contents .contents__obj--ill--n04 {
    bottom: -4.094292804vw;
    right: -3.7220843672vw;
    width: 12.5930521092vw;
    height: 17.1929280397vw;
    background-image: url("../img/ill_contents_09_img.png");
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
  #main_contents .contents__obj--ill--n05 {
    top: 13.523573201vw;
    left: -4.2183622829vw;
    width: 15.2605459057vw;
    height: 13.6476426799vw;
    background-image: url("../img/ill_contents_10_img.png");
  }
  #main_contents .contents__obj--ill--n06 {
    top: 24.1935483871vw;
    left: -3.2258064516vw;
    width: 8.064516129vw;
    height: 8.064516129vw;
    background-image: url("../img/ill_contents_11_img.png");
    background-size: contain;
    -webkit-transform: scale(-1, -1);
            transform: scale(-1, -1);
  }
  #main_contents .contents__obj--ill--n07 {
    top: 72.0843672457vw;
    right: 0.9925558313vw;
    width: 15.2605459057vw;
    height: 13.6476426799vw;
    background-image: url("../img/ill_contents_10.png");
  }
  #main_contents .contents__obj--ill--n08 {
    top: 70.0992555831vw;
    right: 0.1861042184vw;
    width: 6.82382134vw;
    height: 6.82382134vw;
    background-image: url("../img/ill_contents_11.png");
    background-size: contain;
  }
  #main_contents .contents__obj--ill--n09 {
    top: 92.1836228288vw;
    left: -6.0794044665vw;
    width: 15.2605459057vw;
    height: 13.6476426799vw;
    background-image: url("../img/ill_contents_10.png");
    -webkit-transform: rotate(42deg);
            transform: rotate(42deg);
  }
  #main_contents .contents__obj--ill--n10 {
    top: 89.205955335vw;
    left: 1.8610421836vw;
    width: 8.064516129vw;
    height: 8.064516129vw;
    background-image: url("../img/ill_contents_11.png");
    background-size: contain;
  }
  #main_contents .contents__obj--ill--n11 {
    top: 114.0198511166vw;
    right: 1.8610421836vw;
    width: 8.064516129vw;
    height: 8.064516129vw;
    background-image: url("../img/ill_contents_11.png");
    background-size: contain;
    -webkit-transform: scaleX(-1);
            transform: scaleX(-1);
  }
  #main_contents .contents__obj--ill--n12 {
    top: 166.5012406948vw;
    right: 2.3573200993vw;
    width: 15.2605459057vw;
    height: 13.6476426799vw;
    background-image: url("../img/ill_contents_10.png");
    -webkit-transform: rotate(42deg);
            transform: rotate(42deg);
  }
  #main_contents .contents__obj--ill--n13 {
    top: 162.2828784119vw;
    right: 1.1166253102vw;
    width: 8.3126550868vw;
    height: 8.3126550868vw;
    background-image: url("../img/ill_contents_11.png");
    background-size: contain;
  }
  #main_contents .contents__obj--ill--n14 {
    top: 171.8362282878vw;
    left: -3.2258064516vw;
    width: 8.3126550868vw;
    height: 8.3126550868vw;
    background-image: url("../img/ill_contents_11.png");
    background-size: contain;
    -webkit-transform: scale(-1, -1);
            transform: scale(-1, -1);
  }
  #main_contents .contents__obj--ill--n15 {
    top: 223.6972704715vw;
    left: -6.82382134vw;
    width: 15.2605459057vw;
    height: 13.6476426799vw;
    background-image: url("../img/ill_contents_10_img.png");
    -webkit-transform: rotate(350deg);
            transform: rotate(350deg);
  }
  #main_contents .contents__obj--ill--n16 {
    top: 230.6451612903vw;
    left: 1.1166253102vw;
    width: 8.3126550868vw;
    height: 8.3126550868vw;
    background-image: url("../img/ill_contents_11_img.png");
    background-size: contain;
  }
  #main_contents .contents__obj--contents-bottom {
    bottom: 1.6749379653vw;
    right: 3vw;
    width: 19.9131513648vw;
    height: 13.0415632754vw;
    background-image: url("../img/ill_contents_07_img.png");
    z-index: 2;
  }
  #main_contents .contents__inner {
    display: grid;
    row-gap: 9vw;
  }
  #main_contents .contents .unit__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 172px;
  }
  #main_contents .contents .unit {
    position: relative;
    padding: 8vw 8.4vw;
    border-radius: 12.4069478908vw;
    background-color: #fff;
    z-index: 2;
  }
  #main_contents .contents .unit--01 .point__num {
    width: 8.4987593052vw;
    position: relative;
    top: 1.0545905707vw;
  }
  #main_contents .contents .unit--01 .exchange__badge {
    position: absolute;
    width: 8.1265508685vw;
    top: 0.5vw;
    right: -5.2109181141vw;
  }
  #main_contents .contents .unit--01 .exchange__table thead th:first-child {
    color: #fff;
  }
  #main_contents .contents .unit--01 .exchange__table thead th:nth-child(2) {
    color: #fff;
  }
  #main_contents .contents .unit--01 .exchange__table thead th:nth-child(3) {
    background: #F35C5C;
    color: #fff;
    font-weight: 600;
  }
  #main_contents .contents .unit--01 .exchange__table tbody td.fare {
    padding: 0 6.2034739454vw 0 0;
  }
  #main_contents .contents .unit--01 .exchange__table tbody td.pt {
    padding: 0 3.9702233251vw 0 0;
  }
  #main_contents .contents .unit--02 .point__num {
    width: 6.3vw;
    margin-left: 0 !important;
  }
  #main_contents .contents .unit--02 .exchange__badge {
    position: absolute;
    width: 8.1265508685vw;
    top: 0.5vw;
    right: -6.3275434243vw;
  }
  #main_contents .contents .unit--02 .exchange__table thead th:first-child {
    color: #fff;
  }
  #main_contents .contents .unit--02 .exchange__table thead th:nth-child(2) {
    color: #fff;
  }
  #main_contents .contents .unit--02 .exchange__table thead th:nth-child(3) {
    color: #fff;
  }
  #main_contents .contents .unit--02 .exchange__table thead th:nth-child(4) {
    background: #F35C5C;
    color: #fff;
    font-weight: 600;
  }
  #main_contents .contents .unit--02 .exchange__table tbody td.fare {
    padding: 0 3.9702233251vw 0 0;
  }
  #main_contents .contents .unit--02 .exchange__table tbody td.pt {
    padding: 0 2.7915632754vw 0 0;
  }
  #main_contents .contents .unit--02 .unit-last {
    position: relative;
    padding-top: 0.9vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 4.7146401985vw;
       -moz-column-gap: 4.7146401985vw;
            column-gap: 4.7146401985vw;
    font-weight: 900;
    padding-right: 0.6203473945vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn:before {
    width: 98.5%;
    left: 0;
    background-color: #00A9B8;
    height: 5.3vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn--round {
    --btn-width: pcvw(450);
    --btn-height: 5.29vw;
    --btn-fontsize: pcvw(22);
    --border-width: 0.2vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn img.ic_shinkansen {
    width: 3vw;
    position: relative;
    left: -1.6749379653vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn img.ic_exp {
    width: 2.8535980149vw;
    position: relative;
    left: -0.9925558313vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn__link {
    grid-auto-flow: column;
    place-items: center;
    width: 27.6054590571vw;
    height: 5.9vw;
    font-size: 1.1166253102vw;
    border-width: 0.2vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn__link:before {
    rotate: 45deg;
    border-top: 0.2vw solid #000;
    border-right: 0.2vw solid #000;
  }
  #main_contents .contents .unit .point {
    display: grid;
    place-content: center;
    position: absolute;
    top: -0.3722084367vw;
    left: 50%;
    translate: -50% -50%;
    width: 13.0272952854vw;
    height: 13.0272952854vw;
    border-radius: 50%;
    background-color: #fff;
  }
  #main_contents .contents .unit .point__text {
    padding-left: 0.2977667494vw;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    font-weight: 900;
    font-size: 1.6129032258vw;
    letter-spacing: 0.12em;
    text-align: center;
  }
  #main_contents .contents .unit .point__num {
    margin-left: -0.1861042184vw;
  }
  #main_contents .contents .unit__ttl {
    display: grid;
    place-content: center;
    text-align: center;
  }
  #main_contents .contents .unit__subttl {
    font-weight: 700;
    font-size: 1.7369727047vw;
    letter-spacing: 0.22em;
  }
  #main_contents .contents .unit__mainttl {
    display: inline;
    margin-top: 0.7444168734vw;
    font-weight: 700;
    font-size: 2.2952853598vw;
    letter-spacing: 0.16em;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #FFDF00));
    background: linear-gradient(transparent 50%, #FFDF00 50%);
  }
  #main_contents .contents .unit__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #main_contents .contents .unit__imgbox {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    display: grid;
    place-content: center;
    width: 34.7394540943vw;
    height: 24.8138957816vw;
    z-index: 1;
  }
  #main_contents .contents .unit__movie {
    position: relative;
    width: 34.7394540943vw;
    height: 24.8138957816vw;
  }
  #main_contents .contents .unit__movie--01 {
    top: -1.9851116625vw;
    left: -6.2034739454vw;
    width: 130%;
    height: 130%;
    overflow: hidden;
  }
  #main_contents .contents .unit__movie--02 {
    overflow: hidden;
  }
  #main_contents .contents .unit__movie--02 svg {
    position: relative;
    top: -2.9776674938vw;
    left: -4.9627791563vw;
    width: 130% !important;
    height: 130% !important;
  }
  #main_contents .contents .unit__movie--03 svg {
    position: relative;
    left: -5.8933002481vw;
    width: 125% !important;
    height: 125% !important;
  }
  #main_contents .contents .unit__textbox {
    display: grid;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #main_contents .contents .unit__text {
    font-weight: 600;
    font-size: 1.6749379653vw;
    line-height: 1.96;
    letter-spacing: 0.19em;
  }
  #main_contents .contents .unit__note {
    margin-top: 0.6203473945vw;
    font-weight: 500;
    font-size: 0.8684863524vw;
    letter-spacing: 0.2em;
  }
  #main_contents .contents .unit .exchange {
    position: relative;
    margin: 0.9305210918vw auto 0;
    text-align: left;
  }
  #main_contents .contents .unit .exchange__table {
    width: 100%;
    border-spacing: 0;
    table-layout: fixed;
    font-weight: 800;
  }
  #main_contents .contents .unit .exchange__table thead th {
    padding: 0.6203473945vw 0.9925558313vw 0.6203473945vw 1.8610421836vw;
    font-size: 0.8684863524vw;
    letter-spacing: 0.3em;
    border: 6px solid #ffffff;
    border-bottom: none;
    text-align: center;
    font-size: 1.2406947891vw;
    font-weight: 500;
    background: #00a7b4;
    border-top: none;
  }
  #main_contents .contents .unit .exchange__table thead th sup {
    font-size: 70%;
    position: relative;
    top: -0.5em;
    color: #ffffff;
    letter-spacing: 0.18em;
  }
  #main_contents .contents .unit .exchange__table tbody th,
  #main_contents .contents .unit .exchange__table tbody td {
    border: 6px solid #ffffff;
    padding: 0.7444168734vw 0 0.9925558313vw;
    background: #f3f3f3;
    font-size: 1.4267990074vw;
  }
  #main_contents .contents .unit .exchange__table tbody th sup,
  #main_contents .contents .unit .exchange__table tbody td sup {
    font-size: 70%;
    top: -1em;
    right: -0.5em;
    position: relative;
    color: #000;
    font-weight: 500;
    letter-spacing: 0.14em;
  }
  #main_contents .contents .unit .exchange__table tbody th {
    width: 32%;
    border-right: none;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.2em;
    vertical-align: middle;
  }
  #main_contents .contents .unit .exchange__table .ls-adjust {
    letter-spacing: 0.16em !important;
  }
  #main_contents .contents .unit .exchange__table .ls-adjust-2 {
    letter-spacing: 0.23em !important;
    margin-right: -4px;
  }
  #main_contents .contents .unit .exchange__table tbody td.fare {
    width: 34%;
    border-right: none;
    text-align: right;
    font-size: 1.2406947891vw;
    font-weight: 900;
    position: relative;
    top: 1px;
  }
  #main_contents .contents .unit .exchange__table tbody td.fare .num {
    font-size: 1.8610421836vw;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    font-weight: 600;
    letter-spacing: 0.15em;
  }
  #main_contents .contents .unit .exchange__table tbody td.fare.sup {
    padding: 0 4.6vw 0 0;
  }
  #main_contents .contents .unit .exchange__table tbody td.pt {
    width: 34%;
    background: #FFE8E8;
    text-align: right;
    font-size: 1.364764268vw;
    font-weight: 900;
    position: relative;
    top: 1px;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
  }
  #main_contents .contents .unit .exchange__table tbody td.pt .num {
    font-size: 2.4044665012vw;
    color: #F35C5C;
    font-weight: 600;
    letter-spacing: 0.15em;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    position: relative;
    top: 2px;
    left: -1px;
  }
  #main_contents .contents .unit .exchange__table tbody td.pt small {
    font-size: 1.6vw;
    font-weight: 700;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    position: relative;
    top: 2px;
    color: #F35C5C;
  }
  #main_contents .contents .unit .table-caution {
    font-weight: 500;
    font-size: 0.7444168734vw;
    line-height: 1.2406947891vw;
    letter-spacing: 0.05em;
    text-align: right;
    margin-top: 0.6203473945vw;
  }
  #main_contents .contents .unit .sec-pill {
    display: grid;
    place-content: center;
    margin: 0 auto 2.6054590571vw;
  }
  #main_contents .contents .unit .sec-pill span {
    background: #00a7b4;
    color: #fff;
    display: grid;
    place-content: center;
    width: 26.5508684864vw;
    height: 5.2729528536vw;
    border-radius: 3.1017369727vw;
    font-size: 1.8610421836vw;
    letter-spacing: 0.18em;
    position: relative;
    font-weight: 600;
  }
  #main_contents .contents .unit .sec-lead__ttl {
    font-weight: 600;
    font-size: 1.9851116625vw;
    line-height: 1.5em;
    text-align: center;
    letter-spacing: 0.29em;
    color: #000000;
  }
  #main_contents .contents .unit .sec-lead__text {
    font-weight: 600;
    font-size: 1.1166253102vw;
    line-height: 2.6em;
    text-align: center;
    letter-spacing: 0.24em;
    color: #000000;
    margin-top: 1.7369727047vw;
  }
  #main_contents .contents .unit .hero-logos {
    width: 18.1141439206vw;
    margin: 2.6054590571vw auto 3.2258064516vw;
  }
  #main_contents .contents .unit .bar-title {
    background: #FFDF00;
    display: grid;
    place-content: center;
    height: 4.0322580645vw;
    border-radius: 3.1017369727vw;
    font-size: 1.5508684864vw;
    letter-spacing: 0.22em;
    position: relative;
    font-weight: 600;
  }
  #main_contents .contents .unit .promo__ttl {
    font-weight: 700;
    font-size: 1.5508684864vw;
    line-height: 2.5434243176vw;
    text-align: center;
    letter-spacing: 0.16em;
    margin-top: 5vw;
  }
  #main_contents .contents .unit .promo .promo-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 36px;
    margin-top: 51px;
    text-align: left;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card {
    background: #f3f6f7;
    border-radius: 32px;
    padding: 3.0423280423vw 3.9682539683vw 2.7116402116vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card-01 img {
    width: 9.3672456576vw;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card-02 img {
    width: 15.1985111663vw;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__tag {
    background: #00a7b4;
    color: #ffffff;
    display: grid;
    place-content: center;
    height: 4.1vw;
    border-radius: 3.1017369727vw;
    font-size: 1.28vw;
    letter-spacing: 0.1em;
    position: relative;
    font-weight: 600;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__media {
    margin-top: 1.9851116625vw;
    background: #fff;
    border-radius: 1.3227513228vw;
    display: grid;
    place-content: center;
    height: 8.6848635236vw;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__media img {
    max-width: 100%;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
    display: block;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__text {
    text-align: center;
    margin-top: 1.0545905707vw;
    font-weight: 600;
    line-height: 1.8;
    letter-spacing: 0.2em;
    font-size: 1.1786600496vw;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__text__caution {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0.9305210918vw auto 0;
    font-size: 0.9305210918vw;
    text-align: left;
    width: 20.3473945409vw;
    letter-spacing: 0.1em;
    font-weight: 500;
    line-height: 1.8;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__more {
    text-decoration: none;
    color: #111;
    font-weight: 900;
    letter-spacing: 0.12em;
    padding-top: 1.0545905707vw;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__more :hover {
    opacity: 0.6;
    text-decoration: none;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__more a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.7vw;
    position: relative;
    left: 0.3722084367vw;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-transition: 0.5s;
    transition: 0.5s;
    text-decoration: none;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__more span {
    text-transform: lowercase;
    font-size: 1.4888337469vw;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    font-weight: 700;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__more img {
    width: 1.9230769231vw;
    height: 1.8610421836vw;
    position: relative;
    top: 1px;
  }
  #main_contents .bottom {
    position: relative;
    padding-block: 8.3746898263vw;
    display: grid;
  }
  #main_contents .bottom__btns {
    -webkit-columns: 2;
       -moz-columns: 2;
            columns: 2;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-self: center;
    -webkit-column-gap: 3.1637717122vw;
       -moz-column-gap: 3.1637717122vw;
            column-gap: 3.1637717122vw;
  }
  #main_contents .bottom__btns .btn--round {
    --btn-width: 26.13vw;
    --btn-height: 6.29vw;
    --btn-fontsize: 1.45vw;
  }
  #main_contents .bottom__btns .btn-01 {
    grid-auto-flow: column;
    place-items: center;
  }
  #main_contents .bottom__btns .btn-01:before {
    background-color: #FFDF00;
  }
  #main_contents .bottom__btns .btn-01 ::before {
    border-top: 0.2vw solid #ffffff !important;
    border-right: 0.2vw solid #ffffff !important;
  }
  #main_contents .bottom__btns .btn-01 .btn__link {
    background: #00A9B8;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.4888337469vw;
    border: 0.2vw solid;
  }
  #main_contents .bottom__btns .btn-01 .bottom__btn__ico {
    width: 1.7990074442vw;
    position: relative;
    right: 0.9925558313vw;
  }
  #main_contents .bottom__btns .btn-01 .bottom__btn__text {
    margin-bottom: 10px;
    position: relative;
    right: 1.0545905707vw;
  }
  #main_contents .bottom__btns .btn-01 .bottom__btn__text img {
    width: 9vw;
    right: 0.2481389578vw;
  }
  #main_contents .bottom__btns .btn-01 .bottom__btn__text p {
    letter-spacing: 0.1em;
    font-weight: 0;
    color: #fff;
  }
  #main_contents .bottom__btns .btn-02:before {
    background-color: #FFDF00;
  }
  #main_contents .bottom__btns .btn-02 ::before {
    border-top: 0.2vw solid #ffffff !important;
    border-right: 0.2vw solid #ffffff !important;
  }
  #main_contents .bottom__btns .btn-02 .btn__link {
    background: #00833E;
    border: 0.2vw solid;
  }
  #main_contents .bottom__btns .btn-02 .bottom__btn__text {
    margin-bottom: 0.6203473945vw;
  }
  #main_contents .bottom__btns .btn-02 .bottom__btn__text img {
    width: 5.8vw;
  }
  #main_contents .bottom__btns .btn-02 .bottom__btn__text p {
    letter-spacing: 0.1em;
    font-weight: 700;
    color: #fff;
  }
  #main_contents .bottom__btns .btn-03 {
    margin-top: 3.2258064516vw;
    grid-column: 1/-1;
    justify-self: center;
  }
  #main_contents .bottom__btns .btn-03 .btn__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.4888337469vw;
    border: 0.2vw solid;
  }
  #main_contents .bottom__btns .btn-03 .bottom__btn__ico {
    width: 4.2183622829vw;
    position: relative;
    right: 2.1712158809vw;
  }
  #main_contents .bottom__btns .btn-03 .bottom__btn__text {
    letter-spacing: 0.16em;
    font-weight: 700;
    position: relative;
    right: 1.9851116625vw;
    line-height: 1.3;
    top: 1px;
  }
  #main_contents .bottom__obj {
    position: absolute;
    bottom: -5.5831265509vw;
    left: 2.4813895782vw;
    width: 19.773573201vw;
    height: 21.8vw;
    background-image: url("../img/ill_bottom_01_img.png");
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
  }
}
@media screen and (max-width: 767px) {
  #sideContents_closeBtn {
    display: none;
  }
  #main_contents .contents {
    position: relative;
    padding-bottom: 26.9230769231vw;
    background-color: #BEE9ED;
    background-image: url("../img/bg_sp.png");
    background-size: cover;
    overflow: hidden;
  }
  #main_contents .contents::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 6.6666666667vw;
    background-image: url("../img/ill_line.png");
    background-size: cover;
    background-repeat: repeat-x;
    z-index: 1;
  }
  #main_contents .contents .obj-wrapper {
    position: relative;
  }
  #main_contents .contents .anchor {
    padding-top: 11.2820512821vw;
    padding-bottom: 18.4615384615vw;
  }
  #main_contents .contents .anchor__btns {
    gap: 6.1538461538vw;
    font-weight: 900;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #main_contents .contents .anchor__btns .btn:before {
    width: 99%;
    left: 0;
    top: 3.5vw;
  }
  #main_contents .contents .anchor__btns .btn--round {
    --btn-width: 79vw;
    --btn-height: 15vw;
    --btn-fontsize: 3.59vw;
    --border-width: 0.7vw;
  }
  #main_contents .contents .anchor__btns .btn img.ic_shinkansen {
    width: 8.7179487179vw;
    position: relative;
    left: -10.5128205128vw;
  }
  #main_contents .contents .anchor__btns .btn img.ic_exp {
    width: 7.6923076923vw;
    position: relative;
    left: -7.4358974359vw;
  }
  #main_contents .contents .anchor__btns .btn__link {
    grid-auto-flow: column;
    place-items: center;
    width: 78.2051282051vw;
    font-size: 4.358974359vw;
    border-width: 0.7vw;
    font-weight: 700;
  }
  #main_contents .contents .anchor__btns .btn__link:before {
    rotate: 135deg;
    border-top: 0.7vw solid #000;
    border-right: 0.7vw solid #000;
  }
  #main_contents .contents .anchor__obj {
    position: absolute;
    bottom: -23.0769230769vw;
    left: 10.2564102564vw;
    width: 81.7307692308vw;
    height: 82.0512820513vw;
    background-image: url("../img/ill_bottom_01_img.png");
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
  }
  #main_contents .contents__obj {
    position: absolute;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 0;
  }
  #main_contents .contents__obj--rail--n01 {
    top: 68.4615384615vw;
    left: -46.6666666667vw;
    width: 288.4615384615vw;
    height: 180.7692307692vw;
    -webkit-transform: scaleY(-1) rotate(41deg);
            transform: scaleY(-1) rotate(41deg);
    background-image: url("../img/ill_contents_line_01_img.png");
  }
  #main_contents .contents__obj--rail--n02 {
    top: 299.7435897436vw;
    left: -46.6666666667vw;
    width: 288.4615384615vw;
    height: 180.7692307692vw;
    -webkit-transform: rotate(26deg);
            transform: rotate(26deg);
    background-image: url("../img/ill_contents_line_02_img.png");
  }
  #main_contents .contents__obj--rail--n03 {
    top: 561.5384615385vw;
    left: -4.1025641026vw;
    width: 303.5897435897vw;
    height: 170.7692307692vw;
    -webkit-transform: scaleY(-1) rotate(-23deg);
            transform: scaleY(-1) rotate(-23deg);
    background-image: url("../img/ill_contents_line_03_img.png");
  }
  #main_contents .contents__obj--train--n01 {
    top: 183.3333333333vw;
    left: -14.8717948718vw;
    width: 33.3333333333vw;
    height: 33.3333333333vw;
    background-image: url("../img/ill_contents_02_img.png");
    -webkit-animation-delay: 0.5s;
            animation-delay: 0.5s;
  }
  #main_contents .contents__obj--train--n02 {
    top: 347.6923076923vw;
    right: -14.6153846154vw;
    width: 33.3333333333vw;
    height: 33.3333333333vw;
    background-image: url("../img/ill_contents_03_img.png");
  }
  #main_contents .contents__obj--train--n03 {
    top: 58.9743589744vw;
    left: -55.8974358974vw;
    width: 33.3333333333vw;
    height: 33.3333333333vw;
    background-image: url("../img/ill_contents_05_img.png");
  }
  #main_contents .contents__obj--train--n04 {
    top: 91.5384615385vw;
    right: -56.4102564103vw;
    width: 33.3333333333vw;
    height: 33.3333333333vw;
    background-image: url("../img/ill_contents_06_img.png");
    -webkit-animation-delay: 0.1s;
            animation-delay: 0.1s;
  }
  #main_contents .contents__obj--ill--n01 {
    top: -22.8205128205vw;
    right: -7.1794871795vw;
    width: 34.358974359vw;
  }
  #main_contents .contents__obj--ill--n02 {
    top: -28.2051282051vw;
    left: -13.3333333333vw;
    width: 39.4871794872vw;
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
  #main_contents .contents__obj--ill--n03 {
    bottom: 125.3846153846vw;
    left: -11.5384615385vw;
    width: 35.8974358974vw;
    height: 35.8974358974vw;
    background-image: url("../img/ill_contents_08_img.png");
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
  #main_contents .contents__obj--ill--n04 {
    bottom: -17.9487179487vw;
    right: -6.9230769231vw;
    width: 26.9230769231vw;
    height: 33.3333333333vw;
    background-image: url("../img/ill_contents_09_img.png");
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
  #main_contents .contents__obj--ill--n05 {
    top: -20vw;
    left: -18.4615384615vw;
    width: 97.3076923077vw;
    background-image: url("../img/ill_contents_10_img.png");
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
  #main_contents .contents__obj--ill--n06 {
    top: -20vw;
    left: -18.4615384615vw;
    width: 97.3076923077vw;
    background-image: url("../img/ill_contents_11_img.png");
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
  #main_contents .contents__obj--contents-bottom {
    bottom: 6.9230769231vw;
    right: 12.4vw;
    width: 82.3076923077vw;
    height: 53.9051282051vw;
    bottom: 21px;
    right: 99px;
    width: 185px;
    height: 123.23px;
    background-image: url("../img/ill_contents_07_img.png");
    z-index: 2;
  }
  #main_contents .contents__inner {
    display: grid;
    row-gap: 10vw;
  }
  #main_contents .contents .unit__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 33.8461538462vw;
  }
  #main_contents .contents .unit {
    position: relative;
    padding: 19.2307692308vw 4.1025641026vw 15.8974358974vw;
    border-radius: 12.8205128205vw;
    background-color: #fff;
    z-index: 2;
  }
  #main_contents .contents .unit--01 .point__num {
    width: 21.9230769231vw;
    position: relative;
    top: 0.5128205128vw;
  }
  #main_contents .contents .unit--01 .exchange__badge {
    position: absolute;
    width: 25.641025641vw;
    top: -33.8461538462vw;
    right: -11.2820512821vw;
  }
  #main_contents .contents .unit--01 .exchange__table thead th:first-child {
    color: #fff;
  }
  #main_contents .contents .unit--01 .exchange__table thead th:nth-child(2) {
    color: #fff;
  }
  #main_contents .contents .unit--01 .exchange__table thead th:nth-child(3) {
    background: #F35C5C;
    color: #fff;
    font-weight: 600;
  }
  #main_contents .contents .unit--01 .exchange__table tbody td.fare {
    padding: 0 3.0769230769vw 0 0;
  }
  #main_contents .contents .unit--01 .exchange__table tbody td.pt {
    padding: 0 2.4vw 0 0;
  }
  #main_contents .contents .unit--02 .point__num {
    width: 16.8vw;
    margin-left: 0 !important;
  }
  #main_contents .contents .unit--02 .exchange__badge {
    position: absolute;
    width: 25.641025641vw;
    top: -33.8461538462vw;
    right: -11.2820512821vw;
  }
  #main_contents .contents .unit--02 .exchange__table thead th:first-child {
    color: #fff;
  }
  #main_contents .contents .unit--02 .exchange__table thead th:nth-child(2) {
    color: #fff;
  }
  #main_contents .contents .unit--02 .exchange__table thead th:nth-child(3) {
    color: #fff;
    width: 27%;
  }
  #main_contents .contents .unit--02 .exchange__table thead th:nth-child(4) {
    background: #F35C5C;
    color: #fff;
    font-weight: 600;
    width: 27%;
  }
  #main_contents .contents .unit--02 .exchange__table tbody td.fare {
    padding: 0 1.8vw 0 0;
  }
  #main_contents .contents .unit--02 .exchange__table tbody td.pt {
    padding: 0 1vw 0 0;
  }
  #main_contents .contents .unit--02 .unit-last {
    position: relative;
    padding-top: 0.9vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 19.4871794872vw;
       -moz-column-gap: 19.4871794872vw;
            column-gap: 19.4871794872vw;
    font-weight: 900;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn:before {
    width: 100%;
    left: 0;
    background-color: #00A9B8;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn--round {
    --border-width: 0.7vw;
    --btn-width: 73vw;
    --btn-height: 19vw;
    --btn-fontsize: 3.4vw;
    --bg-position: 3.5vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn img.ic_shinkansen {
    width: 8vw;
    position: relative;
    left: -2vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn img.ic_exp {
    width: 11.7948717949vw;
    position: relative;
    left: -4.1025641026vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn__link {
    grid-auto-flow: column;
    place-items: center;
    font-size: 3.5897435897vw;
    border-width: 0.7vw;
  }
  #main_contents .contents .unit--02 .unit-last__btns .btn__link:before {
    rotate: 45deg;
    border-top: 0.7vw solid #000;
    border-right: 0.7vw solid #000;
  }
  #main_contents .contents .unit--02 .unit-last__obj {
    position: absolute;
    bottom: -23.0769230769vw;
    left: 10.2564102564vw;
    width: 81.7307692308vw;
    height: 82.0512820513vw;
    background-image: url("../img/ill_bottom_01_img.png");
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
  }
  #main_contents .contents .unit .point {
    display: grid;
    place-content: center;
    position: absolute;
    top: 2.5641025641vw;
    left: 50%;
    translate: -50% -50%;
    width: 36.7666666667vw;
    height: 34.6153846154vw;
    border-radius: 50%;
    background-color: #fff;
  }
  #main_contents .contents .unit .point__text {
    padding-left: 1.2307692308vw;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    font-weight: 900;
    font-size: 6.6666666667vw;
    letter-spacing: 0.12em;
    text-align: center;
  }
  #main_contents .contents .unit .point__num {
    margin-left: -0.7692307692vw;
  }
  #main_contents .contents .unit__ttl {
    display: grid;
    place-content: center;
    text-align: center;
  }
  #main_contents .contents .unit__subttl {
    font-weight: 700;
    font-size: 7.1794871795vw;
    letter-spacing: 0.22em;
  }
  #main_contents .contents .unit__mainttl {
    display: inline;
    margin-top: 3.0769230769vw;
    font-weight: 700;
    font-size: 9.4871794872vw;
    letter-spacing: 0.16em;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #FFDF00));
    background: linear-gradient(transparent 50%, #FFDF00 50%);
  }
  #main_contents .contents .unit__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #main_contents .contents .unit__imgbox {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    display: grid;
    place-content: center;
    width: 143.5897435897vw;
    height: 102.5641025641vw;
    z-index: 1;
  }
  #main_contents .contents .unit__movie {
    position: relative;
    width: 143.5897435897vw;
    height: 102.5641025641vw;
  }
  #main_contents .contents .unit__movie--01 {
    top: -8.2051282051vw;
    left: -25.641025641vw;
    width: 130%;
    height: 130%;
    overflow: hidden;
  }
  #main_contents .contents .unit__movie--02 {
    overflow: hidden;
  }
  #main_contents .contents .unit__movie--02 svg {
    position: relative;
    top: -12.3076923077vw;
    left: -20.5128205128vw;
    width: 130% !important;
    height: 130% !important;
  }
  #main_contents .contents .unit__movie--03 svg {
    position: relative;
    left: -24.358974359vw;
    width: 125% !important;
    height: 125% !important;
  }
  #main_contents .contents .unit__textbox {
    display: grid;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #main_contents .contents .unit__text {
    font-weight: 600;
    font-size: 6.9230769231vw;
    line-height: 1.96;
    letter-spacing: 0.19em;
  }
  #main_contents .contents .unit__note {
    margin-top: 2.5641025641vw;
    font-weight: 500;
    font-size: 3.5897435897vw;
    letter-spacing: 0.2em;
  }
  #main_contents .contents .unit .exchange {
    position: relative;
    margin: 3.8461538462vw auto 0;
    text-align: left;
  }
  #main_contents .contents .unit .exchange__table {
    width: 100%;
    border-spacing: 0;
    table-layout: fixed;
    font-weight: 800;
  }
  #main_contents .contents .unit .exchange__table thead th {
    font-size: 3.5897435897vw;
    letter-spacing: 0.3em;
    border: 4px solid #ffffff;
    border-bottom: none;
    text-align: center;
    font-weight: 500;
    background: #00a7b4;
    border-top: none;
    vertical-align: middle;
    padding: 6px 0 6px 4px;
    letter-spacing: 0.25em;
  }
  #main_contents .contents .unit .exchange__table thead th sup {
    font-size: 70%;
    position: relative;
    top: -0.5em;
    color: #ffffff;
    letter-spacing: 0.14em;
  }
  #main_contents .contents .unit .exchange__table tbody th,
  #main_contents .contents .unit .exchange__table tbody td {
    border: 4px solid #ffffff;
    background: #f3f3f3;
    font-size: 3.3333333333vw;
  }
  #main_contents .contents .unit .exchange__table tbody th sup,
  #main_contents .contents .unit .exchange__table tbody td sup {
    font-size: 70%;
    position: absolute;
    top: 1em;
    right: 1.5vw;
    color: #000000;
    letter-spacing: 0.18em;
    font-weight: 500;
  }
  #main_contents .contents .unit .exchange__table tbody th {
    width: 32%;
    border-right: none;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.2em;
    height: 14vw;
    vertical-align: middle;
  }
  #main_contents .contents .unit .exchange__table .ls-adjust {
    letter-spacing: 0.08em !important;
  }
  #main_contents .contents .unit .exchange__table .ls-adjust-2 {
    letter-spacing: 0.1em !important;
  }
  #main_contents .contents .unit .exchange__table tbody td.fare {
    width: 34%;
    border-right: none;
    text-align: right;
    font-size: 3.3333333333vw;
    font-weight: 900;
    position: relative;
    top: 1px;
    vertical-align: middle;
  }
  #main_contents .contents .unit .exchange__table tbody td.fare .num {
    font-size: 4.3vw;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    font-weight: 600;
    letter-spacing: 0.08em;
  }
  #main_contents .contents .unit .exchange__table tbody td.pt {
    width: 34%;
    background: #FFE8E8;
    text-align: right;
    font-size: 3.4051282051vw;
    font-weight: 900;
    position: relative;
    top: 0;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    vertical-align: middle;
  }
  #main_contents .contents .unit .exchange__table tbody td.pt .num {
    font-size: 4.8vw;
    color: #F35C5C;
    font-weight: 600;
    letter-spacing: 0.06em;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    position: relative;
    top: 0;
    left: -1px;
  }
  #main_contents .contents .unit .exchange__table tbody td.pt small {
    font-size: 3.4vw;
    font-weight: 700;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    position: relative;
    top: 0;
    color: #F35C5C;
  }
  #main_contents .contents .unit .table-caution {
    font-weight: 500;
    font-size: 3.0769230769vw;
    line-height: 5.1282051282vw;
    letter-spacing: 0.02em;
    text-align: left;
    margin-top: 2.5641025641vw;
  }
  #main_contents .contents .unit .sec-pill {
    display: grid;
    place-content: center;
    margin: 0 auto 7.1794871795vw;
  }
  #main_contents .contents .unit .sec-pill span {
    background: #00a7b4;
    color: #fff;
    display: grid;
    place-content: center;
    width: 63.0769230769vw;
    height: 13.8461538462vw;
    border-radius: 25.641025641vw;
    font-size: 5.3846153846vw;
    letter-spacing: 0.18em;
    position: relative;
    font-weight: 600;
  }
  #main_contents .contents .unit .sec-lead__ttl {
    font-weight: 600;
    font-size: 5.641025641vw;
    line-height: 1.5em;
    text-align: center;
    letter-spacing: 0.29em;
    color: #000000;
  }
  #main_contents .contents .unit .sec-lead__text {
    font-weight: 600;
    font-size: 4.6153846154vw;
    line-height: 2.24em;
    text-align: left;
    letter-spacing: 0.15em;
    color: #000000;
    margin-top: 6vw;
    padding: 0 5.641025641vw;
    text-align: justify;
  }
  #main_contents .contents .unit .hero-logos {
    width: 54.358974359vw;
    margin: 6.1538461538vw auto 13.3333333333vw;
  }
  #main_contents .contents .unit .bar-title {
    background: #FFDF00;
    display: grid;
    place-content: center;
    height: 12.3076923077vw;
    border-radius: 12.8205128205vw;
    font-size: 3.8461538462vw;
    letter-spacing: 0.22em;
    position: relative;
    font-weight: 600;
    margin: 0 3.0769230769vw;
  }
  #main_contents .contents .unit .promo__ttl {
    font-weight: 700;
    font-size: 5.1282051282vw;
    line-height: 1.6;
    text-align: center;
    letter-spacing: 0.16em;
    margin-top: 12vw;
  }
  #main_contents .contents .unit .promo .promo-cards {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    grid-template-columns: 1fr 1fr;
    gap: 5.641025641vw;
    margin-top: 8.9743589744vw;
    text-align: left;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card {
    background: #f3f6f7;
    border-radius: 30px;
    padding: 8.9743589744vw 8.4615384615vw 7.4358974359vw 8.4615384615vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card-01 img {
    width: 35.3846153846vw;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card-02 img {
    width: 55.3846153846vw;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__tag {
    background: #00a7b4;
    color: #ffffff;
    display: grid;
    place-content: center;
    padding: 3.0769230769vw;
    border-radius: 12.8205128205vw;
    font-size: 4.1025641026vw;
    letter-spacing: 0.1em;
    position: relative;
    font-weight: 600;
    text-align: center;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__media {
    margin-top: 4.1025641026vw;
    background: #fff;
    border-radius: 5.1282051282vw;
    display: grid;
    place-content: center;
    height: 35.8974358974vw;
    padding: 0 4.6153846154vw;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__media img {
    max-width: 100%;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
    display: block;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__text {
    text-align: center;
    margin-top: 4.6153846154vw;
    font-weight: 600;
    line-height: 1.95;
    letter-spacing: 0.13em;
    font-size: 4.358974359vw;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__text__caution {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 3.8461538462vw auto 0;
    font-size: 3.5897435897vw;
    text-align: left;
    letter-spacing: 0.08em;
    font-weight: 500;
    line-height: 1.8;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__more {
    text-decoration: none;
    color: #111;
    font-weight: 900;
    letter-spacing: 0.12em;
    padding-top: 4.1025641026vw;
    margin-left: auto;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__more :hover {
    opacity: 0.6;
    text-decoration: none;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__more a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 3.0769230769vw;
    position: relative;
    left: 1.5384615385vw;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__more span {
    text-transform: lowercase;
    font-size: 4.6153846154vw;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    font-weight: 700;
  }
  #main_contents .contents .unit .promo .promo-cards .p-card__more img {
    width: 6.1538461538vw;
    position: relative;
    right: 6px;
    top: 0;
  }
  #main_contents .bottom {
    position: relative;
    padding: 16.9230769231vw 0 41.0256410256vw;
  }
  #main_contents .bottom__btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 7.6923076923vw;
  }
  #main_contents .bottom__btns .btn--round {
    --border-width: 0.7vw;
    --btn-width: 79vw;
    --btn-height: 19vw;
    --btn-fontsize: 4.6vw;
    --bg-position: 3.5vw;
  }
  #main_contents .bottom__btns .btn-01:before {
    background-color: #FFDF00;
  }
  #main_contents .bottom__btns .btn-01 ::before {
    border-top: 2.5px solid #ffffff !important;
    border-right: 2.5px solid #ffffff !important;
  }
  #main_contents .bottom__btns .btn-01 .btn__link {
    background: #00A9B8;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 6.1538461538vw;
  }
  #main_contents .bottom__btns .btn-01 .bottom__btn__ico {
    width: 5.641025641vw;
    position: relative;
    right: 3.0769230769vw;
  }
  #main_contents .bottom__btns .btn-01 .bottom__btn__text {
    margin-bottom: 7px;
    position: relative;
    right: 4.358974359vw;
  }
  #main_contents .bottom__btns .btn-01 .bottom__btn__text img {
    width: 32.8205128205vw;
    right: 1.0256410256vw;
  }
  #main_contents .bottom__btns .btn-01 .bottom__btn__text p {
    letter-spacing: 0.1em;
    font-weight: 700;
    color: #fff;
  }
  #main_contents .bottom__btns .btn-02:before {
    background-color: #FFDF00;
  }
  #main_contents .bottom__btns .btn-02 ::before {
    border-top: 2.5px solid #ffffff !important;
    border-right: 2.5px solid #ffffff !important;
  }
  #main_contents .bottom__btns .btn-02 .btn__link {
    background: #00833E;
  }
  #main_contents .bottom__btns .btn-02 .bottom__btn__text {
    margin-bottom: 2.5641025641vw;
  }
  #main_contents .bottom__btns .btn-02 .bottom__btn__text img {
    width: 19.4871794872vw;
    margin-top: 2.5641025641vw;
  }
  #main_contents .bottom__btns .btn-02 .bottom__btn__text p {
    letter-spacing: 0.1em;
    font-weight: 700;
    color: #fff;
  }
  #main_contents .bottom__btns .btn-03 .btn__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 6.1538461538vw;
  }
  #main_contents .bottom__btns .btn-03 .bottom__btn__ico {
    width: 12.8205128205vw;
    position: relative;
    right: 6.4102564103vw;
  }
  #main_contents .bottom__btns .btn-03 .bottom__btn__text {
    letter-spacing: 0.16em;
    font-weight: 700;
    position: relative;
    right: 8.2051282051vw;
    line-height: 1.3;
    top: -1px;
  }
  #main_contents .bottom__obj {
    position: absolute;
    bottom: -39vw;
    left: 3.0769230769vw;
    width: 51.2820512821vw;
    height: 81vw;
    background-image: url("../img/ill_bottom_01_img.png");
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
  }
  .pageTop {
    bottom: 22vw !important;
  }
}
@media screen and (min-width: 768px) {
  #main_contents .section.float.is-ready {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  #main_contents .float {
    position: relative;
    margin-top: 1.9841269841vw;
    padding: 0.9920634921vw 1.0582010582vw;
    width: 16.6666666667vw;
    border-radius: 1.3227513228vw;
    border: 0.2vw solid #000;
    background-color: #FFDF00;
    -webkit-box-shadow: 0 0.2645502646vw 0.8597883598vw rgba(0, 0, 0, 0.25);
            box-shadow: 0 0.2645502646vw 0.8597883598vw rgba(0, 0, 0, 0.25);
    z-index: 10;
    gap: 0.6613756614vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #main_contents .float-wrapper {
    display: none;
    position: fixed;
    right: 1.3227513228vw;
    bottom: 6.6137566138vw;
    z-index: 10;
  }
  #main_contents .float__close {
    position: absolute;
    top: -0.6613756614vw;
    right: -0.6613756614vw;
    width: 1.8vw;
    height: 1.8vw;
    border-radius: 50%;
    background-color: #000;
    cursor: pointer;
  }
  #main_contents .float__close::before, #main_contents .float__close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: 0.7275132275vw;
    height: 0.1322751323vw;
    background-color: #fff;
  }
  #main_contents .float__close::before {
    rotate: 45deg;
  }
  #main_contents .float__close::after {
    rotate: -45deg;
  }
  #main_contents .float__btnbox {
    display: grid;
    row-gap: 0.3968253968vw;
  }
  #main_contents .float__logo {
    margin-inline: auto;
    width: 5.3571428571vw;
  }
  #main_contents .float__logo img {
    width: 100%;
  }
  #main_contents .float__btn.n-01 .float__link {
    background: #00833E;
  }
  #main_contents .float__btn.n-01 .float__link img {
    width: 8.2010582011vw;
  }
  #main_contents .float__btn.n-02 .float__link {
    background: #00A9B8;
  }
  #main_contents .float__btn.n-02 .float__link img {
    width: 11.3756613757vw;
    position: relative;
    right: 0.7936507937vw;
    top: 0.15vw;
  }
  #main_contents .float__link {
    display: grid;
    place-items: center;
    position: relative;
    width: 100%;
    height: 3.7vw;
    border-radius: 3.3068783069vw;
    border: 0.2vw solid #000;
    background-color: #62BB46;
    font-weight: 700;
    font-size: 0.9920634921vw;
    letter-spacing: 0.1em;
    text-decoration: none;
    color: #fff;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main_contents .float__link::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 1.3888888889vw;
    translate: 0 -50%;
    width: 0.462962963vw;
    height: 0.462962963vw;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    rotate: 45deg;
  }
  #main_contents .float__link:hover {
    opacity: 0.8;
  }
  #main_contents .float-bnr {
    position: relative;
    width: 18.7830687831vw;
    -webkit-box-shadow: 0 0.2645502646vw 0.8597883598vw rgba(0, 0, 0, 0.25);
            box-shadow: 0 0.2645502646vw 0.8597883598vw rgba(0, 0, 0, 0.25);
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main_contents .float-bnr:hover {
    opacity: 0.8;
  }
  #main_contents .float-bnr .float__close {
    top: 0vw;
    right: 0vw;
    translate: 50% -50%;
  }
}
@media screen and (max-width: 767px) {
  #main_contents .float {
    position: relative;
    bottom: 0;
    padding: 2.5641025641vw 0;
    width: 100%;
    border-top: 0.6vw solid #000;
    border-bottom: 0.6vw solid #000;
    background-color: #FFDF00;
    z-index: 10;
    gap: 2.5641025641vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #main_contents .float-wrapper {
    display: none;
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: 10;
  }
  #main_contents .float__close {
    position: absolute;
    top: 1.5384615385vw;
    right: 1.5384615385vw;
    width: 4.6153846154vw;
    height: 4.6153846154vw;
    border-radius: 50%;
    background-color: #000;
    cursor: pointer;
  }
  #main_contents .float__close::before, #main_contents .float__close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    width: 2.8205128205vw;
    height: 0.5128205128vw;
    background-color: #fff;
  }
  #main_contents .float__close::before {
    rotate: 45deg;
  }
  #main_contents .float__close::after {
    rotate: -45deg;
  }
  #main_contents .float__btnbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4vw;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  #main_contents .float__logo {
    margin-inline: auto;
    width: 20.7692307692vw;
  }
  #main_contents .float__logo img {
    width: 100%;
  }
  #main_contents .float__btn {
    width: 42vw;
    position: relative;
    right: 2vw;
  }
  #main_contents .float__btn.n-01 .float__link {
    background: #00833E;
  }
  #main_contents .float__btn.n-01 .float__link img {
    width: 21.7948717949vw;
  }
  #main_contents .float__btn.n-02 .float__link {
    background: #00A9B8;
  }
  #main_contents .float__btn.n-02 .float__link img {
    width: 30.7692307692vw;
    position: relative;
    top: 0.3vw;
    right: 1.8vw;
  }
  #main_contents .float__link {
    display: grid;
    place-items: center;
    position: relative;
    width: 100%;
    height: 10.5vw;
    border-radius: 12.8205128205vw;
    border: 0.6vw solid #000;
    background-color: #62BB46;
    font-weight: 700;
    font-size: 3.8461538462vw;
    letter-spacing: 0.1em;
    text-decoration: none;
    color: #fff;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main_contents .float__link::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 3.0769230769vw;
    translate: 0 -50%;
    width: 0.8307692308vw;
    height: 0.8307692308vw;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    rotate: 45deg;
  }
  #main_contents .float__link:hover {
    opacity: 0.8;
  }
  #main_contents .float-bnr {
    display: none;
  }
}