@charset "UTF-8";
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
@import url(https://unpkg.com/swiper@7/swiper-bundle.min.css);
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

  .c-slider {
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);}
    @media screen and (min-width: 720px) {
      .c-slider {
        margin-bottom: 3rem; } }
    @media screen and (max-width: 719px) {
      .c-slider {
        margin-bottom: 1.8rem; } }
    @media screen and (min-width: 720px) {
      .c-slider .swiper-button-prev,
      .c-slider .swiper-button-next {
        width: 4rem;
        height: 4rem;
        margin-top: -2rem; } }
    @media screen and (max-width: 719px) {
      .c-slider .swiper-button-prev,
      .c-slider .swiper-button-next {
        width: 2.8rem;
        height: 2.8rem;
        margin-top: -1.4rem; } }
    .c-slider .swiper-button-prev:after,
    .c-slider .swiper-button-next:after {
      content: "";
      background-image: url(../img/icon-arrow-slider.png);
      background-position: center center;
      background-repeat: no-repeat;
      background-size: 100%; }
      @media screen and (min-width: 720px) {
        .c-slider .swiper-button-prev:after,
        .c-slider .swiper-button-next:after {
          width: 4rem;
          height: 4rem; } }
      @media screen and (max-width: 719px) {
        .c-slider .swiper-button-prev:after,
        .c-slider .swiper-button-next:after {
          width: 2.8rem;
          height: 2.8rem; } }
    .c-slider .swiper-button-next:after {
      transform: rotate(180deg); }


      /* 中央以外のスライド */
      .slick-img img {
        height: auto;
        opacity: .3; // スライドを薄くする
        transform: scale(.8); // スライドのサイズを80%にする
        transition: opacity .5s, transform .5s; // スライド透過率と拡大のアニメーション時間を0.5秒に設定
        width: 100%;
      }
      /* 中央のスライド */
      .slider .slick-center img {
        opacity: 1; // 中央のスライドは透過しない
        transform: scale(1); // 中央のスライドは小さくしない
      }

      .centered-image {
        text-align: center;
    }
    
    img {
      display: inline-block;
      width: 70%; /* 画像の幅を適切に指定 */
  }

  .image-container {
    position: relative;
    display: inline-block;
}

.text-overlay-yyc {
    position: absolute;
    top: 47%;
    left: 25%;
    transform: translate(-50%, -50%);
    z-index: 1;
    font-size: 24px;
    font-weight: bold;
}

.text-overlay-pcmax {
  position: absolute;
  top: 73%;
  left: 26.5%;
  transform: translate(-50%, -50%);
  z-index: 1;
  font-size: 24px;
  font-weight: bold;
}

.text-overlay-scenario {
  position: absolute;
  top: 47%;
  left: 48.7%;
  transform: translate(-50%, -50%);
  z-index: 1;
  font-size: 24px;
  font-weight: bold;
}

.text-overlay-dine {
  position: absolute;
  top: 73%;
  left: 47.4%;
  transform: translate(-50%, -50%);
  z-index: 1;
  font-size: 24px;
  font-weight: bold;
}

.text-overlay-anju {
  position: absolute;
  top: 47%;
  left: 70.7%;
  transform: translate(-50%, -50%);
  z-index: 1;
  font-size: 24px;
  font-weight: bold;
}

.text-overlay-zexy {
  position: absolute;
  top: 73%;
  left: 70.7%;
  transform: translate(-50%, -50%);
  z-index: 1;
  font-size: 24px;
  font-weight: bold;
}

html {
  scroll-behavior: smooth;
}

.l-header {
  background-color: #FF005C; }
  @media screen and (min-width: 720px) {
    .l-header__logo {
      width: 25.2rem; } }
  @media screen and (max-width: 719px) {
    .l-header__logo {
      width: 18rem; } }
  .l-header__logo img {
    width: 100%;
    height: auto;
    vertical-align: text-bottom; }
  @media screen and (min-width: 720px) {
    .l-header__inner {
      padding: 1.6rem 2rem; } }
  @media screen and (max-width: 719px) {
    .l-header__inner {
      padding: 1.6rem 1.5rem; } }


.l-footer {
  background-color: #FF005C;
  color: #ffffff; }
  .l-footer__link {
    display: flex;
    align-items: center;
    padding: 0;
    margin: 0;
    list-style: none; }
    @media screen and (min-width: 720px) {
      .l-footer__link {
        justify-content: stretch; } }
    @media screen and (max-width: 719px) {
      .l-footer__link {
        margin-bottom: 1rem;
        justify-content: center; } }
    .l-footer__link li {
      margin-right: 1em; }
      @media screen and (min-width: 720px) {
        .l-footer__link li {
          font-size: 1.3rem; } }
      @media screen and (max-width: 719px) {
        .l-footer__link li {
          font-size: 1.1rem; } }
      .l-footer__link li a:link, .l-footer__link li a:visited, .l-footer__link li a:active, .l-footer__link li a:hover {
        text-decoration: none;
        color: #ffffff; }
    .l-footer__link > *:last-child {
      margin-right: 0; }
  .l-footer__copyright {
    line-height: 1; }
    @media screen and (min-width: 720px) {
      .l-footer__copyright {
        margin-left: auto;
        font-size: 1.2rem; } }
    @media screen and (max-width: 719px) {
      .l-footer__copyright {
        text-align: center;
        font-size: 1rem; } }
    @media screen and (min-width: 720px) {
      .l-footer__copyright small {
        font-size: 1.2rem; } }
    @media screen and (max-width: 719px) {
      .l-footer__copyright small {
        font-size: 1rem; } }
  .l-footer__inner {
    margin: 0 auto; }
    @media screen and (min-width: 720px) {
      .l-footer__inner {
        display: flex;
        align-items: center;
        justify-content: stretch;
        max-width: 72rem;
        padding: 1.6rem 2rem; } }
    @media screen and (max-width: 719px) {
      .l-footer__inner {
        padding: 1.6rem 1.5rem; } }

        .p-common-box {
          border: 1px solid #dbdbdb;
          border-radius: 1rem;
          background-color: #ffffff; }
          @media screen and (min-width: 720px) {
            .p-common-box {
              padding: 2.5rem;
              margin-bottom: 3rem; } }
          @media screen and (max-width: 719px) {
            .p-common-box {
              padding: 1.5rem;
              margin-bottom: 2rem; } }
          @media screen and (min-width: 720px) {
            .p-common-box > * {
              margin-bottom: 2rem; } }
          @media screen and (max-width: 719px) {
            .p-common-box > * {
              margin-bottom: 1.5rem; } }
          .p-common-box > *:first-child {
            margin-top: 0; }
          .p-common-box > *:last-child {
            margin-bottom: 0; }

            .c-hw-level1 {
              font-weight: 700;
              text-align: center; }
              @media screen and (min-width: 720px) {
                .c-hw-level1 {
                  line-height: 1.5;
                  margin-bottom: 4rem;
                  font-size: 3.2rem; } }
              @media screen and (max-width: 719px) {
                .c-hw-level1 {
                  line-height: 1.4;
                  margin-bottom: 2.8rem;
                  font-size: 2.4rem; } }
            
            .c-hw-level2 {
              border-bottom: 3px solid #FF005C;
              font-weight: 700; }
              @media screen and (min-width: 720px) {
                .c-hw-level2 {
                  line-height: 1.5;
                  padding-bottom: 1.6rem;
                  margin-top: 6rem;
                  margin-bottom: 4rem;
                  font-size: 2.4rem; } }
              @media screen and (max-width: 719px) {
                .c-hw-level2 {
                  line-height: 1.4;
                  padding-bottom: 1.2rem;
                  margin-top: 4rem;
                  margin-bottom: 2.8rem;
                  font-size: 2rem; }
                  .c-hw-level2 > span {
                    display: inline-block; } }
            
            .c-hw-level3 {
              line-height: 1.5;
              border-bottom: 2px solid #191919;
              font-weight: 700; }
              @media screen and (min-width: 720px) {
                .c-hw-level3 {
                  padding-bottom: 1rem;
                  margin-top: 4rem;
                  margin-bottom: 3rem;
                  font-size: 1.8rem; } }
              @media screen and (max-width: 719px) {
                .c-hw-level3 {
                  padding-bottom: 1rem;
                  margin-top: 2.8rem;
                  margin-bottom: 1.8rem;
                  font-size: 1.6rem; } }
            
            .c-hw-level4 {
              line-height: 1.5;
              font-weight: 700; }
              @media screen and (min-width: 720px) {
                .c-hw-level4 {
                  margin-top: 4rem;
                  margin-bottom: 3rem;
                  font-size: 1.6rem; } }
              @media screen and (max-width: 719px) {
                .c-hw-level4 {
                  margin-top: 2.8rem;
                  margin-bottom: 1.8rem;
                  font-size: 1.4rem; } }
                  .l-contents__inner {
                    margin: 0 auto; }
                    @media screen and (min-width: 720px) {
                      .l-contents__inner {
                        max-width: 72rem;
                        padding: 4rem 2rem 6rem; } }
                    @media screen and (max-width: 719px) {
                      .l-contents__inner {
                        padding: 2.4rem 1.5rem 4rem; } }
                    .l-contents__inner > *:last-child {
                      margin-bottom: 0; }
                  
                  @media screen and (min-width: 720px) {
                    .l-contents__section:not(:first-child) {
                      margin-top: 8rem; } }
                  
                  @media screen and (max-width: 719px) {
                    .l-contents__section:not(:first-child) {
                      margin-top: 4rem; } }