@charset "UTF-8";
/* ================================================
   リフト料金
================================================ */
.price-txt {
  font-size: 12pt;
  color: #000000;
}

table.price-table tbody tr span.price-txt {
  font-size: 12pt;
  color: #000000;
}

.price-link-alert,
.price-link-alert a {
  color: #ff0000;
}

.price-link-blue,
table.price-table tbody tr span.price-link-blue {
  color: #3366ff;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

/* 横スクロール時に右側セル（rowspan含む）が固定列の上に乗らないようにする */
table.price-table .stic {
  z-index: 2;
}

.price h2 > span,
.price h2 .price-h2-note {
  font-weight: normal;
}

@media (max-width: 767px) {
  .price h2.price-h2-lift .price-h2-note {
    display: block;
  }
}
/* 固定幅料金テーブル共通: 改行防止（幅はcolgroup。備考列のみフレキシブル） */
.price-table-season,
.price-table-early,
.price-table-lift,
.price-table-set,
.price-table-family,
.price-table-basic {
  table-layout: fixed;
}

/* PC: コンテンツ幅1100に統一し、h2/テーブル/備考の左端を揃える */
@media (min-width: 768px) {
  .price.page > .container:not(.value) {
    width: 1100px;
    max-width: 1100px;
  }
  /* style.css の .price h2 { margin-left: 5% } を打ち消し */
  .price.page h2 {
    margin-left: 0;
    margin-right: 0;
  }
  /* style.css の table.price-table { width:91%; margin:0 auto } を打ち消し */
  .price.page table.price-table.price-table-season,
  .price.page table.price-table.price-table-early,
  .price.page table.price-table.price-table-lift,
  .price.page table.price-table.price-table-set,
  .price.page table.price-table.price-table-family,
  .price.page table.price-table.price-table-basic {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  /* style.css の .kubunbikou { width:1031px } を打ち消し */
  .price.page .kubunbikou {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
.price-table-season {
  width: 100%;
  /* 固定列合計+備考。狭い画面で % 幅に押し潰されないよう下限を確保 */
  min-width: 860px;
}

/* 料金テーブル見出し */
table.price-table.price-table-season th,
table.price-table.price-table-early th,
table.price-table.price-table-lift th,
table.price-table.price-table-set th,
table.price-table.price-table-family th,
table.price-table.price-table-basic th {
  background-color: #e8e8e8;
}

/* 早割系行背景（券種列 .stic のみ除外） */
.price-table-season tr.season-row-green td:not(.stic),
.price-table-early tr.season-row-green td:not(.stic) {
  background-color: #e8f2dc;
}

.price-table-season tr.season-row-blue td,
.price-table-early tr.season-row-blue td {
  background-color: #dbe4f1;
}

.price-table-early {
  width: 100%;
  /* 150+139+104+91+91+備考min */
  min-width: 800px;
}

.price-table-lift {
  width: 100%;
  /* 130+91+100×3+91+100×3 */
  min-width: 720px;
}

/* リフト料金: 金額行の下に備考 */
table.price-table.price-table-lift td.col-notes-below {
  white-space: normal;
  word-break: break-word;
  text-align: left;
  padding-left: 10px;
  padding-right: 10px;
}

/* 1日券・2日券: 左◆ / 右※ の2列（SPは1列） */
.price-table-lift .lift-notes-flex--split {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
}
.price-table-lift .lift-notes-flex--split .lift-notes-col {
  width: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.price-table-lift .lift-notes-flex--split .lift-notes-col > p {
  margin: 0;
}
@media (max-width: 767px) {
  .price-table-lift .lift-notes-flex--split {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .price-table-lift .lift-notes-flex--split .lift-notes-col {
    width: 100%;
  }
}

/* その他券種: 1列 */
.price-table-lift .lift-notes {
  text-align: left;
}
.price-table-lift .lift-notes > p {
  margin: 0;
}

/* ラベル＋右側本文（利用エリア・販売期間など） */
.price-table-lift .lift-notes-labeled {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  text-align: left;
}
.price-table-lift .lift-notes-labeled .lift-notes-label {
  margin: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding-right: 0.5em;
}
.price-table-lift .lift-notes-labeled .lift-notes-body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}
.price-table-lift .lift-notes-labeled .lift-notes-body > p {
  margin: 0;
}

.price-table-set {
  width: 100%;
  /* 150+91+110+91+110+備考min */
  min-width: 780px;
}

.price-table-family,
.price-table-basic {
  width: 100%;
  /* 150+91+91+備考min */
  min-width: 600px;
}

/* テーマ共通の first-child th { width:18% } を無効化 */
table.price-table.price-table-season tbody tr:first-child th,
table.price-table.price-table-early tbody tr:first-child th,
table.price-table.price-table-lift tbody tr:first-child th,
table.price-table.price-table-set tbody tr:first-child th,
table.price-table.price-table-family tbody tr:first-child th,
table.price-table.price-table-basic tbody tr:first-child th {
  width: auto;
}

.price-table-season .col-type,
.price-table-season .col-content,
.price-table-season .col-content-sub,
.price-table-season .col-age,
.price-table-early .col-type,
.price-table-early .col-content,
.price-table-early .col-content-sub,
.price-table-early .col-age,
.price-table-lift .col-type,
.price-table-lift .col-price,
.price-table-set .col-type,
.price-table-set .col-price,
.price-table-family .col-type,
.price-table-family .col-price,
.price-table-basic .col-type,
.price-table-basic .col-price {
  white-space: nowrap;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.price-table-season .col-notes,
.price-table-early .col-notes,
.price-table-lift .col-notes,
.price-table-set .col-notes,
.price-table-family .col-notes,
.price-table-basic .col-notes {
  width: auto;
  min-width: 200px;
  white-space: normal;
  word-break: break-word;
}

.price-table-season .col-age-label,
table.price-table.price-table-season tbody tr span.col-age-label,
.price-table-early .col-age-label,
table.price-table.price-table-early tbody tr span.col-age-label {
  display: block;
  width: 83px;
  margin: 0 auto;
  white-space: nowrap;
  font-size: 12pt;
  color: #000000;
  line-height: 1.8;
  text-align: center;
}

/* 横スクロール枠（狭い画面ではみ出しを枠内に閉じ込める） */
.price .table-scroll {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 767px) {
  /* style.css の .price div { margin: 0 10px } を container 直下のみに限定 */
  .price.page .container {
    margin-left: 10px;
    margin-right: 10px;
  }
  .price.page .container div {
    margin-left: 0;
    margin-right: 0;
  }
  .price .table-scroll {
    /* .price div { margin: 0 10px } による左右余白＋幅100%のはみ出し防止 */
    margin-left: 0;
    margin-right: 0;
  }
  .table-scroll .price-table-season,
  .table-scroll .price-table-early,
  .table-scroll .price-table-lift,
  .table-scroll .price-table-set,
  .table-scroll .price-table-family,
  .table-scroll .price-table-basic {
    /* テーマの table { white-space: nowrap } を打ち消し（備考のみ折り返し） */
    white-space: normal;
    max-width: none;
  }
  .table-scroll .price-table-season {
    width: 860px;
  }
  .table-scroll .price-table-early {
    width: 800px;
  }
  .table-scroll .price-table-lift {
    width: 720px;
  }
  .table-scroll .price-table-set {
    width: 780px;
  }
  .table-scroll .price-table-family,
  .table-scroll .price-table-basic {
    width: 600px;
  }
  /* テーマのスマホ用 padding 増を抑え、PC用実測幅のまま収める */
  table.price-table.price-table-season th,
  table.price-table.price-table-season td,
  table.price-table.price-table-early th,
  table.price-table.price-table-early td,
  table.price-table.price-table-lift th,
  table.price-table.price-table-lift td,
  table.price-table.price-table-set th,
  table.price-table.price-table-set td,
  table.price-table.price-table-family th,
  table.price-table.price-table-family td,
  table.price-table.price-table-basic th,
  table.price-table.price-table-basic td {
    padding: 8px 3px;
  }
  table.price-table.price-table-lift td.col-notes-below {
    padding-left: 10px;
    padding-right: 10px;
  }
}
/*# sourceMappingURL=style_price.css.map */