/* 記事ページ（single.php） */
.mark{display:inline-block;font-family:var(--maru);font-weight:700;font-size:13px;line-height:1.5;padding:1px 10px;border-radius:6px 9px 6px 10px/9px 6px 10px 6px;white-space:nowrap}
.m-news{background:var(--lav-200);color:var(--plum-900)}
.m-report{background:var(--mint);color:#1F4F3D}
.m-pending{border:1.5px dashed var(--ink-sub);color:var(--ink-sub);padding:0 9px}

.post-head{background:var(--lav-100);padding:28px 0 84px}
.crumbs{font-size:14px;line-height:1.7;color:var(--ink-sub)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:0 4px;padding:0;margin:0;list-style:none}
.crumbs li+li::before{content:"／";margin-right:4px}
.crumbs a{color:var(--plum-700)}
.post-meta{margin-top:22px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.post-meta time{font-family:var(--maru);font-weight:700;font-size:17px;color:var(--plum-700)}
.post-head h1{margin-top:10px;font-family:var(--maru);font-weight:700;color:var(--plum-900);font-size:clamp(24px,6vw,36px);line-height:1.55;max-width:26em;overflow-wrap:anywhere}
@supports (word-break:auto-phrase){.post-head h1,.entry-content h2,.entry-content h3,.post-nav .tt,.rel h3{word-break:auto-phrase}}
.post-body{padding:34px 0 60px}
.col{max-width:40em;margin:0 auto}

/* 記事本文（WordPress が出す素のタグ＋ブロックスタイル） */
.entry-content{font-size:16.5px;line-height:1.95;color:var(--ink);overflow-wrap:anywhere}
.entry-content>*+*{margin-top:1.3em}
.entry-content p+p{margin-top:1.2em}
.entry-content strong{font-weight:700}
.entry-content a{color:var(--plum-700);text-underline-offset:4px}
.entry-content h2{font-family:var(--maru);font-weight:700;font-size:clamp(21px,5vw,25px);line-height:1.55;color:var(--plum-900);margin-top:2.6em;padding-bottom:.35em;border-bottom:3px dotted var(--lav-300)}
.entry-content h2+*{margin-top:1em}
.entry-content h3{font-family:var(--maru);font-weight:700;font-size:clamp(18px,4.6vw,20px);line-height:1.6;color:var(--plum-700);margin-top:2.1em}
.entry-content h3 span{display:inline}
.entry-content h3+*{margin-top:.8em}
.entry-content ul,.entry-content ol{padding:0;list-style:none}
.entry-content li{position:relative;padding-left:1.5em}
.entry-content li+li{margin-top:.55em}
.entry-content ul>li::before{content:"";position:absolute;left:.25em;top:.82em;width:.5em;height:.5em;border-radius:50%;background:var(--lav-500)}
.entry-content ol{counter-reset:n}
.entry-content ol>li{counter-increment:n;padding-left:2em}
.entry-content ol>li::before{content:counter(n);position:absolute;left:0;top:.3em;width:1.45em;height:1.45em;border-radius:48% 52% 55% 45%/55% 45% 52% 48%;background:var(--yellow);color:var(--plum-900);font-family:var(--maru);font-weight:700;font-size:.85em;line-height:1.45em;text-align:center}
.entry-content blockquote{margin-left:0;margin-right:0;padding:14px 20px;background:#fff;border:2px dotted var(--lav-300);border-radius:14px 22px 12px 24px/22px 12px 24px 14px;font-family:var(--hand);font-weight:400;font-size:1.02em}
.entry-content blockquote p{margin:0}
.entry-content .has-text-align-center{text-align:center;color:var(--plum-700);margin-top:1.8em}
.entry-content figure{margin-left:0;margin-right:0}
.entry-content figure.wp-block-image{margin-top:2.2em}
.entry-content img{height:auto;max-width:100%}
.entry-content figure.wp-block-image img{border-radius:10px 16px 8px 18px/16px 8px 18px 10px;box-shadow:7px 8px 0 var(--lav-200)}
.entry-content img.aligncenter{display:block;margin-left:auto;margin-right:auto;max-width:min(100%,460px)}
.entry-content figcaption{margin-top:12px;font-size:14px;line-height:1.7;color:var(--ink-sub);text-align:center}
.entry-content figure.wp-block-table{overflow-x:auto}
.entry-content table{width:100%;border-collapse:collapse;table-layout:fixed}
.entry-content th,.entry-content td{padding:11px 12px;text-align:left;vertical-align:top;border-bottom:2px dotted var(--lav-300);overflow-wrap:anywhere}
.entry-content th{width:6.8em;font-family:var(--maru);font-weight:700;color:var(--plum-900)}

/* ブロックスタイル */
.entry-content .is-style-callout{background:#FFF1B8;border:3px solid var(--plum-700);border-radius:18px 28px 14px 30px/28px 16px 30px 18px;padding:18px 22px;transform:rotate(-.4deg);box-shadow:5px 6px 0 var(--lav-200);font-family:var(--maru);font-weight:700;font-size:1.06em;line-height:1.8;color:var(--plum-900);margin-top:1.8em;margin-bottom:.4em}
.entry-content .is-style-info th{background:var(--lav-100)}
.entry-content .is-style-info tr:first-child th,.entry-content .is-style-info tr:first-child td{border-top:2px dotted var(--lav-300)}
.entry-content .is-style-note{background:rgba(255,255,255,.7);border:2px dashed var(--lav-500);border-radius:14px 22px 12px 24px/22px 12px 24px 14px;padding:16px 20px;font-size:.97em}
.entry-content .is-style-note p+p{margin-top:.6em}
.entry-content .is-style-point{background:#fff;border:2px solid var(--lav-300);border-radius:12px 20px 10px 22px/20px 10px 22px 12px;box-shadow:5px 6px 0 var(--lav-200);padding:16px 20px 18px}
.entry-content .is-style-point+.is-style-point{margin-top:1.5em}
.entry-content .is-style-point h3{margin-top:0;font-size:clamp(17px,4.4vw,19px);color:var(--plum-900)}
.entry-content .is-style-point h3+p{margin-top:.5em}
.entry-content .is-style-figure-number{background:var(--lav-100);border:2px dotted var(--lav-500);border-radius:16px 26px 14px 28px/26px 14px 28px 16px;padding:22px 16px 14px}
.entry-content .is-style-figure-number .label{text-align:center;font-family:var(--maru);font-weight:700;font-size:15px;line-height:1.5;color:var(--plum-700);margin:0}
.entry-content .is-style-figure-number .num{text-align:center;margin-top:4px}
.entry-content .is-style-figure-number .num strong,.entry-content .is-style-figure-number .num span{display:inline-block;font-family:var(--maru);font-weight:700;font-size:clamp(30px,9vw,40px);line-height:1.4;color:var(--plum-700);border-bottom:4px double var(--plum-700);padding:0 10px}
.entry-content .is-style-figure-number figure.wp-block-table{margin-top:1.1em}
.entry-content .is-style-figure-number td{padding:10px 4px}
.entry-content .is-style-figure-number tr:last-child td{border-bottom:0}
@media (max-width:519px){
  .entry-content table,.entry-content tbody,.entry-content tr,.entry-content th,.entry-content td{display:block;width:100%}
  .entry-content tr{border-bottom:2px dotted var(--lav-300);padding:8px 0}
  .entry-content th,.entry-content td{border-bottom:0;padding:3px 12px}
  .entry-content .is-style-figure-number td{padding:2px 4px}
  .entry-content .is-style-figure-number td:first-child{font-weight:700}
  .entry-content .is-style-figure-number tr:last-child{border-bottom:0}
  .entry-content .is-style-info tr:first-child{border-top:2px dotted var(--lav-300)}
  .entry-content .is-style-info tr:first-child th,.entry-content .is-style-info tr:first-child td{border-top:0}
}
@media (min-width:520px){
  .entry-content .is-style-figure-number td:last-child{text-align:right}
}
@media (min-width:720px){
  .entry-content{font-size:17px}
  .entry-content .is-style-figure-number{padding:26px 28px 18px}
}

/* 前後の記事・戻る */
.post-nav{margin-top:60px;display:grid;gap:14px}
.post-nav a{display:block;padding:15px 18px;text-decoration:none;color:var(--ink);background:#fff;border:2px solid var(--lav-300);border-radius:12px 20px 10px 22px/20px 10px 22px 12px}
.post-nav a:hover{border-color:var(--plum-700)}
.post-nav .lb{display:block;font-family:var(--maru);font-weight:700;font-size:14px;color:var(--plum-700);margin-bottom:2px}
.post-nav .tt{display:block;font-weight:500;line-height:1.7;overflow-wrap:anywhere}
.back{margin-top:34px;text-align:center}
@media (min-width:720px){.post-nav{grid-template-columns:1fr 1fr}}

/* 関連記事（トップの活動報告節と同じ型抜き） */
.related{background:var(--lav-100);padding:84px 0 120px}
.related h2{font-family:var(--maru);font-weight:700;color:var(--plum-900);font-size:clamp(23px,5.6vw,30px);line-height:1.4;display:flex;align-items:center;gap:10px}
.rel-list{margin-top:30px;display:grid;gap:32px;max-width:820px}
.related .rep-sub .photo{display:grid;place-items:center}
.related .credit{margin-top:38px}
@media (min-width:900px){.related .rep-sub{grid-template-columns:184px 1fr}}
.single-thumb{margin:0 0 2em}.single-thumb img{display:block;width:100%;height:auto;border-radius:10px 16px 8px 18px/16px 8px 18px 10px;box-shadow:7px 8px 0 var(--lav-200)}
.post-nav .nx{text-align:right}
