/* ============================================
   ROUTES. 共通スタイル（全ページのヘッダー・フッター）
   version 2.0 (2026-07-21) ※ index.html v2.0 と対応

   変更概要:
     - v2.0 (2026-07-21): デザイントークンに --serif-display / --serif-body を追加。
       バージョンコメントを追加。適用範囲の注記を実態に合わせて修正。
     - v1.x: 初期実装

   【適用範囲の注意】
   このファイルの :root が実際に効くのは、独自の :root を持たない
   404 / 特商法 / プラポリ の各ページです。
   index.html は自前の <style> 内で :root を再定義しており（後勝ち）、
   ここを直しても index には反映されません。
   色や書体を変える場合は index.html 側の :root も必ずセットで直してください。
   なお header / footer のスタイルは全ページに反映されます。
============================================ */
:root{
  --paper:#FDFDFB;
  --ink:#1C1B19;
  --root-green:#2E5A4B;
  --ash:#77756E;
  --rule:#E8E6E0;
  --line-green:#06C755;
  --serif-display:"Shippori Mincho","Noto Serif JP",serif;
  --serif-body:"Noto Serif JP",serif;
  --sans:"Zen Kaku Gothic New",sans-serif;
}

/* ---------- header ---------- */
header{
  position:fixed;top:0;left:0;right:0;z-index:50;
  background:rgba(253,253,251,.86);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--rule);
}
.header-in{max-width:960px;margin:0 auto;padding:14px 28px;display:flex;justify-content:space-between;align-items:center;}
.logo{font-family:var(--sans);font-weight:700;font-size:15px;letter-spacing:.28em;text-decoration:none;color:var(--ink);}
.logo .dot{color:var(--root-green);}
.logo .beta{font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:.08em;color:var(--ash);margin-left:7px;vertical-align:super;}
.header-cta{
  display:inline-flex;align-items:center;gap:7px;
  font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.12em;
  text-decoration:none;color:var(--paper);background:var(--ink);
  padding:9px 18px;border-radius:999px;transition:background .3s;
}
.header-cta:hover{background:var(--root-green);}

/* ---------- footer ---------- */
footer{padding:44px 0;text-align:center;font-family:var(--sans);font-size:11.5px;letter-spacing:.14em;color:var(--ash);}
footer .flogo{font-weight:700;letter-spacing:.28em;color:var(--ink);}
footer .flogo .dot{color:var(--root-green);}
footer p+p{margin-top:8px;}
.flinks a{color:var(--ash);text-decoration:none;border-bottom:1px solid var(--rule);padding-bottom:1px;}
.flinks a:hover{color:var(--root-green);}
