@charset "UTF-8";

/* ==========================================================================
   cle-guide.css — ショッピングガイド（固定ページ /shop/pages/guide）

   移植元: docs/design/design_0901/guide.html + guide.css
           （guide.css の前半「ショッピングガイド用スタイル」だけ。後半のうち
             よくある質問は cle-faq.css へ。お問い合わせ・法定ページは未着手）

   土台は cle-page.css。このファイルには「ガイドにしか無いもの」だけを置く。
   借りているものは次のとおりで、ここでは寸法を持たない。

     .cle-page__flow.--plain             … 写真を敷かないページの地（1節）
     .cle-page__wrap / .cle-page__block  … 幅と節の余白（同）
     .cle-page__top                      … ページヘッドの帯（2節）
     .cle-page__head                     … 中央寄せの見出し（同）
     .cle-page__head-left                … 左寄せの見出し（同）
     .cle-btn.--solid / .--outline       … ボタン（4節）
     .cle-acc-group / .cle-acc           … アコーディオン（6節）
     .cle-page__deftable                 … 定義表（7節）
     .cle-page__support                  … 解決しない場合は（8節）
     .cle-crumb                          … パンくず（3節。テーマ側が出す）

   このうち地・ページヘッドの帯・「解決しない場合は」の3つは、よくある質問
   （/shop/faq）と共有するために cle-page.css へ移してある。ガイドだけを
   直したつもりで質問ページが変わるので、寸法を触るときは両方を見ること。

   ■ 読み込み位置
     ec_force/shop/sections/_head.html.liquid から条件なしで読む。
     cle-brand.css・cle-axis.css・cle-about.css と同じ理由（固定ページの
     どれがガイドかは本文欄の中身でしか分からず、head で判定を持たせると
     liquid 側の都合で静かに失敗する）。指定はすべて .cle-guide の下に
     閉じてあるので、他のページで読まれても影響は出ない。JSは要らない。

   ■ ページヒーローを持たない
     About とブランドは写真を画面の上端から見せるために固定ヘッダーぶんの
     押し下げ（cle-header.css 1節）を外しているが、ガイドは写真を持たない
     ので既定のまま。押し下げに関する指定はこのファイルには無い。
   ========================================================================== */

/* ==========================================================================
   1. ページ内アンカー

   地（.cle-page__flow.--plain）とページヘッドの帯（.cle-page__top）は
   cle-page.css へ移した。ここに残るのはガイド固有の1つだけ。
   ========================================================================== */

/* 目次カードとヘッダーのメガメニューから、どちらもページ内アンカーで
   飛んでくる。固定ヘッダーに見出しが隠れないよう逃がしておく。
   --cle-header-h は画面幅で 95 → 73 と変わる（cle-common.css 1節）ので、
   ここで幅ごとに書き分ける必要はない。 */
.cle-guide__section {
  scroll-margin-top: calc(var(--cle-header-h) + 24px);
}

/* ==========================================================================
   2. 目次

   6項目を3列。罫線1本ぶんの隙間を grid の gap で作り、その隙間に
   親（罫線色の地）を透かせている。カードごとに枠を引くより線が軽い。
   ========================================================================== */

.cle-guide__index-block {
  padding: 44px 0 88px;
}

.cle-guide__index {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: var(--cle-line);
  border: 1px solid var(--cle-line);
}

.cle-guide__index-card {
  padding: 28px 26px 30px;
  background: var(--cle-paper);
  color: inherit;
  text-decoration: none;
  transition: background-color 0.35s ease;
}

.cle-guide__index-card:hover {
  background: var(--cle-white);
}

.cle-guide__index-no {
  margin: 0;
  color: var(--cle-ink-soft);
  font-size: 11px;
  letter-spacing: 0.24em;
}

.cle-guide__index-label {
  position: relative;
  margin: 14px 0 0;
  padding-right: 20px;
  font: 300 16px/1.5 var(--cle-font-mincho);
}

/* 押すと下へ飛ぶことを、下向きの山形で示す */
.cle-guide__index-label::after {
  position: absolute;
  top: 50%;
  right: 2px;
  width: 6px;
  height: 6px;
  margin-top: -5px;
  border-right: 1px solid var(--cle-ink-soft);
  border-bottom: 1px solid var(--cle-ink-soft);
  content: '';
  transform: rotate(45deg);
  transition: transform 0.3s ease;
}

.cle-guide__index-card:hover .cle-guide__index-label::after {
  transform: rotate(45deg) translate(2px, 2px);
}

.cle-guide__index-desc {
  margin: 8px 0 0;
  color: var(--cle-ink-soft);
  font-size: 11px;
  line-height: 1.9;
}

/* ==========================================================================
   3. 各節に共通するもの
   ========================================================================== */

/* 節の冒頭で言い切る一文。アコーディオンに隠さず先に出す */
.cle-guide__lead {
  margin: 0 0 30px;
  font-size: 13px;
  line-height: 2.15;
}

/* 定義表・決済カード・リード文のあとにアコーディオンが続く並びが3つある。
   前の要素が自分の下余白を持っているかどうかで、間の空け方を変える。 */
.cle-guide .cle-page__deftable + .cle-acc-group {
  margin-top: 46px;
}

.cle-guide__pay-grid + .cle-acc-group,
.cle-guide__lead + .cle-acc-group {
  margin-top: 0;
}

/* ==========================================================================
   4. ご注文方法（手順）

   3段を罫線だけで区切る。About の「余白の時間」のカードと同じ組み方。
   ========================================================================== */

.cle-guide__steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
}

.cle-guide__step {
  padding: 0 34px;
  border-right: 1px solid var(--cle-line);
}

.cle-guide__step:first-child {
  padding-left: 0;
}

.cle-guide__step:last-child {
  padding-right: 0;
  border-right: 0;
}

.cle-guide__step-no {
  margin: 0;
  color: var(--cle-ink-soft);
  font-size: 11px;
  letter-spacing: 0.24em;
  text-transform: uppercase;
}

.cle-guide__step-title {
  margin: 12px 0 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--cle-line);
  color: var(--cle-ink);
  font: 300 17px/1.6 var(--cle-font-mincho);
}

.cle-guide__step-desc {
  margin: 0;
  color: var(--cle-ink-soft);
  font-size: 12px;
  line-height: 2.1;
  text-align: justify;
  text-align-last: left;
}

/* ==========================================================================
   5. 支払い方法（決済の一覧）
   ========================================================================== */

.cle-guide__pay-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 46px;
}

.cle-guide__pay-card {
  padding: 24px 22px 26px;
  border: 1px solid var(--cle-line);
  background: var(--cle-paper);
}

.cle-guide__pay-name {
  margin: 0 0 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--cle-line);
  color: var(--cle-ink);
  font: 300 15px/1.5 var(--cle-font-mincho);
}

.cle-guide__pay-desc {
  margin: 0;
  color: var(--cle-ink-soft);
  font-size: 11px;
  line-height: 1.95;
}

/* ==========================================================================
   6. カード（ギフト・会員）

   上の罫線1本だけで区切る。囲まない。

   **お問い合わせページ（cle-contact.css 1節）もこのカードを使っている。**
   あちらは FAQ への誘導3枚で、リンクにするぶんだけ .cle-contact__card を
   重ねている（色と下線を戻す指定だけ）。デザイン側も contact.html で
   guide.css の .guide-card を借りているので、持ち場を合わせてある。
   **寸法を直すとお問い合わせも動く。**
   ========================================================================== */

.cle-guide__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 34px;
}

.cle-guide__card {
  padding-top: 24px;
  border-top: 1px solid var(--cle-line-strong);
}

.cle-guide__card-title {
  margin: 0 0 18px;
  color: var(--cle-ink);
  font: 300 17px/1.5 var(--cle-font-mincho);
}

.cle-guide__card-desc {
  margin: 0;
  color: var(--cle-ink-soft);
  font-size: 12px;
  line-height: 2.1;
  text-align: justify;
  text-align-last: left;
}

.cle-guide__cta {
  display: grid;
  justify-items: center;
  gap: 16px;
  margin-top: 52px;
}

.cle-guide__cta-note {
  margin: 0;
  color: var(--cle-ink-soft);
  font-size: 11px;
  letter-spacing: 0.04em;
}

/* ==========================================================================
   7. レスポンシブ（デザインに合わせて 1024px / 768px の2点だけ）

   .cle-page__block の余白は cle-page.css が 980/760 で切っている
   （移植元が chambre.css のため）。ここで重ねて指定はしない。
   ========================================================================== */

@media (max-width: 1024px) {
  .cle-guide__index-block {
    padding: 34px 0 66px;
  }

  .cle-guide__index-card {
    padding: 22px 20px 24px;
  }

  .cle-guide__pay-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cle-guide__step {
    padding: 0 22px;
  }

}

@media (max-width: 768px) {
  .cle-guide__index-block {
    padding: 26px 0 48px;
  }

  /* 目次は2列。6項目なので3行に収まる */
  .cle-guide__index {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cle-guide__index-label {
    font-size: 14px;
  }

  /* 手順とカードは縦積み。罫線を右から下へ付け替える */
  .cle-guide__steps,
  .cle-guide__cards {
    grid-template-columns: 1fr;
  }

  .cle-guide__step {
    padding: 0 0 30px;
    border-right: 0;
    border-bottom: 1px solid var(--cle-line);
  }

  .cle-guide__step + .cle-guide__step {
    padding-top: 30px;
  }

  .cle-guide__step:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }

  .cle-guide__cards {
    gap: 30px;
  }

  .cle-guide__pay-grid {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-bottom: 34px;
  }

  .cle-guide .cle-page__deftable + .cle-acc-group {
    margin-top: 34px;
  }

}
