/* 「注目ニュース」 (D-121, owner 2026-11-14): one article of the last 36 hours under the header of the TOP, Nuruma_News_Feature.
 * Newspaper front-page lead: a heavy rule, a serif headline, hairlines; no tiles, pills, gradients or shadows. It sits in .nrm-portal-slot (first child of the portal root, which the portal CSS keeps at no height while
 * empty) and takes the portal's own fixed dark ground and ink (--nu-text / --nu-sub / --nu-accent of the NOIR root); the fallbacks only serve a stand-alone render.
 * PC (>= 768px) = A: a large picture beside (wide column) or above (narrow column) the headline, the summary and 「記事を読む →」.
 * Phone (<= 767px) = B: a slim banner, a small picture and the headline (3 lines at most); no summary, no label bar.
 * The whole block is one link (the headline's ::after covers it). No picture at all (.is-bare): the text stands alone. */
.nrm-ui .nrm-portal-slot { container: nrf / inline-size; }
.nrm-ui .nrf.nrf { --nrf-ink: var(--nu-text, hsl(0 0% 96%)); --nrf-sub: var(--nu-sub, hsl(0 0% 76%)); --nrf-rule: hsl(0 0% 100% / .24); --nrf-acc: var(--nu-accent, hsl(345 90% 72%));
	--nrf-serif: var(--serif, "Shippori Mincho ExtraBold", "Shippori Mincho", "Shippori Mincho B1", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", "MS PMincho", serif);
	position: relative; margin: 0; padding: 12px 0 0; color: var(--nrf-ink); font-size: 15px; font-weight: 400; line-height: 1.7; background: none; border: 0; box-shadow: none; }
.nrm-ui .nrf, .nrm-ui .nrf *, .nrm-ui .nrf *::before, .nrm-ui .nrf *::after { box-sizing: border-box; }
.nrm-ui .nrf .nrf__it { position: relative; margin: 0; padding: 0; border: 0; background: none; }
.nrm-ui .nrf a { color: inherit; text-decoration: none; }
.nrm-ui .nrf img { display: block; max-width: none; width: 100%; height: 100%; margin: 0; padding: 0; border: 0; border-radius: 0; box-shadow: none; object-fit: cover; object-position: 50% 8%; }

/* the masthead line: heavy rule, label, the way to the list */
.nrm-ui .nrf .nrf__bar { display: flex; align-items: baseline; justify-content: space-between; gap: 4px 16px; margin: 0 0 16px; padding: 9px 0; border: 0; border-top: 3px solid var(--nrf-ink); border-bottom: 1px solid var(--nrf-rule); background: none; font-size: 12.5px; line-height: 1.5; }
.nrm-ui .nrf .nrf__bar::before, .nrm-ui .nrf .nrf__bar::after { content: none; display: none; }
.nrm-ui .nrf .nrf__lab { font-weight: 800; letter-spacing: .22em; color: var(--nrf-ink); }
.nrm-ui .nrf .nrf__all { position: relative; z-index: 3; margin-left: auto; color: var(--nrf-sub); letter-spacing: .04em; }
.nrm-ui .nrf .nrf__all:hover, .nrm-ui .nrf .nrf__all:focus-visible { color: var(--nrf-ink); text-decoration: underline; text-underline-offset: 3px; }

/* shared text pieces */
.nrm-ui .nrf .nrf__lab2 { display: none; }
.nrm-ui .nrf .nrf__meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 .9em; margin: 0 0 8px; padding: 0; font-size: 12.5px; line-height: 1.6; color: var(--nrf-sub); }
.nrm-ui .nrf .nrf__cat { color: var(--nrf-acc); font-weight: 700; letter-spacing: .04em; }
.nrm-ui .nrf .nrf__tm { color: var(--nrf-sub); font-variant-numeric: tabular-nums; }
.nrm-ui .nrf .nrf__t { margin: 0; padding: 0; border: 0; background: none; box-shadow: none; font-family: var(--nrf-serif); font-weight: 800; color: var(--nrf-ink); letter-spacing: .01em; line-break: strict; overflow-wrap: anywhere; text-wrap: balance; text-align: left; }
.nrm-ui .nrf .nrf__t::before, .nrm-ui .nrf .nrf__t::after { content: none; display: none; }
.nrm-ui .nrf .nrf__t a { color: inherit; }
.nrm-ui .nrf .nrf__t a::after { content: ""; position: absolute; inset: 0; z-index: 2; }
.nrm-ui .nrf .nrf__d { margin: 0; color: var(--nrf-sub); line-break: strict; overflow-wrap: anywhere; }
.nrm-ui .nrf .nrf__go { margin: 0; font-size: 13.5px; font-weight: 700; color: var(--nrf-ink); letter-spacing: .04em; }
.nrm-ui .nrf .nrf__go span { display: inline-block; border-bottom: 1px solid var(--nrf-ink); padding-bottom: 1px; }
.nrm-ui .nrf .nrf__it:hover .nrf__go span, .nrm-ui .nrf .nrf__it:focus-within .nrf__go span { color: var(--nrf-acc); border-color: var(--nrf-acc); }
.nrm-ui .nrf .nrf__t a:focus-visible { outline: 2px solid var(--nrf-acc); outline-offset: 3px; }
.nrm-ui .nrf .nrf__fig { margin: 0; padding: 0; }
.nrm-ui .nrf .nrf__pic { position: relative; margin: 0; background: hsl(0 0% 100% / .08); overflow: hidden; }
/* a picture that is not landscape (a package cover): contained over its own blurred copy, as the news list does */
.nrm-ui .nrf .nrf__pic--fill::before { content: ""; position: absolute; inset: -20px; background: var(--nrf-src) center / cover; filter: blur(14px) brightness(.8); }
.nrm-ui .nrf .nrf__pic--fill img { position: relative; object-fit: contain; object-position: center; }

/* ---------- PC (>= 768px) = A: large picture + headline ---------- */
@media (min-width: 768px) {
	.nrm-ui .nrf .nrf__it { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
	.nrm-ui .nrf .nrf__pic { aspect-ratio: 16 / 10; }
	.nrm-ui .nrf .nrf__t { font-size: 25px; line-height: 1.45; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; } /* owner 2026-11-15: the headline stops at three lines (a long one used to run six deep and push the summary off the first screen) */
	.nrm-ui .nrf .nrf__d { margin-top: 10px; font-size: 14.5px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
	.nrm-ui .nrf .nrf__go { margin-top: 12px; }
}
@container nrf (min-width: 760px) {
	.nrm-ui .nrf .nrf__it { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); column-gap: 44px; align-items: stretch; }
	.nrm-ui .nrf .nrf__pic { aspect-ratio: 16 / 9; }
	.nrm-ui .nrf .nrf__tx { display: flex; flex-direction: column; padding: 2px 0 0; }
	.nrm-ui .nrf .nrf__meta { font-size: 13px; margin-bottom: 14px; }
	.nrm-ui .nrf .nrf__t { font-size: 34px; line-height: 1.42; }
	.nrm-ui .nrf .nrf__d { margin-top: 18px; font-size: 15.5px; -webkit-line-clamp: 4; }
	.nrm-ui .nrf .nrf__go { margin-top: auto; padding-top: 18px; font-size: 14px; }
}
/* no picture at all: the text stands alone, wider */
@media (min-width: 768px) { .nrm-ui .nrf.is-bare .nrf__it { grid-template-columns: minmax(0, 1fr); } }
@container nrf (min-width: 760px) {
	.nrm-ui .nrf.is-bare .nrf__it { grid-template-columns: minmax(0, 1fr); }
	.nrm-ui .nrf.is-bare .nrf__tx { max-width: 880px; }
	.nrm-ui .nrf.is-bare .nrf__t { font-size: 40px; }
	.nrm-ui .nrf.is-bare .nrf__go { margin-top: 0; }
}

/* ---------- phone (<= 767px) = B: slim banner ---------- */
@media (max-width: 767px) {
	.nrm-ui .nrf .nrf__bar { display: none; }
	.nrm-ui .nrf .nrf__it { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 14px; align-items: start; padding: 12px 0 14px; border-top: 3px solid var(--nrf-ink); border-bottom: 1px solid var(--nrf-rule); }
	.nrm-ui .nrf.is-bare .nrf__it { grid-template-columns: minmax(0, 1fr); }
	.nrm-ui .nrf .nrf__pic { aspect-ratio: 4 / 3; }
	.nrm-ui .nrf .nrf__meta { margin-bottom: 3px; font-size: 12px; }
	.nrm-ui .nrf .nrf__lab2 { display: inline; font-weight: 800; letter-spacing: .18em; color: var(--nrf-ink); }
	.nrm-ui .nrf .nrf__t { font-size: 17px; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
	.nrm-ui .nrf .nrf__d, .nrm-ui .nrf .nrf__go { display: none; }
}
