/* post.css — 記事テンプレート（ブログ記事・お知らせ・固定ページの本文で共通） */
.post-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;padding:8px 0 48px}
@media (max-width:900px){ .post-layout{grid-template-columns:1fr} }
.post{min-width:0}
.post-head{padding:12px 0 16px}
.post-cat a{display:inline-block;background:var(--c-tint);color:var(--c-green-text);font-weight:700;font-size:.85rem;border-radius:var(--r-s);padding:2px 10px;text-decoration:none;margin-bottom:10px}
.post-head h1{font-size:1.8rem;line-height:1.4}
@media (max-width:640px){ .post-head h1{font-size:1.4rem} }
.post-meta{display:flex;flex-wrap:wrap;gap:4px 16px;color:var(--c-muted);font-size:.85rem;margin:10px 0 12px}
/* アイキャッチ：切り抜かない。画像そのままの形で中央に置き、大きすぎるものだけ高さで止める（むぎこ 2026-09-06） */
.eyecatch{margin:0 0 20px}
.eyecatch img{display:block;margin:0 auto;width:auto;height:auto;max-width:100%;max-height:560px;border-radius:var(--r-l)}
.lead{font-size:1.05rem;line-height:1.9;margin:0 0 20px;padding:16px 20px;background:var(--c-tint);border-radius:var(--r-m)}

/* 目次 */
.toc{border:2px solid var(--c-line);border-radius:var(--r-m);padding:14px 20px;margin:0 0 28px}
.toc-t{margin:0 0 6px;font-weight:700;font-size:.9rem;color:var(--c-muted)}
.toc ol{margin:0;padding-left:1.4em;display:flex;flex-direction:column;gap:2px}
.toc a{text-decoration:none;font-weight:700;display:inline-flex;align-items:center;min-height:32px}

/* 本文の型 */
/* 本文の中身は**すべて同じ幅**（アイキャッチ・目次・よくある質問と同じ列の幅）にそろえる。
   むぎこ 2026-09-07「よくある質問の方の幅に合わせてください」「基本、すべて同じ幅にしてほしいです」。
   以前は max-width:38em で文章だけ狭くしていた（画像・表・カードが本文より狭く見えていた）。 */
.post-body{max-width:none;font-size:1rem;line-height:1.95}
.post-body>*+*{margin-top:1em}
.post-body h2{font-size:1.4rem;margin:2.4em 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}
.post-body h3{font-size:1.1rem;margin:1.8em 0 .5em;padding-left:12px;border-left:4px solid var(--c-line)}
.post-body p{margin:0 0 1em}
.post-body strong{box-shadow:inset 0 -.45em 0 rgba(53,192,47,.28)}
.post-body a{font-weight:700;text-underline-offset:3px}
.post-body ul.check{list-style:none;margin:0 0 1em;padding:0}
.post-body ul.check li{position:relative;padding-left:1.8em;margin:.35em 0}
.post-body ul.check li::before{content:"";position:absolute;left:.15em;top:.55em;width:.7em;height:.4em;border-left:3px solid var(--c-green);border-bottom:3px solid var(--c-green);transform:rotate(-45deg)}
.post-body ol{padding-left:1.6em}
.post-body figure{margin:1.5em 0}
.post-body figure img{border-radius:var(--r-m);border:1px solid var(--c-line)}
.post-body figcaption{font-size:.85rem;color:var(--c-muted);margin-top:6px}
.post-body blockquote{margin:1.5em 0;padding:12px 18px;border-left:4px solid var(--c-line);color:var(--c-muted);background:var(--c-tint);border-radius:0 var(--r-m) var(--r-m) 0}
.post-body blockquote cite{display:block;font-size:.8rem;margin-top:6px;font-style:normal}
.post-body .note{background:var(--c-tint);border-radius:var(--r-m);padding:14px 18px;margin:1.5em 0}
.post-body .note-t{font-weight:700;color:var(--c-green-text);margin:0 0 4px;font-size:.9rem}
.post-body .note p:last-child{margin-bottom:0}
.post-body .point{border:2px solid var(--c-line);border-radius:var(--r-m);padding:14px 18px;margin:1em 0}
.post-body .point h3{margin:0 0 6px;border:0;padding:0;color:var(--c-green-text)}
.post-body .point p:last-child{margin-bottom:0}
.post-body .warn{border:2px solid var(--c-green-text);border-radius:var(--r-m);padding:14px 18px;margin:1.5em 0}
.post-body .video{aspect-ratio:16/9;margin:1.5em 0;border-radius:var(--r-m);overflow:hidden;background:var(--c-tint)}
.post-body .video iframe{width:100%;height:100%;border:0}
.post-body table{border-collapse:collapse;width:100%;font-size:.95rem}
.post-body th,.post-body td{border:1px solid var(--c-line);padding:8px 10px;text-align:left;vertical-align:top}
.post-body th{background:var(--c-tint)}
.post-body tbody th{white-space:nowrap;width:1%}  /* 行見出しの表（作品名／団体名 など）は見出し列を内容幅に */
.post-body .tbl{overflow-x:auto;margin:1.5em 0}
.post-body .btn{margin:.5em 0}

/* FAQ */
.faq{margin:3em 0 0}
.faq 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}
.faq details{border:2px solid var(--c-line);border-radius:var(--r-m);margin:0 0 10px;background:var(--c-paper)}
.faq summary{list-style:none;cursor:pointer;padding:12px 44px 12px 16px;font-weight:700;position:relative;min-height:44px;display:flex;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"Q";color:var(--c-green-text);margin-right:10px;font-weight:700}
.faq summary::after{content:"";position:absolute;right:18px;top:50%;width:10px;height:10px;border-right:2px solid var(--c-muted);border-bottom:2px solid var(--c-muted);transform:translateY(-70%) rotate(45deg);transition:transform .15s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(225deg)}
.faq .a{padding:0 16px 14px 42px;line-height:1.85}
.faq .a p{margin:0 0 .6em}

/* 出典・共有・著者・関連 */
.sources{margin:2.5em 0 0;font-size:.9rem}
.sources h2{font-size:1rem;margin-bottom:6px}
.sources ul{margin:0;padding-left:1.4em}
.sources .small,.author-box .small,.related .small{font-size:.8rem;color:var(--c-muted)}
.share{display:flex;flex-wrap:wrap;gap:8px;margin:2em 0}
.share .sh{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:2px solid var(--c-line);border-radius:var(--r-pill);background:var(--c-paper);color:var(--c-ink);font-weight:700;text-decoration:none;cursor:pointer;font-size:.9rem}
.share .sh:hover{border-color:var(--c-green)}
.share .ic{color:var(--c-green-text)}
.author-box{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 18px;margin:1.5em 0}
.author-box .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)}
.author-box .av img{width:64px;height:64px;object-fit:cover}
.author-box .av-txt{font-weight:700;font-size:1.4rem;color:var(--c-green-text)}
.author-box .role{margin:0;font-size:.8rem;color:var(--c-muted)}
.author-box b{font-size:1.05rem}
.author-box p{margin:6px 0 0;font-size:.9rem}
.related{margin:2em 0 0}
.related h2{font-size:1.1rem;margin-bottom:8px}
.related ul{margin:0 0 12px;padding-left:1.4em}
.related li{margin:4px 0}
.related a{font-weight:700}
/* ほかのお知らせ（アイキャッチがないので箇条書き） */
.related .rel-list{list-style:none;margin:0 0 12px;padding:0}
.related .rel-list li{margin:0;border-bottom:1px solid var(--c-line)}
.related .rel-list li:first-child{border-top:1px solid var(--c-line)}
.related .rel-list a{display:block;padding:12px 2px;text-decoration:none;color:var(--c-ink)}
.related .rel-list a:hover{color:var(--c-green-text);text-decoration:underline}
.related .rel-list .sub{display:block;font-size:.8rem;font-weight:400;color:var(--c-muted);margin:0 0 2px}
.related .rel-list .t{display:block}
.post-side .box+.box{margin-top:16px}
.post-body figure.official{display:flex;gap:16px;align-items:center;background:var(--c-tint);border-radius:var(--r-m);padding:14px 18px}
.post-body figure.official img{width:120px;height:auto;border:0;border-radius:var(--r-s);background:#fff}
.post-body figure.official figcaption{margin:0}

/* あわせて読みたい（カード） */
.pcards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 14px}
@media (max-width:640px){ .pcards{grid-template-columns:1fr} }
.pcard{display:flex;flex-direction:column;border:2px solid var(--c-line);border-radius:var(--r-m);overflow:hidden;text-decoration:none;color:var(--c-ink);background:var(--c-paper)}
.pcard:hover{border-color:var(--c-green)}
.pcard .th{display:block;aspect-ratio:16/9;background:var(--c-tint);overflow:hidden}
.pcard .th img,.pcard .th .ph{display:block;width:100%;height:100%;object-fit:cover}
.pcard .t{display:block;padding:10px 12px 12px}
.pcard .cat{display:inline-block;background:var(--c-tint);color:var(--c-green-text);font-size:.75rem;font-weight:700;border-radius:var(--r-s);padding:0 8px;margin-bottom:4px}
.pcard b{display:block;font-size:.95rem;line-height:1.5;font-weight:700}
@media (max-width:640px){ .pcard{flex-direction:row;align-items:center} .pcard .th{width:110px;flex:none;aspect-ratio:4/3} }

/* リンクカード（外部記事などへの案内） */
.post-body .linkcard{display:flex;align-items:center;gap:12px;border:2px solid var(--c-line);border-radius:var(--r-m);padding:14px 16px;text-decoration:none;color:var(--c-ink);margin:1.5em 0;background:var(--c-paper)}
.post-body .linkcard:hover{border-color:var(--c-green)}
.linkcard .lc-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.linkcard .lc-site{font-size:.8rem;color:var(--c-muted)}
.linkcard .lc-title{font-size:1.05rem;line-height:1.5}
.linkcard .lc-desc{font-size:.9rem;color:var(--c-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.linkcard .lc-url{font-size:.8rem;color:var(--c-green-text);font-weight:700}
.linkcard .lc-arrow{margin-left:auto;font-size:1.6rem;color:var(--c-green-text)}
/* お知らせ用：著者ボックスを小さく */
.author-box.compact p:not(.role):not(.small){display:none}
.author-box.compact{padding:12px 16px;grid-template-columns:48px 1fr;align-items:center}
.author-box.compact .av{width:48px;height:48px}.author-box.compact .av img{width:48px;height:48px}

/* 写真ギャラリー（記事本文） */
.post-body .gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:1.5em 0}
.post-body .gallery figure{margin:0}
.post-body .gallery img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover}
.post-body .gallery figcaption{font-size:.85rem;margin-top:4px}
@media (max-width:640px){ .post-body .gallery{grid-template-columns:repeat(2,1fr);gap:8px} }
.post-body .gallery.two{grid-template-columns:repeat(2,1fr)}
/* 動画（自前の mp4） */
.post-body .movie{margin:1.5em 0}
.post-body .movie video{width:100%;max-width:560px;height:auto;display:block;border-radius:var(--r-m);border:1px solid var(--c-line);background:var(--c-tint)}
.post-body .movie .small{font-size:.85rem;color:var(--c-muted);margin:6px 0 0}
.post-body .gallery.tall img{aspect-ratio:5/8}
/* 写真の番号バッジ（figure data-no）と、写真つき point */
.post-body .gallery figure[data-no]{position:relative}
.post-body .gallery figure[data-no]::before{content:attr(data-no);position:absolute;left:8px;top:8px;z-index:1;width:36px;height:36px;border-radius:50%;background:var(--c-green);color:#fff;font-weight:700;font-size:1.1rem;display:grid;place-items:center;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.post-body .point.pic{display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:start}
.post-body .point.pic>img{width:72px;height:72px;border-radius:var(--r-s);border:1px solid var(--c-line);object-fit:cover}
.post-body .point.pic h3 .ref{display:inline-block;font-size:.8rem;font-weight:400;color:var(--c-muted);margin-left:.5em}
.post-body p.small{font-size:.85rem;color:var(--c-muted)}
/* マーク一覧（アイコンの格子） */
.post-body .marks{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;margin:1em 0 1.5em;padding:0;list-style:none}
.post-body .marks li{margin:0}
.post-body .marks a{display:block;border:1px solid var(--c-line);border-radius:var(--r-m);padding:6px;background:var(--c-paper);text-align:center;font-size:.72rem;line-height:1.3;color:var(--c-ink);text-decoration:none}
.post-body .marks a:hover,.post-body .marks a:focus-visible{border-color:var(--c-green)}
.post-body .marks img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;border:0;border-radius:var(--r-s);margin-bottom:4px}
.post-body .point.pic>img.mark{object-fit:contain;background:var(--c-paper)}

/* 本文の中の団体カード（2026-09-07）。1枚だけのときは横長に */
.post-body .pcards.one{grid-template-columns:1fr}
.post-body .pcards.one .pcard{flex-direction:row;align-items:center}
.post-body .pcards.one .pcard .th{width:140px;flex:none;aspect-ratio:4/3}
