@charset "UTF-8";
/* フォント定義 */
@font-face {
  font-family: "Rounded Mplus 1c";
  src: url("../fonts/MPLUSRounded1c-Thin.ttf") format("truetype");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Rounded Mplus 1c";
  src: url("../fonts/MPLUSRounded1c-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Rounded Mplus 1c";
  src: url("../fonts/MPLUSRounded1c-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Rounded Mplus 1c";
  src: url("../fonts/MPLUSRounded1c-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Rounded Mplus 1c";
  src: url("../fonts/MPLUSRounded1c-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Rounded Mplus 1c";
  src: url("../fonts/MPLUSRounded1c-ExtraBold.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Rounded Mplus 1c";
  src: url("../fonts/MPLUSRounded1c-Black.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* フォントスタイルの統一 */
html {
  font-size: 3.734vw;
}
@media (min-width: 769px) {
  html {
    font-size: 1.25vw;
  }
}

body {
  font-family: "Rounded Mplus 1c", sans-serif;
  line-height: 1.35;
  color: #232366; /* 標準のテキストカラー */
}

/* リストスタイルのリセット */
ul,
ol {
  list-style: none;
}

/* テーブルのレイアウト */
table {
  border-collapse: collapse;
  width: 100%;
}

/* リンクのテキスト装飾の除去 */
a {
  text-decoration: none;
  color: inherit;
}

/* 画像のスタイル */
img {
  max-width: 100%;
  width: 100%;
  height: auto;
  display: block;
}

.u-pc {
  display: none;
}
@media (min-width: 769px) {
  .u-pc {
    display: block;
  }
}

.u-sp {
  display: block;
}
@media (min-width: 769px) {
  .u-sp {
    display: none;
  }
}

/* プロジェクトによって任意で追加 */
h1 {
  font-weight: 800;
}

h2 {
  font-weight: 700;
}

main {
  width: 100%;
  margin: 0;
}

.kv {
  background-color: #9ffffa;
  position: relative;
  display: block;
  width: 100%;
  height: 42.643rem;
}
@media (min-width: 769px) {
  .kv {
    height: 57.109vw;
  }
}
.kv__title {
  position: absolute;
  z-index: 2;
  top: 1.571rem;
  left: 1.143rem;
  width: 18.857rem;
  height: 8.872rem;
}
@media (min-width: 769px) {
  .kv__title {
    top: 2.89vw;
    left: 4.14vw;
    width: 38.7vw;
    height: 15.487vw;
  }
}
.kv__inner {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.kv__inner__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
}
.kv__inner__cloud {
  position: absolute;
  top: 4.071rem;
  display: flex;
  z-index: 1;
}
.kv__inner__cloud--sp {
  left: -31.646rem;
  width: 63.292rem;
  height: 8.562rem;
  animation: cloudSlideSP 15s linear infinite;
}
@media (min-width: 769px) {
  .kv__inner__cloud--sp {
    display: none;
  }
}
.kv__inner__cloud--pc {
  display: none;
}
@media (min-width: 769px) {
  .kv__inner__cloud--pc {
    display: flex;
    top: -3.203vw;
    left: -81.173vw;
    width: 162.346vw;
    height: 21.962vw;
    animation: cloudSlidePC 15s linear infinite;
  }
}
.kv__inner__cloud__img {
  flex-shrink: 0;
}
.kv__inner__cloud--sp .kv__inner__cloud__img {
  width: 31.646rem;
  height: 8.562rem;
}
.kv__inner__cloud--pc .kv__inner__cloud__img {
  width: 81.173vw;
  height: 21.962vw;
}
.kv__inner__cloud__img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.kv__inner__student {
  position: absolute;
  display: block;
  width: 100%;
  height: 24.714rem;
  bottom: 1.643rem;
  left: 0;
  z-index: 3;
}
@media (min-width: 769px) {
  .kv__inner__student {
    height: 53.828vw;
    top: 17.5vw;
    left: 0;
  }
}
.kv__inner__studentImg {
  position: relative;
  height: 100%;
}
.kv__inner__studentImg__fukidashi {
  position: absolute;
}
.kv__inner__studentImg__fukidashi--left {
  top: 0.035rem;
  left: 0;
  display: block;
  width: 8.997rem;
  height: 9.11rem;
  z-index: 4;
}
@media (min-width: 769px) {
  .kv__inner__studentImg__fukidashi--left {
    top: 0;
    left: 0.234vw;
    width: 27.701vw;
    height: 25.796vw;
  }
}
.kv__inner__studentImg__fukidashi--right {
  top: 3.571rem;
  right: 0.229rem;
  display: block;
  width: 8.227rem;
  height: 8.082rem;
  transform: rotate(-170.54deg);
}
@media (min-width: 769px) {
  .kv__inner__studentImg__fukidashi--right {
    top: 3.573vw;
    right: 1.484vw;
    width: 20.847vw;
    height: 20.478vw;
  }
}
.kv__inner__studentImg__studentPC {
  position: absolute;
}
@media (min-width: 769px) {
  .kv__inner__studentImg__studentPC--left {
    top: 5vw;
    left: 10vw;
    width: 34.219vw;
    height: 48.828vw;
    aspect-ratio: 438/625;
  }
}
@media (min-width: 769px) {
  .kv__inner__studentImg__studentPC--right {
    top: 9.453vw;
    right: 6.953vw;
    width: 39.141vw;
    height: 41.094vw;
    aspect-ratio: 501/526;
  }
}
.kv__inner__studentImg__studentSP {
  position: absolute;
  bottom: 0;
  display: block;
  width: 100%;
  height: 21.571rem;
}
@media (min-width: 769px) {
  .kv__inner__studentImg__studentSP {
    display: none;
  }
}
.kv__inner__effect {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
}
.kv__inner__effect.is-sp {
  width: 100%;
  height: auto;
}
@media (min-width: 769px) {
  .kv__inner__effect.is-sp {
    display: none;
  }
}
.kv__cta {
  position: absolute;
  bottom: 3.929rem;
  left: 1.786rem;
  width: 23rem;
  height: 4.143rem;
  z-index: 5;
}
@media (min-width: 769px) {
  .kv__cta {
    position: fixed;
    left: unset;
    bottom: 0.55vw;
    right: 0;
    width: 22.109vw;
    height: 6.094vw;
  }
}
.kv__cta__ticketBuy {
  display: none;
}
@media (min-width: 769px) {
  .kv__cta__ticketBuy {
    display: block;
    position: relative;
    width: 22.109vw;
    height: 6.094vw;
  }
}
.kv__cta__ticketBuy__bg {
  position: absolute;
  top: 0.547vw;
  left: 0.547vw;
  width: 21.641vw;
  height: 5.547vw;
  border-top-left-radius: 1.172vw;
  border-bottom-left-radius: 1.172vw;
  background-color: #447cc2;
  z-index: 1;
  transition: background-color 0.3s ease;
}
.kv__cta__ticketBuy__border {
  position: absolute;
  top: 0;
  left: 0;
  width: 22.109vw;
  height: 5.781vw;
  background-image: url("../img/img_cta_ticketbuy_border02_pc.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  z-index: 2;
  transition: transform 0.3s ease;
}
.kv__cta__ticketBuy__content {
  position: absolute;
  top: 1.472vw;
  left: 2.695vw;
  display: flex;
  gap: 0.234vw;
  align-items: center;
  z-index: 3;
  transition: transform 0.3s ease;
}
.kv__cta__ticketBuy__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.359vw;
  height: 3.072vw;
  flex-shrink: 0;
}
.kv__cta__ticketBuy__icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.kv__cta__ticketBuy__text {
  color: #fff;
  font-family: "Rounded Mplus 1c Bold", sans-serif;
  font-size: 1.406vw;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.07em;
  white-space: nowrap;
}
.kv__cta__ticketBuy:hover .kv__cta__ticketBuy__border,
.kv__cta__ticketBuy:hover .kv__cta__ticketBuy__content {
  transform: translate(0.547vw, 0.547vw);
}
.kv__cta__ticketBuy:hover .kv__cta__ticketBuy__bg {
  background-color: #1e5fb0;
}
.kv__effect {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 11.929rem;
  z-index: 4;
  background-image: url("../img/kv/img_kv_effect.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 769px) {
  .kv__effect {
    display: none;
  }
}
.kv .u-pc {
  display: none;
}
@media (min-width: 769px) {
  .kv .u-pc {
    display: block;
  }
}
.kv .u-sp {
  display: block;
}
@media (min-width: 769px) {
  .kv .u-sp {
    display: none;
  }
}

@keyframes cloudSlideSP {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(31.679rem);
  }
}
@keyframes cloudSlidePC {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(81.211vw);
  }
}
.campaign {
  position: relative;
  z-index: 6;
  display: block;
  width: 100%;
  padding-top: 2.786rem;
  padding-bottom: 3.714rem;
  background: #fcf392;
}
@media (min-width: 769px) {
  .campaign {
    z-index: 3;
    padding-top: 5.078vw;
    padding-bottom: 3.438vw;
  }
}
.campaign::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 3.079rem;
  top: -3.065rem;
  left: 0;
  background-image: url("../img/campaign/img_campaign_top_sp.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 769px) {
  .campaign::before {
    height: 10.391vw;
    top: -10.391vw;
    background-image: url("../img/campaign/img_campaign_top_pc.svg");
  }
}
.campaign::after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 3rem;
  bottom: -3rem;
  left: 0;
  background-image: url("../img/campaign/img_campaign_bottom_sp.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 769px) {
  .campaign::after {
    height: 10.313vw;
    bottom: -10.313vw;
    background-image: url("../img/campaign/img_campaign_bottom_pc.svg");
  }
}
.campaign__content {
  position: relative;
  z-index: 999;
}
.campaign__description {
  width: 24.643rem;
  margin: 0 auto;
  padding-top: 1.5rem;
}
@media (min-width: 769px) {
  .campaign__description {
    width: 63.594vw;
    padding-top: 2.031vw;
  }
}
.campaign__description p {
  position: relative;
  color: #232366;
  text-align: left;
  font-size: 1.143rem;
  font-style: normal;
  font-weight: 700;
  line-height: 140%;
}
@media (min-width: 769px) {
  .campaign__description p {
    text-align: center;
    font-size: 1.563vw;
    line-height: 135%;
  }
}
.campaign__description p::before {
  content: attr(data-text);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: transparent;
  -webkit-text-stroke-width: 0.214rem;
  -webkit-text-stroke-color: #fcf392;
  z-index: -1;
  white-space: pre-line;
}
.campaign__card {
  width: 100%;
  padding: 1.36rem 1.071rem 20.038rem;
}
@media (min-width: 769px) {
  .campaign__card {
    padding: 2.266vw 5.469vw 5.625vw;
  }
}
.campaign__cardList {
  display: flex;
  flex-direction: column;
  gap: 0.857rem;
  width: 100%;
  max-width: 24.643rem;
}
@media (min-width: 769px) {
  .campaign__cardList {
    gap: 1.563vw;
    max-width: 40.391vw;
  }
}
.campaign__cardList__item {
  width: 100%;
}
.campaign__cardList__item__img {
  display: block;
  width: 100%;
  height: auto;
}
.campaign__cardList__item__img img {
  width: 100%;
  height: auto;
  display: block;
}
.campaign__bg {
  position: absolute;
  display: block;
  z-index: 0;
  top: 58.57rem;
  left: 0;
  width: 100%;
  height: 32.071rem;
  background-image: url("../img/campaign/img_campaign_bg_sp.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 769px) {
  .campaign__bg {
    top: 25.391vw;
    left: 24.375vw;
    background-image: url("../img/campaign/img_campaign_bg_pc.webp");
    width: 75.625vw;
    height: 90.313vw;
  }
}

.event {
  position: relative;
  display: block;
  width: 100%;
  padding-top: 9.5rem;
  background-color: #9ffffa;
  height: 100%;
  overflow: hidden;
  padding-bottom: 4.071rem;
}
@media (min-width: 769px) {
  .event {
    padding-bottom: 0;
    padding-top: 0;
  }
}
.event__cloud {
  position: absolute;
  top: 2.531rem;
  display: flex;
  z-index: 0;
}
.event__cloud--sp {
  left: -30.129rem;
  width: 60.258rem;
  height: 7.139rem;
  animation: eventCloudSlideSP 15s linear infinite;
}
@media (min-width: 769px) {
  .event__cloud--sp {
    display: none;
  }
}
.event__cloud--pc {
  display: none;
}
@media (min-width: 769px) {
  .event__cloud--pc {
    display: flex;
    top: 4.887vw;
    left: -90.5vw;
    width: 181vw;
    height: 24.498vw;
    animation: eventCloudSlidePC 15s linear infinite;
  }
}
.event__cloud__img {
  flex-shrink: 0;
}
.event__cloud__img--sp {
  width: 30.129rem;
  height: 7.139rem;
}
.event__cloud__img--pc {
  width: 90.5vw;
  height: 24.498vw;
}
.event__cloud__img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.event__inner {
  position: relative;
  width: 100%;
}
@media (min-width: 769px) {
  .event__inner {
    padding-top: 16.406vw;
  }
}
.event__content {
  position: relative;
  width: 100%;
  padding-top: 1rem;
}
@media (min-width: 769px) {
  .event__content {
    padding: 1.172vw 0 2.344vw 0;
  }
}
.event__slider {
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: visible;
}
@media (min-width: 769px) {
  .event__slider {
    max-width: 78.125vw;
    padding: 2.5vw 2.344vw 0;
    margin: 0 auto;
  }
}
.event__slider__track {
  display: flex;
  gap: 1.071rem;
  padding-left: 1.071rem;
  padding-bottom: 2.714rem;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform;
  touch-action: pan-y;
}
@media (min-width: 769px) {
  .event__slider__track {
    gap: 2.5vw;
    padding-left: 0;
    padding-bottom: 4.219vw;
  }
}
.event__slider__btn__bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  transition: opacity 0.3s ease;
}
.event__slider__btn__bg--default {
  opacity: 1;
  background-image: url("../img/event/icon_arrow_prev_default_bg.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.event__slider__btn__bg--hover {
  opacity: 0;
  background-image: url("../img/event/icon_arrow_hover_bg.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.event__slider__btn__icon {
  position: absolute;
  width: 6.875rem;
  height: 6.875rem;
  pointer-events: none;
  transition: opacity 0.3s ease, top 0.3s ease, left 0.3s ease, right 0.3s ease;
}
.event__slider__btn__icon--default {
  opacity: 1;
}
.event__slider__btn__icon--hover {
  opacity: 0;
}
.event__slider__btn__icon img {
  position: absolute;
  top: -1.36%;
  left: -1.36%;
  width: 102.72%;
  height: 102.72%;
  display: block;
}
.event__slider__prevBtn, .event__slider__nextBtn {
  display: none;
}
@media (min-width: 769px) {
  .event__slider__prevBtn, .event__slider__nextBtn {
    display: block;
    position: absolute;
    top: 14.922vw;
    width: 6.875rem;
    height: 6.875rem;
    background: transparent;
    border: none;
    cursor: pointer;
    z-index: 1;
    padding: 0;
  }
}
.event__slider__prevBtn:hover .event__slider__btn__bg--default, .event__slider__nextBtn:hover .event__slider__btn__bg--default {
  opacity: 0;
}
.event__slider__prevBtn:hover .event__slider__btn__bg--hover, .event__slider__nextBtn:hover .event__slider__btn__bg--hover {
  opacity: 1;
}
.event__slider__prevBtn:hover .event__slider__btn__icon, .event__slider__nextBtn:hover .event__slider__btn__icon {
  top: 0;
  left: 0;
  right: 0;
}
.event__slider__prevBtn:hover .event__slider__btn__icon--default, .event__slider__nextBtn:hover .event__slider__btn__icon--default {
  opacity: 0;
}
.event__slider__prevBtn:hover .event__slider__btn__icon--hover, .event__slider__nextBtn:hover .event__slider__btn__icon--hover {
  opacity: 1;
}
.event__slider__prevBtn {
  left: 1rem;
}
@media (min-width: 769px) {
  .event__slider__prevBtn {
    left: -4.922vw;
  }
}
.event__slider__prevBtn .event__slider__btn__icon {
  top: -0.344rem;
  left: -0.281rem;
}
.event__slider__nextBtn {
  right: 1rem;
}
@media (min-width: 769px) {
  .event__slider__nextBtn {
    right: -4.688vw;
  }
}
.event__slider__nextBtn .event__slider__btn__icon {
  top: -0.344rem;
  right: -0.281rem;
}
.event__slider__card {
  flex-shrink: 0;
  position: relative;
}
.event__slider__card:nth-child(n+4)::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% + 0.125rem);
  height: calc(100% + 0.125rem);
  background-image: url("../img/event/img_event_card_overlay_sp.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 1;
  pointer-events: none;
  z-index: 10;
}
@media (min-width: 769px) {
  .event__slider__card:nth-child(n+4)::after {
    width: calc(100% + 0.25rem);
    height: calc(100% + 0.25rem);
    background-image: url("../img/event/img_event_card_overlay_pc.webp");
  }
}
.event__slider__card:nth-child(n+4) .event__slider__card__item__inner {
  pointer-events: none;
}
.event__slider__card:nth-child(n+4) .event__slider__card__item__inner:hover {
  transform: none;
  background-color: #ffffff;
}
.event__slider__card__item {
  width: 17rem;
  height: 100%;
  min-height: 19.25rem;
}
@media (min-width: 769px) {
  .event__slider__card__item {
    width: 33.594vw;
    min-height: 35.547vw;
  }
}
.event__slider__card__item__inner {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  border: 0.063rem solid #232366;
  border-radius: 1.25rem;
  box-shadow: 0.125rem 0.125rem 0 0 #232366;
  padding: 0.938rem;
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  transition: transform 0.3s ease, background-color 0.3s ease;
}
@media (min-width: 769px) {
  .event__slider__card__item__inner {
    border-width: 0.125rem;
    border-radius: 1.25rem;
    box-shadow: 0.1875rem 0.25rem 0 0 #232366;
    padding: 1.375rem;
    gap: 1.063rem;
  }
}
.event__slider__card__item__inner:hover {
  transform: rotate(5.47deg);
  background-color: #fffcdc;
  text-decoration: none;
}
.event__slider__card__item__image {
  width: 100%;
  height: 10.438rem;
  overflow: hidden;
  flex-shrink: 0;
}
@media (min-width: 769px) {
  .event__slider__card__item__image {
    height: 16.688rem;
  }
}
.event__slider__card__item__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.event__slider__card__item__content {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.438rem;
}
@media (min-width: 769px) {
  .event__slider__card__item__content {
    gap: 0.75rem;
  }
}
.event__slider__card__item__meta {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  width: 100%;
}
@media (min-width: 769px) {
  .event__slider__card__item__meta {
    gap: 0.375rem;
  }
}
.event__slider__card__item__date {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: #ffef42;
  border-radius: 0.25rem;
  padding: 0.125rem 0.375rem;
  width: fit-content;
}
@media (min-width: 769px) {
  .event__slider__card__item__date {
    border-radius: 0.25rem;
    padding: 0.125rem 0.625rem;
  }
}
.event__slider__card__item__date span {
  font-family: "Rounded Mplus 1c", sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.35;
  color: #232366;
  white-space: nowrap;
}
@media (min-width: 769px) {
  .event__slider__card__item__date span {
    font-size: 0.875rem;
  }
}
.event__slider__card__item__title {
  position: relative;
  width: 100%;
  border-bottom: 0.125rem dashed #232366;
  padding-bottom: 0.313rem;
  min-height: 1.75rem;
  display: flex;
  align-items: center;
  overflow: hidden;
}
@media (min-width: 769px) {
  .event__slider__card__item__title {
    border-bottom-width: 0.125rem;
    padding-bottom: 0.313rem;
    min-height: 2.375rem;
  }
}
.event__slider__card__item__title h3 {
  position: relative;
  font-family: "Rounded Mplus 1c", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0.25rem;
  color: #9ffffa;
  -webkit-text-stroke-width: 0.225rem;
  -webkit-text-stroke-color: #232366;
  paint-order: stroke fill;
  width: 100%;
  padding-left: 0.1rem;
}
@media (min-width: 769px) {
  .event__slider__card__item__title h3 {
    font-size: 1.25rem;
    letter-spacing: 0.25rem;
  }
}
.event__slider__card__item__description {
  width: 100%;
}
.event__slider__card__item__description p {
  font-family: "Rounded Mplus 1c", sans-serif;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.35;
  color: #232366;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  word-break: break-word;
}
@media (min-width: 769px) {
  .event__slider__card__item__description p {
    font-size: 1.125rem;
  }
}
.event__slider__progress {
  position: relative;
  width: 21.357rem;
  height: 0.857rem;
  margin: 0 auto;
}
@media (min-width: 769px) {
  .event__slider__progress {
    width: 78.05vw;
    height: 1.484vw;
  }
}
.event__slider__progress__track {
  position: absolute;
  left: 0;
  top: 0.286rem;
  width: 100%;
  height: 0.286rem;
  background-color: #232366;
  border-radius: 2.143rem;
}
@media (min-width: 769px) {
  .event__slider__progress__track {
    top: 50%;
    height: 0.31vw;
    transform: translateY(-50%);
  }
}
.event__slider__progress__fill {
  position: absolute;
  left: 1.357rem;
  top: 0.143rem;
  width: 9.214rem;
  height: 0.571rem;
  background-color: #ffffff;
  border: 0.143rem solid #232366;
  border-radius: 2.857rem;
  box-sizing: border-box;
  transition: left 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (min-width: 769px) {
  .event__slider__progress__fill {
    top: 0.31vw;
    height: 0.86vw;
    border-width: 0.25rem;
  }
}
.event__slider__progress__dot {
  position: absolute;
  top: 0;
  width: 0.857rem;
  height: 0.857rem;
  display: block;
}
@media (min-width: 769px) {
  .event__slider__progress__dot {
    top: 0.156vw;
    width: 1.172vw;
    height: 1.172vw;
  }
}
.event__slider__progress__dot--start {
  left: 0;
}
.event__slider__progress__dot--end {
  left: 20.5rem;
}
@media (min-width: 769px) {
  .event__slider__progress__dot--end {
    left: 76.875vw;
  }
}

@keyframes eventCloudSlideSP {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(30.129rem);
  }
}
@keyframes eventCloudSlidePC {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(90.5vw);
  }
}
.tiktok {
  position: relative;
  display: block;
  width: 100%;
  height: 61.286rem;
  padding-top: 10.857rem;
  overflow: hidden;
  margin-bottom: -8.286rem;
}
@media (min-width: 769px) {
  .tiktok {
    height: 84.609vw;
    padding-top: 17.109vw;
    margin-bottom: -19.141vw;
  }
}
.tiktok::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 13.047vw;
  display: none;
  z-index: 1;
}
@media (min-width: 769px) {
  .tiktok::before {
    display: block;
    background-image: url("../img/tiktok/img_tiktok_top_pc.webp");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}
.tiktok::after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 4.857rem;
  top: 0;
  left: 0;
  background-image: url("../img/event/img_event_bottom_sp.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 1;
}
@media (min-width: 769px) {
  .tiktok::after {
    height: 10.391vw;
    background-image: url("/img/event/img_event_bottom_pc.svg");
  }
}
.tiktok__bg {
  background-color: #fcf392;
  position: absolute;
  top: -22.143rem;
  left: -36.571rem;
  width: 100.286rem;
  height: 100.286rem;
  background-image: url("../img/tiktok/img_tiktok_bg.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: -1;
  animation: tiktokBgRotate 60s linear infinite;
}
@media (min-width: 769px) {
  .tiktok__bg {
    top: -47.813vw;
    left: -33.125vw;
    width: 166.25vw;
    height: 166.25vw;
  }
}
@keyframes tiktokBgRotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.tiktok__inner {
  position: relative;
  width: 100%;
}
.tiktok__content {
  position: relative;
  width: 100%;
  padding-top: 20px;
}
@media (min-width: 769px) {
  .tiktok__content {
    padding-top: 38px;
  }
}
.tiktok__slider {
  position: relative;
  width: 100%;
  max-width: 100%;
  height: 28.714rem;
}
@media (min-width: 769px) {
  .tiktok__slider {
    max-width: 100%;
    margin: 0 auto;
    height: 52.031vw;
  }
}
.tiktok__slider__prevBtn, .tiktok__slider__nextBtn {
  display: none;
}
@media (min-width: 769px) {
  .tiktok__slider__prevBtn, .tiktok__slider__nextBtn {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 4.688vw;
    height: 4.688vw;
    background: transparent;
    border: none;
    cursor: pointer;
    z-index: 1;
    padding: 0;
  }
}
.tiktok__slider__prevBtn--sp, .tiktok__slider__nextBtn--sp {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 4.429rem;
  height: 4.5rem;
  background: transparent;
  border: none;
  cursor: pointer;
  z-index: 4;
  padding: 0;
}
@media (min-width: 769px) {
  .tiktok__slider__prevBtn--sp, .tiktok__slider__nextBtn--sp {
    display: none;
  }
}
@media (min-width: 769px) {
  .tiktok__slider__prevBtn {
    left: 5vw;
  }
}
.tiktok__slider__prevBtn--sp {
  left: calc(50% - 12.438rem);
}
.tiktok__slider__prevBtn:hover .tiktok__slider__btn__bg--default, .tiktok__slider__prevBtn:active .tiktok__slider__btn__bg--default {
  opacity: 0;
}
.tiktok__slider__prevBtn:hover .tiktok__slider__btn__bg--hover, .tiktok__slider__prevBtn:active .tiktok__slider__btn__bg--hover {
  opacity: 1;
}
.tiktok__slider__prevBtn:hover .tiktok__slider__btn__icon, .tiktok__slider__prevBtn:active .tiktok__slider__btn__icon {
  top: 50%;
  left: 50%;
}
@media (min-width: 769px) {
  .tiktok__slider__nextBtn {
    right: 5vw;
  }
}
.tiktok__slider__nextBtn--sp {
  right: calc(50% - 12.276rem);
}
.tiktok__slider__nextBtn .tiktok__slider__btn__icon {
  top: calc(50% - 0.224rem);
  left: calc(50% + 0.182rem);
  transform: translate(-50%, -50%) rotate(180deg);
}
.tiktok__slider__nextBtn:hover .tiktok__slider__btn__bg--default, .tiktok__slider__nextBtn:active .tiktok__slider__btn__bg--default {
  opacity: 0;
}
.tiktok__slider__nextBtn:hover .tiktok__slider__btn__bg--hover, .tiktok__slider__nextBtn:active .tiktok__slider__btn__bg--hover {
  opacity: 1;
}
.tiktok__slider__nextBtn:hover .tiktok__slider__btn__icon, .tiktok__slider__nextBtn:active .tiktok__slider__btn__icon {
  top: 50%;
  left: 50%;
}
.tiktok__slider__btn__bg {
  position: absolute;
  width: 4.46rem;
  height: 4.49rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 0;
  transition: opacity 0.2s ease;
}
.tiktok__slider__btn__bg img {
  display: block;
  width: 100%;
  height: 100%;
}
.tiktok__slider__btn__bg--default {
  opacity: 1;
}
.tiktok__slider__btn__bg--hover {
  opacity: 0;
}
.tiktok__slider__btn__icon {
  position: absolute;
  width: 4.679rem;
  height: 4.714rem;
  top: calc(50% - 0.224rem);
  left: calc(50% - 0.182rem);
  transform: translate(-50%, -50%);
  z-index: 1;
  transition: top 0.2s ease, left 0.2s ease;
}
.tiktok__slider__btn__icon img {
  display: block;
  width: 100%;
  height: 100%;
  height: 100%;
}
.tiktok__slider__track {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 0;
  transition: transform 0.3s ease;
  overflow: hidden;
  pointer-events: none;
}
@media (min-width: 769px) {
  .tiktok__slider__track {
    align-items: flex-end;
    gap: 2.891vw;
    padding: 0;
  }
}
.tiktok__slider__card {
  position: relative;
  pointer-events: auto;
  flex-shrink: 0;
  transition: width 0.3s ease, height 0.3s ease, transform 0.3s ease;
  width: 11.143rem;
  height: 21.571rem;
}
@media (min-width: 769px) {
  .tiktok__slider__card {
    width: 22.734vw;
    height: 43.906vw;
  }
}
.tiktok__slider__card--main {
  width: 14.857rem;
  height: 28.714rem;
}
@media (min-width: 769px) {
  .tiktok__slider__card--main {
    width: 26.953vw;
    height: 52.031vw;
  }
}
.tiktok__slider__card--main .tiktok__slider__card__phone__screen {
  top: 9.353%;
  left: 4.986%;
  right: 4.986%;
  bottom: 7.721%;
}
@media (min-width: 769px) {
  .tiktok__slider__card--main .tiktok__slider__card__phone__screen {
    top: 9.985%;
    left: 5.507%;
    right: 5.797%;
    bottom: 8.333%;
  }
}
.tiktok__slider__card__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 1.357rem;
  z-index: 3;
  pointer-events: none;
  opacity: 1;
  transition: opacity 0.3s ease;
}
@media (min-width: 769px) {
  .tiktok__slider__card__overlay {
    display: none;
  }
}
.tiktok__slider__card--main .tiktok__slider__card__overlay {
  opacity: 0;
}
.tiktok__slider__card__phone {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.tiktok__slider__card__phone__frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  pointer-events: none;
}
.tiktok__slider__card__phone__screen {
  position: absolute;
  overflow: hidden;
  z-index: 2;
  top: 9.609%;
  left: 4.987%;
  right: 4.987%;
  bottom: 7.72%;
}
@media (min-width: 769px) {
  .tiktok__slider__card__phone__screen {
    top: 9.644%;
    left: 5.842%;
    right: 5.498%;
    bottom: 8.754%;
  }
}
.tiktok__slider__card__phone__screen img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.tiktok__slider__card__phone__screen video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.iphone {
  position: relative;
  display: block;
  width: 100%;
  padding: 4.286rem 0;
  background-color: #f5f5f5;
  overflow: hidden;
}
@media (min-width: 769px) {
  .iphone {
    padding: 6.25vw 0;
  }
}
.iphone__inner {
  width: 100%;
  max-width: 100%;
}
.iphone__slider {
  position: relative;
  width: 100%;
  overflow: visible;
}
.iphone__slider__track {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 2.643rem;
  padding: 0 1.429rem;
}
@media (min-width: 769px) {
  .iphone__slider__track {
    gap: 2.891vw;
    padding: 0;
  }
}
.iphone__slider__card {
  position: relative;
  flex-shrink: 0;
  transition: transform 0.3s ease;
  width: 20.817rem;
  height: 40.149rem;
}
@media (min-width: 769px) {
  .iphone__slider__card {
    width: 22.768vw;
    height: 43.913vw;
  }
}
.iphone__slider__card--main {
  width: 24.642rem;
  height: 47.578rem;
}
@media (min-width: 769px) {
  .iphone__slider__card--main {
    width: 26.953vw;
    height: 52.039vw;
  }
}
.iphone__slider__card__phone {
  position: relative;
  width: 100%;
  height: 100%;
}
.iphone__slider__card__phone__frame {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}
.iphone__slider__card__phone__screen {
  position: absolute;
  top: 3.143rem;
  left: 1.214rem;
  right: 1.214rem;
  bottom: 3.286rem;
  background-color: #fff;
  border-radius: 2rem;
  overflow: hidden;
  z-index: 1;
}
@media (min-width: 769px) {
  .iphone__slider__card__phone__screen {
    top: 3.438vw;
    left: 1.328vw;
    right: 1.328vw;
    bottom: 3.594vw;
    border-radius: 2.188vw;
  }
}

.ticket {
  position: relative;
  display: block;
  width: 100%;
  height: 54.714rem;
  background-image: url("../img/ticket/img_ticket_bg_sp.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 2;
  overflow: hidden;
}
@media (min-width: 769px) {
  .ticket {
    height: 84.453vw;
    background-image: url("../img/ticket/img_ticket_bg_pc.webp");
  }
}
.ticket__inner {
  position: relative;
  width: 100%;
}
.ticket .cta--ticket {
  position: absolute;
  background: none;
  border: none;
  top: 32rem;
  left: 50%;
  transform: translate(-50%);
}
@media (min-width: 769px) {
  .ticket .cta--ticket {
    top: 57.734vw;
  }
}
.ticket .cta--ticket::after {
  display: none;
}

.sectionTitle {
  position: relative;
  width: 24.643rem;
  height: 8.929rem;
  margin: 0 auto;
  padding-top: 3.108rem;
}
@media (min-width: 769px) {
  .sectionTitle {
    width: 54.063vw;
    height: 9.531vw;
    margin: 0 auto;
    padding-top: 4.375vw;
  }
}
.sectionTitle__title {
  position: relative;
  width: 22.071rem;
  height: 6rem;
  margin: 0 auto;
  padding: 0 0.714rem 0.571rem 0.389rem;
}
@media (min-width: 769px) {
  .sectionTitle__title {
    width: 49.141vw;
    height: 4.844vw;
    padding: 0 0.684vw 1.038vw 0.625vw;
  }
}
.sectionTitle__title__text {
  color: var(--FFFFFF, #fff);
  text-align: center;
  text-shadow: 0.214rem 0.214rem 0 var(--232366, #232366);
  -webkit-text-stroke-width: 0.143rem;
  -webkit-text-stroke-color: var(--232366, #232366);
  font-family: "Rounded Mplus 1c", sans-serif;
  font-size: 2.429rem;
  font-style: normal;
  font-weight: 900;
  line-height: 2.786rem;
  letter-spacing: 0.05em;
  transform: skewX(-20deg);
  z-index: 999;
}
@media (min-width: 769px) {
  .sectionTitle__title__text {
    font-size: 3.75vw;
    line-height: 3.906vw;
    text-shadow: 0.234vw 0.234vw 0 var(--232366, #232366);
    -webkit-text-stroke-width: 0.156vw;
  }
}
.sectionTitle__title__effect {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.sectionTitle__title__effect__inner {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}
.sectionTitle__title__effect__inner__flash {
  position: absolute;
  z-index: 1;
}
.sectionTitle__title__effect__inner__flash01 {
  top: 1.392rem;
  left: -0.571rem;
  width: 2.143rem;
  height: 2.143rem;
  animation: sparkle 3.5s ease-in-out infinite;
}
@media (min-width: 769px) {
  .sectionTitle__title__effect__inner__flash01 {
    top: -1.719vw;
    left: -1.25vw;
    width: 2.031vw;
    height: 2.031vw;
  }
}
.sectionTitle__title__effect__inner__flash02 {
  top: 3.107rem;
  left: -1.429rem;
  width: 1.643rem;
  height: 1.643rem;
  animation: sparkle 1.5s ease-in-out infinite 0.4s;
}
@media (min-width: 769px) {
  .sectionTitle__title__effect__inner__flash02 {
    top: -0.156vw;
    left: -2.422vw;
    width: 2.734vw;
    height: 2.734vw;
  }
}
.sectionTitle__title__effect__inner__flash03 {
  top: 2.892rem;
  right: -1.571rem;
  width: 1.643rem;
  height: 1.643rem;
  animation: sparkle 1.5s ease-in-out infinite 0.8s;
}
@media (min-width: 769px) {
  .sectionTitle__title__effect__inner__flash03 {
    top: 0.859vw;
    right: -2.969vw;
    width: 2.031vw;
    height: 2.031vw;
  }
}
.sectionTitle__title__effect__inner__flash04 {
  bottom: -0.249rem;
  right: -0.714rem;
  width: 2.143rem;
  height: 2.143rem;
  animation: sparkle 1.5s ease-in-out infinite 1.2s;
}
@media (min-width: 769px) {
  .sectionTitle__title__effect__inner__flash04 {
    bottom: -0.313vw;
    right: -1.875vw;
    width: 2.734vw;
    height: 2.734vw;
  }
}
@keyframes sparkle {
  0%, 100% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(0.5);
    opacity: 0.5;
  }
}
.sectionTitle--campaign::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url("../img/campaign/img_campaign_title_top_sp.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  top: 0.429rem;
  left: 50%;
  transform: translateX(-50%);
  width: 10.143rem;
  height: 2.286rem;
  z-index: 0;
}
@media (min-width: 769px) {
  .sectionTitle--campaign::before {
    background-image: url("../img/campaign/img_campaign_title_top_pc.svg");
    top: 0.469vw;
    width: 13.672vw;
    height: 3.203vw;
  }
}
.sectionTitle--campaign .sectionTitle__title__effect__inner::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url("../img/campaign/img_campaign_title_underbar_01_sp.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  top: 1.714rem;
  left: 4.786rem;
  width: 12.5rem;
  height: 1.643rem;
  z-index: 0;
}
@media (min-width: 769px) {
  .sectionTitle--campaign .sectionTitle__title__effect__inner::before {
    top: unset;
    bottom: 0;
    left: 0;
    width: 49.141vw;
    height: 1.797vw;
    background-image: url("../img/campaign/img_campaign_title_underbar.svg");
  }
}
.sectionTitle--campaign .sectionTitle__title__effect__inner::after {
  content: "";
  position: absolute;
  display: block;
  background-image: url("../img/campaign/img_campaign_title_underbar_02_sp.svg");
  bottom: 0;
  left: 0;
  width: 22.071rem;
  height: 1.643rem;
  z-index: 0;
}
@media (min-width: 769px) {
  .sectionTitle--campaign .sectionTitle__title__effect__inner::after {
    display: none;
  }
}
.sectionTitle--event .sectionTitle__title, .sectionTitle--tiktok .sectionTitle__title {
  width: 23.786rem;
  height: 3.392rem;
}
@media (min-width: 769px) {
  .sectionTitle--event .sectionTitle__title, .sectionTitle--tiktok .sectionTitle__title {
    width: 19.219vw;
    height: 4.922vw;
  }
}
.sectionTitle--event {
  width: 21.286rem;
  height: 6.429rem;
  padding-top: 2.071rem;
}
@media (min-width: 769px) {
  .sectionTitle--event {
    width: 31.875vw;
    height: 8.203vw;
    padding-top: 2.969vw;
  }
}
.sectionTitle--event .sectionTitle__title {
  width: 17.571rem;
  height: 3.392rem;
  padding: 0;
  margin: 0 2.357rem 0 1.357rem;
}
@media (min-width: 769px) {
  .sectionTitle--event .sectionTitle__title {
    width: 26.016vw;
    height: 4.922vw;
    margin: 0 3.75vw 0 2.109vw;
  }
}
.sectionTitle--event::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url("../img/event/img_event_title_top_sp.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  top: 0;
  left: 6.643rem;
  transform: translateX(0);
  width: 7.786rem;
  height: 1.571rem;
  z-index: 0;
}
@media (min-width: 769px) {
  .sectionTitle--event::before {
    background-image: url("../img/event/img_event_title_top_pc.svg");
    top: 0;
    left: 10.547vw;
    width: 10.469vw;
    height: 2.031vw;
  }
}
.sectionTitle--event .sectionTitle__title__effect__inner::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url("../img/event/img_event_title_underbar_sp.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  top: 1.751rem;
  left: 0;
  width: 17.571rem;
  height: 1.643rem;
  z-index: 0;
}
@media (min-width: 769px) {
  .sectionTitle--event .sectionTitle__title__effect__inner::before {
    top: unset;
    bottom: 0;
    left: 0;
    width: 26.016vw;
    height: 1.797vw;
    background-image: url("../img/event/img_event_title_underbar_pc.svg");
  }
}
.sectionTitle--event .sectionTitle__title__effect__inner::after {
  display: none;
}
.sectionTitle--event .sectionTitle__title__effect__inner__flash01 {
  width: 2.143rem;
  height: 2.143rem;
  top: -1rem;
  left: -0.5rem;
}
@media (min-width: 769px) {
  .sectionTitle--event .sectionTitle__title__effect__inner__flash01 {
    top: -1.641vw;
    left: -0.313vw;
    width: 2.031vw;
    height: 2.031vw;
  }
}
.sectionTitle--event .sectionTitle__title__effect__inner__flash02 {
  width: 1.643rem;
  height: 1.643rem;
  top: 0.643rem;
  left: -1.357rem;
}
@media (min-width: 769px) {
  .sectionTitle--event .sectionTitle__title__effect__inner__flash02 {
    top: -0.078vw;
    left: -2.109vw;
    width: 2.734vw;
    height: 2.734vw;
  }
}
.sectionTitle--event .sectionTitle__title__effect__inner__flash03 {
  width: 1.643rem;
  height: 1.643rem;
  top: 1rem;
  right: -2.357rem;
}
@media (min-width: 769px) {
  .sectionTitle--event .sectionTitle__title__effect__inner__flash03 {
    top: 0.938vw;
    right: -3.75vw;
    width: 2.031vw;
    height: 2.031vw;
  }
}
.sectionTitle--event .sectionTitle__title__effect__inner__flash04 {
  width: 2.143rem;
  height: 2.143rem;
  top: 2.214rem;
  right: -0.929rem;
}
@media (min-width: 769px) {
  .sectionTitle--event .sectionTitle__title__effect__inner__flash04 {
    top: 2.5vw;
    right: -2.656vw;
    width: 2.734vw;
    height: 2.734vw;
  }
}
.sectionTitle--tiktok {
  width: 20.786rem;
  height: 5.857rem;
  padding-top: 1.5rem;
}
@media (min-width: 769px) {
  .sectionTitle--tiktok {
    width: 30.078vw;
    height: 7.656vw;
    padding-top: 2.578vw;
  }
}
.sectionTitle--tiktok .sectionTitle__title {
  width: 16.143rem;
  height: 3.429rem;
  padding: 0;
  margin: 0 2.357rem 0 2.286rem;
}
@media (min-width: 769px) {
  .sectionTitle--tiktok .sectionTitle__title {
    width: 23.125vw;
    height: 4.922vw;
    margin: 0 3.438vw 0 3.516vw;
  }
}
.sectionTitle--tiktok::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url("../img/tiktok/img_tiktok_title_top_sp.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  top: 0;
  left: 8rem;
  transform: translateX(0);
  width: 4.5rem;
  height: 1.357rem;
  z-index: 0;
}
@media (min-width: 769px) {
  .sectionTitle--tiktok::before {
    background-image: url("../img/tiktok/img_tiktok_title_top_pc.svg");
    top: 0;
    left: 11.508vw;
    width: 6.19vw;
    height: 1.984vw;
  }
}
.sectionTitle--tiktok .sectionTitle__title__effect__inner::before {
  content: "";
  position: absolute;
  display: block;
  background-image: url("../img/tiktok/img_tiktok_title_underbar_sp.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  top: 1.786rem;
  left: 0;
  width: 15.714rem;
  height: 1.643rem;
  z-index: 0;
  opacity: 0.8;
}
@media (min-width: 769px) {
  .sectionTitle--tiktok .sectionTitle__title__effect__inner::before {
    top: unset;
    bottom: 0;
    left: 0.313vw;
    width: 21.797vw;
    height: 2.109vw;
    background-image: url("../img/tiktok/img_tiktok_title_underbar_pc.svg");
    opacity: 0.7;
  }
}
.sectionTitle--tiktok .sectionTitle__title__effect__inner::after {
  display: none;
}
.sectionTitle--tiktok .sectionTitle__title__effect__inner__flash01 {
  width: 2.143rem;
  height: 2.143rem;
  top: -1.071rem;
  left: -1.429rem;
}
@media (min-width: 769px) {
  .sectionTitle--tiktok .sectionTitle__title__effect__inner__flash01 {
    top: -1.797vw;
    left: -1.719vw;
    width: 2.031vw;
    height: 2.031vw;
  }
}
.sectionTitle--tiktok .sectionTitle__title__effect__inner__flash02 {
  width: 1.643rem;
  height: 1.643rem;
  top: 0.643rem;
  left: -2.214rem;
}
@media (min-width: 769px) {
  .sectionTitle--tiktok .sectionTitle__title__effect__inner__flash02 {
    top: unset;
    bottom: 2.422vw;
    left: -3.516vw;
    width: 2.734vw;
    height: 2.734vw;
  }
}
.sectionTitle--tiktok .sectionTitle__title__effect__inner__flash03 {
  width: 1.643rem;
  height: 1.643rem;
  top: 1rem;
  right: -2.357rem;
}
@media (min-width: 769px) {
  .sectionTitle--tiktok .sectionTitle__title__effect__inner__flash03 {
    top: 0.781vw;
    right: -3.438vw;
    width: 2.031vw;
    height: 2.031vw;
  }
}
.sectionTitle--tiktok .sectionTitle__title__effect__inner__flash04 {
  width: 2.143rem;
  height: 2.143rem;
  top: 2.214rem;
  right: -1.5rem;
}
@media (min-width: 769px) {
  .sectionTitle--tiktok .sectionTitle__title__effect__inner__flash04 {
    top: 2.344vw;
    right: -2.344vw;
    width: 2.734vw;
    height: 2.734vw;
  }
}

.cta {
  position: relative;
  width: 24.929rem;
  height: 21.857rem;
  border-radius: 1.429rem;
  border: solid 0.143rem #232366;
  background-color: #fff;
  background-image: url("../img/campaign/img_cta_bg_sp.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 1.857rem 0.929rem 1.929rem 0.714rem;
  margin: 0 auto;
}
@media (min-width: 769px) {
  .cta {
    width: 89.375vw;
    height: 26.094vw;
    border-radius: 2.344vw;
    background-image: url("../img/campaign/img_cta_bg_pc.webp");
    padding: 3.594vw 15vw 4.063vw 14.531vw;
  }
}
.cta::after {
  content: "";
  position: absolute;
  display: block;
  width: 10.143rem;
  height: 6.857rem;
  top: -4.857rem;
  left: -0.929rem;
  z-index: 999;
  background-image: url("../img/img_cta_label.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  animation: ctaLabelFloat 2s ease-in-out infinite;
}
@media (min-width: 769px) {
  .cta::after {
    display: none;
  }
}
@keyframes ctaLabelFloat {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
}
@media (min-width: 769px) {
  .cta__inner {
    width: 59.531vw;
  }
}
.cta__content {
  width: 21.643rem;
  margin: 0 0.571rem 0 0.786rem;
}
@media (min-width: 769px) {
  .cta__content {
    width: 59.531vw;
    margin: 0;
  }
}
.cta__content__text {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 21.643rem;
  height: 3.071rem;
  color: var(--232366, #232366);
  text-align: center;
  font-size: 1.143rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
@media (min-width: 769px) {
  .cta__content__text {
    width: 52.344vw;
    height: 2.578vw;
    font-size: 1.953vw;
    line-height: 1.35;
    margin: 0 3.359vw 0 3.828vw;
    letter-spacing: 0.01em;
  }
}
.cta__content__text::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 1.286rem;
  height: 3.071rem;
  background-image: url("../img/img_cta_text_dot_left_sp.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 769px) {
  .cta__content__text::before {
    top: 0.469vw;
    width: 0.859vw;
    height: 1.641vw;
    background-image: url("../img/img_cta_text_dot_left_pc.webp");
  }
}
.cta__content__text::after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  width: 1.286rem;
  height: 3.071rem;
  background-image: url("../img/img_cta_text_dot_right_sp.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media (min-width: 769px) {
  .cta__content__text::after {
    top: 0.469vw;
    width: 0.859vw;
    height: 1.641vw;
    background-image: url("../img/img_cta_text_dot_right_pc.webp");
  }
}
.cta__content__text p {
  transform: skewX(-10deg);
}
.cta__content__btn {
  display: flex;
  flex-direction: column;
  gap: 0.786rem;
  padding-top: 0.714rem;
  margin: 0 1.081rem 0 0.868rem;
  padding-bottom: 0.143rem;
}
@media (min-width: 769px) {
  .cta__content__btn {
    flex-direction: row;
    gap: 1.719vw;
    padding-top: 0.703vw;
    margin: 0;
  }
}
.cta__ticketBuy {
  display: block;
  position: relative;
  padding-bottom: 1.214rem;
}
@media (min-width: 769px) {
  .cta__ticketBuy {
    margin-left: 11.406vw;
    padding-bottom: 1.867vw;
  }
}
.cta__ticketBuy__link {
  position: relative;
  z-index: 999;
  display: flex;
  gap: 0.571rem;
  align-items: center;
  width: 23rem;
  height: 4.071rem;
  padding: 0.765rem 0 0.564rem 3.786rem;
  color: #fff;
  font-size: 1.143rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.07em;
  border-radius: 999px;
  background-image: url("../img/img_cta_ticketbuy_border_sp.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: transform 0.3s ease;
}
@media (min-width: 769px) {
  .cta__ticketBuy__link {
    width: 36.719vw;
    height: 6.484vw;
    padding: 1.234vw 0 1.269vw 6.27vw;
    font-size: 1.875vw;
    letter-spacing: 0.07em;
    background-image: url("../img/img_cta_ticketbuy_border_pc.webp");
  }
}
.cta__ticketBuy__link__icon {
  display: block;
  width: 3rem;
  height: 2.743rem;
  flex-shrink: 0;
}
@media (min-width: 769px) {
  .cta__ticketBuy__link__icon {
    width: 3.984vw;
    height: 3.984vw;
  }
}
.cta__ticketBuy::before {
  content: "";
  position: absolute;
  display: block;
  width: 22.803rem;
  height: 3.893rem;
  top: 0.321rem;
  left: 0.34rem;
  border-radius: 999px;
  background-color: #447cc2;
  z-index: 0;
  transition: background-color 0.3s ease;
}
@media (min-width: 769px) {
  .cta__ticketBuy::before {
    width: 36.484vw;
    height: 6.25vw;
    top: 0.539vw;
    left: 0.566vw;
  }
}
.cta__ticketBuy:hover {
  text-decoration: none;
}
.cta__ticketBuy:hover .cta__ticketBuy__link {
  transform: translate(0.34rem, 0.321rem);
  text-decoration: none;
}
@media (min-width: 769px) {
  .cta__ticketBuy:hover .cta__ticketBuy__link {
    transform: translate(0.566vw, 0.539vw);
  }
}
.cta__ticketBuy:hover::before {
  background-color: #1e5fb0;
}
.cta__bus {
  position: relative;
  display: block;
}
.cta__bus__link {
  position: relative;
  display: flex;
  gap: 0.571rem;
  align-items: center;
  width: 19.429rem;
  height: 4.071rem;
  padding: 0.708rem 0 0.506rem 3.25rem;
  color: #fff;
  font-size: 1.143rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.07em;
  border-radius: 999px;
  background-image: url("../img/img_cta_bus_border_sp.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: transform 0.3s ease;
}
@media (min-width: 769px) {
  .cta__bus__link {
    width: 28.906vw;
    height: 6.484vw;
    padding: 1.514vw 0 1.377vw 4.609vw;
    font-size: 1.875vw;
    letter-spacing: 0.07em;
    background-image: url("../img/img_cta_bus_border_pc.webp");
  }
}
.cta__bus__link__icon {
  display: block;
  width: 2.857rem;
  height: 2.857rem;
  flex-shrink: 0;
}
@media (min-width: 769px) {
  .cta__bus__link__icon {
    width: 3.594vw;
    height: 3.594vw;
  }
}
.cta__bus::before {
  content: "";
  position: absolute;
  display: block;
  width: 19.214rem;
  height: 3.893rem;
  top: 0.321rem;
  left: 0.34rem;
  border-radius: 999px;
  background-color: #e05a63;
  z-index: 0;
  transition: background-color 0.3s ease;
}
@media (min-width: 769px) {
  .cta__bus::before {
    width: 28.672vw;
    height: 6.25vw;
    top: 0.498vw;
    left: 0.547vw;
  }
}
.cta__bus:hover {
  text-decoration: none;
}
.cta__bus:hover .cta__bus__link {
  transform: translate(0.34rem, 0.321rem);
  text-decoration: none;
}
@media (min-width: 769px) {
  .cta__bus:hover .cta__bus__link {
    transform: translate(0.547vw, 0.498vw);
  }
}
.cta__bus:hover::before {
  background-color: #da3a45;
}
.cta__car {
  position: relative;
  display: block;
}
.cta__car__link {
  position: relative;
  display: flex;
  gap: 0.571rem;
  align-items: center;
  width: 19.429rem;
  height: 4.071rem;
  padding: 0.708rem 0 0.506rem 2.643rem;
  color: #fff;
  font-size: 1.143rem;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.07em;
  border-radius: 999px;
  background-image: url("../img/img_cta_bus_border_sp.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  transition: transform 0.3s ease;
}
@media (min-width: 769px) {
  .cta__car__link {
    width: 28.906vw;
    height: 6.484vw;
    padding: 1.514vw 0 1.377vw 3.594vw;
    font-size: 1.875vw;
    letter-spacing: 0.07em;
    background-image: url("../img/img_cta_bus_border_pc.webp");
  }
}
.cta__car__link__icon {
  display: block;
  width: 2.857rem;
  height: 2.857rem;
  flex-shrink: 0;
}
@media (min-width: 769px) {
  .cta__car__link__icon {
    width: 3.828vw;
    height: 3.828vw;
  }
}
.cta__car::before {
  content: "";
  position: absolute;
  display: block;
  width: 19.214rem;
  height: 3.893rem;
  top: 0.321rem;
  left: 0.34rem;
  border-radius: 999px;
  background-color: #e05a63;
  z-index: 0;
  transition: background-color 0.3s ease;
}
@media (min-width: 769px) {
  .cta__car::before {
    width: 28.672vw;
    height: 6.25vw;
    top: 0.498vw;
    left: 0.547vw;
  }
}
.cta__car:hover {
  text-decoration: none;
}
.cta__car:hover .cta__car__link {
  transform: translate(0.34rem, 0.321rem);
  text-decoration: none;
}
@media (min-width: 769px) {
  .cta__car:hover .cta__car__link {
    transform: translate(0.547vw, 0.498vw);
  }
}
.cta__car:hover::before {
  background-color: #da3a45;
}