/*
Theme Name: 藤井総合事務所 コラム/お知らせ
Theme URI: https://www.fujiisougoujimusho.com/
Author: 行政代書 藤井総合事務所
Description: 静的HTMLサイトと同じデザイン言語でコラム(/column/)とお知らせ(/news/)を配信するテーマ。配色・タイポグラフィは /css/style.css を共有し、本テーマは WordPress 固有の要素のみを定義します。
Version: 1.0.4
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: fujii-column
*/

/* =========================================================
   本文組版（ブロックエディタで入稿された内容の見た目）
   ========================================================= */
.wp-content {
  font-size: 1rem;
  line-height: 2.05;
  color: var(--c-ink);
}
.wp-content > * + * { margin-top: 1.6em; }

.wp-content h2 {
  font-family: var(--font-serif);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.6;
  color: var(--c-navy);
  margin-top: 2.8em;
  padding: 0 0 14px;
  border-bottom: 2px solid var(--c-gold);
  word-break: auto-phrase;
}
.wp-content h3 {
  font-family: var(--font-serif);
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1.7;
  color: var(--c-navy);
  margin-top: 2.2em;
  padding-left: 14px;
  border-left: 3px solid var(--c-gold);
  word-break: auto-phrase;
}
.wp-content h4 {
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--c-navy);
  margin-top: 1.8em;
}
.wp-content p { word-break: auto-phrase; }

.wp-content a {
  color: var(--c-navy);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.wp-content a:hover { color: var(--c-gold); }

.wp-content strong { font-weight: 700; }
.wp-content mark {
  background: linear-gradient(transparent 62%, rgba(232,168,96,0.45) 62%);
  color: inherit;
  padding: 0 2px;
}

.wp-content ul,
.wp-content ol { padding-left: 1.4em; }
.wp-content ul { list-style: disc; }
.wp-content ol { list-style: decimal; }
.wp-content li { margin-top: 0.6em; }
.wp-content li::marker { color: var(--c-gold); }

.wp-content blockquote {
  border-left: 3px solid var(--c-line);
  padding: 4px 0 4px 20px;
  color: var(--c-ink-soft);
}

.wp-content img { border: 1px solid var(--c-line); }
.wp-content figcaption {
  font-size: 0.85rem;
  color: var(--c-ink-soft);
  margin-top: 8px;
  text-align: center;
}

.wp-content table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.95rem;
}
.wp-content th,
.wp-content td {
  border: 1px solid var(--c-line);
  padding: 12px 14px;
  text-align: left;
  vertical-align: top;
}
.wp-content th {
  background: var(--c-paper);
  font-weight: 600;
  color: var(--c-navy);
}

/* テーブルは狭い画面で横スクロールさせる */
.wp-content .wp-block-table { overflow-x: auto; }

/* =========================================================
   目次
   ========================================================= */
.wp-toc {
  background: var(--c-paper);
  border: 1px solid var(--c-line);
  border-top: 3px solid var(--c-gold);
  padding: 24px 28px;
  margin-bottom: 48px;
}
.wp-toc__title {
  font-family: var(--font-serif);
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--c-navy);
  margin: 0 0 14px;
}
.wp-toc__list {
  counter-reset: toc;
  margin: 0;
  padding: 0;
  list-style: none;
}
.wp-toc__item { margin-top: 8px; line-height: 1.7; }
.wp-toc__item a {
  color: var(--c-ink);
  text-decoration: none;
  border-bottom: 1px solid transparent;
}
.wp-toc__item a:hover {
  color: var(--c-navy);
  border-bottom-color: var(--c-gold);
}
.wp-toc__item--h2 { counter-increment: toc; font-weight: 500; }
.wp-toc__item--h2 a::before {
  content: counter(toc) ". ";
  color: var(--c-gold);
  font-family: var(--font-num);
}
.wp-toc__item--h3 { padding-left: 1.5em; font-size: 0.92rem; }
.wp-toc__item--h3 a::before { content: "− "; color: var(--c-gold); }

/* =========================================================
   記事まわりの部品
   ========================================================= */
.wp-hero-figure { margin: 0 0 40px; }
.wp-hero-figure__img {
  width: 100%;
  height: auto;
  border: 1px solid var(--c-line);
}

.page-hero__cat {
  display: inline-block;
  background: var(--c-gold);
  color: var(--c-white);
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  padding: 5px 12px;
  margin-bottom: 16px;
}

.wp-back {
  margin-top: 56px;
  padding-top: 28px;
  border-top: 1px solid var(--c-line);
}
.wp-back a {
  color: var(--c-navy);
  font-size: 0.95rem;
}
.wp-back a:hover { color: var(--c-gold); }

/* =========================================================
   ページャ
   ========================================================= */
.content-section .page-numbers {
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 56px;
  padding: 0;
  list-style: none;
}
.content-section .page-numbers li { margin: 0; }
.content-section .page-numbers a,
.content-section .page-numbers span {
  display: grid;
  place-items: center;
  min-width: 42px;
  height: 42px;
  padding: 0 12px;
  border: 1px solid var(--c-line);
  font-family: var(--font-num);
  color: var(--c-navy);
  transition: all 0.3s var(--ease);
}
.content-section .page-numbers a:hover {
  border-color: var(--c-gold);
  color: var(--c-gold);
}
.content-section .page-numbers .current {
  background: var(--c-navy);
  border-color: var(--c-navy);
  color: var(--c-white);
}

/* =========================================================
   カテゴリーチップ（一覧のフィルタ）
   ========================================================= */
.blog-filter__chip {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width: 640px) {
  .wp-content h2 { font-size: 1.28rem; margin-top: 2.2em; }
  .wp-content h3 { font-size: 1.1rem; }
  .wp-toc { padding: 20px 18px; margin-bottom: 36px; }
  .wp-content th,
  .wp-content td { padding: 10px; font-size: 0.9rem; }
}
