:root{--ink:#16363d;--deep:#0c303a;--teal:#176575;--gold:#d69a45;--paper:#f4f7f5;--white:#fff;--line:#cad8d6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif;line-height:1.85;overflow-x:hidden}img{display:block;max-width:100%;height:auto}a{color:var(--teal);text-underline-offset:4px}.site-header{min-height:76px;padding:14px max(24px,calc((100% - 1180px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{color:var(--deep);font-weight:800;text-decoration:none;letter-spacing:.06em;white-space:nowrap}.brand span{display:block;font:600 9px/1.5 Georgia,serif;letter-spacing:.18em;color:var(--teal)}.global-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.global-nav a{padding:7px 9px;color:var(--ink);font-size:.82rem;text-decoration:none;border-radius:3px}.global-nav a:hover{background:#e8f1ef}.menu-toggle{display:none;border:1px solid var(--line);background:white;padding:8px 12px;font-size:1.2rem}.hero{position:relative;height:clamp(360px,50vw,570px);overflow:hidden;background:var(--deep)}.hero>img{width:100%;height:100%;object-fit:cover;opacity:.64}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,30,37,.92),rgba(5,30,37,.36) 65%,rgba(5,30,37,.08))}.hero-copy{position:absolute;z-index:2;left:max(24px,calc((100% - 1180px)/2));right:24px;top:50%;transform:translateY(-50%);max-width:760px;color:white}.hero-copy>p:first-child{font:700 .72rem/1.4 Georgia,serif;letter-spacing:.22em;color:#e8be7d}.hero h1{font-family:"Noto Serif JP","Yu Mincho",serif;font-size:clamp(2rem,5vw,4.6rem);line-height:1.25;letter-spacing:.04em;margin:.18em 0}.hero-copy>p:last-child{font-size:clamp(.95rem,2vw,1.2rem);max-width:650px}.content-grid{width:min(1180px,calc(100% - 48px));margin:64px auto;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px 46px;align-items:start}.article{grid-row:1/5}.article .lead{font-family:"Noto Serif JP","Yu Mincho",serif;font-size:1.18rem;line-height:2;border-left:5px solid var(--gold);padding:8px 0 8px 22px;margin:0 0 52px}.meta{color:#638087;font-size:.78rem}.article section{margin:0 0 56px}.article h2,.related h2,.related-sites h2,.side-nav h2{font-family:"Noto Serif JP","Yu Mincho",serif;color:var(--deep);line-height:1.45}.article h2{font-size:1.65rem;border-bottom:1px solid var(--line);padding-bottom:12px}.article p{margin:1em 0}.side-nav,.related,.related-sites,.ad{background:white;border-top:4px solid var(--teal);padding:22px;min-width:0}.side-nav ul,.related ul{padding-left:1.2em}.side-nav h2,.related h2,.related-sites h2{font-size:1.05rem;margin-top:0}.ad{border-color:var(--gold);background:#fff9ec}.ad span{font-size:.65rem;border:1px solid var(--gold);padding:2px 6px}.ad strong{display:block;margin-top:8px}.ad p{font-size:.86rem;line-height:1.65}.related-sites p{display:flex;flex-direction:column;gap:6px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:52px}.card{padding:24px;background:white;border:1px solid var(--line)}.card h2{font-size:1.15rem;border:0;margin-top:0;padding:0}.card p{font-size:.9rem}.site-footer{padding:48px max(24px,calc((100% - 1180px)/2)) 20px;background:var(--deep);color:#dce9e7}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-grid h2{font-size:1rem;color:white}.footer-grid a{display:block;color:#cbe2de;margin:7px 0}.copyright{border-top:1px solid #31515a;margin-top:30px;padding-top:18px;font-size:.72rem}.blog-hero-image{width:100%}@media(max-width:820px){.site-header{min-height:66px}.menu-toggle{display:block}.global-nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:12px 20px;border-bottom:1px solid var(--line)}.global-nav.is-open{display:grid;grid-template-columns:1fr 1fr}.global-nav a{padding:10px}.hero{height:420px}.hero-copy{left:24px}.content-grid{grid-template-columns:1fr;width:min(100% - 32px,700px);margin:40px auto}.article{grid-row:auto}.cards{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>section{grid-column:1/-1}}@media(max-width:430px){body{font-size:15px}.brand{font-size:.9rem}.brand span{font-size:7px}.hero{height:390px}.hero h1{font-size:2rem}.hero-copy>p:last-child{font-size:.9rem}.content-grid{width:calc(100% - 28px);gap:20px}.article .lead{font-size:1.03rem;padding-left:15px;margin-bottom:36px}.article h2{font-size:1.35rem}.article section{margin-bottom:40px}.side-nav,.related,.related-sites,.ad,.card{padding:18px}.footer-grid{grid-template-columns:1fr}.footer-grid>section{grid-column:auto}}

/* LATEST-COMMENTARY:START */
.latest-commentary {
  padding: 3rem 0;
}
/* .container を持たないサイトでも端に張り付かないための保険。
   :where() は詳細度0なので、サイト側の .container 定義が常に優先される。 */
:where(.latest-commentary .container) {
  max-width: 1200px;
  margin-inline: auto;
  padding-inline: 1rem;
}
.latest-commentary h2 {
  margin-bottom: 1.25rem;
}
.latest-commentary-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.latest-commentary-list li {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.25rem 1rem;
  padding: 0.75rem 0;
  border-bottom: 1px solid var(--line, #e5e5e5);
}
.latest-commentary-list time {
  flex: 0 0 auto;
  color: #666;
  font-size: 0.9rem;
  font-variant-numeric: tabular-nums;
}
.latest-commentary-list a {
  flex: 1 1 16rem;
  min-width: 0;
  color: var(--ink, #222);
  text-decoration: none;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.latest-commentary-list a:hover {
  color: #0b5;
  text-decoration: underline;
}
.latest-commentary-more {
  margin-top: 1.25rem;
}
.latest-commentary-more a {
  color: #0b5;
  text-decoration: none;
  font-weight: 600;
}
.latest-commentary-more a:hover {
  text-decoration: underline;
}
@media (max-width: 600px) {
  .latest-commentary-list li {
    flex-direction: column;
    gap: 0.2rem;
  }
  /* 縦積み時に flex-basis(16rem) が高さに効かないよう auto に戻す */
  .latest-commentary-list a,
  .latest-commentary-list time {
    flex: 0 0 auto;
  }
}
/* LATEST-COMMENTARY:END */

/* 2026-09 品質見直し: サイドバー統合・本文h3・フッター必須リンク・広告枠 */
.content-grid>.article{grid-row:auto}
.sidebar{display:grid;gap:28px;min-width:0;align-content:start}
.article h3{font-family:"Noto Serif JP","Yu Mincho",serif;color:var(--deep);font-size:1.18rem;line-height:1.5;margin:1.8em 0 .6em}
.article ul,.article ol{padding-left:1.4em}
.article li{margin:.35em 0}
.article table{width:100%;border-collapse:collapse;font-size:.92rem;margin:1em 0}
.article th,.article td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.article th{background:#e8f1ef}
.amazon-banner{margin:.9rem 0}
.amazon-banner a{display:block;background:#fff9ec;border:1px solid var(--gold);padding:.8rem 1rem;font-size:.9rem;font-weight:700;color:#8a5a1e;text-align:center;text-decoration:none}
.amazon-banner img{display:inline}
.sidebar .amazon-banner{margin:0}
.footer-links{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;margin-top:30px;padding-top:16px;border-top:1px solid #31515a;font-size:.82rem}
.footer-links a{color:#cbe2de;text-decoration:none}
.footer-links a:hover{color:#fff;text-decoration:underline}
@media(max-width:820px){.sidebar{gap:20px}}
