@charset "UTF-8";
body {
  text-align: start;
  font-family: 'Noto Sans JP', 'Yu Gothic Medium', 'Yu Gothic', '游ゴシック体', sans-serif;
  font-size: 16px;
  line-height: 1.6;
  background: #fff;
  color: #333333;
  font-weight: 100; }

@media (max-width: 767px) {
  .pc_only {
    display: none; } }

@media (min-width: 768px) {
  .sp_only {
    display: none; } }

.cp-wrraper {
  background: url(../img/top__bg.webp) center/cover no-repeat; }

.mv {
  max-width: 1920px;
  margin: 0 auto 0;
  padding-top: 75px;
  padding-bottom: 140px; }
  @media (max-width: 1920px) {
    .mv {
      padding-top: 3.90625vw;
      padding-bottom: 7.2916666667vw; } }
  @media (max-width: 767px) {
    .mv {
      padding-top: 4.2666666667vw;
      padding-bottom: 8vw; } }
  .mv .mv__main {
    display: flex;
    justify-content: space-between;
    gap: 60px; }
    @media (max-width: 767px) {
      .mv .mv__main {
        flex-direction: column-reverse;
        gap: 10.6666666667vw; } }
  .mv .map {
    position: relative; }
    .mv .map::after {
      content: '';
      position: absolute;
      top: -90px;
      right: -30px;
      width: 195px;
      height: 232px;
      background: url(../img/mv__05.webp) center/cover no-repeat; }
      @media (max-width: 1900px) {
        .mv .map::after {
          top: -4.7368421053vw;
          right: -1.5789473684vw;
          width: 10.2631578947vw;
          height: 12.2105263158vw; } }
  .mv .title {
    margin-top: 125px;
    margin-bottom: 67px;
    position: relative; }
    @media (max-width: 1900px) {
      .mv .title {
        margin-top: 6.5789473684vw;
        margin-bottom: 3.5263157895vw; } }
    @media (max-width: 767px) {
      .mv .title {
        margin-top: 6.4vw;
        margin-bottom: 5.3333333333vw; } }
    .mv .title::after {
      content: '';
      position: absolute;
      top: -72px;
      left: -20px;
      width: 300px;
      height: 140px;
      background: url(../img/mv__06.webp) center/cover no-repeat; }
      @media (max-width: 1900px) {
        .mv .title::after {
          top: -3.7894736842vw;
          left: -1.0526315789vw;
          width: 15.7894736842vw;
          height: 7.3684210526vw; } }
      @media (max-width: 767px) {
        .mv .title::after {
          top: -1.8666666667vw;
          left: 4.8vw;
          width: 24vw;
          height: 11.4666666667vw; } }
  .mv .wrap {
    display: flex;
    gap: 55px; }
    @media (max-width: 767px) {
      .mv .wrap {
        gap: 5.3333333333vw; } }
  .mv .mv__inner {
    max-width: calc(1750px + 80px);
    padding: 0 40px;
    margin: 0 auto; }
    @media (max-width: 767px) {
      .mv .mv__inner {
        padding: 0 5.3333333333vw; } }
  .mv .mv__text {
    font-weight: 700;
    color: #003664;
    padding-top: 100px;
    font-size: 35px;
    line-height: 65.91px; }
    @media (max-width: 1920px) {
      .mv .mv__text {
        padding-top: 5.2083333333vw;
        font-size: 1.8229166667vw;
        line-height: 3.4322916667vw; } }
    @media (max-width: 767px) {
      .mv .mv__text {
        padding-top: 5.3333333333vw;
        font-size: 4.2666666667vw;
        line-height: 6.4vw; } }

.spot .spot-heading {
  padding-bottom: 80px; }
  @media (max-width: 767px) {
    .spot .spot-heading {
      padding-bottom: 10.6666666667vw; } }
.spot .spot-heading__title {
  font-weight: 700;
  line-height: 1;
  font-size: 64px;
  color: #ffffff;
  text-align: center; }
  @media (max-width: 767px) {
    .spot .spot-heading__title {
      font-size: 7.4666666667vw; } }
.spot .spot-cards {
  max-width: calc(1750px + 80px);
  padding: 0 40px;
  margin: 0 auto; }
  @media (max-width: 767px) {
    .spot .spot-cards {
      padding: 0 5.3333333333vw; } }
  .spot .spot-cards .card {
    background: white;
    padding: 50px 110px 50px 60px;
    border-radius: 60px; }
    @media (max-width: 1920px) {
      .spot .spot-cards .card {
        padding: 2.6041666667vw 5.7291666667vw 2.6041666667vw 3.125vw;
        border-radius: 3.125vw; } }
    @media (max-width: 767px) {
      .spot .spot-cards .card {
        padding: 5.3333333333vw; } }
    .spot .spot-cards .card:not(:last-of-type) {
      margin-bottom: 90px; }
      @media (max-width: 1920px) {
        .spot .spot-cards .card:not(:last-of-type) {
          margin-bottom: 4.6875vw; } }
    .spot .spot-cards .card.__1 {
      border: 29px solid #fddc73; }
      @media (max-width: 1920px) {
        .spot .spot-cards .card.__1 {
          border: 1.5104166667vw solid #fddc73; } }
      @media (max-width: 767px) {
        .spot .spot-cards .card.__1 {
          border: 1.6vw solid #fddc73; } }
    .spot .spot-cards .card.__2 {
      border: 29px solid #f9dbdf; }
      @media (max-width: 1920px) {
        .spot .spot-cards .card.__2 {
          border: 1.5104166667vw solid #f9dbdf; } }
      @media (max-width: 767px) {
        .spot .spot-cards .card.__2 {
          border: 1.6vw solid #f9dbdf; } }
    .spot .spot-cards .card.__3 {
      border: 29px solid #e9d4ae; }
      @media (max-width: 1920px) {
        .spot .spot-cards .card.__3 {
          border: 1.5104166667vw solid #e9d4ae; } }
      @media (max-width: 767px) {
        .spot .spot-cards .card.__3 {
          border: 1.6vw solid #e9d4ae; } }
    .spot .spot-cards .card.__4 {
      border: 29px solid #d6e7b6; }
      @media (max-width: 1920px) {
        .spot .spot-cards .card.__4 {
          border: 1.5104166667vw solid #d6e7b6; } }
      @media (max-width: 767px) {
        .spot .spot-cards .card.__4 {
          border: 1.6vw solid #d6e7b6; } }
  .spot .spot-cards .ttl {
    font-weight: 700;
    line-height: 1;
    text-align: center;
    font-size: 85px;
    padding-bottom: 80px; }
    @media (max-width: 1920px) {
      .spot .spot-cards .ttl {
        font-size: 4.4270833333vw;
        padding-bottom: 4.1666666667vw; } }
    @media (max-width: 767px) {
      .spot .spot-cards .ttl {
        font-size: 4.5333333333vw;
        padding-bottom: 5.3333333333vw; } }
    .spot .spot-cards .ttl span {
      position: relative; }
      .spot .spot-cards .ttl span::after {
        content: 'ろか';
        position: absolute;
        font-size: 28px;
        top: -10px;
        left: 16%;
        width: 105%;
        letter-spacing: 60px; }
        @media (max-width: 1920px) {
          .spot .spot-cards .ttl span::after {
            font-size: 1.4583333333vw;
            top: -0.5208333333vw;
            letter-spacing: 3.125vw; } }
    .spot .spot-cards .ttl.__1 {
      color: #f9bf11; }
    .spot .spot-cards .ttl.__2 {
      color: #ed8599; }
    .spot .spot-cards .ttl.__3 {
      color: #c3950d; }
    .spot .spot-cards .ttl.__4 {
      color: #8cc456; }
  .spot .spot-cards .box {
    display: flex;
    gap: 155px;
    margin-bottom: 30px; }
    @media (max-width: 1920px) {
      .spot .spot-cards .box {
        gap: 8.0729166667vw;
        margin-bottom: 1.5625vw; } }
    @media (max-width: 767px) {
      .spot .spot-cards .box {
        flex-direction: column-reverse;
        gap: 5.3333333333vw;
        margin-bottom: 2.6666666667vw; } }
  .spot .spot-cards .txt {
    max-width: 727px;
    font-size: 35px;
    line-height: 60px;
    letter-spacing: -2px;
    color: #003664; }
    @media (max-width: 1920px) {
      .spot .spot-cards .txt {
        max-width: 37.8645833333vw;
        font-size: 1.8229166667vw;
        line-height: 3.125vw;
        letter-spacing: -0.1041666667vw; } }
    @media (max-width: 767px) {
      .spot .spot-cards .txt {
        font-size: 3.7333333333vw;
        line-height: 6.4vw;
        letter-spacing: 0px;
        max-width: 100%; } }
    .spot .spot-cards .txt .link {
      color: #0a70c0; }
  .spot .spot-cards .img {
    max-width: 637px;
    width: 100%; }
    @media (max-width: 1920px) {
      .spot .spot-cards .img {
        max-width: 33.1770833333vw; } }
    @media (max-width: 767px) {
      .spot .spot-cards .img {
        max-width: 100%; } }
.spot .access {
  width: 204px;
  margin-bottom: 10px; }
  @media (max-width: 1920px) {
    .spot .access {
      width: 10.625vw;
      margin-bottom: 0.5208333333vw; } }
  @media (max-width: 767px) {
    .spot .access {
      width: 18.6666666667vw;
      margin-bottom: 2.6666666667vw; } }
.spot .text {
  color: #003664;
  font-size: 33px;
  line-height: 60.8px;
  font-feature-settings: 'palt' 1; }
  @media (max-width: 1920px) {
    .spot .text {
      font-size: 1.71875vw;
      line-height: 3.1666666667vw; } }
  @media (max-width: 767px) {
    .spot .text {
      font-size: 3.7333333333vw;
      line-height: 6.4vw; } }

.step {
  padding: 150px 0 0px;
  margin-bottom: 207px;
  position: relative; }
  @media (max-width: 1920px) {
    .step {
      padding: 7.8125vw 0 0px;
      margin-bottom: 10.78125vw; } }
  @media (max-width: 767px) {
    .step {
      padding: 5.3333333333vw 0 0px;
      margin-bottom: 5.3333333333vw; } }
  @media (max-width: 767px) {
    .step {
      padding: 5.3333333333vw 0 0px;
      margin-bottom: 13.3333333333vw; } }
  .step::after {
    content: '';
    position: absolute;
    bottom: -190px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 165px 95px 0 95px;
    border-color: #f9bf11 transparent transparent transparent; }
    @media (max-width: 1920px) {
      .step::after {
        bottom: -9.8958333333vw;
        border-width: 8.59375vw 4.9479166667vw 0 4.9479166667vw; } }
    @media (max-width: 767px) {
      .step::after {
        bottom: -11.4666666667vw; } }
  .step::before {
    font-weight: 700;
    content: '惜しくも抽選にもれた方は';
    position: absolute;
    bottom: -132px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 54px;
    color: #003664;
    z-index: 1; }
    @media (max-width: 1920px) {
      .step::before {
        bottom: -6.875vw;
        font-size: 2.8125vw; } }
    @media (max-width: 767px) {
      .step::before {
        bottom: -8.5333333333vw;
        font-size: 3.2vw; } }
  .step .step__ttl {
    font-weight: 700;
    line-height: 1;
    font-size: 64px;
    padding-bottom: 100px;
    color: white;
    text-align: center; }
    @media (max-width: 1920px) {
      .step .step__ttl {
        font-size: 3.3333333333vw;
        padding-bottom: 5.2083333333vw; } }
    @media (max-width: 767px) {
      .step .step__ttl {
        font-size: 5.3333333333vw;
        padding-bottom: 5.3333333333vw;
        line-height: 11.2vw; } }
  .step .step__cards {
    max-width: calc(1750px + 80px);
    padding: 0 40px;
    margin: 0 auto; }
    @media (max-width: 767px) {
      .step .step__cards {
        padding: 0 5.3333333333vw; } }
  .step .step__card {
    background: #ffffc3;
    padding: 33px 70px 60px 64px;
    border-radius: 58px; }
    @media (max-width: 1920px) {
      .step .step__card {
        padding: 1.71875vw 3.6458333333vw 3.125vw 3.3333333333vw;
        border-radius: 3.0208333333vw; } }
    @media (max-width: 767px) {
      .step .step__card {
        padding: 5.3333333333vw;
        border: 5.3333333333vw; } }
    .step .step__card.__4 {
      padding: 33px 53px 60px 60px; }
      @media (max-width: 1920px) {
        .step .step__card.__4 {
          padding: 1.71875vw 2.7604166667vw 3.125vw 3.125vw; } }
      @media (max-width: 767px) {
        .step .step__card.__4 {
          padding: 5.3333333333vw; } }
    .step .step__card:not(:last-of-type) {
      margin-bottom: 107px;
      position: relative; }
      @media (max-width: 1920px) {
        .step .step__card:not(:last-of-type) {
          margin-bottom: 5.5729166667vw; } }
      @media (max-width: 767px) {
        .step .step__card:not(:last-of-type) {
          margin-bottom: 8vw; } }
      .step .step__card:not(:last-of-type)::after {
        content: '';
        position: absolute;
        bottom: -91px;
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 75px 43px 0 43px;
        border-color: #003664 transparent transparent transparent; }
        @media (max-width: 1920px) {
          .step .step__card:not(:last-of-type)::after {
            bottom: -4.7395833333vw;
            border-width: 3.90625vw 2.2395833333vw 0 2.2395833333vw; } }
        @media (max-width: 767px) {
          .step .step__card:not(:last-of-type)::after {
            bottom: -5.8666666667vw; } }
    .step .step__card .three-text {
      font-weight: 700;
      color: #003664;
      font-size: 48px;
      line-height: 74px;
      padding-bottom: 16px; }
      @media (max-width: 1920px) {
        .step .step__card .three-text {
          font-size: 2.5vw;
          line-height: 3.8541666667vw;
          padding-bottom: 0.8333333333vw; } }
      @media (max-width: 767px) {
        .step .step__card .three-text {
          font-size: 3.7333333333vw;
          line-height: 6.4vw;
          padding-bottom: 5.3333333333vw; } }
    .step .step__card .three-annotation {
      color: #003664;
      font-size: 20px; }
      @media (max-width: 1920px) {
        .step .step__card .three-annotation {
          font-size: 1.0416666667vw; } }
      @media (max-width: 767px) {
        .step .step__card .three-annotation {
          font-size: 3.7333333333vw; } }
    .step .step__card .four-text {
      font-weight: 700;
      color: #003664;
      font-size: 31px;
      line-height: 49px;
      padding-bottom: 86px; }
      @media (max-width: 1920px) {
        .step .step__card .four-text {
          font-size: 1.6145833333vw;
          line-height: 2.5520833333vw;
          padding-bottom: 4.4791666667vw; } }
      @media (max-width: 767px) {
        .step .step__card .four-text {
          font-size: 3.7333333333vw;
          line-height: 6.4vw;
          padding-bottom: 5.3333333333vw; } }
    .step .step__card .four-area {
      background: #f9bf11;
      padding: 20px 20px 24px 29px;
      display: flex;
      justify-content: space-between;
      gap: 39.1px;
      border-radius: 14.6px; }
      @media (max-width: 1920px) {
        .step .step__card .four-area {
          padding: 1.0416666667vw 1.0416666667vw 1.25vw 1.5104166667vw;
          gap: 2.0364583333vw;
          border-radius: 0.7604166667vw; } }
      @media (max-width: 767px) {
        .step .step__card .four-area {
          padding: 5.3333333333vw;
          gap: 0;
          border-radius: 5.3333333333vw;
          display: grid; } }
    .step .step__card .four-area__left {
      width: 494px;
      padding-top: 10px; }
      @media (max-width: 1920px) {
        .step .step__card .four-area__left {
          width: 25.7291666667vw;
          padding-top: 0.5208333333vw; } }
      @media (max-width: 767px) {
        .step .step__card .four-area__left {
          display: contents; } }
    .step .step__card .four-area__heading {
      text-align: center;
      height: 48px;
      font-size: 31px;
      background: #003664;
      color: white;
      margin-bottom: 30px; }
      @media (max-width: 1920px) {
        .step .step__card .four-area__heading {
          height: 2.5vw;
          font-size: 1.6145833333vw;
          margin-bottom: 1.5625vw; } }
      @media (max-width: 767px) {
        .step .step__card .four-area__heading {
          height: 6.4vw;
          font-size: 3.2vw;
          margin-bottom: 5.3333333333vw;
          order: 1; } }
    .step .step__card .time {
      color: #003664;
      font-feature-settings: 'palt' 1;
      font-size: 27.6px;
      line-height: 48.7px;
      padding-bottom: 22px; }
      @media (max-width: 1920px) {
        .step .step__card .time {
          font-size: 1.4375vw;
          line-height: 2.5364583333vw;
          padding-bottom: 1.1458333333vw; } }
      @media (max-width: 767px) {
        .step .step__card .time {
          font-size: 3.7333333333vw;
          line-height: 6.4vw;
          padding-top: 5.3333333333vw;
          padding-bottom: 5.3333333333vw;
          order: 3; } }
    .step .step__card .caution {
      color: #d71518;
      padding-left: 1em;
      text-indent: -1em;
      font-size: 20px;
      line-height: 28.4px;
      margin-left: -10px; }
      @media (max-width: 1920px) {
        .step .step__card .caution {
          font-size: 1.0416666667vw;
          line-height: 1.4791666667vw;
          margin-left: -0.5208333333vw; } }
      @media (max-width: 767px) {
        .step .step__card .caution {
          font-size: 3.7333333333vw;
          line-height: 6.4vw;
          margin-left: -2.6666666667vw;
          order: 4; } }
    .step .step__card .four-area__right {
      max-width: 178px;
      width: 100%; }
      @media (max-width: 1920px) {
        .step .step__card .four-area__right {
          max-width: 9.2708333333vw; } }
      @media (max-width: 767px) {
        .step .step__card .four-area__right {
          max-width: 100%;
          order: 2; } }
    .step .step__card .four-area__annotation {
      color: #003664;
      font-size: 20px; }
      @media (max-width: 1920px) {
        .step .step__card .four-area__annotation {
          font-size: 1.0416666667vw; } }
      @media (max-width: 767px) {
        .step .step__card .four-area__annotation {
          font-size: 3.7333333333vw; } }
  .step .title {
    font-weight: 700;
    color: #003664;
    text-align: center;
    line-height: 1;
    font-size: 52px;
    padding-bottom: 47px; }
    @media (max-width: 1920px) {
      .step .title {
        font-size: 2.7083333333vw;
        padding-bottom: 2.4479166667vw; } }
    @media (max-width: 767px) {
      .step .title {
        font-size: 4.8vw;
        padding-bottom: 5.3333333333vw; } }
  .step .wrap {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media (max-width: 767px) {
      .step .wrap {
        gap: 5.3333333333vw;
        display: block; } }
    .step .wrap.__4 {
      gap: 115px;
      margin-bottom: 25px;
      align-items: inherit; }
      @media (max-width: 1920px) {
        .step .wrap.__4 {
          gap: 5.9895833333vw;
          margin-bottom: 1.3020833333vw; } }
      @media (max-width: 767px) {
        .step .wrap.__4 {
          gap: 5.3333333333vw;
          margin-bottom: 5.3333333333vw; } }
  @media (max-width: 767px) {
    .step .texts {
      padding-bottom: 5.3333333333vw; } }
  .step .texts.__4 {
    max-width: 760px;
    width: 100%; }
    @media (max-width: 1920px) {
      .step .texts.__4 {
        max-width: 39.5833333333vw; } }
    @media (max-width: 767px) {
      .step .texts.__4 {
        max-width: 100%; } }
  .step .text {
    font-size: 48px;
    color: #003664;
    font-weight: 700; }
    @media (max-width: 1920px) {
      .step .text {
        font-size: 2.5vw; } }
    @media (max-width: 767px) {
      .step .text {
        font-size: 3.7333333333vw; } }
  .step .cont {
    max-width: 766px;
    width: 100%; }
    @media (max-width: 1920px) {
      .step .cont {
        max-width: 39.8958333333vw; } }
    @media (max-width: 767px) {
      .step .cont {
        max-width: 100%; } }
    .step .cont.__4 {
      max-width: 765px;
      width: 100%; }
      @media (max-width: 1920px) {
        .step .cont.__4 {
          max-width: 39.84375vw; } }
      @media (max-width: 767px) {
        .step .cont.__4 {
          max-width: 100%; } }
  .step .here {
    line-height: 1;
    background: #003664;
    color: white;
    font-size: 39px;
    border-radius: 44px;
    text-align: center; }
    @media (max-width: 1920px) {
      .step .here {
        font-size: 2.03125vw;
        border-radius: 2.2916666667vw; } }
    @media (max-width: 767px) {
      .step .here {
        font-size: 3.7333333333vw;
        line-height: 4.8vw; } }
    .step .here a {
      color: white;
      padding: 33px 0px;
      width: 100%;
      height: 100%;
      align-items: center;
      display: flex;
      justify-content: center;
      text-decoration: none; }
      @media (max-width: 1920px) {
        .step .here a {
          padding: 1.71875vw 0px; } }
      @media (max-width: 767px) {
        .step .here a {
          padding: 2.6666666667vw 0; } }

.point {
  padding-bottom: 60px; }
  @media (max-width: 1920px) {
    .point {
      padding-bottom: 3.125vw; } }
  @media (max-width: 767px) {
    .point {
      padding-bottom: 5.3333333333vw; } }
  .point .point__inner {
    max-width: calc(1750px + 80px);
    padding: 0 40px;
    margin: 0 auto; }
    @media (max-width: 767px) {
      .point .point__inner {
        padding: 0 5.3333333333vw; } }
  .point .point__content {
    background: #ffffc3;
    padding: 70px 40px 30px;
    border-radius: 58.4px; }
    @media (max-width: 1920px) {
      .point .point__content {
        padding: 3.6458333333vw 2.0833333333vw 1.5625vw;
        border-radius: 3.0416666667vw; } }
    @media (max-width: 767px) {
      .point .point__content {
        padding: 5.3333333333vw 5.3333333333vw;
        border-radius: 5.3333333333vw; } }
  .point .point__ttl {
    font-weight: 700;
    color: #003664;
    text-align: center;
    font-size: 54px;
    padding-bottom: 40px;
    line-height: 81.5px; }
    @media (max-width: 1920px) {
      .point .point__ttl {
        font-size: 2.8125vw;
        padding-bottom: 2.0833333333vw;
        line-height: 4.2447916667vw; } }
    @media (max-width: 767px) {
      .point .point__ttl {
        font-size: 4.2666666667vw;
        padding-bottom: 5.3333333333vw;
        line-height: 6.4vw; } }
  .point .point__txt {
    font-weight: 700;
    text-align: center;
    color: #003664;
    line-height: 1;
    font-size: 51.8px;
    padding-bottom: 30px; }
    @media (max-width: 1920px) {
      .point .point__txt {
        font-size: 2.6979166667vw;
        padding-bottom: 1.5625vw; } }
    @media (max-width: 767px) {
      .point .point__txt {
        font-size: 4.2666666667vw;
        padding-bottom: 5.3333333333vw;
        line-height: 6.4vw; } }
  .point .img {
    max-width: 1190px;
    margin: 0 auto 33px; }
    @media (max-width: 1920px) {
      .point .img {
        max-width: 61.9791666667vw;
        margin: 0 auto 1.71875vw; } }
    @media (max-width: 767px) {
      .point .img {
        max-width: 100%;
        margin: 0 auto 5.3333333333vw; } }
  .point .point__annotation {
    color: #003664;
    line-height: 1;
    font-size: 20px;
    padding-left: 45px; }
    @media (max-width: 1920px) {
      .point .point__annotation {
        font-size: 1.0416666667vw;
        padding-left: 2.34375vw; } }
    @media (max-width: 767px) {
      .point .point__annotation {
        font-size: 3.7333333333vw;
        line-height: 6.4vw;
        padding-left: 0; } }

.t-annotation {
  padding-bottom: 160px; }
  @media (max-width: 1200px) {
    .t-annotation {
      padding-bottom: 13.3333333333vw; } }
  @media (max-width: 767px) {
    .t-annotation {
      padding-bottom: 10.6666666667vw; } }
  .t-annotation .t-annotation__inner {
    max-width: calc(1750px + 80px);
    padding: 0 40px;
    margin: 0 auto; }
    @media (max-width: 767px) {
      .t-annotation .t-annotation__inner {
        padding: 0 5.3333333333vw; } }
  .t-annotation .t-annotation__top {
    color: #003664;
    padding-bottom: 40px;
    font-size: 19.7px;
    line-height: 1; }
    @media (max-width: 767px) {
      .t-annotation .t-annotation__top {
        padding-bottom: 5.3333333333vw;
        font-size: 3.2vw; } }
  .t-annotation .t-annotation__cont {
    padding-bottom: 40px;
    color: #003664;
    font-size: 19.7px;
    line-height: 32.5px; }
    @media (max-width: 767px) {
      .t-annotation .t-annotation__cont {
        line-height: 6.4vw;
        font-size: 3.2vw;
        padding-bottom: 5.3333333333vw; } }
  .t-annotation .t-annotation__other {
    color: #003664;
    font-size: 19.7px;
    line-height: 32.5px; }
    @media (max-width: 767px) {
      .t-annotation .t-annotation__other {
        line-height: 6.4vw;
        font-size: 3.2vw; } }

.t-contact {
  text-align: center;
  padding-bottom: 40px;
  font-weight: 700; }
  @media (max-width: 767px) {
    .t-contact {
      padding-bottom: 5.3333333333vw; } }
  .t-contact .t-contact__ttl {
    line-height: 1;
    font-size: 40px;
    padding-bottom: 40px; }
    @media (max-width: 1200px) {
      .t-contact .t-contact__ttl {
        font-size: 3.3333333333vw;
        padding-bottom: 3.3333333333vw; } }
    @media (max-width: 767px) {
      .t-contact .t-contact__ttl {
        font-size: 5.3333333333vw;
        padding-bottom: 5.3333333333vw; } }
  .t-contact .wrap1 {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 24px;
    padding-bottom: 10px; }
    @media (max-width: 1200px) {
      .t-contact .wrap1 {
        gap: 2vw;
        padding-bottom: 0.8333333333vw; } }
    @media (max-width: 767px) {
      .t-contact .wrap1 {
        gap: 5.3333333333vw;
        padding-bottom: 5.3333333333vw; } }
  .t-contact .img {
    width: 100px; }
    @media (max-width: 1200px) {
      .t-contact .img {
        width: 8.3333333333vw; } }
    @media (max-width: 767px) {
      .t-contact .img {
        width: 21.3333333333vw; } }
  .t-contact .guidance {
    font-size: 32px; }
    @media (max-width: 1200px) {
      .t-contact .guidance {
        font-size: 2.6666666667vw; } }
    @media (max-width: 767px) {
      .t-contact .guidance {
        font-size: 4.2666666667vw; } }
  .t-contact .wrap2 {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    padding-bottom: 20px; }
    @media (max-width: 1200px) {
      .t-contact .wrap2 {
        padding-bottom: 1.6666666667vw; } }
    @media (max-width: 767px) {
      .t-contact .wrap2 {
        padding-bottom: 5.3333333333vw; } }
  .t-contact .tel {
    font-size: 60px;
    padding: 0 20px; }
    @media (max-width: 1200px) {
      .t-contact .tel {
        font-size: 5vw;
        padding: 0 1.6666666667vw; } }
    @media (max-width: 767px) {
      .t-contact .tel {
        font-size: 4.8vw;
        padding: 0; } }
  .t-contact .or {
    font-size: 48px; }
    @media (max-width: 1200px) {
      .t-contact .or {
        font-size: 4vw; } }
    @media (max-width: 767px) {
      .t-contact .or {
        font-size: 3.2vw;
        padding: 0 2.6666666667vw; } }
  .t-contact .detail {
    font-size: 23px; }
    @media (max-width: 1200px) {
      .t-contact .detail {
        font-size: 1.9166666667vw; } }
    @media (max-width: 767px) {
      .t-contact .detail {
        font-size: 2.6666666667vw; } }
