body{ padding-top: var(--cs-banner-height); }
.clinic-status{
position: fixed;
top: 0; left: 0; right: 0;
z-index: 1500;
width: 100%;
box-sizing: border-box;
margin: 0;
padding: 10px 16px 10px 16px;
border: none;
background: var(--cs-loading-bg); color: var(--cs-text);
font-size: clamp(14px, 1.6vw, 18px);
line-height: 1.6;
text-align: center;
}
.clinic-status__inner{ display: block; }
.clinic-status__text{ font-weight: 700; letter-spacing: 0.02em; }
.clinic-status.is-open{  background: var(--cs-open-bg); }
.clinic-status.is-closed{ background: var(--cs-closed-bg); }
.clinic-status.is-loading{ opacity: .95; } body.admin-bar .clinic-status{ top: 32px; }
@media (max-width: 782px){
body.admin-bar .clinic-status{ top: 46px; }
}   #clinic-status-banner .clinic-status__link {
color: inherit;
font-weight: normal;
text-decoration: underline;
text-underline-offset: 0.2em;
margin-left: 1em;
padding-left: 1em;
border-left: 1px solid currentColor;
}
#clinic-status-banner .clinic-status__link:hover {
text-decoration: none;
}    html { font-size: 100%; } html[data-fz="sm"] { font-size: 93.75% !important; } html[data-fz="md"] { font-size: 100%   !important; } html[data-fz="lg"] { font-size: 112.5% !important; }  html[data-fz] body,
html[data-fz] .entry-content,
html[data-fz] .entry-content p,
html[data-fz] .entry-content li,
html[data-fz] .wp-block-paragraph,
html[data-fz] p, html[data-fz] li, html[data-fz] dt, html[data-fz] dd {
font-size: 1rem !important;
} .ai-fz-toggle{
position: fixed; z-index: 2147483647;
top: 12px; right: 12px;
display: inline-flex; align-items: center; gap: .5rem;
padding: .5rem .75rem; border-radius: 9999px;
border: 1px solid var(--fz-blue-line); background: var(--fz-blue-bg);
box-shadow: 0 2px 8px rgba(0,0,0,.06);
font-size: .9375rem; cursor: pointer; user-select: none;
}
.ai-fz-toggle:hover { filter: brightness(.98); }
.ai-fz-toggle__dot{ width:6px; height:6px; border-radius:50%; background:var(--fz-blue); }
.ai-fz-toggle__label{ font-weight:600; }
.ai-fz-panel{
position: fixed; z-index: 2147483647;
display: none; gap: .5rem; padding: .5rem;
border-radius: 12px; border: 1px solid #cbd5e1;
background: #fff; box-shadow: 0 6px 24px rgba(0,0,0,.12);
}
@media (min-width:768px){ .ai-fz-panel{ right:12px; top:56px; bottom:auto; } }
@media (max-width:767.98px){ .ai-fz-panel{ right:12px; top:56px; } }
.ai-fz-btn{
min-width: 2.5rem; padding: .4rem .6rem;
border-radius: 10px; border: 1px solid #cbd5e1;
background: #f8fafc; font-size: .9375rem; line-height:1;
cursor: pointer;
}
.ai-fz-btn[aria-pressed="true"]{ border-color:var(--fz-blue); background:var(--fz-blue-bg); font-weight:700; } .ai-fz-toggle:focus-visible,.ai-fz-btn:focus-visible{ outline:2px solid var(--fz-blue); outline-offset:2px; }
.admin-bar .ai-fz-toggle{ top: calc(12px + 32px); }      .vk_breadcrumb,
.breadcrumb,
.yoast-breadcrumb,
nav[aria-label="breadcrumb"] {
display: block;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
line-height: 1.6; font-size: 0.95rem; font-family: "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
font-size-adjust: 0.50; } .vk_breadcrumb ul,
.breadcrumb ul { 
display: inline; 
padding: 0; margin: 0;
}
.vk_breadcrumb li,
.breadcrumb li { 
display: inline; 
} .vk_breadcrumb li:last-child,
.breadcrumb li:last-child { 
display: inline-block; 
max-width: 60vw; vertical-align: bottom;
overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}   @media (max-width: 768px){
body:not(.home) .vk_pageHeader,
body:not(.home) .vk-page-header,
body:not(.home) .page-header{
background-image: none !important;
background-color: #f5f5f5 !important; min-height: 120px; }
}    .wpcf7-radio .wpcf7-list-item {
display: block;
margin-bottom: 12px;
} .wpcf7-checkbox {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 8px 16px;
} @media (max-width: 600px) {
.wpcf7-checkbox {
grid-template-columns: repeat(2, 1fr);
}
} .wpcf7-submit {
width: 100%;
max-width: 320px;
padding: 16px 32px;
font-size: 1.1em;
margin-top: 20px;
}   .case-card {
position: relative;
padding-bottom: 2.5em;
}
.case-card .case-card-title a::after {
content: "詳しく見る →";
position: absolute;
right: 1.2em;
bottom: 0.8em;
color: var(--wp--preset--color--vk-color-primary, #337ab7);
text-decoration: underline;
}   .vk_post_imgOuter_singleTermLabel {
font-size: 14px;
font-weight: bold;
}