/* =========================================================
   Astra と一緒に使うための調整（2026-11-13）
   ========================================================= */

/* このテーマのテンプレート（実績・課題・議会質問・政策分野）と Elementor のページは、Astra の幅の枠を外す */
.kw-full .site-content > .ast-container,
.kwe-page .site-content > .ast-container,
.ast-page-builder-template .site-content > .ast-container { max-width: none; padding: 0; display: block; }
.kw-full #primary, .kw-full #secondary { display: none; }
.kw-full .site-content { padding: 0; }

/* Astra のボタンの見た目（青い背景・角丸・余白）が、このテーマのボタンに付かないように */
.kw-burger { padding: 0 !important; border-radius: 0 !important; line-height: 1.2; background-color: var(--navy) !important; color: #fff !important; border: 0 !important; }
.kw-search button { border-radius: 0; padding: 10px 20px; background: var(--navy); }
.kw-act, .kw-act:hover, .kw-act:focus { text-decoration: none; }
.kw-header a, .kw-footer a { text-decoration: none; }

/* Astra の本文の見出しの余白が、このテーマの部品に付かないように */
.kw-full h1, .kw-full h2, .kw-full h3 { margin-bottom: 0; }
.kw-phead, .kw-sec, .kw-join, .kw-footer { clear: both; }

/* 固定ページ（Elementor を使わないページ）の本文を読みやすく */
.page .entry-content .kw-photo { margin: 2em 0; text-align: center; }
.page .entry-content .kw-photo img { display: inline-block; width: auto; max-width: 100%; height: auto; max-height: 620px; }
.page .entry-content .kw-photo:first-child { text-align: left; }
.page .entry-content .kw-photo:first-child img { max-height: none; width: min(100%, 420px); }
.page .entry-content .kw-photo figcaption { font-size: .84rem; color: var(--ink-soft); margin-top: 6px; }
.page .entry-content table th, .page .entry-content table td { border: 1px solid var(--rule); padding: 8px 12px; vertical-align: top; }
.page .entry-content table th { background: var(--off); white-space: nowrap; }

/* メニューのボタン：Astra の svg の指定で「≡」と「×」が両方出ないように */
.kw-burger .kw-burger__close { display: none !important; }
.kw-menu-open .kw-burger .kw-burger__open { display: none !important; }
.kw-menu-open .kw-burger .kw-burger__close { display: block !important; }
.kw-burger .kw-icon { width: 24px; height: 24px; }
/* このテーマの部品の中の段落・リストに、Astra の余白が付かないように */
.kw-full p, .kw-header p, .kw-footer p { margin-bottom: 0; }
.kw-full ul, .kw-full ol, .kw-header ul, .kw-footer ul, .kw-dock ul { margin: 0; }
.kw-full .kw-prose > * + * { margin-top: 1.2em; }
.kw-full .kw-prose ul, .kw-full .kw-prose ol { padding-left: 1.4em; }

/* 紺の帯の見出しは白に（Astra の見出しの色が付かないように） */
.kw-join h2, .kw-achv__label h2, .kw-join .kw-join__body h2 { color: #fff; }
.kw-phead__title, .kw-head__title, .kw-group__title { color: var(--navy); }
