@charset "UTF-8";
/*=============================================
*
* 共通要素
*
=============================================*/
.top-common-heading-box {
  background: #fff;
  border-bottom: #000 solid 1px;
  border-top: #000 solid 1px;
  margin: 0 auto;
  text-align: left;
}
.top-common-heading {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  height: 38px;
  position: relative;
}
.top-common-heading::before {
  background: url(../images/top/top-news-icon.svg) no-repeat center center #86ECFF;
  content: "";
  display: block;
  border-right: #000 solid 1px;
  height: 100%;
  width: 38px;
}

.top-common-heading__eng-text {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 3.4rem;
  font-weight: 500;
  line-height: 1;
  margin-left: 10px;
}

.top-common-heading__jpn-text {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  margin-left: 10px;
  position: relative;
  top: 5px;
}

/*=============================================
*
* 
*
=============================================*/
section {
  background: #fff;
  border-left: #000 solid 1px;
  border-right: #000 solid 1px;
  margin: 0 auto;
  max-width: 650px;
}
/*=============================================
*
* フローティングボタン
*
=============================================*/
.buy-tickets-floating-btn {
  bottom: 10px;
  position: fixed;
  right: 10px;
  z-index: 20;
}

/*=============================================
*
* HERO
*
=============================================*/
.hero {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.hero__inner {
  margin: 0 auto;
  max-width: 650px;
}

.hero__img-box {
  margin: 0 auto;
  width: 100%;
}
.hero__img-box img {
  width: 100%;
  height: auto;
  display: block;
}
.hero__img-box picture {
  display: block;
  width: 100%;
}
@media screen and (max-width: 700px) {
  .hero__img-box img {
    height: auto;
  }
}

.hero__movie-box {
  margin: 0 auto;
  width: 100%;
}
.hero__movie-box video {
  height: auto;
  max-width: 100%;
}

/*=============================================
*
* TOPICS
*
=============================================*/
.top-topics {
  background: #EDEDED;
  padding: 25px 0;
  position: relative;
  width: 100%;
  overflow: hidden;
}

.top-topics__inner {
  background: #B9F4FF;
  margin: 0 auto;
  max-width: 650px;
  position: relative;
}

.top-topics__heading::before {
  background: url(../images/top/top-topics-icon.svg) no-repeat center center #86ECFF;
}

.top-topics__swiper {
  margin: 0 auto;
  width: 100%;
}
.swiper-button-next,
.swiper-button-prev {
  background: url(../images/carousel/carousel-arrow.svg) no-repeat center center #fff;
  border-radius: 50%;
  bottom: 5px;
  height: 35px;
  margin: 0;
  top: auto;
  width: 35px;
  z-index: 1;
}
@media screen and (max-width: 700px) {
  .swiper-button-next,
  .swiper-button-prev {
    height: 25px;
    width: 25px;
  }
}
.swiper-button-next:after,
.swiper-button-prev:after {
  display: none;
}

.swiper-button-next {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.swiper-pagination {
  border-top: #000 solid 1px;
  bottom: 8px !important;
  margin-top: 0 !important;
  padding-top: 20px;
  z-index: 1;
}

.swiper-pagination-bullet {
  background: #CCCCCC;
  width: 14px;
}

.swiper-pagination-bullet-active {
  background: #000;
}

/*=============================================
*
* ニュース
*
=============================================*/
.top-news__inner {
  margin: 0 auto;
  max-width: 650px;
  padding: 30px 0;
}

.top-news__heading::before {
  background: url(../images/top/news-icon.svg) no-repeat center center #86ECFF;
}

.top-news__contents-area {
  padding: 10px;
}
.top-news__contents-area .year-month {
  font-family: "Roboto", sans-serif;
  font-size: 2.6rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.top-news__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  margin: 20px auto 20px;
}
@media screen and (max-width: 700px) {
  .top-news__list {
    gap: 10px;
  }
}
.top-news__list > li {
  border-bottom: 1px solid #D8D8D8;
  list-style: none;
  padding: 0 0 10px;
}
.top-news__thumb {
  max-width: 80px;
}
@media screen and (max-width: 700px) {
  .top-news__thumb {
    max-width: 60px;
  }
}

.top-news__list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  gap: 15px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  width: 100%;
}
@media screen and (max-width: 700px) {
  .top-news__list-item {
    gap: 10px;
  }
}

.top-news__info-box {
  width: 100%;
}

.top-news__info-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 10px;
  width: 100%;
}

.top-news__info-date {
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.5rem;
  margin-right: 5px;
}

.top-news__tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5px;
}

.top-news__tag {
  border-radius: 100px;
  display: inline-block;
  font-size: 1rem;
  line-height: 1;
  padding: 5px 7px;
  width: auto;
  pointer-events: none;
}
.top-news__tag.-notice {
  background-color: #DBDBDB;
}
.top-news__tag.-event {
  background-color: #9AD4FF;
}
.top-news__tag.-campaign {
  background-color: #ADFF9A;
}
.top-news__tag.-important-notice {
  background-color: #FF9A9A;
}

.top-news__btn-transition-box {
  margin: 0 auto;
  text-align: center;
  width: 100%;
}

.top-news__btn-transition {
  background-color: #86ECFF;
  border: 1px solid #000;
  border-radius: 100px;
  color: #000;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  padding: 11px 45px 10px 20px;
  position: relative;
  text-align: center;
  text-decoration: none;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.top-news__btn-transition:hover {
  background-color: #2293a7;
  color: #fff;
  text-decoration: none;
}
.top-news__btn-transition::after {
  background: url(../images/common/navi-arrow.svg) no-repeat center center #fff;
  border-radius: 50%;
  content: "";
  display: inline-block;
  height: 25px;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 25px;
}

/*=============================================
*
* ABOUT
*
=============================================*/
.top-about {
  background: #EDEDED;
  padding: 30px 0;
}

.top-about__inner {
  margin: 0 auto;
  max-width: 650px;
  text-align: center;
}

.top-about__sns-title {
  font-size: 1.7rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.top-about__lead {
  font-size: 1.4rem;
  line-height: 1.6;
  margin-bottom: 20px;
}

.top-about__sns-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 30px;
  margin-bottom: 20px;
}
@media screen and (max-width: 700px) {
  .top-about__sns-list {
    gap: 20px;
  }
}
.top-about__sns-list img {
  height: 40px;
  width: 40px;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-about__info-box-title {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.top-about__info-box,
.top-about__open-box {
  margin-bottom: 20px;
}

.top-about__info-title {
  background: #FFEB90;
  border-radius: 100px;
  display: inline-block;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 10px;
  padding: 10px 20px;
}

.top-about__open-title {
  background: #FFD100;
  border-radius: 100px;
  display: inline-block;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 10px;
  padding: 10px 20px;
}

.top-about__info-content,
.top-about__open-content {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 5px;
}

.top-about__info-date,
.top-about__open-date {
  font-size: 2.3rem;
  font-weight: 700;
  margin-bottom: 5px;
}

.top-about__info-schedule {
  font-size: 1.4rem;
}

.top-about__floor-info {
  border: 1px solid #000;
  border-radius: 6px;
  display: inline-block;
  background-color: #fff;
  color: #000;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 2px 8px;
  margin-right: 8px;
  border-radius: 4px;
}

.top-about__btn-transition-box {
  margin: 0 auto 15px;
}

.top-about__btn-transition {
  display: inline-block;
  line-height: 0;
  position: relative;
}
.top-about__btn-transition.disabled {
  pointer-events: none;
}
.top-about__btn-transition.disabled::after {
  background-color: rgba(180, 180, 180, 0.8);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  border-radius: 18px;
  top: 0;
  width: 100%;
}
.top-about__btn-transition img {
  display: block;
}

/*=============================================
*
* EVENT
*
=============================================*/
.top-event {
  margin: 0 auto;
  padding: 30px 0;
}

.top-event__inner {
  margin: 0 auto;
  max-width: 650px;
}

.top-event__heading::before {
  background: url(../images/top/top-event-icon.svg) no-repeat center center #86FF99;
}

.top-event__list-wrapper {
  margin: 0 auto;
  padding: 20px 10px 0;
}
.top-event__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}

.top-event__content-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.top-event__info-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(65% - 10px);
}
@media screen and (max-width: 700px) {
  .top-event__info-box {
    max-width: calc(100% - 165px);
    width: 100%;
  }
}

.top-event__image {
  border-radius: 6px;
  display: inline-block;
  height: 100%;
  max-width: calc(35% - 10px);
  width: 100%;
}
@media screen and (max-width: 700px) {
  .top-event__image {
    max-width: 155px;
    width: 100%;
  }
}

.top-event__title {
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 10px;
  text-align: left;
}
@media screen and (max-width: 700px) {
  .top-event__title {
    font-size: 1.5rem;
  }
}

.top-event__ticket-status-box {
  margin-bottom: 10px;
  text-align: left;
}

.top-event__ticket-status {
  border: 1px solid #000;
  display: inline-block;
  font-size: 1.3rem;
  line-height: 1;
  padding: 5px 10px;
  width: auto;
}
@media screen and (max-width: 700px) {
  .top-event__ticket-status {
    font-size: 1rem;
  }
}

.top-event__date {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 20px;
  text-align: left;
}
@media screen and (max-width: 700px) {
  .top-event__date {
    font-size: 1.5rem;
  }
}

.top-event__details {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 15px;
  margin-bottom: 25px;
}
@media screen and (max-width: 700px) {
  .top-event__details {
    gap: 5px;
  }
}
.top-event__details .top-event-detail {
  display: inline-block;
  font-size: 1.4rem;
  padding: 5px 0 5px 33px;
  position: relative;
  width: calc(50% - 15px);
  /**
   * イベント詳細アイコン設定
   * 各イベント詳細項目の前に表示されるアイコン画像を定義します。
   * 
   * クラス一覧:
   * -capacity: 定員アイコン（例: 4人）
   * -start: スタート方式アイコン（例: 一斉スタート）
   * -type: イベントタイプアイコン（例: ホール型）
   * -location: 開催場所アイコン（例: 屋内）
   * -duration: 所要時間アイコン（例: 120分程度）
   * -ticket: チケット情報アイコン（例: チケット発売前）
   * -limit: 制限時間アイコン（例: 60分）
   * -price: 料金情報アイコン（例: 前売3,500円～）
   */
  /* 定員表示アイコン */
  /* スタート方式アイコン */
  /* イベントタイプアイコン */
  /* 開催場所アイコン */
  /* 所要時間アイコン */
  /* 制限時間アイコン */
  /* 料金情報アイコン */
}
@media screen and (max-width: 700px) {
  .top-event__details .top-event-detail {
    font-size: 1.2rem;
    padding: 5px 0 5px 26px;
    width: calc(50% - 5px);
  }
}
.top-event__details .top-event-detail::before {
  content: "";
  display: inline-block;
  height: 28px;
  left: 0;
  position: absolute;
  top: 3px;
  width: 28px;
}
@media screen and (max-width: 700px) {
  .top-event__details .top-event-detail::before {
    height: 22px;
    top: 5px;
    width: 22px;
  }
}
.top-event__details .top-event-detail.-capacity::before {
  background-image: url(../images/event/event-description-capacity-icon.svg);
  background: url(../images/event/event-description-capacity-icon.svg) no-repeat center center;
}
.top-event__details .top-event-detail.-start::before {
  background: url(../images/event/event-description-start-icon.svg) no-repeat center center;
}
.top-event__details .top-event-detail.-type::before {
  background: url(../images/event/event-description-type-icon.svg) no-repeat center center;
}
.top-event__details .top-event-detail.-location::before {
  background: url(../images/event/event-description-location-icon.svg) no-repeat center center;
}
.top-event__details .top-event-detail.-duration {
  width: 100%;
}
.top-event__details .top-event-detail.-duration::before {
  background: url(../images/event/event-description-duration-icon.svg) no-repeat center center;
}
.top-event__details .top-event-detail.-limit {
  width: 100%;
}
.top-event__details .top-event-detail.-limit::before {
  background: url(../images/event/event-description-limit-icon.svg) no-repeat center center;
}
.top-event__details .top-event-detail.-price {
  width: 100%;
}
.top-event__details .top-event-detail.-price::before {
  background: url(../images/event/event-description-price-icon.svg) no-repeat center center;
}

.top-event_summary {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.6;
}
@media screen and (max-width: 700px) {
  .top-event_summary {
    font-size: 1.3rem;
  }
}

.top-event__description p {
  margin-bottom: 10px;
}

.top-event__description p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 700px) {
  .top-event-detail {
    font-size: 1.2rem;
    padding: 4px 12px;
  }
}
.top-event__btn-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 15px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 15px auto;
  text-align: center;
  width: 100%;
}

.top-event__btn-detail {
  background-color: #FFD100;
  border: 1px solid #000;
  border-radius: 100px;
  color: #000;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  padding: 11px 45px 10px 20px;
  position: relative;
  text-align: center;
  text-decoration: none;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.top-event__btn-detail:hover {
  background-color: #c7ac32;
  color: #fff;
  text-decoration: none;
}
.top-event__btn-detail::after {
  background: url(../images/common/navi-arrow.svg) no-repeat center center #fff;
  border-radius: 50%;
  content: "";
  display: inline-block;
  height: 25px;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 25px;
}

.top-event__btn-ticket {
  background-color: #86FF99;
  border: 1px solid #000;
  border-radius: 100px;
  color: #000;
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  padding: 11px 45px 10px 20px;
  position: relative;
  text-align: center;
  text-decoration: none;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.top-event__btn-ticket:hover {
  background-color: #44c655;
  color: #fff;
  text-decoration: none;
}
.top-event__btn-ticket::after {
  background: url(../images/common/navi-arrow.svg) no-repeat center center #fff;
  border-radius: 50%;
  content: "";
  display: inline-block;
  height: 25px;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 25px;
}

.top-event__cafe-nazo-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  padding: 15px 0;
  text-align: center;
}

.top-event__cafe-nazo-img-box {
  margin: 0 auto 10px;
}

.top-event__btn-transition-cafe-nazo {
  display: inline-block;
  line-height: 0;
  position: relative;
}
.top-event__btn-transition-cafe-nazo.disabled {
  pointer-events: none;
}
.top-event__btn-transition-cafe-nazo.disabled::after {
  background-color: rgba(180, 180, 180, 0.8);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  border-radius: 18px;
  top: 0;
  width: 100%;
}
.top-event__btn-transition-cafe-nazo img {
  display: block;
}

/*=============================================
*
* TICKETS
*
=============================================*/
.top-tickets {
  background: #FFEEA7;
  margin: 0 auto;
  padding: 30px 0;
}

.top-tickets__inner {
  margin: 0 auto;
  max-width: 650px;
  text-align: center;
}

.top-tickets__heading::before {
  background: url(../images/top/top-tickets-icon.svg) no-repeat center center #EC96FC;
}

/*---------------------------------------------
日付けリスト
---------------------------------------------*/
.tickets-event-date-list {
  background: #F4C8FC;
  margin: 0 auto;
}

.tickets-event-date-list__inner {
  padding: 13px 15px;
  position: relative;
}

.tickets-event-date-list__title {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 10px;
}
@media screen and (max-width: 700px) {
  .tickets-event-date-list__title {
    font-size: 1.6rem;
  }
}

.tickets-event-date-list__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.tickets-event-date-list__item {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  aspect-ratio: 1/1;
  background: #fff;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  min-height: 55px;
  min-width: 55px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 5px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: 100%;
}
@media screen and (max-width: 700px) {
  .tickets-event-date-list__item {
    min-height: 45px;
    min-width: 45px;
    padding: 3px;
  }
}
.tickets-event-date-list__item.is-selected {
  background: #fff8d9;
}

.tickets-event-date-list__date {
  -webkit-box-align: top;
      -ms-flex-align: top;
          align-items: top;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.8rem;
  font-weight: 500;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  line-height: 1;
  text-align: left;
  width: 100%;
}
@media screen and (max-width: 700px) {
  .tickets-event-date-list__date {
    font-size: 1.6rem;
  }
}
.tickets-event-date-list__date strong {
  font-size: 2.8rem;
  position: relative;
  top: -2px;
}
@media screen and (max-width: 700px) {
  .tickets-event-date-list__date strong {
    font-size: 2.6rem;
  }
}

.tickets-event-date-list__weekday {
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0;
  text-align: right;
  width: 100%;
}
@media screen and (max-width: 700px) {
  .tickets-event-date-list__weekday {
    font-size: 1rem;
  }
}
.day-sunday .tickets-event-date-list__weekday, .day-holiday .tickets-event-date-list__weekday {
  color: #FF7474;
}
.tickets-event-date-list__weekday span {
  display: inline-block;
  letter-spacing: -3px;
  margin-left: -3px;
  position: relative;
}

.tickets-date-swiper {
  overflow-x: hidden;
}

.tickets-date-swiper {
  position: relative;
  width: 100%;
}

.tickets-date-swiper .swiper-slide {
  height: auto;
  width: auto;
}

.tickets-event-date-list__inner .swiper-button-next,
.tickets-event-date-list__inner .swiper-button-prev {
  top: 7.5px;
}

/*---------------------------------------------
スロット
---------------------------------------------*/
.tickets-event-ticket__time-slots-wrapper {
  background: #EDEDED;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  width: 100%;
}

.tickets-event-ticket__time-slots {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 10px;
}

.tickets-event-ticket__time-slots-thumb {
  width: 110px;
}
@media screen and (max-width: 700px) {
  .tickets-event-ticket__time-slots-thumb {
    width: 70px;
  }
}
.tickets-event-ticket__time-slots-thumb img {
  height: auto;
}

.tickets-event-ticket__time-slots-container {
  width: calc(100% - 120px);
}
@media screen and (max-width: 700px) {
  .tickets-event-ticket__time-slots-container {
    width: calc(100% - 80px);
  }
}

.tickets-event-ticket__time-slots-event-title {
  color: #000;
  font-size: 2.5rem;
  font-weight: 700;
  text-align: left;
}
@media screen and (max-width: 700px) {
  .tickets-event-ticket__time-slots-event-title {
    font-size: 2rem;
  }
}

.time-slots {
  display: none;
}

.time-slots__heading {
  color: #000;
  margin-bottom: 15px;
  font-size: 1.7rem;
  text-align: left;
}
@media screen and (max-width: 700px) {
  .time-slots__heading {
    font-size: 1.5rem;
  }
}

.time-slots__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5px;
}

.time-slots__list-item {
  background: #fff;
  border: #000 1px solid;
  border-bottom: #000 5px solid;
  border-radius: 15px;
  padding: 5px 0;
  text-align: center;
  width: calc(25% - 3.75px);
}

.time-slots__list-item-time {
  color: #000;
  display: block;
  font-family: "Barlow Condensed", sans-serif;
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
  width: 100%;
}
@media screen and (max-width: 700px) {
  .time-slots__list-item-time {
    font-size: 1.3rem;
  }
}

.time-slots__list-item-status {
  color: #000;
  font-size: 1.3rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 700px) {
  .time-slots__list-item-status {
    font-size: 1rem;
  }
}
@media screen and (max-width: 374px) {
  .time-slots__list-item-status {
    font-size: 0.9rem;
  }
}

.time-slots__list-item-book-btn {
  color: #000;
  text-decoration: none;
  width: 100%;
}

.time-slots__list-item-book-btn:hover {
  color: #000;
  text-decoration: none;
}

.slot-available .time-slots__list-item-status {
  color: #3BABDD;
}

.slot-few-left .time-slots__list-item-status {
  color: #FF7B7B;
}

.slot-unavailable {
  background: #ccc;
}
.slot-unavailable .time-slots__list-item-status {
  color: #888;
}

/*=============================================
*
* GOODS
*
=============================================*/
.top-goods {
  background: #FFEEA7;
  margin: 0 auto;
  padding: 30px 0;
}

.top-goods__inner {
  margin: 0 auto;
  max-width: 650px;
  text-align: center;
}

.top-goods__heading::before {
  background: url(../images/top/top-goods-icon.svg) no-repeat center center #FFE269;
}

.top-goods__info-area {
  padding: 20px 10px;
}

.top-goods__lead {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 20px;
}

.top-goods__online-title {
  background: #fff;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 15px 0;
  padding: 12px 20px 10px;
  width: 100%;
}
@media screen and (max-width: 700px) {
  .top-goods__online-title {
    font-size: 1.6rem;
  }
}

.top-goods__sub-title {
  background: #fff;
  border-radius: 50px;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 700;
  margin: 20px 0 20px;
  padding: 13px 25px 10px;
}
@media screen and (max-width: 700px) {
  .top-goods__sub-title {
    font-size: 1.6rem;
  }
}

.top-goods__company-list {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.6;
  margin-bottom: 20px;
}
@media screen and (max-width: 700px) {
  .top-goods__company-list {
    font-size: 1.4rem;
    text-align: left;
  }
  .top-goods__company-list br {
    display: none;
  }
}

.top-goods__nazoad-logo {
  display: block;
  margin: 30px auto;
  max-width: 200px;
  width: 100%;
}

.top-goods__contact-link {
  color: #000;
  font-weight: 700;
  text-decoration: underline;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.top-goods__contact-link:hover {
  color: #FFD100;
}

.top-goods__contact-link-box {
  font-size: 1.6rem;
  margin: 0 auto;
  text-align: center;
  width: 100%;
}
@media screen and (max-width: 700px) {
  .top-goods__contact-link-box {
    font-size: 1.4rem;
  }
}

.top-goods__contact-link {
  font-weight: 400;
}

/*=============================================
*
* ACCESS
*
=============================================*/
.top-access {
  margin: 0 auto;
  padding: 30px 0;
}

.top-access__inner {
  background: #BFDDFF;
  margin: 0 auto;
  max-width: 650px;
}

.top-access__heading::before {
  background: url(../images/top/top-access-icon.svg) no-repeat center center #72B3FF;
}

.top-access__map {
  margin: 20px 0;
  width: 100%;
  padding: 0 10px;
  position: relative;
  overflow: hidden;
}
.top-access__map iframe {
  background: #ccc;
  width: 100%;
  max-height: 450px;
}
@media screen and (max-width: 700px) {
  .top-access__map iframe {
    height: 300px;
  }
}

.top-access__info {
  padding: 15px 10px;
}

.top-access__list {
  font-size: 1.6rem;
  margin: 0 auto;
  width: 100%;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 120px 15px 1fr;
  grid-template-columns: 120px 1fr;
  gap: 10px 15px;
}
@media screen and (max-width: 700px) {
  .top-access__list {
    font-size: 1.4rem;
    -ms-grid-columns: 100px 10px 1fr;
    grid-template-columns: 100px 1fr;
    gap: 10px;
  }
}
.top-access__list dt {
  font-weight: 400;
  padding: 5px 0;
}
.top-access__list dd {
  line-height: 1.6;
  padding: 5px 0;
}
/*=============================================
*
* CONTACT
*
=============================================*/
.top-contact {
  background: #EDEDED;
  margin: 0 auto;
  padding: 30px 0;
}

.top-contact__inner {
  background: #FFD9C1;
  margin: 0 auto;
  max-width: 650px;
  text-align: center;
}

.top-contact__heading::before {
  background: url(../images/top/top-contact-icon.svg) no-repeat center center #FFA872;
}

.top-contact__btn-transition-box {
  padding: 30px 0;
  text-align: center;
  width: 100%;
}

.top-contact__btn-transition {
  display: inline-block;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.top-contact__btn-transition:hover {
  opacity: 0.8;
}
.top-contact__btn-transition img {
  max-width: 100%;
  height: auto;
}
@media screen and (max-width: 700px) {
  .top-contact__btn-transition img {
    width: 90%;
  }
}