/* フッターロゴ：width:auto欠落で横伸び修正（home統一）*/
.site-footer .footer-brand img{width:auto}

/* ============================================================
   ここから下は WordPress 版だけで必要な追記（旧テーマ Lirem v1.0.3 から引き継ぎ）
   ・お知らせ個別記事（single.php）と汎用固定ページ（page.php）の本文タイポグラフィ
   ・Contact Form 7 のフォーム要素まわりの調整
   ============================================================ */
#noroshi .about-grid {
  align-items: start;
}

/* === お知らせ記事ページ：タイトル・余白を本文向けに最適化 === */
/* 通常のページ見出し(最大72px)は長い記事タイトルに大きすぎるため、記事用に縮小し、
   ヒーローの過大な上下余白も詰める */
.page-hero--news {
  padding-top: clamp(108px, 12vw, 144px);
  padding-bottom: clamp(28px, 4vw, 48px);
}
.page-hero--news h1 {
  font-size: clamp(22px, 3vw, 34px);
  line-height: 1.5;
  letter-spacing: -.01em;
}
/* 記事本文の上下の余白も詰める */
/* 記事本文の読みやすいタイポグラフィ（行間・段落間隔・見出し余白） */
.post-content {
  margin-top: 8px;
  font-size: clamp(15px, 1.05vw, 17px);
  line-height: 2;
  color: var(--c-text);
}
.post-content > * + * { margin-top: 1.6em; }
.post-content p { line-height: 2; }
.post-content h2 {
  font-size: clamp(21px, 2.2vw, 28px);
  line-height: 1.5; font-weight: 800; color: var(--c-ink);
  margin-top: 2.4em; margin-bottom: .2em;
  padding-bottom: .4em; border-bottom: 2px solid var(--c-line);
}
.post-content h3 {
  font-size: clamp(18px, 1.7vw, 22px);
  line-height: 1.6; font-weight: 700; color: var(--c-ink);
  margin-top: 2em; margin-bottom: .2em;
}
.post-content h4 { font-size: clamp(16px, 1.4vw, 19px); font-weight: 700; margin-top: 1.8em; margin-bottom: .2em; }
.post-content ul, .post-content ol { margin-top: 1.2em; padding-left: 1.6em; }
.post-content li { line-height: 1.95; margin-bottom: .5em; }
.post-content img { margin: 1.8em auto; border-radius: 10px; height: auto; }
.post-content a { color: var(--c-accent); text-decoration: underline; }
.post-content strong { font-weight: 700; }
.post-content blockquote {
  margin: 1.8em 0; padding: 1em 1.4em; border-left: 4px solid var(--c-accent);
  background: var(--c-bg-soft); border-radius: 0 8px 8px 0;
}

/* === 極狭幅・200%ズームでのはみ出し防止 === */
/* grid/flex 子要素が min-content で縮まずコンテナを溢れる問題（仕様: 子に min-width:0） */
.services-head > * { min-width: 0; }
.services-head .btn-ghost { white-space: normal; overflow-wrap: anywhere; }

/* === フォーム操作要素は常に 1rem(=16px)。iOS自動ズーム防止（仕様準拠） ===
   既存の狭幅 clamp(13.8px…) が !important 付きで 16px 未満になりズームを誘発していたため、
   ここで全入力系を最終上書きする（rem基準・border等以外はpx不使用の方針に合致） */
.field input, .field select, .field textarea,
.wpcf7-form input, .wpcf7-form select, .wpcf7-form textarea,
.contact-form input, .contact-form select, .contact-form textarea,
.contact-submit, .wpcf7-form input[type="submit"] { font-size: 1rem !important; }

/* Contact Form 7 は各入力欄を span で包むため、幅が崩れないようブロック化する */
.wpcf7-form-control-wrap { display: block; }
.wpcf7-form .field label { display: block; }
/* CF7 の応答メッセージをサイトのトーンに合わせる */
.wpcf7-response-output { margin: 18px 0 0 !important; border-radius: 10px; padding: 12px 16px !important; font-size: 0.875rem; line-height: 1.7; }

/* ---- Contact Form 7 が入れる <p> / <br> / hidden fieldset を、静的デザインと同じ見た目に戻す ---- */
.contact-form.form-grid > .hidden-fields-container { display: none; }
.contact-form.form-grid > p { margin: 0; }
.contact-form .field > p,
.contact-form .consent > p { margin: 0; }
.contact-form .field > p > br,
.contact-form .field label + br { display: none; }
/* 同意チェックボックス：CF7 は input を label の中に入れるため、label 側を横並びにする */
.contact-form .consent { display: block; }
.contact-form .consent .wpcf7-list-item { margin: 0; }
.contact-form .consent label {
  display: flex; gap: 10px; align-items: flex-start;
  margin: 0; font-weight: 400; letter-spacing: normal;
  font-size: clamp(0.75rem, calc(0.7281rem + 0.094vw), 0.8125rem);
  color: var(--c-text); text-transform: none;
}
.contact-form .consent input[type="checkbox"] { width: 18px; height: 18px; margin-top: 2px; flex: none; }
