@charset "UTF-8";
/* 専門科コンテンツの追加CSS（hub の一覧・解説ページ・医師プロフィール）。土台は hub=specialty-base.css／解説=Arkhe+site.css+parts.css */

/* ---- 共通部品 ---- */
.ap-byline{display:flex;gap:18px;align-items:flex-start;padding:20px 22px;margin:0 0 28px;background:var(--paper,#f8f7f2);border-radius:18px 14px 20px 12px / 14px 20px 12px 18px}
.ap-byline-photo{flex:0 0 auto;width:72px;height:72px;border-radius:50%;object-fit:cover}
.ap-byline-body{min-width:0}
.ap-byline-role{margin:0 0 2px;color:var(--gold,#c09933);font-size:12px;font-weight:800;letter-spacing:.08em}
.ap-byline-name{margin:0;color:var(--navy-deep,#16264b);font-size:18px;font-weight:800;line-height:1.4}
.ap-byline-name a{color:inherit;text-decoration:none}
.ap-byline-name a:hover{text-decoration:underline;text-underline-offset:3px}
.ap-byline-titles{margin:2px 0 0;color:var(--muted,#657084);font-size:13px;line-height:1.7}
.ap-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;list-style:none}
.ap-chip{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;background:#fff;border:1px solid var(--line,#dde3ec);color:var(--navy,#233b6c);font-size:12px;font-weight:700;line-height:1.6}
.ap-chip.is-gl{background:var(--gold-soft,#f0e4c7);border-color:transparent;color:#6d5410}
.ap-chip.is-reviewed{background:var(--navy,#233b6c);border-color:transparent;color:#fff}
.ap-byline-note{margin:10px 0 0;color:var(--muted,#657084);font-size:13px;line-height:1.75}

.ap-stop{margin:40px 0 0;padding:24px 26px 18px;background:#f7f5f0;border:1px solid rgba(35,59,108,.14);border-radius:14px}
.ap-stop h2{margin:0 0 10px;padding:0;color:var(--navy-deep,#16264b);font-size:17px;border:0;background:none}
.ap-stop h2::before,.ap-stop h2::after{display:none}
.ap-stop-lead{margin:0 0 8px;font-size:14.5px;line-height:1.85}
.ap-stop ul{margin:6px 0 0;padding:0;list-style:none}
.ap-stop li{position:relative;padding-left:18px;margin:0 0 8px;font-size:15px;line-height:1.8}
.ap-stop li::before{content:"";position:absolute;left:2px;top:.75em;width:6px;height:6px;border-radius:50%;background:var(--navy,#233b6c)}
.ap-stop li strong{color:var(--navy-deep,#16264b);font-weight:700}
.stop-tier{margin:16px 0 4px;font-size:14px;font-weight:700;line-height:1.6;color:var(--navy,#233b6c)}
.stop-tier.is-emergency{color:#9a3b2f}
.stop-note{margin:14px 0 0;font-size:14px;line-height:1.8;color:var(--muted,#657084)}
.dept-article .stop-tier{margin:18px 0 6px}
.dept-article .stop-note{margin:16px 0 0}
.dept-article .art-checks.is-warn li::before{content:"・";font-weight:700}

.ap-stores{margin:40px 0 0}
.ap-stores h2,.ap-related h2,.ap-sources h2{margin:0 0 14px;padding:0;color:var(--navy-deep,#16264b);font-size:18px;border:0;background:none}
.ap-stores ul,.ap-related ul{margin:0;padding:0;list-style:none;display:grid;gap:12px}
.ap-store a{display:block;padding:18px 20px;background:#fff;border:1px solid var(--line,#dde3ec);border-radius:14px;text-decoration:none;color:inherit;transition:box-shadow .25s ease,transform .25s ease}
.ap-store a:hover{box-shadow:0 10px 30px rgba(35,59,108,.08);transform:translateY(-2px)}
.ap-store-name{display:block;color:var(--navy,#233b6c);font-size:16px;font-weight:800}
.ap-store-meta{display:block;margin-top:2px;color:var(--muted,#657084);font-size:13px}

.ap-refs{margin:28px 0 0;border:1px solid var(--line,#dde3ec);border-radius:12px;background:#fff}
.ap-refs summary{padding:14px 20px;cursor:pointer;color:var(--navy,#233b6c);font-size:14px;font-weight:800}
.ap-refs ol{margin:0;padding:0 22px 18px 44px;list-style:decimal;color:var(--muted,#657084);font-size:12.5px;line-height:1.8}
.ap-refs li{margin:0 0 4px}
.ap-note{margin:28px 0 0;padding:18px 22px;background:var(--paper,#f8f7f2);border-radius:12px;color:var(--muted,#657084);font-size:13.5px;line-height:1.8}

.ap-cards{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ap-card a{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid rgba(35,59,108,.14);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow .25s ease,transform .25s ease}
.ap-card a:hover{box-shadow:0 14px 34px rgba(35,59,108,.1);transform:translateY(-3px)}
.ap-card-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.ap-card-body{display:flex;flex-direction:column;gap:6px;padding:18px 20px 20px}
.ap-card-kicker{color:var(--gold,#c09933);font-size:12px;font-weight:800;letter-spacing:.08em}
.ap-card-title{color:var(--navy-deep,#16264b);font-size:17px;font-weight:800;line-height:1.5}
.ap-card-ex{color:var(--muted,#657084);font-size:13.5px;line-height:1.75}
.ap-empty{padding:20px 22px;background:var(--paper,#f8f7f2);border-radius:12px;color:var(--muted,#657084);font-size:14px}

/* ---- hub（taxonomy-specialty.php・LP描画） ---- */
.approach-hub .type-card.is-pending{opacity:.92}
.approach-hub .type-card .more.is-pending{color:var(--muted,#657084)}
.approach-hub .type-card .more.is-pending::after{content:""}
.approach-hub .ap-list-head{margin-bottom:28px}
.approach-hub .ap-list-head p{color:var(--muted,#657084);font-size:15px;max-width:720px}
.approach-hub .ap-stores ul{grid-template-columns:repeat(2,minmax(0,1fr))}
.approach-hub .ap-stores h2{font-size:22px;font-family:"Yu Mincho","Hiragino Mincho ProN",serif}
.approach-hub .check-grid .ap-stop{margin:0}
.approach-hub .ap-related-links{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.approach-hub .ap-related-links a{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:999px;border:1px solid rgba(35,59,108,.3);color:var(--navy,#233b6c);font-size:13.5px;font-weight:800}
.approach-hub .ap-related-links a:hover{background:var(--navy,#233b6c);color:#fff}
@media (max-width:980px){.ap-cards{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.ap-cards{grid-template-columns:1fr}.approach-hub .ap-stores ul{grid-template-columns:1fr}}

/* ---- 解説（single-approach.php・Arkhe描画） ---- */
.ap-article{max-width:800px;margin:0 auto;padding:28px 0 56px}
.ap-crumbs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px;padding:0;list-style:none;color:var(--muted,#657084);font-size:12.5px}
.ap-crumbs li+li::before{content:"›";margin-right:6px;color:#9aa3b2}
.ap-crumbs a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.ap-kicker{margin:0 0 10px;color:var(--gold,#c09933);font-size:13px;font-weight:800;letter-spacing:.1em}
.ap-title{margin:0 0 14px;color:var(--navy-deep,#16264b);font-family:"Zen Maru Gothic","Hiragino Maru Gothic ProN",sans-serif;font-size:32px;font-weight:700;line-height:1.45}
.ap-lead{margin:0 0 22px;color:var(--ink,#1c2432);font-size:16.5px;line-height:1.9}
.ap-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 22px;color:var(--muted,#657084);font-size:12.5px}
.ap-meta a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.ap-hero-photo{margin:0 0 28px;border-radius:16px;overflow:hidden}
.ap-hero-photo.has-title{border-radius:0;overflow:visible;padding:0;background:none;border:0}
.ap-hero-photo.has-title img{box-sizing:border-box;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;padding:20px 24px;border-radius:14px;border:1px solid var(--line,#dde3ec);background:#fff}
.ap-hero-title{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:0 0 10px;border-bottom:1px solid var(--line,#dde3ec);font-size:17px;font-weight:700;line-height:1.5;color:var(--navy-deep,#16264b)}
.ap-hero-title::before{content:"図解";flex:0 0 auto;padding:2px 10px;border-radius:999px;background:var(--gold-soft,#f0e4c7);color:#6d5410;font-size:12px;font-weight:700;letter-spacing:.08em}
.ap-hero-photo.has-title figcaption{padding:10px 2px 0;font-size:13.5px;line-height:1.8;color:var(--muted,#657084)}
.ap-hero-photo img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.ap-hero-photo figcaption{padding:8px 4px 0;color:var(--muted,#657084);font-size:12.5px}
.ap-body{font-size:16px;line-height:1.95}
.ap-footer{margin-top:48px;padding-top:8px;border-top:1px solid var(--line,#dde3ec)}
.ap-related{margin:40px 0 0}
.ap-related .ap-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.ap-hub-link{margin:18px 0 0;font-size:14px}
.ap-hub-link a{color:var(--navy,#233b6c);font-weight:800;text-decoration:underline;text-underline-offset:3px}
@media (max-width:640px){.ap-title{font-size:25px}.ap-related .ap-cards{grid-template-columns:1fr}.ap-byline{padding:16px 18px;gap:14px}.ap-byline-photo{width:56px;height:56px}}

/* ---- 医師プロフィール（templates/page-doctor.php） ---- */
.doc-profile{max-width:800px;margin:0 auto;padding:28px 0 56px}
.doc-profile-head{display:flex;gap:24px;align-items:flex-start;margin:0 0 28px}
.doc-profile-photo{flex:0 0 auto;width:140px;height:140px;border-radius:50%;object-fit:cover}
.doc-profile-head h1{margin:0 0 6px;color:var(--navy-deep,#16264b);font-family:"Zen Maru Gothic","Hiragino Maru Gothic ProN",sans-serif;font-size:30px;font-weight:700;line-height:1.4}
.doc-profile-head h1 small{display:block;margin-bottom:4px;color:var(--gold,#c09933);font-size:13px;font-weight:800;letter-spacing:.1em}
.doc-roles{margin:0;padding:0;list-style:none;color:var(--muted,#657084);font-size:14px;line-height:1.8}
.doc-section{margin:30px 0 0}
.doc-section h2{margin:0 0 12px;padding:0 0 .4em;color:var(--navy-deep,#16264b);font-size:19px;border-bottom:2px solid var(--gold-soft,#f0e4c7);background:none}
.doc-section h2::before,.doc-section h2::after{display:none}
.doc-section ul{margin:0;padding:0 0 0 1.2em;line-height:1.9}
.doc-section p{line-height:1.95}
.doc-links{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 0}
.doc-links a{display:inline-flex;align-items:center;min-height:42px;padding:0 18px;border-radius:999px;border:1px solid rgba(35,59,108,.3);color:var(--navy,#233b6c);font-size:14px;font-weight:800;text-decoration:none}
.doc-links a:hover{background:var(--navy,#233b6c);color:#fff}
@media (max-width:640px){.doc-profile-head{flex-direction:column;gap:14px}.doc-profile-photo{width:110px;height:110px}.doc-profile-head h1{font-size:24px}}

/* 図解の見出し行（v6＝画像に焼き込まない。post_ear_articles.py が画像直上に出す段落ブロック）2026-10-14 */
.ap-body .fig-title,.dept-article .fig-title{display:flex;align-items:center;gap:10px;margin:28px 0 10px;padding:0 0 8px;border-bottom:2px solid var(--gold-soft,#f0e4c7);font-size:17px;font-weight:700;line-height:1.5;color:var(--navy-deep)}
.ap-body .fig-title::before,.dept-article .fig-title::before{content:"図解";flex:0 0 auto;padding:2px 10px;border-radius:999px;background:var(--gold-soft,#f0e4c7);color:#6d5410;font-size:12px;font-weight:700;letter-spacing:.08em}
.ap-body .fig-title+.wp-block-image img{box-sizing:border-box;width:100%;height:auto;padding:20px 24px;border:1px solid var(--line,#dde3ec);border-radius:14px;background:#fff}
@media (max-width:640px){.ap-hero-photo.has-title img,.ap-body .fig-title+.wp-block-image img{padding:12px 12px;border-radius:12px}}
.ap-body .fig-title+.wp-block-image,.dept-article .fig-title+.wp-block-image{margin-top:0}
