/* === (10) サイト基盤 ======================================================
   出所: Cocoon版 parts/c-foundation.css + d-phase0.css の書き起こし。
   Cocoon DOM(#main / .entry-content / .a-wrap / #header-container 等)を
   Xwrite DOM(.main / .articleBody / .articleContainer 等・解析§3)へ置き換えた。
   **意味を失った宣言は移していない**(純正chromeの打ち消し・Cocoon固有の掃除)。
   ========================================================================== */

/* --- 版面 -----------------------------------------------------------------
   v2の桁: 本体926px + サイドバー300px + gap30 = 1256px。
   Xwriteは幅を theme_mod(--site-content-width / --aside-content-width)で持つので
   数値はそちらへ入れる。ここでは地色と面の作りだけを決める。 */
body{ background:var(--bg); color:var(--ink);
  font-family:var(--font-body); font-size:var(--fs-body); line-height:var(--lh-body); }
.main-column,
.main .block{ min-width:0; }   /* grid/flex 内で子が縮めるようにする(表のはみ出し防止) */

/* 記事・一覧の本体を白いカードにする(Cocoon版 #main の見た目) */
.articleContainer,
.notfound{ background:#fff; border-radius:var(--r-3);
  box-shadow:0 2px 14px rgba(20,30,50,.05); padding:28px 30px; }

/* --- 見出し ---------------------------------------------------------------- */
.articleHeader__title,
.contentsHeader__caption{ color:var(--navy); font-family:var(--font-head);
  font-size:var(--fs-h1); font-weight:700; line-height:var(--lh-head); }

.articleBody h2{ font-family:var(--font-head); font-size:var(--fs-h2); font-weight:700;
  color:var(--navy); background:var(--tint); border-left:6px solid var(--navy);
  border-radius:var(--r-2); padding:12px 16px; margin:var(--sp-7) 0 var(--sp-4); }
.articleBody h3{ font-family:var(--font-head); font-size:var(--fs-h3); font-weight:700;
  border-left:4px solid var(--navy); padding-left:10px; margin:var(--sp-6) 0 var(--sp-3); }
.articleBody{ font-size:var(--fs-body); line-height:var(--lh-body); }

/* 本文リンク(広告CTAとカテゴリチップは除く) */
.articleBody a:not(.aff-cta):not(.cat-link){ color:var(--navy);
  text-decoration:underline; text-underline-offset:2px; }
.aff :focus-visible{ outline:2px solid var(--navy); outline-offset:2px; }

/* --- 表・画像のはみ出し防止 -------------------------------------------------
   Cocoon版は functions.php の wp_head から <style> で流し込んでいた(BIZ-20260715-03)。
   PHPで出す必然が無いのでCSS層へ移した。 */
.articleBody table{ width:100%; max-width:100%; table-layout:auto;
  overflow-wrap:break-word; display:block; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.articleBody table th,
.articleBody table td{ overflow-wrap:break-word; white-space:normal; }
.articleBody img,
.articleBody figure,
.articleBody iframe,
.wp-block-image{ max-width:100%; height:auto; box-sizing:border-box; }

/* --- 画像ゼロ則(§04-8「画像は入れない。数値と条件で密度を出す」)------------
   Xwriteはアイキャッチを独自ラッパ(xw_thumbnail_singular)で描くので、
   Cocoonの .eye-catch ではなく .post-thumbnail / 一覧のfigureを対象にする。 */
.post-thumbnail,
.articleList__item--fig,
.xw-article-media__figure,
.aff-eyecatch{ display:none !important; }

/* --- 出さないもの ----------------------------------------------------------
   確定案の記事ページにSNSシェアとコメントは無い。Xwriteでは theme_mod でも
   切れるが、設定漏れで復活しないようCSSでも落としておく(Cocoon版と同じ判断)。 */
.articleHeader__sns,
.snsBtn,
.sns-share{ display:none !important; }
#comments,
.comment-area,
.comments-area{ display:none !important; }
.aff-toc{ display:none; }        /* 目次はXwriteネイティブ目次に一本化 */
.adsbygoogle{ display:none !important; }   /* AdSenseは審査未通過(BIZ-20260812-07) */

/* --- パンくず(ネイティブ ul.breadcrumbs・Microdataなし)-------------------- */
.breadcrumbs{ font-size:var(--fs-note); color:var(--sub);
  display:flex; flex-wrap:wrap; gap:6px; margin:0 0 var(--sp-3); padding:0; list-style:none; }
.breadcrumbs li{ display:flex; align-items:center; gap:6px; }
.breadcrumbs li:not(:last-child)::after{ content:"›"; color:var(--line); }
.breadcrumbs a{ color:var(--sub); text-decoration:none; }
.breadcrumbs a:hover{ color:var(--navy); text-decoration:underline; }
.page-top-breadcrumbs,
.page-bottom-breadcrumbs{ background:transparent; }

/* --- 目次(ネイティブ div.toc_block)----------------------------------------
   モック実測: 地#fbfcfd・radius8・padding16/20・題15px/700 ZenKaku・
   項目13.5px ink・下線なし・PCは2カラム。 */
.toc_block{ background:#fbfcfd; border:1px solid var(--line); border-radius:var(--r-2);
  padding:16px 20px; margin:0 0 var(--sp-5); }
.toc_block .toc__caption{ font-family:var(--font-head); font-size:15px; font-weight:700;
  color:var(--navy); margin:0 0 10px; text-align:left; }
.toc_block .toc > ol{ column-count:2; column-gap:30px; margin:0; padding-left:1.5em;
  font-size:13.5px; line-height:1.9; }
.toc_block .toc ol ol{ column-count:1; }
.toc_block .toc li{ margin:2px 0; break-inside:avoid; }
.toc_block .toc a{ color:var(--ink); text-decoration:none; }
.toc_block .toc a:hover{ text-decoration:underline; }

/* --- ネイティブ広告ラベル(.notice-label)------------------------------------
   PR表記をネイティブへ寄せた分(BK_NATIVE_AD_LABEL)。破線囲みのチップに寄せる。 */
.notice-label{ margin:0 0 var(--sp-3); }
.notice-label__small,
.notice-label__large{ display:inline-flex; align-items:center; gap:6px;
  background:transparent; border:1px dashed var(--evid-line); border-radius:var(--r-1);
  padding:3px 8px; color:var(--evid-ink); font-size:12px; font-weight:700; }

/* --- フッター開示(全ページ常設) -------------------------------------------- */
.affiliate-footer-disclosure{ text-align:center; font-size:12px; color:#888;
  padding:10px; background:#f9f9f9; width:100%; border-top:1px solid #eee; }
