/* ============================================================
   aima / 共通スタイル
   ------------------------------------------------------------
   考え方
     ・紙の上の組版として作る。影もグラデーションも使わない。
     ・色には役割を持たせる。柿渋＝押せるもの。藍＝構造。墨＝文章。
       オレンジを全部に使うと、押せるものが見分けられなくなる。
     ・情緒を運ぶ行は明朝、読ませる行と操作はゴシック。
     ・中央揃えは「ここで息を置く」1か所だけ。日本語の長文は左に揃える。
   ============================================================ */

:root{
  --paper:#fcfbf9;      /* 紙 */
  --panel:#ffffff;
  --ink:#16161a;        /* 墨。見出しと強い文 */
  --sumi:#4e4e57;       /* 本文 */
  --kasumi:#6f6b66;     /* 注記・添え書き。これ以上薄くすると読めない */
  --keisen:#e4e1db;     /* 罫 */
  --ai:#3e5572;         /* 藍。構造（時刻・ラベル・囲み） */
  --ai-bg:#f1f3f6;
  --kaki:#bf4f1c;       /* 柿渋。押せるものだけ */
  --kaki-bg:#fbf0ea;

  --min:"Zen Old Mincho",serif;                                  /* 明朝。情緒とロゴ */
  --go:"Zen Kaku Gothic New",system-ui,-apple-system,"Hiragino Sans",sans-serif;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#15151a; --panel:#1c1c22; --ink:#f1efec; --sumi:#b4b0ab; --kasumi:#938d86;
  --keisen:#2c2c34; --ai:#8fa6c2; --ai-bg:#1e222a; --kaki:#e2784a; --kaki-bg:#2b1f19;
  color-scheme:dark;
}}
:root[data-theme="dark"]{
  --paper:#15151a; --panel:#1c1c22; --ink:#f1efec; --sumi:#b4b0ab; --kasumi:#938d86;
  --keisen:#2c2c34; --ai:#8fa6c2; --ai-bg:#1e222a; --kaki:#e2784a; --kaki-bg:#2b1f19;
  color-scheme:dark;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--paper); color:var(--sumi); font-family:var(--go);
  font-size:16px; line-height:1.95; font-feature-settings:"palt" 1;
}
a{color:inherit}
:focus-visible{outline:2px solid var(--kaki); outline-offset:3px; border-radius:2px}

/* ---- 枠組み ---- */
.wrap{max-width:780px;margin:0 auto;padding:0 22px}
.bar{display:flex;align-items:center;justify-content:space-between;padding:26px 0 0}
.mark{font-family:var(--min);font-size:25px;font-weight:400;letter-spacing:.16em;
  color:var(--ink);text-decoration:none;line-height:1}
.bar .enter{font-size:13px;color:var(--ai);text-decoration:none;letter-spacing:.04em;
  border-bottom:1px solid var(--keisen);padding-bottom:3px}
.bar .enter:hover{border-bottom-color:var(--ai)}

/* ---- 見出し ---- */
.sec{padding:66px 0;border-top:1px solid var(--keisen)}
.h{font-family:var(--go);font-size:15.5px;font-weight:700;letter-spacing:.07em;
  color:var(--ink);margin:0 0 26px;line-height:1.8;display:flex;align-items:baseline;gap:14px}
.h::before{content:"";flex:none;width:18px;height:1px;background:var(--ai);transform:translateY(-6px)}
.lead{margin:0 0 16px;font-size:15.5px;line-height:2.0}
.note{font-size:13.5px;color:var(--kasumi);line-height:1.9}

/* ---- 文字の役割 ---- */
.mj{font-family:var(--min);font-weight:400;color:var(--ink)}
.time{font-family:var(--min);font-size:13px;letter-spacing:.1em;color:var(--ai);
  font-feature-settings:normal;display:block}
.time + .time{margin-top:6px}

/* ---- 押せるもの ---- */
.go{display:inline-flex;align-items:center;gap:10px;background:var(--kaki);color:#fff;
  text-decoration:none;padding:13px 26px;border-radius:2px;font-size:14.5px;font-weight:500;
  letter-spacing:.04em}
.go:hover{background:var(--ink)}
.soon{display:inline-block;font-size:13px;color:var(--kasumi);letter-spacing:.06em;
  border:1px solid var(--keisen);padding:11px 22px;border-radius:2px}
.more{display:inline-flex;align-items:center;gap:9px;color:var(--kaki);text-decoration:none;
  font-size:14.5px;font-weight:500;border-bottom:1px solid var(--kaki-bg);padding-bottom:4px}
.more:hover{border-bottom-color:var(--kaki)}
.more .ar{font-family:var(--min);transition:transform .18s ease}
.more:hover .ar{transform:translateX(4px)}

/* ---- 足もと ---- */
.foot{border-top:1px solid var(--keisen);padding:38px 0 56px;font-size:13px;color:var(--kasumi)}
.foot a{color:var(--kasumi);text-decoration:none;margin-right:20px;display:inline-block;
  line-height:2.2}
.foot a:hover{color:var(--kaki)}
.foot .co{margin-top:18px;font-family:var(--min);letter-spacing:.08em;color:var(--kasumi)}

@media (max-width:680px){
  .sec{padding:48px 0}
  .wrap{padding:0 20px}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none !important;transition:none !important}
}
