/* AGA-DESIGN:AD-COLOR | v307 / 2026-10-08
 * 目的：本文・PC固定・画面下部追従の広告ボタンに、管理画面の共通色を反映する。
 * 維持：設定値／既存CSS変数を参照し、白文字や背景色を固定値で強制しない。
 * 実装：広告位置の属性／内容枠まで指定し、一般リンクの青色より高い詳細度で共通色を適用する。
 * 維持：通常・hover・focus・visitedを同じ設定色にする。読込順だけに依存して競合を解決しない。
 * 変更時確認：search-v284.css、public-seo.css、clinic-detail.cssとの読込順の前後、hover・focus・visited。
 * 維持：ボタン自体の配置とボタン内文字の配置を別扱いにし、管理画面の保存設定を尊重する。
 * END AGA-DESIGN */
.aga-online-guide-slot{display:none;min-width:0;min-height:var(--aga-online-guide-reserve,500px);margin:1.5rem 0;align-self:start}.aga-online-guide-slot:empty,.aga-online-guide-slot[data-guide-state="hidden"]{display:none}.aga-online-guide-slot[aria-busy="true"] .aga-online-guide-content{min-height:inherit;background:linear-gradient(110deg,#f7fafb,#edf3f6);border-radius:12px}.aga-online-guide-card{box-sizing:border-box;background:#fff;border:1px solid #dce4ea;border-radius:12px;padding:16px;color:#243442;font-size:14px;line-height:1.7;overflow-wrap:anywhere;box-shadow:0 3px 14px rgba(26,48,65,.05)}.aga-online-guide-pr{display:inline-block;margin:0 0 8px!important;padding:1px 7px;border:1px solid #788994;border-radius:3px;color:#4d626f;font-size:11px!important;line-height:1.5!important;font-weight:600}.aga-online-guide-card .aga-online-guide-heading{margin:0 0 12px!important;padding:0!important;background:none!important;border:0!important;font-size:18px!important;line-height:1.5!important;color:#243442!important}.aga-online-guide-card .aga-online-guide-heading:before,.aga-online-guide-card .aga-online-guide-heading:after{display:none!important}.aga-online-guide-banner{display:block;text-decoration:none}.aga-online-guide-image{display:block!important;width:100%!important;height:auto!important;aspect-ratio:auto 1024/853;object-fit:contain;border-radius:8px;margin:0!important}.aga-online-guide-body{margin-top:12px}.aga-online-guide-body p{margin:0 0 8px!important}.aga-online-guide-body ul,.aga-online-guide-body ol{padding-left:1.4em;margin:8px 0}.aga-online-guide-cta{display:flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;padding:11px 12px;border-radius:7px;background:#edf6fb;border:1px solid #9ac3d7;color:#00e!important;text-align:center;text-decoration:underline!important;font-weight:700;margin-top:14px;line-height:1.5}.aga-online-guide-cta:hover{background:#dfeef7;text-decoration:none!important}.aga-online-guide-banner:focus-visible,.aga-online-guide-cta:focus-visible{outline:3px solid #eea728;outline-offset:3px}.aga-online-guide-zero{padding:10px;margin:0 0 12px!important;background:#f1f6f8;border-radius:6px;font-size:14px;line-height:1.7}.aga-online-guide-settings{margin:24px 0;padding:20px;background:#fff;border:1px solid #dcdcde;border-radius:8px}.aga-online-guide-page-choice{display:inline-block;margin:6px 18px 6px 0}.aga-online-guide-preview-pair{display:flex;align-items:flex-start;gap:28px;flex-wrap:wrap}.aga-online-guide-preview-desktop{width:280px;max-width:100%}.aga-online-guide-preview-mobile{width:360px;max-width:100%;padding:16px;background:#f4f6f8;box-sizing:border-box}.aga-online-guide-preview-pair>section{max-width:100%}.aga-online-guide-preview-status{margin-left:8px}.aga-online-guide-admin .form-table th{width:220px}.aga-online-guide-admin .form-table input.large-text,.aga-online-guide-admin .form-table textarea{max-width:760px}
/* A fine-pointer desktop owns the left sidebar; v305 reserves its initial space below. */
.aga-online-layout{display:block;min-width:0}
.aga-online-layout>.aga-online-intro,.aga-online-layout>.aga-online-main{min-width:0}
.aga-online-guide-slot[data-guide-state="ready"]{min-height:0}
.aga-online-guide-placement{display:block;min-width:0;margin:24px 0;clear:both}
.aga-online-guide-placement[hidden],.aga-online-guide-placement[data-guide-state="hidden"]{display:none!important}
.aga-online-guide-placement .aga-online-guide-card{padding:20px;border-color:#c5dce7;border-left:4px solid #17618a;background:#f8fcfe}
.aga-online-guide-card .aga-online-guide-heading{font-weight:800!important;letter-spacing:.01em}
.aga-online-guide-placement .aga-online-guide-heading{font-size:21px!important;line-height:1.5!important;color:#173f57!important}
.aga-online-guide-placement .aga-online-guide-body{margin-top:8px}
.aga-online-guide-placement .aga-online-guide-cta{margin-top:14px;min-height:48px;background:#e7f3fb;border-color:#87b9d3}
.aga-online-guide-slot[hidden]{display:none!important}
.aga-online-guide-card .aga-online-guide-banner,.aga-online-guide-card>.aga-online-guide-image{width:100%!important;max-width:min(100%,var(--aga-ad-image-width,520px))!important;margin-left:var(--aga-ad-image-left,auto)!important;margin-right:var(--aga-ad-image-right,auto)!important}
.aga-online-guide-card .aga-online-guide-banner .aga-online-guide-image{max-width:100%!important}
@media(min-width:1100px) and (hover:hover) and (pointer:fine){
 .aga-online-layout.aga-online-desktop:not(.aga-online-inactive){display:grid;grid-template-columns:minmax(230px,280px) minmax(0,1fr);column-gap:28px;align-items:start}
 .aga-online-layout.aga-online-desktop>.aga-online-intro{grid-column:2;grid-row:1}
 .aga-online-layout.aga-online-desktop>.aga-online-main{grid-column:2;grid-row:2}
 .aga-online-layout.aga-online-desktop>.aga-online-guide-slot{display:block;grid-column:1;grid-row:1 / span 2;position:sticky;top:24px;margin:0;max-height:calc(100vh - 48px);overflow:auto;overscroll-behavior:contain}
 .admin-bar .aga-online-layout.aga-online-desktop>.aga-online-guide-slot{top:56px;max-height:calc(100vh - 80px)}
 .aga-online-layout.aga-online-desktop>.aga-online-guide-slot[data-guide-state="hidden"]{display:none}
}
.aga-online-layout.aga-online-inactive{display:block}
.aga-online-layout.aga-online-inactive>.aga-online-intro,.aga-online-layout.aga-online-inactive>.aga-online-main{width:auto}
.aga-online-guide-slot[aria-busy="true"][data-guide-count-state="known-zero"]{min-height:calc(var(--aga-online-guide-reserve,500px) + 104px)}

/* Fixed ads do not add body padding. At the document bottom the bar hides. */
.aga-ad-sticky{box-sizing:border-box;position:fixed;inset:auto 0 0;z-index:8000;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px max(12px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));max-height:40vh;overflow:auto;border-top:1px solid #bbd0dd;background:#fff;box-shadow:0 -3px 18px rgba(23,53,72,.13);visibility:hidden;pointer-events:none;transform:translateY(110%);transition:transform .16s ease,visibility .16s}
.aga-ad-sticky[data-visible="true"]{visibility:visible;pointer-events:auto;transform:translateY(0)}
.aga-ad-sticky-content{flex:1 1 auto;max-width:1100px;min-width:0}
.aga-ad-sticky .aga-online-guide-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent}
.aga-ad-sticky .aga-online-guide-card.aga-online-guide-disclosed{grid-template-columns:minmax(0,1fr) auto}
.aga-ad-sticky .aga-online-guide-pr{margin:0!important;white-space:nowrap;font-size:10px!important}
.aga-ad-sticky .aga-online-guide-heading{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0!important;font-size:15px!important;line-height:1.45!important;color:#173f57!important}
.aga-ad-sticky .aga-online-guide-cta{margin:0;min-height:44px;max-width:min(44vw,390px);padding:9px 16px;font-size:14px;line-height:1.4}
.aga-ad-sticky-close{box-sizing:border-box;flex:0 0 40px;display:flex;align-items:center;justify-content:center;width:40px;min-width:40px;height:44px;min-height:44px;margin:0;padding:0;border:1px solid #c3d1da;border-radius:6px;background:#f4f7f9;color:#334f61;font:24px/1 sans-serif;cursor:pointer}
.aga-ad-sticky-close:hover{background:#e5edf2}
.aga-ad-sticky-close:focus-visible{outline:3px solid #eea728;outline-offset:2px}
@media(max-width:600px){
 .aga-online-guide-placement{margin:20px 0}
 .aga-online-guide-placement .aga-online-guide-card{padding:16px}
 .aga-online-guide-placement .aga-online-guide-heading{font-size:19px!important}
 .aga-ad-sticky{gap:8px;padding-top:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}
 .aga-ad-sticky .aga-online-guide-card{grid-template-columns:auto minmax(0,1fr);gap:6px 8px}
 .aga-ad-sticky .aga-online-guide-card.aga-online-guide-disclosed{grid-template-columns:minmax(0,1fr)}
 .aga-ad-sticky .aga-online-guide-heading{font-size:13px!important}
 .aga-ad-sticky .aga-online-guide-cta{grid-column:1 / -1;max-width:none;min-height:44px;font-size:13px;padding:8px 10px}
}
@media(prefers-reduced-motion:reduce){.aga-ad-sticky{transition:none}}
@media print{.aga-ad-sticky,.aga-online-guide-slot,.aga-online-guide-placement{display:none!important}.aga-online-layout.aga-online-desktop{display:block!important}}

.aga-clinic-detail .aga-clinic-detail-nav-title .aga-icon{margin-right:.4em;vertical-align:middle}

/* Common inline presentation. Missing values retain the v299 responsive design. */
.aga-online-guide-placement .aga-online-guide-card{padding:var(--aga-ad-inline-padding,20px);background:var(--aga-ad-inline-background-color,#f8fcfe);border-left-color:var(--aga-ad-inline-left-border-color,#17618a);border-left-width:var(--aga-ad-inline-left-border-width,4px)}
.aga-online-guide-placement .aga-online-guide-heading{font-size:var(--aga-ad-inline-heading-size,21px)!important;color:var(--aga-ad-inline-heading-color,#173f57)!important;font-weight:var(--aga-ad-inline-heading-weight,800)!important;margin-bottom:var(--aga-ad-inline-gap-heading,12px)!important}
.aga-online-guide-placement .aga-online-guide-banner,.aga-online-guide-placement .aga-online-guide-card>.aga-online-guide-image{margin-top:var(--aga-ad-inline-gap-image,0px)!important}
.aga-online-guide-placement .aga-online-guide-body{margin-top:var(--aga-ad-inline-gap-body,8px)}
.aga-online-guide-placement .aga-online-guide-cta{width:var(--aga-ad-inline-button-width,auto);max-width:100%;margin-left:auto;margin-right:auto;margin-top:var(--aga-ad-inline-gap-button,14px);background:var(--aga-ad-inline-button-background,#e7f3fb);color:var(--aga-ad-inline-button-color,#00e)!important;text-align:var(--aga-ad-inline-button-align,center);justify-content:var(--aga-ad-inline-button-justify,center)}
/* Page and map styles force internal-link blue; inline ad buttons retain their selected color. */
.aga-online-guide-placement[data-aga-ad-placement] .aga-online-guide-card a.aga-online-guide-cta[href]{color:var(--aga-ad-inline-button-color,#00e)!important}
@media(max-width:600px){
 .aga-online-guide-placement .aga-online-guide-card{padding:var(--aga-ad-inline-padding,16px)}
 .aga-online-guide-placement .aga-online-guide-heading{font-size:var(--aga-ad-inline-heading-size,19px)!important}
}
/* Optional compact campaign image; no extra request or different advertiser. */
.aga-ad-sticky-has-image .aga-online-guide-card{grid-template-columns:auto var(--aga-ad-sticky-image-width,64px) minmax(0,1fr) auto}
.aga-ad-sticky-has-image .aga-online-guide-card.aga-online-guide-disclosed{grid-template-columns:var(--aga-ad-sticky-image-width,64px) minmax(0,1fr) auto}
.aga-ad-sticky-has-image .aga-online-guide-card>.aga-online-guide-banner,.aga-ad-sticky-has-image .aga-online-guide-card>.aga-online-guide-image{width:var(--aga-ad-sticky-image-width,64px)!important;max-width:100%!important;margin:0!important;min-width:0}
.aga-ad-sticky-has-image .aga-online-guide-image{max-height:var(--aga-ad-sticky-image-width,64px)!important;width:100%!important;height:auto!important;object-fit:contain;border-radius:4px}
@media(max-width:600px){
 .aga-ad-sticky-has-image .aga-online-guide-card{grid-template-columns:auto var(--aga-ad-sticky-image-width,64px) minmax(0,1fr)}
 .aga-ad-sticky-has-image .aga-online-guide-card.aga-online-guide-disclosed{grid-template-columns:var(--aga-ad-sticky-image-width,64px) minmax(0,1fr)}
 .aga-ad-sticky-has-image .aga-online-guide-cta{grid-column:1 / -1}
}

/* v301: PC fixed advertising has its own button text alignment. */
.aga-online-guide-sidebar[data-aga-ad-placement="sidebar"] .aga-online-guide-cta{ text-align:var(--aga-ad-sidebar-button-align,center)!important;justify-content:var(--aga-ad-sidebar-button-justify,center)!important; }

/* v305: reserve from server markup, before Ajax or footer JavaScript runs. */
.aga-online-guide-placement.aga-ad-reserved{box-sizing:border-box;position:relative;overflow-anchor:none}
.aga-online-guide-placement.aga-ad-reserved[data-aga-reserve-mobile="0"]{display:none!important}
.aga-online-guide-placement.aga-ad-reserved[data-guide-state="unavailable"]{background:none}
.aga-ad-loading{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:10px;min-height:inherit;width:100%;color:#667784;font-size:13px;line-height:1.5}
.aga-ad-loading-ring{box-sizing:border-box;width:24px;height:24px;flex:0 0 24px;border:3px solid #dbe5eb;border-top-color:#607d8b;border-radius:50%;animation:aga-ad-spin 1s linear infinite}
.aga-ad-loading-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes aga-ad-spin{to{transform:rotate(360deg)}}
.aga-online-guide-placement.aga-ad-reserved>.aga-ad-loading{min-height:var(--aga-ad-reserve-mobile,360px)}
.aga-online-layout[data-aga-sidebar-reserved="1"]>.aga-online-guide-slot .aga-online-guide-content:empty{min-height:0;background:none}
.aga-online-guide-image{aspect-ratio:6/5;object-fit:contain}
.aga-online-guide-placement .aga-online-guide-cta{margin-left:var(--aga-ad-inline-button-left,auto);margin-right:var(--aga-ad-inline-button-right,auto)}
/* AGA-DESIGN:AD-COLOR — 0,5,1 specificity in all three slots beats the
 * 0,4,1 generic page-link rule even when that stylesheet is loaded last.
 * Do not lower this to sidebar + card + CTA: that recreates the load-order bug.
 * These state-independent rules retain configured colors on hover/focus/visited. */
.aga-online-guide-placement[data-aga-ad-placement] .aga-online-guide-card a.aga-online-guide-cta[href],
.aga-online-guide-sidebar[data-aga-ad-placement="sidebar"] .aga-online-guide-card a.aga-online-guide-cta[href],
.aga-ad-sticky .aga-ad-sticky-content .aga-online-guide-card a.aga-online-guide-cta[href]{background:var(--aga-ad-common-button-background,var(--aga-ad-inline-button-background,#e7f3fb))!important;color:var(--aga-ad-common-button-text,var(--aga-ad-inline-button-color,#00e))!important}
@media(min-width:1100px) and (hover:hover) and (pointer:fine) and (any-pointer:fine){
 .aga-online-layout[data-aga-sidebar-reserved="1"]{display:grid;grid-template-columns:minmax(230px,280px) minmax(0,1fr);column-gap:28px;align-items:start}
 .aga-online-layout[data-aga-sidebar-reserved="1"]>.aga-online-intro{grid-column:2;grid-row:1}
 .aga-online-layout[data-aga-sidebar-reserved="1"]>.aga-online-main{grid-column:2;grid-row:2}
 .aga-online-layout[data-aga-sidebar-reserved="1"]>.aga-online-guide-slot{display:block;grid-column:1;grid-row:1 / span 2;position:sticky;top:24px;margin:0;max-height:calc(100vh - 48px);overflow:auto;overscroll-behavior:contain}
 .admin-bar .aga-online-layout[data-aga-sidebar-reserved="1"]>.aga-online-guide-slot{top:56px;max-height:calc(100vh - 80px)}
 .aga-online-guide-placement.aga-ad-reserved{min-height:var(--aga-ad-reserve-desktop,300px)}
 .aga-online-guide-placement.aga-ad-reserved>.aga-ad-loading{min-height:var(--aga-ad-reserve-desktop,300px)}
 .aga-online-guide-placement.aga-ad-reserved[data-aga-reserve-mobile="0"]{display:block!important}
 .aga-online-guide-placement.aga-ad-reserved[data-aga-reserve-desktop="0"]{display:none!important}
}
@media(any-pointer:coarse){
 .aga-online-layout[data-aga-sidebar-reserved="1"]{display:block}
 .aga-online-layout[data-aga-sidebar-reserved="1"]>.aga-online-guide-slot{display:none!important}
 .aga-online-guide-placement.aga-ad-reserved>.aga-ad-loading{min-height:var(--aga-ad-reserve-mobile,360px)}
 .aga-online-guide-placement.aga-ad-reserved[data-aga-reserve-desktop="0"]{display:block!important}
 .aga-online-guide-placement.aga-ad-reserved[data-aga-reserve-mobile="0"]{display:none!important}
}
@media(prefers-reduced-motion:reduce){.aga-ad-loading-ring{animation:none}}
@media print{.aga-online-layout[data-aga-sidebar-reserved="1"]{display:block!important}}

/* v340: a verified, inert copy reserves the actual responsive text/image shape.
 * The live card overlaps it; loading/ready/failure never collapses that row.
 * No live URLs, fetched images or campaign selection are used by the skeleton. */
.aga-online-guide-placement.aga-ad-reserved.aga-ad-intrinsic{display:grid;min-height:0}
.aga-ad-intrinsic>.aga-ad-layout-skeleton,.aga-ad-intrinsic>.aga-online-guide-card{grid-area:1/1;min-width:0;align-self:start}
.aga-ad-layout-skeleton{visibility:hidden;pointer-events:none;user-select:none}
.aga-ad-layout-skeleton .aga-online-guide-image{height:auto!important}
.aga-ad-layout-device{min-width:0}
.aga-ad-layout-desktop{display:none}
.aga-online-guide-placement.aga-ad-intrinsic>.aga-ad-loading{position:absolute;inset:0;min-height:0}
@media(min-width:1100px) and (hover:hover) and (pointer:fine) and (any-pointer:fine){
 .aga-ad-layout-desktop{display:block}.aga-ad-layout-mobile{display:none}
 .aga-online-guide-placement.aga-ad-intrinsic[data-aga-reserve-desktop="1"]:not([hidden]){display:grid!important}
}
@media(any-pointer:coarse){.aga-ad-layout-desktop{display:none}.aga-ad-layout-mobile{display:block}.aga-online-guide-placement.aga-ad-intrinsic[data-aga-reserve-mobile="1"]:not([hidden]){display:grid!important}.aga-online-guide-placement.aga-ad-intrinsic[data-aga-reserve-mobile="0"]:not([hidden]){display:none!important}}

.aga-online-guide-placement.aga-ad-intrinsic[hidden],.aga-online-guide-placement.aga-ad-intrinsic[data-guide-state="hidden"]{display:none!important}

/* v342: the containing grid already owns the inter-section rhythm. These
 * outside margins must not add a second 20/24px gap. Keep saved card padding,
 * creative-specific gaps and stable pre-load reservations unchanged. */
.aga-clinic-detail .aga-clinic-detail-content>.aga-online-guide-placement{margin-block:0}
.aga-clinic-list .aga-clinic-card>.aga-online-guide-placement:last-child{margin-bottom:0}
.aga-online-guide-placement .aga-online-guide-body>:last-child{margin-bottom:0!important}
