/* page.css — 固定ページの部品（団体概要表・沿革・運営メンバー） */
.page .post-body{max-width:40em}
.spec,.history,.people,.media{margin:3em 0 0;max-width:40em}
.spec h2,.history h2,.people h2,.media h2{font-size:1.4rem;margin:0 0 .8em;padding:0 0 .35em 14px;border-left:6px solid var(--c-green);border-bottom:2px solid var(--c-line);scroll-margin-top:16px}
.spec-t{width:100%;border-collapse:collapse;font-size:.95rem}
.spec-t th,.spec-t td{padding:12px 14px;border-bottom:1px solid var(--c-line);text-align:left;vertical-align:top}
.spec-t th{width:8em;background:var(--c-tint);font-weight:700;color:var(--c-muted);white-space:nowrap}
.spec-t ul{margin:0;padding-left:1.2em}
.spec-t small{color:var(--c-muted);font-size:.8rem}
.spec-t .num{font-variant-numeric:tabular-nums;letter-spacing:.04em;font-weight:700}
@media (max-width:640px){ .spec-t th,.spec-t td{display:block;width:auto} .spec-t th{border-bottom:0;padding-bottom:4px} .spec-t td{padding-top:4px} }
.timeline{list-style:none;margin:0;padding:0 0 0 18px;border-left:3px solid var(--c-line)}
.timeline li{position:relative;padding:0 0 18px 20px;display:grid;grid-template-columns:9.5em 1fr;gap:4px 12px}
.timeline li::before{content:"";position:absolute;left:-9px;top:.55em;width:12px;height:12px;border-radius:50%;background:var(--c-green);border:3px solid var(--c-paper);box-shadow:0 0 0 1px var(--c-line)}
.timeline time{font-weight:700;color:var(--c-green-text);font-variant-numeric:tabular-nums}
@media (max-width:640px){ .timeline li{grid-template-columns:1fr} }
.people-g{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:640px){ .people-g{grid-template-columns:1fr} }
.person{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:start;border:2px solid var(--c-line);border-radius:var(--r-l);padding:16px}
.person .av{width:64px;height:64px;border-radius:50%;background:var(--c-tint);display:grid;place-items:center;overflow:hidden;border:2px solid var(--c-line)}
.person .av img{width:64px;height:64px;object-fit:cover}
.person .av-txt{font-weight:700;font-size:1.4rem;color:var(--c-green-text)}
.person .role{margin:0;font-size:.8rem;color:var(--c-muted)}
.person b{font-size:1.05rem}
.person p{margin:6px 0 0;font-size:.9rem}
.person .small{font-size:.8rem}
.media .check small{color:var(--c-muted);margin-left:6px}
.page-cta{display:flex;gap:10px;flex-wrap:wrap;margin:2.5em 0 0}
.spec+.post-body{margin-top:3em}
.spec+.post-body h2:first-child{margin-top:0}
.post-body figure.award{max-width:360px}
.post-body figure.award img{border:1px solid var(--c-line);border-radius:var(--r-m)}

/* 法的ページ（サイドなし1カラム） */
.post-layout.solo{grid-template-columns:minmax(0,1fr);max-width:800px;margin:0 auto}
.post-layout.solo .post-body{max-width:none}
.toc ol.numbered{list-style:none;padding-left:0}
.post-body p.small{text-align:right;color:var(--c-muted);font-size:.85rem;margin-top:2.5em}
.post-body kbd{font-family:inherit;font-size:.9em;border:1px solid var(--c-line);border-bottom-width:2px;border-radius:4px;padding:1px 7px;background:var(--c-tint);white-space:nowrap}
