/* PC用 */
@charset "UTF-8";

:root {
  --rate: 0.7;
}

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

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

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

  width: calc(var(--width-kv) * 1px * var(--rate));
}

/* --- キャッチ --- */
#frame-catch {
}
.background-catch {
  width: calc(var(--width-background-catch) * 1px * var(--rate));
}
.catch {
  width: calc(var(--width-catch) * 1px * var(--rate));
}

/* --- ストーリー --- */
#frame-story {
}
.background-story {
  width: calc(var(--width-background-story) * 1px * var(--rate));
}
.story {
  width: calc(var(--width-story) * 1px * var(--rate));
}
.partial {
}
.whole {
}
.text-story {
  top: calc(var(--top-text-story) * 1px * var(--rate));
  width: calc(var(--width-text-story) * 1px * var(--rate));
  line-height: 150%;

  font-size: 22px;
}
.text-story .hidden {
}
.button-story {
  bottom: calc(var(--bottom-button-story) * 1px * var(--rate));
  width: calc(var(--width-button-story) * 1px * var(--rate));
}
#button-more {
}
#button-close {
}


/* --- プレイ形式 --- */
#frame-format {
}
.background-format {
  width: calc(var(--width-background-format) * 1px * var(--rate));
}
.format {
  width: calc(var(--width-format) * 1px * var(--rate));
}

/* --- チケット(料金) --- */
#frame-fee {
}
.background-fee {
  width: calc(var(--width-background-fee) * 1px * var(--rate));
}
.fee {
  width: calc(var(--width-fee) * 1px * var(--rate));
}
#button-ticket {
  width: calc(var(--width-button-ticket) * 1px * var(--rate));
}

/* --- スケジュール --- */
#frame-schedule {
}
.background-schedule {
  width: calc(var(--width-background-schedule) * 1px * var(--rate));
}
.schedule {
  width: calc(var(--width-schedule) * 1px * var(--rate));
}
.text-schedule {
}
.text-schedule {
  width: calc(var(--width-text-schedule) * 1px * var(--rate));
  top: 8%;

  font-size: 22px;
  padding-left: 20px;
}
.text-schedule .small {
  font-size: 18px;
}
.text-schedule .medium {
  font-size: 24px;
}
.text-schedule .attention {
  font-size: 14px;
  padding-left: 30px;
}
.text-schedule .reverse {
}
#calendar {
  width: calc(var(--width-calendar) * 1px * var(--rate));
  bottom: 27%;
}

/* --- マップ --- */
#frame-map {
}
.background-map {
  width: calc(var(--width-background-map) * 1px * var(--rate));
}
.embed-map {
  width: calc(var(--width-embed-map) * 1px * var(--rate));
  height: calc(var(--height-embed-map) * 1px * var(--rate));

  top: 32%;
  right: calc(50% + var(--offset-embed-map) * 1px);
}
.iframe-map {
}
.text-map {
  top: 32%;
  left: calc(50% + var(--offset-text-map) * 1px);
  width: calc(var(--width-text-map) * 1px * var(--rate));

  font-size: 16px;
  line-height: 140%;
}
.text-map .large {
  font-size: 20px;
}
.text-map .medium {
  font-size: 18px;
}

/* --- FAQ --- */
#frame-faq {
}
.faq-title {
  width: calc(var(--width-faq-title) * 1px * var(--rate));
}
.text-faq {
  width: calc(var(--width-text-faq) * 1px * var(--rate));
}
.item {
  --ml-item: 20;

  font-size: 18px;
  margin-left: calc(var(--ml-item) * 1px * var(--rate));

}
.item .question {
  margin-top: calc(var(--mt-question) * 1px * var(--rate));
}
.item .answer {
  margin-top: calc(var(--mt-answer) * 1px * var(--rate));

}

/* --- フッタ --- */
#frame-footer {
}
.background-footer {
  width: calc(var(--width-background-footer) * 1px * var(--rate));
}
.logo {
  bottom: 5%;
  width: calc(var(--width-logo) * 1px * var(--rate));
}

/* --- ワイド --- */
.wrapper {
  background-size: calc(var(--width-wrapper) * 1px * var(--rate));
}
.wide {
}
.outer {
  background-size: calc(var(--width-outer) * 1px * var(--rate)) auto;
}
