/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jul 03 2026 | 16:58:55 */
/* ==================================================
   dr-fukushima.com 追加CSS｜共通・下層ページ用 v1（トップ分離）
   用途：共通パーツ、サイドバー、下層ページ用CSS
   作成日：2026-05-19
   整理日：2026-06-02

   収録カテゴリ：
   A. 設計基盤・変数
   B. 基本タイポグラフィ・汎用要素
   C. 見出し・本文基本ルール
   D. 本文共通パーツ
   E. パンくずリスト
   F. サイドバー共通・カード
   G. サイドバー：人気記事
   H. サイドバー：検索・脳疾患メニュー
   Q. お問い合わせページ：導入・電話案内
   R. お問い合わせページ：Contact Form 7
   S. 診療相談ページ
   T. 診療相談ページ：医師一覧
   U. 下層ページ：脳疾患一覧
   V. 下層ページ：患者様の声
   Z. 共通・下層ページ用スマホ上書き

   読み込み：
   トップページ専用CSSと併用する場合は、本ファイルを先に読み込む。
================================================== */

/* ==================================================
   A. 設計基盤・変数
================================================== */

/* A-01. Webフォント読み込み */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap');

/* A-02. 共通変数 */
:root {
    --df-navy: #07324a;
    --df-navy-hover: #0b4b6d;
    --df-text: #1f2f3d;
    --df-subtext: #5a6470;
    --df-gold: #b8aa8e;
    --df-gold-light: #d8d0bf;
    --df-border: #ded6c6;
    --df-bg-soft: #fbfaf7;
    --df-intro-bg: #f2f0ea;
    --df-alert-bg: #fff8f6;
    --df-alert-border: #ead2cc;
    --df-alert-red: #9b2f2f;
}

/* ==================================================
   B. 基本タイポグラフィ・汎用要素
================================================== */

/* B-01. サイト全体の基本フォント */
html,
body {
    font-family: "Inter", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Meiryo", sans-serif;
    color: var(--df-text);
    font-weight: 400;
    letter-spacing: 0.02em;
    line-height: 1.8;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* B-02. 本文・リスト・表のフォント統一 */
p,
li,
td,
th,
dt,
dd {
    font-family: "Inter", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Meiryo", sans-serif;
    font-size: 17px;
    line-height: 1.9;
    font-weight: 400;
}

/* B-03. フォーム部品のフォント統一 */
input,
textarea,
select,
button {
    font-family: "Inter", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Meiryo", sans-serif;
    font-size: 16px;
    line-height: 1.85;
    font-weight: 400;
}

/* B-04. リンク・ボタンのフォント統一 */
a,
button,
input[type="submit"],
.btn,
.btn-success {
    font-family: "Inter", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Meiryo", sans-serif;
}

/* B-05. 太字 */
strong,
b {
    font-weight: 700;
}

/* B-06. WordPress標準の右寄せ */
.alignright {
    display: inline;
    float: right;
    margin-left: 1em;
}

/* B-07. WordPressの小さい文字サイズ */
.has-small-font-size {
    line-height: 1.8em;
}

/* B-08. .btn-successボタン */
.btn-success {
    color: #ffffff;
    background-color: #0b5f8a;
    border-color: #0b5f8a;
    border-radius: 6px;
    font-weight: 600;
}

/* B-09. .btn-successホバー・フォーカス */
.btn-success:hover,
.btn-success:focus {
    color: #ffffff;
    background-color: #084764;
    border-color: #084764;
}

/* B-10. ナビゲーション */
nav,
.menu,
.global-nav,
.header-nav,
.site-navigation {
    font-family: "Inter", "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Meiryo", sans-serif;
    font-weight: 600;
    letter-spacing: 0.03em;
}

/* ==================================================
   C. 見出し・本文基本ルール
================================================== */

/* C-01. 見出し共通 */
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: "Noto Sans JP", "Inter", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Meiryo", sans-serif;
    color: #14344a;
    font-weight: 700;
    letter-spacing: 0.03em;
    line-height: 1.42;
}

/* C-02. ページタイトル */
h1,
.entry-title,
.page-title {
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 800;
    line-height: 1.35;
}

/* C-03. 本文内見出しの既存装飾リセット */
.entry-content h2,
.entry-content h3,
.entry-content h4 {
    background: transparent !important;
    box-shadow: none !important;
}

/* C-04. 本文内見出しの疑似要素リセット */
.entry-content h2::before,
.entry-content h2::after,
.entry-content h3::before,
.entry-content h3::after,
.entry-content h4::before,
.entry-content h4::after {
    content: none !important;
    display: none !important;
}

/* C-05. h2：本文内の主見出し */
.entry-content h2 {
    display: block;
    width: 100%;
    box-sizing: border-box;
    margin: 42px 0 24px;
    padding: 0 0 12px 18px;
    color: var(--df-navy);
    font-size: clamp(24px, 2.6vw, 32px);
    font-weight: 800;
    line-height: 1.45;
    letter-spacing: 0.035em;
    border-left: 6px solid var(--df-gold);
    border-bottom: 1px solid var(--df-gold-light);
}

/* C-06. h3：本文内の項目見出し */
.entry-content h3 {
    margin: 34px 0 14px;
    padding: 0 0 9px;
    color: #1f2f3d;
    font-size: clamp(20px, 2vw, 26px);
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.02em;
    border-left: none;
    border-bottom: 1px solid #d8d0bf;
}

.entry-content h3 strong {
    color: inherit;
}

/* C-07. h4：本文内の補足見出し */
.entry-content h4 {
    margin: 24px 0 10px;
    padding: 0;
    color: #314250;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.6;
    border: none;
}

/* C-08. 見出し直後の本文余白 */
.entry-content h2 + p,
.entry-content h3 + p,
.entry-content h4 + p {
    margin-top: 0;
}

/* ==================================================
   D. 本文共通パーツ
================================================== */

/* D-01. 本文画像：表示品質調整 */
.entry-content .wp-block-image img,
.entry-content img.size-full,
.entry-content img.size-large {
    border-radius: 6px;
    box-shadow: 0 8px 22px rgba(7, 50, 74, 0.08);
}

.entry-content .wp-block-image.aligncenter img {
    margin-left: auto;
    margin-right: auto;
}

/* D-02. 本文テーブル：視認性調整 */
.entry-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 24px 0 32px;
    background: #ffffff;
    border: 1px solid var(--df-border);
    border-radius: 8px;
    overflow: hidden;
}

.entry-content th,
.entry-content td {
    padding: 13px 15px;
    border: 1px solid #e6dfd2;
    vertical-align: top;
}

.entry-content th {
    background: var(--df-bg-soft);
    color: var(--df-navy);
    font-weight: 800;
}

/* ==================================================
   E. パンくずリスト
================================================== */

/* E-01. パンくず全体 */
.breadcrumbs .container {
    display: block !important;
}

/* E-02. パンくず各項目 */
.breadcrumbs span[property="itemListElement"] {
    display: inline-flex !important;
    align-items: center;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* E-03. パンくずリンク */
.breadcrumbs a {
    display: inline-flex !important;
    align-items: center;
    margin: 0 !important;
    padding: 0 !important;
    color: #8a8a8a;
    text-decoration: none;
}

/* E-04. パンくずリンク疑似要素リセット */
.breadcrumbs a::before,
.breadcrumbs a::after,
#page .breadcrumbs a::before,
#page .breadcrumbs a::after {
    content: none !important;
    display: none !important;
    border: none !important;
}

/* E-05. パンくず区切り記号 */
.breadcrumbs span[property="itemListElement"] + span[property="itemListElement"]::before {
    content: "›";
    display: inline-block;
    margin: 0 10px;
    color: #9b9b9b;
    font-weight: 400;
    line-height: 1;
}

/* E-06. パンくず文字色 */
.breadcrumbs span[property="name"] {
    color: #8a8a8a;
    font-weight: 600;
}

/* E-07. パンくずスマホ調整 */
@media (max-width: 768px) {
    .breadcrumbs span[property="itemListElement"] + span[property="itemListElement"]::before {
        margin: 0 8px;
    }
}

/* ==================================================
   F. サイドバー共通・カード
================================================== */

/* F-01. サイドバー：カード感の追加 */
#content .sidebar .widget,
#content-inside .sidebar .widget {
    padding: 18px 18px 20px;
    background: #ffffff;
    border: 1px solid var(--df-border);
    border-radius: 10px;
    box-shadow: 0 8px 20px rgba(7, 50, 74, 0.06);
}

#content .sidebar .widget + .widget,
#content-inside .sidebar .widget + .widget {
    margin-top: 22px;
}

/* フッターはカード化しない */
#footer-widgets .sidebar .widget,
#footer-widgets .footer-widget {
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* F-02. サイドバー通常投稿リストの外側 */
.sidebar .widget_recent_entries,
.sidebar .widget_categories,
.sidebar .widget_archive,
.sidebar .widget {
    margin-bottom: 32px;
}

/* F-03. サイドバー見出し */
.sidebar .widget .widget-title {
    margin: 0 0 14px;
    padding: 0 0 10px;
    color: var(--df-navy);
    font-size: 17px;
    font-weight: 800;
    line-height: 1.5;
    letter-spacing: 0.08em;
    border-bottom: 1px solid var(--df-gold-light);
}

/* F-04. サイドバー通常リスト本体 */
.sidebar .widget ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* F-05. サイドバー通常リスト1件 */
.sidebar .widget ul li {
    margin: 0;
    padding: 12px 0;
    border-bottom: 1px solid #e6dfd2;
    line-height: 1.7;
}

/* F-06. サイドバー通常リスト最終行 */
.sidebar .widget ul li:last-child {
    border-bottom: none;
}

/* F-07. サイドバー通常リスト疑似要素リセット */
.sidebar .widget ul li::before {
    content: none !important;
    display: none !important;
}

/* F-08. サイドバー通常投稿リンク */
.sidebar .widget ul li a {
    color: var(--df-text);
    font-size: 14.5px;
    font-weight: 700;
    line-height: 1.75;
    text-decoration: none;
}

/* F-09. サイドバー通常投稿リンクホバー */
.sidebar .widget ul li a:hover {
    color: var(--df-navy);
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* F-10. Category Posts系タイトル */
.sidebar a.cat-post-title {
    display: block;
    color: var(--df-text);
    font-size: 14.5px;
    font-weight: 700;
    line-height: 1.75;
    text-decoration: none;
}

/* F-11. Category Posts系タイトルの矢印 */
.sidebar a.cat-post-title::before,
.sidebar a.cat-post-footer-link::before {
    color: var(--df-navy);
    font-size: 12px;
    padding-right: 6px;
}

/* F-12. WP Popular Postsへの干渉防止 */
.sidebar .wpp-list li::before,
.sidebar .popular-posts li::before,
.sidebar .widget_wpp li::before {
    content: none !important;
    display: none !important;
}

/* F-13. サイドバー：読まれている投稿の文字サイズ */
#content .sidebar .wpp-list li a,
#content .sidebar .wpp-list .wpp-post-title,
#content-inside .sidebar .wpp-list li a,
#content-inside .sidebar .wpp-list .wpp-post-title {
    font-size: 13px !important;
    line-height: 1.6 !important;
}

/* F-14. サイドバー：ピックアップ画像の間隔調整 */
.sidebar-pickup-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
}

.sidebar-pickup-grid a {
    display: block;
}

.sidebar-pickup-grid img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 6px;
}

/* ==================================================
   G. サイドバー：人気記事
================================================== */

/* G-01. 読まれている投稿ウィジェット本体 */
#secondary #block-10 {
    margin-bottom: 28px !important;
}

/* G-02. 見出し */
#secondary #block-10 .widget-title {
    margin: 0 0 16px !important;
    padding: 0 0 12px !important;
    color: var(--df-navy) !important;
    font-size: 17px !important;
    font-weight: 800 !important;
    line-height: 1.5 !important;
    border-bottom: 1px solid var(--df-gold-light) !important;
}

/* G-03. リスト本体 */
#secondary #block-10 .wpp-list {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* G-04. 各投稿：余白を中間値に調整 */
#secondary #block-10 .wpp-list li {
    display: grid !important;
    grid-template-columns: 80px minmax(0, 1fr) !important;
    column-gap: 16px !important;
    align-items: start !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 14px 0 !important;
    border-bottom: 1px solid #e6dfd2 !important;
    line-height: 1.55 !important;
    overflow: visible !important;
    clear: both !important;
}

/* G-05. 最終行 */
#secondary #block-10 .wpp-list li:last-child {
    border-bottom: none !important;
}

/* G-06. サムネイルリンク */
#secondary #block-10 .wpp-list li a:has(.wpp-thumbnail) {
    display: block !important;
    width: 80px !important;
    height: 80px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: 6px !important;
}

/* G-07. サムネイル画像 */
#secondary #block-10 .wpp-list li img,
#secondary #block-10 .wpp-list .wpp-thumbnail {
    display: block !important;
    float: none !important;
    width: 80px !important;
    height: 80px !important;
    max-width: 80px !important;
    min-width: 80px !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 6px !important;
}

/* G-08. タイトル */
#secondary #block-10 .wpp-list li a:not(:has(.wpp-thumbnail)),
#secondary #block-10 .wpp-list .wpp-post-title {
    display: block !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--df-text) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-decoration: none !important;
}

/* G-09. タイトルホバー */
#secondary #block-10 .wpp-list li a:not(:has(.wpp-thumbnail)):hover,
#secondary #block-10 .wpp-list .wpp-post-title:hover {
    color: var(--df-navy) !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

/* G-10. メタ情報・抜粋は非表示 */
#secondary #block-10 .wpp-list .wpp-meta,
#secondary #block-10 .wpp-list .post-stats,
#secondary #block-10 .wpp-list .wpp-excerpt {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* G-11. No Thumbnail画像 */
#secondary #block-10 .wpp-list img[src*="no_thumb"],
#secondary #block-10 .wpp-list img[src*="No"],
#secondary #block-10 .wpp-list img[alt*="No Thumbnail"] {
    background: #f2f0ea !important;
    border: 1px solid #ded6c6 !important;
}

/* G-12. スマホ調整 */
@media (max-width: 768px) {
    #secondary #block-10 .wpp-list li {
        grid-template-columns: 72px minmax(0, 1fr) !important;
        column-gap: 14px !important;
        padding: 12px 0 !important;
    }

    #secondary #block-10 .wpp-list li a:has(.wpp-thumbnail) {
        width: 72px !important;
        height: 72px !important;
    }

    #secondary #block-10 .wpp-list li img,
    #secondary #block-10 .wpp-list .wpp-thumbnail {
        width: 72px !important;
        height: 72px !important;
        max-width: 72px !important;
        min-width: 72px !important;
    }

    #secondary #block-10 .wpp-list li a:not(:has(.wpp-thumbnail)),
    #secondary #block-10 .wpp-list .wpp-post-title {
        font-size: 13.5px !important;
        line-height: 1.5 !important;
    }
}

/* ==================================================
   H. サイドバー：検索・脳疾患メニュー
================================================== */

/* H-01. サイドバー：検索・脳疾患一覧 */
#content .sidebar .widget_search,
#content-inside .sidebar .widget_search {
    padding: 24px;
}

#content .sidebar .search-form,
#content-inside .sidebar .search-form {
    display: flex;
    gap: 10px;
    align-items: center;
}

#content .sidebar .search-field,
#content-inside .sidebar .search-field {
    width: 100%;
    height: 48px;
    padding: 0 15px;
    background: #f7f6f2;
    border: 1px solid #e2daca;
    border-radius: 8px;
    color: var(--df-text);
    font-size: 15px;
    box-shadow: inset 0 2px 5px rgba(7, 50, 74, 0.04);
}

#content .sidebar .search-submit,
#content-inside .sidebar .search-submit {
    min-width: 86px;
    height: 48px;
    padding: 0 18px;
    background: var(--df-gold);
    border: 1px solid var(--df-gold);
    border-radius: 8px;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    line-height: 1;
    box-shadow: 0 6px 14px rgba(7, 50, 74, 0.12);
}

#content .sidebar .search-submit:hover,
#content-inside .sidebar .search-submit:hover {
    background: #9f9278;
    border-color: #9f9278;
}

#content .sidebar #side_brain_disease,
#content-inside .sidebar #side_brain_disease {
    padding: 24px 26px 26px;
}

#content .sidebar #side_brain_disease ul,
#content-inside .sidebar #side_brain_disease ul {
    margin: 0;
    padding: 0;
}

#content .sidebar #side_brain_disease li,
#content-inside .sidebar #side_brain_disease li {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid rgba(216, 208, 191, 0.65);
}

#content .sidebar #side_brain_disease li:last-child,
#content-inside .sidebar #side_brain_disease li:last-child {
    border-bottom: none;
}

#content .sidebar #side_brain_disease a,
#content-inside .sidebar #side_brain_disease a {
    position: relative;
    display: block;
    padding: 10px 0 10px 22px;
    color: var(--df-text);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.6;
    text-decoration: none;
    transition: color 0.2s ease, transform 0.2s ease;
}

#content .sidebar #side_brain_disease a::before,
#content-inside .sidebar #side_brain_disease a::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-top: 2px solid var(--df-gold);
    border-right: 2px solid var(--df-gold);
    transform: translateY(-50%) rotate(45deg);
    padding: 0;
    font: inherit;
}

#content .sidebar #side_brain_disease a:hover,
#content-inside .sidebar #side_brain_disease a:hover {
    color: var(--df-navy);
    transform: translateX(3px);
}

@media (max-width: 768px) {
    #content .sidebar .search-form,
    #content-inside .sidebar .search-form {
        gap: 8px;
    }

    #content .sidebar .search-submit,
    #content-inside .sidebar .search-submit {
        min-width: 76px;
    }

    #content .sidebar #side_brain_disease a,
    #content-inside .sidebar #side_brain_disease a {
        font-size: 15.5px;
        padding-top: 9px;
        padding-bottom: 9px;
    }
}

/* ==================================================
   Q. お問い合わせページ：導入・電話案内
================================================== */

/* Q-01. 共通導入ボックス本体 */
body.page-id-37 .wp-block-columns.has-background,
.consultation-page .wp-block-columns.has-background {
    margin: 22px 0 32px;
    padding: 34px 42px;
    background: var(--df-intro-bg) !important;
    border-left: 6px solid var(--df-gold);
    border-radius: 0 8px 8px 0;
    box-sizing: border-box;
    align-items: center;
    gap: 36px;
}

/* Q-02. 導入ボックス内の文章カラム */
body.page-id-37 .wp-block-columns.has-background > .wp-block-column[style*="72%"],
.consultation-page .wp-block-columns.has-background > .wp-block-column[style*="72%"] {
    padding-left: 18px;
}

/* Q-03. 導入ボックス内の本文 */
body.page-id-37 .wp-block-columns.has-background p,
.consultation-page .wp-block-columns.has-background p {
    margin: 0 0 22px;
    color: var(--df-navy);
    font-size: 18px;
    line-height: 1.9;
    font-weight: 700;
    letter-spacing: 0.01em;
}

/* Q-04. 導入ボックス内の最後の段落 */
body.page-id-37 .wp-block-columns.has-background p:last-child,
.consultation-page .wp-block-columns.has-background p:last-child {
    margin-bottom: 0;
    color: #8b7b5f;
    font-size: 17px;
    font-weight: 500;
}

/* Q-05. 導入ボックス内リンク */
body.page-id-37 .wp-block-columns.has-background p a,
.consultation-page .wp-block-columns.has-background p a {
    color: #a58e63;
    font-weight: 700;
    text-decoration: none;
}

/* Q-06. 導入ボックス内イラスト枠 */
body.page-id-37 .wp-block-columns.has-background .wp-block-image,
.consultation-page .wp-block-columns.has-background .wp-block-image {
    margin: 0;
    text-align: center;
}

/* Q-07. 導入ボックス内イラスト画像 */
body.page-id-37 .wp-block-columns.has-background img,
.consultation-page .wp-block-columns.has-background img {
    width: 180px;
    max-width: 180px;
    height: auto;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Q-08. お問い合わせページ背景 */
body.page-id-37 {
    background: var(--df-bg-soft);
}

/* Q-09. お問い合わせページ本文エリア */
body.page-id-37 .entry-content {
    max-width: 920px;
    margin: 0 auto;
    padding-bottom: 48px;
}

/* Q-10. 電話案内全体 */
body.page-id-37 .contact-page-guide {
    margin: 0 0 28px;
}

/* Q-11. 注意文ボックス */
body.page-id-37 .contact-alert {
    margin: 24px 0 20px;
    padding: 14px 18px;
    background: var(--df-alert-bg);
    border: 1px solid var(--df-alert-border);
    border-radius: 6px;
    box-sizing: border-box;
}

/* Q-12. 注意文テキスト */
body.page-id-37 .contact-alert p {
    margin: 0 0 10px;
    color: var(--df-text);
    font-size: 15.5px;
    line-height: 1.8;
    font-weight: 700;
}

/* Q-13. 注意文の最終段落 */
body.page-id-37 .contact-alert p:last-child {
    margin-bottom: 0;
}

/* Q-14. 電話番号ボックス */
body.page-id-37 .contact-phone-box {
    margin: 22px 0;
    padding: 22px 24px;
    background: #ffffff;
    border: 1px solid var(--df-border);
    border-radius: 10px;
    box-shadow: 0 8px 22px rgba(7, 50, 74, 0.07);
    box-sizing: border-box;
}

/* Q-15. 電話番号ラベル */
body.page-id-37 .contact-phone-label {
    margin: 0 0 8px;
    color: var(--df-text);
    font-size: 19px;
    font-weight: 700;
    line-height: 1.5;
}

/* Q-16. 電話番号ボタン */
body.page-id-37 .contact-phone-box a {
    display: inline-block;
    padding: 11px 30px;
    color: #ffffff;
    background: var(--df-navy);
    border-radius: 999px;
    font-size: clamp(26px, 3.4vw, 32px);
    font-weight: 800;
    letter-spacing: 0.04em;
    line-height: 1.2;
    text-decoration: none;
    box-shadow: 0 7px 16px rgba(7, 50, 74, 0.16);
}

/* Q-17. 電話番号ボタンのホバー */
body.page-id-37 .contact-phone-box a:hover {
    background: var(--df-navy-hover);
}

/* Q-18. 予備フォームリンク */
body.page-id-37 .contact-alt-form {
    margin: 24px 0 0;
    text-align: center;
    color: var(--df-text);
    font-size: 14px;
    line-height: 1.8;
}

/* Q-19. 予備フォームリンクのリンク部分 */
body.page-id-37 .contact-alt-form a {
    color: #8a6f3d;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* ==================================================
   R. お問い合わせページ：Contact Form 7
================================================== */

/* R-01. Contact Form 7本体 */
body.page-id-37 .wpcf7 {
    margin-top: 24px;
}

/* R-02. Contact Form 7フォーム本体 */
body.page-id-37 .wpcf7 form {
    margin: 0;
}

/* R-03. フォームカード */
body.page-id-37 .contact-form-modern {
    margin: 26px 0 56px;
    padding: 32px;
    background: #ffffff;
    border: 1px solid var(--df-border);
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(7, 50, 74, 0.08);
}

/* R-04. フォームセクション */
body.page-id-37 .contact-form-modern .cf7-section {
    margin: 0 0 42px;
    padding: 0 0 34px;
    border-bottom: 1px solid #e6dfd2;
}

/* R-05. フォーム最終セクション */
body.page-id-37 .contact-form-modern .cf7-section:last-of-type {
    margin-bottom: 28px;
}

/* R-06. セクション見出し */
body.page-id-37 .contact-form-modern .cf7-section-title {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    margin: 0 0 24px;
    padding: 0 0 14px;
    border-bottom: 1px solid var(--df-gold-light);
}

/* R-07. セクション番号 */
body.page-id-37 .contact-form-modern .cf7-section-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    height: 42px;
    color: #ffffff;
    background: var(--df-navy);
    border-radius: 50%;
    font-family: "Inter", "Noto Sans JP", sans-serif;
    font-size: 15px;
    font-weight: 800;
}

/* R-08. セクション主見出し */
body.page-id-37 .contact-form-modern .cf7-section-main {
    color: var(--df-navy);
    font-size: clamp(22px, 2.4vw, 28px);
    font-weight: 800;
    line-height: 1.45;
}

/* R-09. セクション補足 */
body.page-id-37 .contact-form-modern .cf7-section-note {
    margin: 6px 0 0;
    color: var(--df-subtext);
    font-size: 14.5px;
    line-height: 1.7;
}

/* R-10. 入力項目グリッド */
body.page-id-37 .contact-form-modern .cf7-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px 24px;
}

/* R-11. 入力項目 */
body.page-id-37 .contact-form-modern .cf7-field {
    min-width: 0;
}

/* R-12. 短い入力項目 */
body.page-id-37 .contact-form-modern .cf7-field-short {
    max-width: 280px;
}

/* R-13. お問い合わせ内容セクションの入力項目 */
body.page-id-37 .contact-form-modern .cf7-section:nth-of-type(3) .cf7-field {
    grid-column: 1 / -1;
}

/* R-14. 入力ラベル */
body.page-id-37 .contact-form-modern .cf7-label {
    margin: 0 0 7px;
    color: var(--df-text);
    font-size: 15.5px;
    font-weight: 700;
    line-height: 1.5;
}

/* R-15. 必須ラベル */
body.page-id-37 .contact-form-modern .cf7-required {
    display: inline-block;
    margin-left: 6px;
    padding: 2px 7px;
    color: #ffffff;
    background: var(--df-alert-red);
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    vertical-align: 1px;
}

/* R-16. 入力欄 */
body.page-id-37 .contact-form-modern input[type="text"],
body.page-id-37 .contact-form-modern input[type="email"],
body.page-id-37 .contact-form-modern input[type="tel"],
body.page-id-37 .contact-form-modern input[type="number"],
body.page-id-37 .contact-form-modern select,
body.page-id-37 .contact-form-modern textarea {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 12px 14px;
    color: var(--df-text);
    background: #ffffff;
    border: 1px solid #d6d0c4;
    border-radius: 7px;
    font-size: 16px;
    line-height: 1.6;
}

/* R-17. 入力欄フォーカス */
body.page-id-37 .contact-form-modern input[type="text"]:focus,
body.page-id-37 .contact-form-modern input[type="email"]:focus,
body.page-id-37 .contact-form-modern input[type="tel"]:focus,
body.page-id-37 .contact-form-modern input[type="number"]:focus,
body.page-id-37 .contact-form-modern select:focus,
body.page-id-37 .contact-form-modern textarea:focus {
    outline: none;
    border-color: var(--df-navy);
    box-shadow: 0 0 0 3px rgba(7, 50, 74, 0.12);
}

/* R-18. 補足文 */
body.page-id-37 .contact-form-modern .cf7-note {
    margin: 6px 0 0;
    color: #7a6b52;
    font-size: 13.5px;
    line-height: 1.65;
}

/* R-19. ラジオ・チェック項目の間隔 */
body.page-id-37 .contact-form-modern .wpcf7-list-item {
    margin: 0 18px 6px 0;
}

/* R-20. ラジオ・チェック入力 */
body.page-id-37 .contact-form-modern input[type="radio"],
body.page-id-37 .contact-form-modern input[type="checkbox"] {
    margin-right: 6px;
    transform: translateY(1px);
}

/* R-21. 生年月日入力欄 */
body.page-id-37 .contact-form-modern .cf7-inline-date {
    display: flex;
    gap: 10px;
    align-items: center;
}

/* R-22. 生年月日入力欄の単位表示 */
body.page-id-37 .contact-form-modern .cf7-inline-date span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

/* R-23. 生年月日入力欄の幅 */
body.page-id-37 .contact-form-modern .cf7-inline-date input {
    width: 90px;
}

/* R-24. お問い合わせ内容 */
body.page-id-37 .contact-form-modern textarea {
    min-height: 240px;
}

/* R-25. 送信ボタンエリア */
body.page-id-37 .contact-form-modern .cf7-submit-area {
    text-align: center;
}

/* R-26. 送信ボタン */
body.page-id-37 .contact-form-modern input[type="submit"] {
    display: inline-block;
    min-width: 240px;
    padding: 14px 34px;
    color: #ffffff;
    background: var(--df-navy);
    border: 1px solid var(--df-navy);
    border-radius: 999px;
    font-size: 17px;
    font-weight: 800;
    letter-spacing: 0.08em;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(7, 50, 74, 0.18);
}

/* R-27. 送信ボタンホバー */
body.page-id-37 .contact-form-modern input[type="submit"]:hover {
    background: var(--df-navy-hover);
    border-color: var(--df-navy-hover);
}

/* R-28. Contact Form 7 入力エラー */
body.page-id-37 .contact-form-modern .wpcf7-not-valid {
    border-color: var(--df-alert-red) !important;
    background: #fffafa;
}

/* R-29. Contact Form 7 エラーメッセージ */
body.page-id-37 .contact-form-modern .wpcf7-not-valid-tip {
    margin-top: 6px;
    color: var(--df-alert-red);
    font-size: 13.5px;
    font-weight: 600;
}

/* R-30. Contact Form 7 送信結果メッセージ */
body.page-id-37 .contact-form-modern .wpcf7-response-output {
    margin: 24px 0 0 !important;
    padding: 14px 18px !important;
    border-radius: 8px;
    font-weight: 700;
}

/* ==================================================
   S. 診療相談ページ
================================================== */

/* S-01. 診療相談ページ全体 */
.consultation-page {
    max-width: 920px;
    margin: 0 auto;
    padding-bottom: 48px;
}

/* S-02. 診療相談ページ本文段落 */
.consultation-page > p,
.consultation-page .wp-block-paragraph {
    color: var(--df-text);
}

/* S-03. 診療相談ページ本文内の重要語 */
.consultation-page strong {
    color: var(--df-navy);
    font-weight: 800;
}

/* S-04. 診療相談ページ本文内リンク */
.consultation-page a {
    color: #8a6f3d;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* S-05. 問い合わせ誘導文 */
.consultation-page p:has(a[href*="/contact"]) {
    margin: 30px 0;
    padding: 18px 22px;
    background: var(--df-alert-bg);
    border: 1px solid var(--df-alert-border);
    border-radius: 8px;
    color: var(--df-text);
}

/* S-06. 診療相談ページボタン全体 */
.consultation-page .wp-block-buttons {
    margin: 32px 0;
}

/* S-07. 診療相談ページボタン枠 */
.consultation-page .wp-block-button {
    width: auto !important;
    text-align: center;
}

/* S-08. 診療相談ページボタン */
.consultation-page .wp-block-button__link {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: auto !important;
    min-width: 320px;
    min-height: 56px;
    padding: 15px 42px !important;
    color: #ffffff !important;
    background: var(--df-navy) !important;
    border-radius: 999px !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.4 !important;
    letter-spacing: 0.05em;
    text-decoration: none !important;
    box-shadow: 0 8px 20px rgba(7, 50, 74, 0.18);
}

/* S-09. 診療相談ページボタン内strong */
.consultation-page .wp-block-button__link strong {
    color: #ffffff !important;
    font-size: inherit !important;
    font-weight: 800 !important;
    line-height: inherit !important;
}

/* S-10. 診療相談ページボタン疑似要素リセット */
.consultation-page .wp-block-button__link::before,
.consultation-page .wp-block-button__link::after {
    content: none !important;
    display: none !important;
}

/* S-11. 診療相談ページボタンホバー */
.consultation-page .wp-block-button__link:hover {
    color: #ffffff !important;
    background: var(--df-navy-hover) !important;
}

/* ==================================================
   T. 診療相談ページ：医師一覧
================================================== */

/* T-01. 医師一覧テーブルカード */
.consultation-page .wp-block-table {
    margin: 34px 0 56px;
    padding: 24px;
    background: #ffffff;
    border: 1px solid var(--df-border);
    border-radius: 14px;
    box-shadow: 0 12px 30px rgba(7, 50, 74, 0.08);
    box-sizing: border-box;
}

/* T-02. 医師一覧テーブル */
.consultation-page .wp-block-table table {
    width: 100%;
    border-collapse: collapse;
    border: none;
}

/* T-03. 医師一覧セル */
.consultation-page .wp-block-table td {
    padding: 14px 16px;
    border: none;
    border-bottom: 1px solid #e6dfd2;
    color: var(--df-text);
    font-size: 15.5px;
    line-height: 1.7;
    vertical-align: middle;
}

/* T-04. 医師一覧の医師名 */
.consultation-page .wp-block-table td:first-child strong {
    color: var(--df-navy);
    font-size: 16px;
    font-weight: 800;
}

/* T-05. 医師一覧テーブル最終行 */
.consultation-page .wp-block-table tr:last-child td {
    border-bottom: none;
}

/* T-06. 医師一覧ストライプ奇数行 */
.consultation-page .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background: var(--df-bg-soft);
}

/* T-07. 医師一覧ストライプ偶数行 */
.consultation-page .wp-block-table.is-style-stripes tbody tr:nth-child(even) {
    background: #ffffff;
}

/* ==================================================
   U. 下層ページ：脳疾患一覧
================================================== */

/* U-01. 脳疾患一覧ページ全体の左余白調整 */
body.page-id-190 .brain-disease {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* U-02. 脳疾患一覧のcontainer・カラム余白調整 */
body.page-id-190 .brain-disease > .container,
body.page-id-190 .brain-disease > .container > div,
body.page-id-190 .brain-disease .col-md-12 {
    width: auto !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* U-03. 脳疾患一覧のh2周辺余白調整 */
body.page-id-190 .brain-disease #post-contents,
body.page-id-190 .brain-disease .blog-bottom {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* U-04. 脳疾患一覧のリスト行余白調整 */
body.page-id-190 .brain-disease .row.blog-list {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* U-05. 脳疾患一覧のh2左位置調整 */
body.page-id-190 .brain-disease h2 {
    margin-left: 0 !important;
}

/* U-06. 脳疾患リスト本体の余白調整 */
body.page-id-190 #brain-disease {
    margin: 0 !important;
    padding: 0 !important;
}

/* U-07. 脳疾患リスト先頭項目のh3上余白調整 */
body.page-id-190 #brain-disease > li:first-child h3 {
    margin-top: 0 !important;
}

/* ==================================================
   V. 下層ページ：患者様の声
================================================== */

/* V-01. 患者様の声ページ全体の左余白調整 */
body.page-id-557 .page-blog.entry-content {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* V-02. 患者様の声のcontainer・カラム余白調整 */
body.page-id-557 #voice,
body.page-id-557 #voice > .row,
body.page-id-557 #voice .col-md-12 {
    width: auto !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* V-03. 患者様の声のリスト行余白調整 */
body.page-id-557 #voice .blog-list {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* V-04. 患者様の声のh2左位置調整 */
body.page-id-557 #voice h2 {
    margin-left: 0 !important;
}

/* V-05. 患者様の声のリスト余白調整 */
body.page-id-557 #voice ul {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* ==================================================
   Z. 共通・下層ページ用スマホ上書き
================================================== */

/* Z-01. スマホ調整 */
@media (max-width: 768px) {

    /* 088. スマホ本文文字 */
    p,
    li,
    td,
    th,
    dt,
    dd {
        font-size: 16px;
        line-height: 1.85;
    }

    /* 089. スマホフォーム文字 */
    input,
    textarea,
    select,
    button {
        font-size: 15.5px;
        line-height: 1.8;
    }

    /* 090. スマホh2 */
    .entry-content h2 {
        margin: 34px 0 20px;
        padding-left: 14px;
        font-size: 23px;
        border-left-width: 5px;
    }

    /* 091. スマホh3 */
    .entry-content h3 {
        margin: 28px 0 12px;
        font-size: 20px;
    }

    /* 092. スマホh4 */
    .entry-content h4 {
        font-size: 17px;
    }

    /* 093. スマホ共通導入ボックス */
    body.page-id-37 .wp-block-columns.has-background,
    .consultation-page .wp-block-columns.has-background {
        padding: 22px 20px;
        gap: 20px;
        border-left-width: 5px;
    }

    /* 094. スマホ導入ボックス文章カラム */
    body.page-id-37 .wp-block-columns.has-background > .wp-block-column[style*="72%"],
    .consultation-page .wp-block-columns.has-background > .wp-block-column[style*="72%"] {
        padding-left: 0;
    }

    /* 095. スマホ導入ボックス本文 */
    body.page-id-37 .wp-block-columns.has-background p,
    .consultation-page .wp-block-columns.has-background p {
        font-size: 16px;
        line-height: 1.85;
        margin-bottom: 16px;
    }

    /* 096. スマホ導入ボックス最後の段落 */
    body.page-id-37 .wp-block-columns.has-background p:last-child,
    .consultation-page .wp-block-columns.has-background p:last-child {
        font-size: 15px;
    }

    /* 097. スマホ導入ボックス画像 */
    body.page-id-37 .wp-block-columns.has-background img,
    .consultation-page .wp-block-columns.has-background img {
        width: 140px;
        max-width: 140px;
    }

    /* 098. スマホお問い合わせ本文エリア */
    body.page-id-37 .entry-content {
        padding-left: 16px;
        padding-right: 16px;
    }

    /* 099. スマホ電話番号ボックス */
    body.page-id-37 .contact-phone-box {
        padding: 18px;
    }

    /* 100. スマホ電話番号ボタン */
    body.page-id-37 .contact-phone-box a {
        width: 100%;
        text-align: center;
        box-sizing: border-box;
    }

    /* 101. スマホContact Form 7カード */
    body.page-id-37 .contact-form-modern {
        padding: 20px;
        border-radius: 10px;
    }

    /* 102. スマホContact Form 7グリッド */
    body.page-id-37 .contact-form-modern .cf7-form-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    /* 103. スマホお問い合わせ内容セクション */
    body.page-id-37 .contact-form-modern .cf7-section:nth-of-type(3) .cf7-field {
        grid-column: auto;
    }

    /* 104. スマホ短い入力項目 */
    body.page-id-37 .contact-form-modern .cf7-field-short {
        max-width: none;
    }

    /* 105. スマホContact Form 7セクション見出し */
    body.page-id-37 .contact-form-modern .cf7-section-title {
        gap: 12px;
    }

    /* 106. スマホContact Form 7セクション番号 */
    body.page-id-37 .contact-form-modern .cf7-section-number {
        min-width: 36px;
        height: 36px;
        font-size: 13px;
    }

    /* 107. スマホ生年月日 */
    body.page-id-37 .contact-form-modern .cf7-inline-date {
        flex-direction: column;
        align-items: flex-start;
    }

    /* 108. スマホ生年月日入力欄 */
    body.page-id-37 .contact-form-modern .cf7-inline-date input {
        width: 100%;
    }

    /* 109. スマホ送信ボタン */
    body.page-id-37 .contact-form-modern input[type="submit"] {
        width: 100%;
    }

    /* 110. スマホ診療相談ページ全体 */
    .consultation-page {
        padding-left: 16px;
        padding-right: 16px;
    }

    /* 111. スマホ診療相談ページボタン */
    .consultation-page .wp-block-button__link {
        width: 100% !important;
        min-width: 0;
        box-sizing: border-box;
    }

    /* 112. スマホ医師一覧テーブルカード */
    .consultation-page .wp-block-table {
        padding: 16px;
        overflow-x: auto;
    }

    /* 113. スマホ医師一覧セル */
    .consultation-page .wp-block-table td {
        padding: 12px 10px;
        font-size: 14.5px;
    }
}
/* Z-06. スマホ：サイドバー「ピックアップ」2列化 */
@media (max-width: 768px) {
    .sidebar-pickup-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .sidebar-pickup-grid a {
        display: block;
        margin: 0;
    }

    .sidebar-pickup-grid img {
        display: block;
        width: 100%;
        height: auto;
        margin: 0;
        border-radius: 10px;
    }
}
