/* お知らせ一覧・記事ページ */

.crumb{font-size:13px;color:var(--muted);padding-top:36px}
.crumb a:hover{color:var(--ink)}
.crumb span.s{margin:0 10px;color:var(--faint)}

/* ===== list page ===== */
.lh{padding-top:64px;padding-bottom:56px}
.lh h1{font-size:44px;line-height:1.4}
.lh p{font-size:15px;color:var(--muted);margin-top:14px;max-width:34em}
body.lang-en .lh p{line-height:1.7}
.filter{display:flex;flex-wrap:wrap;gap:6px 28px;font-size:14px;margin-bottom:22px}
.filter button{color:var(--muted);padding:2px 0}
.filter button:hover{color:var(--ink)}
.filter button.on{color:var(--ink);font-weight:500;text-decoration:underline;text-underline-offset:6px}
.filter .n{font-variant-numeric:tabular-nums;color:var(--faint);margin-left:4px;font-weight:400}
.news li.hide{display:none}
.empty{display:none;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule);padding:40px 0;font-size:15px;color:var(--muted)}
.empty.show{display:block}

/* ===== article page ===== */
.ag{display:grid;grid-template-columns:3fr 9fr;gap:var(--g)}
.ah{padding-top:64px}
.ah .meta{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding-top:12px}
.ah .meta time{font-size:14px;color:var(--muted)}
.ah h1{font-size:44px;line-height:1.5;max-width:20em}
body.lang-en .ah h1{line-height:1.2}
.ah .sum{font-size:17px;line-height:2;color:var(--text);max-width:40em;margin-top:24px}
body.lang-en .ah .sum{line-height:1.7}
.cover{margin-top:48px}
.cover img{display:block;width:100%;height:auto;border:1px solid var(--rule);background:var(--stone)}
.cover .ph{aspect-ratio:1200/630;background:var(--stone);border:1px solid var(--rule);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:14px}
.abody{margin-top:64px}
.side .in{position:sticky;top:110px;font-size:13.5px}
.side dl div{padding:10px 0;border-top:1px solid var(--ink)}
.side dt{color:var(--muted);font-size:12px}
.side .share a{display:inline-block;margin-right:14px;text-decoration:underline;text-underline-offset:4px;color:var(--ink)}
.side .share a:hover{color:var(--ai)}
.side .back{display:inline-block;margin-top:22px;font-size:14px}
.pn{margin-top:96px}
.pn .row{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink)}
.pn a,.pn .none{display:block;padding:24px 32px 24px 0}
.pn .next{padding:24px 0 24px 32px;border-left:1px solid var(--rule);text-align:right}
.pn small{display:block;font-size:12px;color:var(--muted)}
.pn b{font-weight:500;color:var(--ink);font-size:15px}
.pn .none b{color:var(--faint);font-weight:400}
.pn a:hover b{text-decoration:underline;text-underline-offset:5px}
.pn .all{border-top:1px solid var(--rule);padding-top:22px;text-align:center}
.pn .all .tl{font-size:14px}

/* ===== article body: Markdown (tools/markdown.mjs) -> site ===== */
.prose{max-width:40em;font-size:17px;line-height:2.0;color:var(--text)}
body.lang-en .prose{line-height:1.75}
.prose>*+*{margin-top:1.4em}
.prose h2{font-family:var(--serif);font-weight:600;font-feature-settings:"palt" 1;letter-spacing:.04em;font-size:27px;line-height:1.55;color:var(--ink);margin-top:2.6em;padding-top:.9em;border-top:1px solid var(--ink)}
body.lang-en .prose h2{font-family:var(--en-serif);font-weight:500;letter-spacing:-.01em;font-feature-settings:normal;line-height:1.3}
.prose h3{font-size:18px;font-weight:700;color:var(--ink);line-height:1.7;margin-top:2.1em}
.prose h2+*,.prose h3+*{margin-top:.8em}
.prose strong{font-weight:700;color:var(--ink)}
.prose a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.prose a:hover{color:var(--ai)}
.prose ul li,.prose ol li{position:relative;padding-left:1.5em}
.prose li+li{margin-top:.35em}
.prose ul li::before{content:"";position:absolute;left:.15em;top:1.02em;width:.6em;height:1px;background:var(--ink)}
.prose ol{counter-reset:n}
.prose ol li{counter-increment:n}
.prose ol li::before{content:counter(n) ".";position:absolute;left:0;color:var(--muted);font-variant-numeric:tabular-nums}
.prose figure{margin-top:2.2em;margin-bottom:.6em}
.prose figure+*{margin-top:2em}
.prose figure img{display:block;width:100%;height:auto;border:1px solid var(--rule);background:var(--stone)}
.prose figcaption{font-size:13px;color:var(--muted);margin-top:10px;line-height:1.8}
.prose .ph{aspect-ratio:3/2;background:var(--stone);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:14px;border:1px solid var(--rule)}
.prose .ph.video{aspect-ratio:16/9;background:#1B1B1B;color:#9A9A9A;border:0}
.prose blockquote{border-left:2px solid var(--ai);padding:.15em 0 .15em 1.4em;font-family:var(--serif);font-weight:600;font-feature-settings:"palt" 1;letter-spacing:.04em;font-size:21px;line-height:1.85;color:var(--ink)}
body.lang-en .prose blockquote{font-family:var(--en-serif);font-weight:500;letter-spacing:-.005em;font-feature-settings:normal;line-height:1.5}
.prose blockquote p+p{margin-top:.8em}
.prose blockquote cite{display:block;font-family:var(--sans);font-style:normal;font-weight:400;font-size:13px;letter-spacing:.02em;color:var(--muted);margin-top:.7em}
.prose .note{background:var(--stone);padding:20px 26px;font-size:15.5px;line-height:1.95}
body.lang-en .prose .note{line-height:1.7}
.prose .note b{display:block;font-size:13px;color:var(--muted);font-weight:500;margin-bottom:4px}
.prose .tbl{overflow-x:auto;-webkit-overflow-scrolling:touch}
.prose table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.85;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule)}
.prose h2+.tbl table{border-top-color:var(--rule)}
.prose th,.prose td{text-align:left;vertical-align:top;padding:14px 20px 14px 0;border-top:1px solid var(--rule)}
.prose th:last-child,.prose td:last-child{padding-right:0}
.prose tr:first-child>th,.prose tr:first-child>td{border-top:0}
.prose thead th{font-size:13px;font-weight:400;color:var(--muted);padding-top:10px;padding-bottom:10px;border-bottom:1px solid var(--rule);white-space:nowrap}
.prose tbody th{width:8.5em;font-weight:400;color:var(--muted)}
.prose td{color:var(--ink)}
.prose hr{border:0;border-top:1px solid var(--rule);margin:3em 0}
.prose .toggle summary{cursor:pointer;color:var(--ink);font-weight:500;list-style:none}
.prose .toggle summary::-webkit-details-marker{display:none}
.prose .toggle summary::before{content:"＋";color:var(--muted);margin-right:.5em}
.prose .toggle[open] summary::before{content:"－"}
.prose .toggle>div{margin-top:.8em}
.prose .muted{font-size:15px;color:var(--muted)}

@media (max-width:760px){
  .lh{padding-top:40px;padding-bottom:36px}
  .lh h1{font-size:32px}
  .ag{grid-template-columns:1fr;gap:20px}
  .ah{padding-top:36px}
  .ah .meta{flex-direction:row;align-items:center;padding-top:0}
  .ah h1{font-size:28px;line-height:1.55}
  body.lang-en .ah h1{line-height:1.25}
  .ah .sum{font-size:15.5px;margin-top:16px}
  .cover{margin-top:32px}
  .abody{margin-top:40px}
  .side{order:2}
  .side .in{position:static}
  .pn{margin-top:64px}
  .pn .row{grid-template-columns:1fr}
  .pn a,.pn .none,.pn .next{padding:18px 0;border-left:0;text-align:left}
  .pn .next{border-top:1px solid var(--rule)}
  .prose{font-size:16px;line-height:1.95}
  .prose h2{font-size:22px}
  .prose blockquote{font-size:18px}
  .prose tbody th{width:6.5em}
}
