/* スマホ用 */
@charset "UTF-8";

.for-pc {
  display: none;
}
.for-sp {
  display: block;
}

/* ---------- */

/* --- キービジュアル --- */
#frame-kv {
}
.kv {
  width: 100vw;
}

/* --- キャッチ --- */
#frame-catch {
}
.catch {
  width: calc(var(--width-catch) / 1000 * 100vw);
}

/* --- シーン --- */
#frame-scenes {
  width: calc(var(--width-frame-scenes) / 1000 * 100vw);
  height: calc(var(--height-frame-scenes) / 1000 * 100vw);

  margin: 30px auto 0;

border: solid white 0px;
}
.slider-scenes {
  width: calc(var(--width-slider-scenes) / 1000 * 100vw); 
  height: calc(var(--height-slider-scenes) / 1000 * 100vw); 
}
.scene {
  width: calc(var(--width-scene) / 1000 * 100vw);
}

/* --- ポイント --- */
#frame-point {
  margin-top: 50px;
}
.point {
  width: calc(var(--width-point) / 1000 * 100vw);
}

/* --- ストーリー --- */
#frame-story {
}
.story {
  width: calc(var(--width-story) / 1000 * 100vw);
}
.text-story {
  width: calc(var(--width-text-story) / 1000 * 100vw);
  height: calc(var(--height-text-story) / 1000 * 100vw);
  font-size: 3vw;
}
.text-story .hidden {
}
#button-more {
  width: calc(var(--width-button-more) / 1000 * 100vw);
}

/* --- プレイ形式 --- */
#frame-format {
}
.format {
  width: calc(var(--width-format) / 1000 * 100vw);
}

/* --- チケット(料金) --- */
#frame-fee {
}
.fee {
  width: calc(var(--width-fee) / 1000 * 100vw);
}

/* --- スケジュール --- */
#frame-schedule {
}
.schedule {
  width: calc(var(--width-schedule) / 1000 * 100vw);
}
.text-schedule {
  width: calc(var(--width-text-schedule) / 1000 * 100vw);
  top: 16%;

  font-size: 3vw;
}
.text-schedule .small {
  font-size: 2vw;
}
.text-schedule .medium {
  font-size: 3vw;
}
.text-schedule .attention {
  font-size: 1.5vw;
  text-align: center;
}
.text-schedule .reverse {
}
#calendar {
  bottom: 27%;

  width: calc(var(--width-calendar) / 1000 * 100vw);
}
#button-ticket {
  width: calc(var(--width-button-ticket) / 1000 * 100vw);
}

/* --- マップ --- */
#frame-map {
  position: relative;
}
.map {
  width: calc(var(--width-map) / 1000 * 100vw);
}
.embed-map {
  top: 16%;

  width: calc(var(--width-embed-map) / 1000 * 100vw);
  height: calc(var(--height-embed-map) / 1000 * 100vw);
}
.iframe-map {
}

.text-map {
  bottom: 2%;
  width: calc(var(--width-text-map) / 1000 * 100vw);

  font-size: 2.5vw;
}
.text-map .large {
  font-size: 3.5vw;
}
.text-map .medium {
  font-size: 3vw;
}

/* --- FAQ --- */
#frame-faq {
}
.faq-title {
  width: calc(var(--width-faq-title) / 1000 * 100vw);
}
.text-faq {
  width: calc(var(--width-text-faq) / 1000 * 100vw);
}
.item {
  --ml-item: 20;

  font-size: 3vw;
  margin-left: calc(var(--ml-item) / 1000 * 100vw);

}
.item .question {
  margin-top: calc(var(--mt-question) / 1000 * 100vw);
}
.item .answer {
  margin-top: calc(var(--mt-answer) / 1000 * 100vw);

}

/* --- フッタ --- */
#frame-footer {
}
.logo {
  width: calc(var(--width-logo) / 1000 * 100vw);
}
.text-copyright {
  bottom: 0;
  font-size: 2vw;
}


/* 背景部 */
.wrapper {
  background-size: contain;
}

/* サイドバー */
.sidebar {
  background-size: calc(var(--width-sidebar) / 1000 * 100vw) auto;
}
.sidebar.left {
  left: 0;
}
.sidebar.right {
  right: calc(var(--width-sidebar) / 1000 * 100vw * (-1));
}
.sidebar::before {
  background-size: calc(var(--width-sidebar) / 1000 * 100vw) auto;
}

/* ワイド */
.wide {
  display: none;
}
