/* ===== archive-news 専用CSS =====
   汎用パーツ(.section / .eyebrow / .section-head / .btn / .container)と、グローバルな prefers-reduced-motion
   ブロックは assets/css/common.css に集約済みのため、ここには記述しない。
   .page-title は common.css に完全集約済み(このページ専用の上書きなし)。
   動きは他ページの一覧系セクション(info-table__row・symptom-row等)で確定済みの
   「弱・0.06s刻みのフェードアップ」を踏襲している。
*/

/* ===== お知らせ一覧 ===== */
.news-list { display: flex; flex-direction: column; }
.news-row { display: grid; grid-template-columns: 1fr; gap: 8px; padding: 20px 0; border-bottom: 1px solid var(--color-border); transition: opacity 0.2s ease; }
.news-row:first-child { border-top: 1px solid var(--color-border); }
.news-row:hover { opacity: 0.7; }
.news-row__meta { display: flex; align-items: center; gap: 12px; }
.news-row__date { font-family: var(--font-heading-en); font-size: 0.8125rem; color: var(--color-text-mute); }
.news-row__cat { display: inline-block; background: var(--color-main-soft); color: var(--color-main); font-size: 0.6875rem; font-weight: 700; padding: 3px 10px; white-space: nowrap; }
.news-row__title { font-size: 0.9375rem; color: var(--color-text); line-height: 1.7; }
.news-list__empty { text-align: center; color: var(--color-text-sub); padding: 40px 0; }

@media (width >= 768px) {
  .news-row { grid-template-columns: 220px 1fr; gap: 24px; align-items: baseline; padding: 22px 0; }
  .news-row__meta { flex-shrink: 0; }
}

/* ===== お知らせ一覧: 出現アニメーション(弱。0.06s刻みで下からフェードアップ。
   info-table__row・symptom-rowと同じパターン。投稿数が7件を超える分は基準の0s扱いとする) ===== */
.news-row--anim-init { opacity: 0; transform: translateY(12px); }
.news-row--anim-init.is-in-view {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}
.news-list .news-row--anim-init:nth-of-type(1) { transition-delay: 0s; }
.news-list .news-row--anim-init:nth-of-type(2) { transition-delay: 0.06s; }
.news-list .news-row--anim-init:nth-of-type(3) { transition-delay: 0.12s; }
.news-list .news-row--anim-init:nth-of-type(4) { transition-delay: 0.18s; }
.news-list .news-row--anim-init:nth-of-type(5) { transition-delay: 0.24s; }
.news-list .news-row--anim-init:nth-of-type(6) { transition-delay: 0.3s; }

/* ===== ページネーション ===== */
.pagination { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 48px; }
.pagination a, .pagination span { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 40px; padding-inline: 4px; font-family: var(--font-heading-en); font-size: 0.875rem; color: var(--color-text); }
.pagination a { border: 1px solid var(--color-border); }
.pagination a:hover { background: var(--color-main-soft); }
.pagination .is-current { background: var(--color-main); color: var(--color-white); border: 1px solid var(--color-main); }
.pagination .is-disabled { color: var(--color-text-mute); opacity: 0.4; }
