@charset "utf-8";
/* =========================================================
   お知らせ詳細テンプレート（Figma 613:32263）
   1rem = 100 design-px。ページ接頭辞 nd-
   ========================================================= */
.nd { position: relative; }
.nd-tri { position: absolute; left: 0; top: 0; width: 3.18rem; height: 2.59rem; background: rgba(255,255,255,.12); clip-path: polygon(0 0, 100% 0, 0 100%); pointer-events: none; }
.crumb.nd-crumb { position: relative; margin-top: .43rem; background: none; }
.crumb.nd-crumb li:last-child { min-width: 0; }
.crumb.nd-crumb li:last-child > a { overflow: hidden; text-overflow: ellipsis; }

/* Frame 961：記事（見出し＋本文）とボタンを gap 100。下余白 130 */
.nd-main { position: relative; width: 11rem; margin: .73rem auto 0; padding-bottom: 1.30rem; display: flex; flex-direction: column; align-items: center; gap: 1.00rem; }
.nd-art { width: 100%; display: flex; flex-direction: column; align-items: center; gap: .73rem; }

/* ---------- 見出し（Frame 854） ---------- */
.nd-head { width: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: .27rem; }
.nd-head__h { width: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: .22rem; }
.nd-date { display: flex; align-items: center; gap: .18rem; height: .28rem; font-weight: 500; font-size: .18rem; line-height: .27692rem; letter-spacing: .0126rem; white-space: nowrap; }
.nd-ttl { width: 100%; font-weight: 700; font-size: .43424rem; line-height: .64rem; letter-spacing: .030397rem; }
.nd-meta { display: flex; align-items: flex-start; gap: .20rem; }
.nd-tag { display: flex; align-items: center; justify-content: center; height: .35678rem; padding: 0 .22071rem; border-radius: .27319rem; background: #fd6a05; color: #fff; font-weight: 500; font-size: .15357rem; line-height: .27955rem; letter-spacing: .016893rem; white-space: nowrap; }
.nd-vol { display: flex; align-items: center; gap: .11rem; height: .36rem; font-weight: 500; font-size: .18rem; line-height: .27692rem; letter-spacing: .0126rem; white-space: nowrap; }

/* ---------- アイキャッチ＋本文（Frame 939：gap 63） ---------- */
.nd-content { width: 100%; display: flex; flex-direction: column; align-items: flex-start; gap: .63rem; }
.nd-eyecatch { width: 100%; height: 6.18041rem; margin: 0; background: #c4c4c4; overflow: hidden; }
.nd-eyecatch img { width: 100%; height: 100%; object-fit: cover; }

/* 本文（WordPress の本文に当たる部分）の汎用スタイル。Figma は段落のみ（16 / 行送り34 / 字間 2.4）。見出し・リスト等は推論 */
.nd-body { width: 100%; font-size: .16rem; line-height: .34rem; letter-spacing: .024rem; overflow-wrap: anywhere; }
.nd-body > * + * { margin-top: .34rem; }
.nd-body > h2, .nd-body > h3, .nd-body > h4 { font-weight: 700; letter-spacing: .02rem; }
.nd-body > * + h2 { margin-top: .70rem; }
.nd-body > * + h3, .nd-body > * + h4 { margin-top: .50rem; }
.nd-body h2 { display: flex; gap: .16rem; font-size: .28rem; line-height: .44rem; }
.nd-body h2::before { content: ""; flex: none; width: .08rem; background: #f1a36e; }
.nd-body h3 { padding-bottom: .10rem; border-bottom: .02rem solid #fd6a05; font-size: .22rem; line-height: .36rem; }
.nd-body h4 { font-size: .18rem; line-height: .30rem; color: #f1a36e; }
.nd-body a { color: #f1a36e; text-decoration: underline; text-decoration-thickness: from-font; }
.nd-body strong, .nd-body b { font-weight: 700; }
.nd-body ul, .nd-body ol { padding-left: 1.5em; }
.nd-body ul { list-style: disc; }
.nd-body ol { list-style: decimal; }
.nd-body li + li { margin-top: .06rem; }
.nd-body li::marker { color: #fd6a05; }
.nd-body img { max-width: 100%; height: auto; }
.nd-body figure { margin-left: 0; margin-right: 0; }
.nd-body figcaption { margin-top: .08rem; font-size: .13rem; line-height: .22rem; color: #c9c4c4; }
.nd-body blockquote { padding: .20rem .28rem; border-left: .04rem solid #f1a36e; background: #4b4344; }
.nd-body hr { border: 0; height: .01rem; background: rgba(255,255,255,.4); }
.nd-body table { width: 100%; border-collapse: collapse; }
.nd-body th, .nd-body td { padding: .12rem .20rem; border: .01rem solid #fff; text-align: left; vertical-align: top; }
.nd-body th { background: #4b4344; font-weight: 700; white-space: nowrap; }

/* ---------- ボタン（Frame 1321321394：gap 56） ---------- */
.nd-foot { display: flex; flex-direction: column; align-items: center; gap: .56rem; }
.nd-back { display: flex; align-items: flex-start; gap: .13601rem; height: .27202rem; color: #fff; font-weight: 700; font-size: .18rem; line-height: .26103rem; letter-spacing: .027rem; white-space: nowrap; text-decoration: underline; text-decoration-thickness: from-font; }
.nd-back::after { content: ""; flex: none; width: .27202rem; height: .27202rem; background: url(../img/arrow-circle.svg) no-repeat center / 100% 100%; }
