/* ブロックの出力（figure・見出しの中のリンクなど）を、静的版と同じ見た目にそろえる差分 */

.wp-block-image { margin: 0; }
.wp-block-post-content, .site-main { display: block; }

/* 写真の枠：画像ブロックに「ph」をつけると、静的版と同じように枠いっぱいに広がる */
figure.ph { margin: 0; }
.kv__photo .kv__slide { margin: 0; }

/* カード全体をリンクにする（見出しのリンクを、カード全体に広げる） */
.fcard { position: relative; }
.fcard h2 a { color: inherit; }
.fcard h2 a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.fcard p.arrow { opacity: 1; }
.fcard:hover .arrow { transform: translateX(4px); }

/* 特徴のカード：画像ブロックに feat__img をつける */
.feat .feat__img { height: 100%; }

/* 臨時休診のお知らせ（休診日ブロック） */
.closed-notice { margin-top: 24px; padding: 18px 22px; border-radius: var(--radius); background: #fdf1ee; border: 1px solid #f3cdc4; }
.closed-notice__title { font: 700 15px/1.4 var(--f-head); color: #b2402c; margin-bottom: 8px; }
.closed-notice li { display: grid; grid-template-columns: auto auto 1fr; gap: 10px; align-items: baseline; font-size: 14px; padding: 4px 0; }
.closed-notice time { font-weight: 700; }
.closed-notice__who { font-size: 11px; padding: 0 8px; border-radius: 999px; background: #fff; border: 1px solid #f3cdc4; color: #b2402c; }

/* ── 下層ページ（お知らせの一覧・記事・固定ページ） ── */
.subpage { max-width: 880px; margin: 0 auto; padding: 72px var(--gutter) 40px; }
.subpage__title { font: 700 clamp(24px, 2.4vw, 32px)/1.5 var(--f-head); letter-spacing: .04em; margin-bottom: 28px; }
.subpage__meta { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; color: var(--sub); font-size: 13px; }
.subpage__meta .tag a, .news__row .tag a { color: inherit; }
.subpage__body > * + * { margin-top: 1.2em; }
.subpage__body h2 { font: 700 22px/1.5 var(--f-head); margin-top: 2em; padding-left: 12px; border-left: 4px solid var(--accent); }
.subpage__body h3 { font: 700 18px/1.5 var(--f-head); margin-top: 1.6em; }
.subpage__body ul { list-style: disc; padding-left: 1.4em; }
.subpage__body a { color: var(--accent-dark); text-decoration: underline; }
.subpage .more { margin-top: 40px; }
.news .news__list { margin: 0; padding: 0; list-style: none; }
.news__row { display: grid; grid-template-columns: 96px auto 1fr; gap: 12px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--line); font-size: 14px; }
.news__row .wp-block-post-date { color: var(--sub); font-size: 13px; }
.news__name { font: 500 15px/1.6 var(--f-body); }
.news__name a:hover { color: var(--accent-dark); }
.wp-block-query-pagination { display: flex; gap: 12px; justify-content: center; margin-top: 32px; font-size: 14px; }
.wp-block-query-pagination .current { font-weight: 700; color: var(--accent-dark); }

@media (max-width: 767px) {
  .news__row { grid-template-columns: auto 1fr; }
  .news__row .news__name { grid-column: 1 / -1; }
  .subpage { padding: 48px 16px 32px; }
}

/* エディタの中でだけ使う：サーバーで描いたプレビューの中のリンクを押しても動かないように */
.editor-styles-wrapper .sorane-preview a { pointer-events: none; }
