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

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

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

/* --- ヘッダ --- */
#frame-header {
}
.text-header {
  --width-text-header: 1200;

  width: calc(var(--width-text-header) * 1px);
  font-size: 24px;
}

/* --- キービジュアル --- */
#frame-kv {
}
.kv {
  width: calc(var(--width-kv) * 1px * 1.0);
}

/* --- ようこそ --- */
#frame-welcome {
}
.welcome {
  width: calc(var(--width-welcome) * 1px * 1.0);
}

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

/* --- ストーリー --- */
#frame-story {
}
.story {
  width: calc(var(--width-story) * 1px * 1.0);
}
.text-story {
  width: calc(var(--width-text-story) * 1px * 1.0);
  height: calc(var(--height-text-story) * 1px * 0.55);
  font-size: 22px;
}
.text-story .hidden {
}
#button-more {
}


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

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

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

  font-size: 16px;
  padding-left: 50px;
}
.text-schedule .small {
  font-size: 14px;
}
.text-schedule .medium {
  font-size: 18px;
}
.text-schedule .attention {
  font-size: 10px;
}
.text-schedule .reverse {
}
#calendar {
  width: calc(var(--width-calendar) * 1px * 1.0);
  bottom: 27%;
}

#button-ticket {
  bottom: 3%;
  width: calc(var(--width-button-ticket) * 1px * 1.0);
}

/* --- マップ --- */
#frame-map {
}
.map {
  width: calc(var(--width-map) * 1px * 1.0);
}
.embed-map {
  --offset-embed-map: (-220);

  left: calc(50% + var(--offset-embed-map) * 1px);
  width: calc(var(--width-embed-map) * 1px * 1.0);
  height: calc(var(--height-embed-map) * 1px * 1.0);

 top: 25%;
}
.iframe-map {
}
.text-map {
  --offset-text-map: (-220);

  bottom: 9%;
  left: calc(50% + var(--offset-text-map) * 1px);
  width: calc(var(--width-text-map) * 1px * 1.0);

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

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

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

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

}

/* --- フッタ --- */
#frame-footer {
  margin-bottom: 50px;
}
.logo {
  width: calc(var(--width-logo) * 1px * 1.0);
}

/* 背景部 */
.wrapper {
}

/* サイドバー */
.sidebar {
  background-size: calc(var(--width-sidebar) * 1px) auto;
}
.sidebar.left {
  --offset-sidebar-left: 350;

  right: calc(50% + var(--offset-sidebar-left) * 1px);
}
.sidebar.right {_
  --offset-sidebar-right: 350;

  left: calc(50% + var(--offset-sidebar-right) * 1px);
}
.sidebar::before {
  background-size: calc(var(--width-sidebar) * 1px) auto;
}

/* ワイド */
.wide {
}

/* 両脇 */
.outer {
/*  background-size: calc(var(--width-outer) * 1px * 1.0) auto; */
}
 