/* Homepage gateway: one image link to the blog archive, not individual article cards. */
.ks-homepage .ks-blog-home .ks-blog-section-head--gateway{text-align:center;margin-bottom:26px;}
.ks-homepage .ks-blog-home a.ks-blog-gateway{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);align-items:stretch;width:100%;min-width:0;margin:0;overflow:hidden;border:1px solid var(--kb-line,#ded6c8);border-radius:6px;background:var(--kb-paper,#f6f3ec);color:var(--kb-ink,#3c342c);text-decoration:none;}
.ks-blog-home .ks-blog-gateway__media{display:block;position:relative;min-width:0;min-height:270px;overflow:hidden;background:#eeebe4;}
.ks-blog-home .ks-blog-gateway__media>img{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;transition:transform .3s ease;}
.ks-blog-home .ks-blog-gateway__body{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding:36px clamp(26px,4vw,56px);}
.ks-blog-home .ks-blog-gateway__eyebrow{display:block;margin:0 0 14px;color:#7b684c;font-size:11px;line-height:1.6;letter-spacing:.16em;}
.ks-blog-home .ks-blog-gateway__title{display:block;margin:0;color:#3c342c;font-family:var(--serif,serif);font-size:clamp(24px,2.6vw,32px);font-weight:500;line-height:1.65;letter-spacing:.035em;overflow-wrap:anywhere;}
.ks-blog-home .ks-blog-gateway__text{display:block;max-width:34em;margin:14px 0 0;color:#62594e;font-size:14px;line-height:1.9;letter-spacing:.02em;overflow-wrap:anywhere;}
.ks-blog-home .ks-blog-gateway__cta{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:46px;max-width:100%;margin-top:22px;padding:8px 0;border-bottom:1px solid #9b8869;color:#685439;font-size:14px;line-height:1.7;}
.ks-blog-home .ks-blog-gateway__cta>span{display:block;flex-shrink:0;transition:transform .2s ease;}
@media(hover:hover){.ks-blog-home .ks-blog-gateway:hover .ks-blog-gateway__media>img{transform:scale(1.025);}.ks-blog-home .ks-blog-gateway:hover .ks-blog-gateway__cta>span{transform:translateX(4px);}}
.ks-homepage .ks-blog-home a.ks-blog-gateway:focus-visible{outline:3px solid #68694f;outline-offset:5px;}
@media(max-width:767px){
 .ks-homepage .ks-blog-home a.ks-blog-gateway{grid-template-columns:minmax(0,1fr);}
 .ks-blog-home .ks-blog-gateway__media{min-height:0;aspect-ratio:16/9;}
 .ks-blog-home .ks-blog-gateway__body{padding:24px 22px;}
 .ks-blog-home .ks-blog-gateway__title{font-size:23px;letter-spacing:.01em;}
 .ks-blog-home .ks-blog-gateway__text{font-size:14px;}
 .ks-blog-home .ks-blog-gateway__eyebrow{margin-bottom:10px;font-size:10px;}
 .ks-blog-home .ks-blog-gateway__cta{width:100%;margin-top:18px;gap:12px;}
}
@media(prefers-reduced-motion:reduce){.ks-blog-home .ks-blog-gateway__media>img,.ks-blog-home .ks-blog-gateway__cta>span{transition:none;}.ks-blog-home .ks-blog-gateway:hover .ks-blog-gateway__media>img,.ks-blog-home .ks-blog-gateway:hover .ks-blog-gateway__cta>span{transform:none;}}

/* Clinic journal only. Existing homepage, news and treatment styles remain unchanged. */
.ks-blog-home,.ks-blog-archive,.ks-blog-article{--kb-ink:#3c342c;--kb-muted:#71675b;--kb-accent:#8a7454;--kb-line:#ded6c8;--kb-paper:#f6f3ec;color:var(--kb-ink);text-align:left;}
:is(.ks-blog-home,.ks-blog-archive,.ks-blog-article) *{box-sizing:border-box;}
.ks-blog-inner{width:calc(100% - 80px);max-width:1120px;margin:0 auto;}
.ks-homepage #contents>.ks-blog-home{padding:64px 0 68px;background:#fff;}
:is(.ks-blog-home,.ks-blog-archive,.ks-blog-article) .ks-blog-section-head{position:static;display:block;width:auto;height:auto;margin:0 0 28px;padding:0;background:none;border:0;}
.ks-blog-kicker{margin:0 0 12px;color:var(--kb-accent);font-size:12px;letter-spacing:.18em;line-height:1.6;}
.ks-blog-heading{margin:0;font-family:var(--serif,serif);font-size:32px;font-weight:500;line-height:1.5;letter-spacing:.05em;}
.ks-blog-intro{margin:16px 0 0;font-size:15px;line-height:1.95;letter-spacing:.025em;}
.ks-blog-mobile-break{display:none;}
.ks-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.ks-blog-card{min-width:0;display:flex;flex-direction:column;margin:0;padding:0;overflow:hidden;background:#fff;border:1px solid var(--kb-line);border-radius:6px;}
.ks-blog-card__link{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none;}
.ks-blog-card__image{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;background:var(--kb-paper);}
.ks-blog-card .ks-blog-card__image>img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;transition:transform .25s ease;}
.ks-blog-card__placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:24px;background:var(--kb-paper);text-align:center;color:#7d6a50;}
.ks-blog-card__placeholder>span{display:block;margin-bottom:12px;font-size:10px;letter-spacing:.2em;line-height:1.6;}
.ks-blog-card__placeholder>b{display:block;font-family:var(--serif,serif);font-weight:400;font-size:22px;line-height:1.65;letter-spacing:.045em;}
.ks-blog-card__body{display:flex;flex:1;flex-direction:column;align-items:flex-start;min-width:0;padding:22px;}
.ks-blog-date{display:block;margin:0 0 10px;color:var(--kb-muted);font-size:12px;line-height:1.6;letter-spacing:.03em;}
.ks-blog-card__title{margin:0;color:var(--kb-ink);font-family:var(--serif,serif);font-size:19px;font-weight:500;line-height:1.65;overflow-wrap:anywhere;}
.ks-blog-card__excerpt{margin:12px 0 0;color:var(--kb-muted);font-size:14px;line-height:1.9;overflow-wrap:anywhere;}
.ks-blog-card__read{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:auto;padding-top:20px;color:var(--kb-accent);font-size:13px;line-height:1.6;}
.ks-blog-card__link:hover .ks-blog-card__title{color:var(--kb-accent);}
.ks-blog-card__link:hover .ks-blog-card__image>img{transform:scale(1.025);}
.ks-blog-more{margin-top:28px;text-align:right;}
.ks-blog-button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:48px;max-width:100%;padding:13px 24px;border:1px solid var(--kb-accent);border-radius:3px;color:var(--kb-ink);background:#fff;font-size:14px;line-height:1.6;text-decoration:none;}
.ks-blog-button:hover{background:var(--kb-paper);}
:is(.ks-blog-home,.ks-blog-archive,.ks-blog-article) a:focus-visible{outline:3px solid #68694f;outline-offset:4px;}
.ks-blog-preview-note{margin:0 0 22px;padding:14px 18px;border-left:3px solid var(--kb-accent);background:var(--kb-paper);font-size:13px;line-height:1.8;}
.ks-blog-archive #contents,.ks-blog-article #contents{padding:0;background:#fff;}
.ks-blog-banner{padding:52px 0;background:var(--kb-paper);}
.ks-blog-banner h1{margin:0;font-family:var(--serif,serif);font-size:36px;font-weight:500;line-height:1.6;letter-spacing:.045em;}
.ks-blog-breadcrumb{margin:0;padding:18px 0;border-bottom:1px solid var(--kb-line);font-size:12px;line-height:1.8;}
.ks-blog-breadcrumb ol{display:flex;flex-wrap:wrap;gap:6px 12px;margin:0;padding:0;list-style:none;}
.ks-blog-breadcrumb li+li::before{content:'›';margin-right:12px;color:var(--kb-muted);}
.ks-blog-breadcrumb a{color:var(--kb-muted);text-decoration:none;}
.ks-blog-breadcrumb li{min-width:0;overflow-wrap:anywhere;}
.ks-blog-listing{padding:48px 0 68px;}
.ks-blog-empty{padding:36px 28px;border:1px solid var(--kb-line);background:var(--kb-paper);font-size:15px;line-height:1.9;text-align:center;}
.ks-blog-empty p{margin:0;}
.ks-blog-pagination{margin-top:36px;}
.ks-blog-pagination ul{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0;padding:0;list-style:none;}
.ks-blog-pagination a,.ks-blog-pagination span{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid var(--kb-line);font-size:14px;text-decoration:none;color:var(--kb-ink);}
.ks-blog-pagination .current{background:var(--kb-accent);border-color:var(--kb-accent);color:#fff;}
.ks-blog-reading{width:calc(100% - 80px);max-width:800px;margin:0 auto;padding:48px 0 60px;}
.ks-blog-article h1.ks-blog-article-title{margin:12px 0 24px;font-family:var(--serif,serif);font-size:32px;font-weight:500;line-height:1.65;overflow-wrap:anywhere;}
.ks-blog-article-cover{margin:0 0 32px;}
.ks-blog-article-cover img{display:block;width:100%;height:auto;max-height:520px;object-fit:contain;}
.ks-blog-prose{font-family:var(--sans,"Noto Sans JP",sans-serif);font-size:18px;line-height:1.95;letter-spacing:.015em;color:#33312e;overflow-wrap:anywhere;}
.ks-blog-prose p{margin:0 0 1.5em;}
.ks-blog-prose h2{margin:2.5em 0 1.1em;padding:16px 20px;border:0;border-left:3px solid var(--kb-accent);background:var(--kb-paper);color:var(--kb-ink);font-size:25px;font-weight:600;line-height:1.65;scroll-margin-top:140px;}
.ks-blog-prose h3{margin:2em 0 .9em;padding:0 0 10px;border-bottom:1px solid var(--kb-line);color:var(--kb-ink);font-size:21px;font-weight:600;line-height:1.65;scroll-margin-top:140px;}
.ks-blog-prose strong{font-weight:700;}
.ks-blog-prose mark{padding:.08em .15em;background:#f5ebcd;color:inherit;}
.ks-blog-prose img,.ks-blog-prose video{max-width:100%;height:auto;}
/* Column media: WordPress image/gallery/video/embed blocks stay editorial and responsive. */
.ks-blog-prose figure{max-width:100%;margin:30px 0 34px;}
.ks-blog-prose figure img{display:block;width:100%;height:auto;border-radius:6px;}
.ks-blog-prose figcaption{margin:9px 0 0;color:var(--kb-muted);font-size:12px;line-height:1.7;text-align:center;}
.ks-blog-prose .wp-block-image,.ks-blog-prose .wp-block-video,.ks-blog-prose .wp-block-embed{margin-top:32px;margin-bottom:36px;}
.ks-blog-prose .wp-block-image.aligncenter img{margin-left:auto;margin-right:auto;}
.ks-blog-prose .wp-block-image.alignleft{float:left;max-width:46%;margin:8px 28px 20px 0;}
.ks-blog-prose .wp-block-image.alignright{float:right;max-width:46%;margin:8px 0 20px 28px;}
.ks-blog-prose .wp-block-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:32px 0 36px;padding:0;}
.ks-blog-prose .wp-block-gallery figure{margin:0;}
.ks-blog-prose .wp-block-gallery img{display:block;width:100%;height:100%;min-height:180px;max-height:360px;object-fit:cover;border-radius:5px;}
.ks-blog-prose .wp-block-video video{display:block;width:100%;border-radius:6px;background:#000;}
.ks-blog-prose .wp-block-embed__wrapper{position:relative;width:100%;overflow:hidden;border-radius:6px;background:#111;}
.ks-blog-prose .wp-block-embed.is-type-video .wp-block-embed__wrapper{aspect-ratio:16/9;}
.ks-blog-prose .wp-block-embed.is-type-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.ks-blog-prose iframe{display:block;max-width:100%;margin-left:auto;margin-right:auto;border:0;}
.ks-blog-prose .instagram-media{max-width:100%!important;min-width:0!important;margin:32px auto!important;}
.ks-blog-prose::after{content:"";display:block;clear:both;}
@media(min-width:900px){
 .ks-blog-prose .wp-block-image.alignwide,.ks-blog-prose .wp-block-gallery.alignwide,.ks-blog-prose .wp-block-video.alignwide,.ks-blog-prose .wp-block-embed.alignwide{width:calc(100% + 96px);max-width:none;margin-left:-48px;margin-right:-48px;}
}
@media(max-width:767px){
 .ks-blog-prose figure,.ks-blog-prose .wp-block-image,.ks-blog-prose .wp-block-video,.ks-blog-prose .wp-block-embed{margin-top:24px;margin-bottom:28px;}
 .ks-blog-prose .wp-block-image.alignleft,.ks-blog-prose .wp-block-image.alignright{float:none;max-width:none;margin:24px 0 28px;}
 .ks-blog-prose .wp-block-gallery{grid-template-columns:1fr 1fr;gap:8px;margin:24px 0 28px;}
 .ks-blog-prose .wp-block-gallery img{min-height:120px;max-height:240px;}
}
.ks-blog-prose ul,.ks-blog-prose ol{padding-left:1.5em;margin:1em 0 1.5em;}
.ks-blog-prose ul{list-style:disc;}.ks-blog-prose ol{list-style:decimal;}
.ks-blog-prose li+li{margin-top:.6em;}
.ks-blog-prose a{color:var(--kb-accent);text-decoration:underline;text-underline-offset:3px;}
.ks-blog-prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;}
.ks-blog-prose th,.ks-blog-prose td{padding:12px;border:1px solid var(--kb-line);min-width:90px;}
.ks-blog-prose blockquote{margin:24px 0;padding:20px 24px;border-left:3px solid var(--kb-accent);background:var(--kb-paper);}
.ks-blog-reading .ks-blog-more{text-align:center;margin-top:44px;padding-top:28px;border-top:1px solid var(--kb-line);}
/* Automatic TOC. Compact headings first; every nested link remains available. */
.ks-blog-prose #ez-toc-container{display:block;box-sizing:border-box;width:100%;max-width:100%;margin:0 0 36px;padding:18px 22px;border:1px solid var(--kb-line);border-radius:6px;background:#faf8f3;box-shadow:none;font-family:inherit;font-size:16px;line-height:1.65;}
.ks-blog-prose #ez-toc-container .ez-toc-title-container{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.ks-blog-prose #ez-toc-container .ez-toc-title{margin:0;font-family:inherit;font-size:17px;font-weight:600;line-height:1.5;color:var(--kb-ink);}
.ks-blog-prose #ez-toc-container .ez-toc-title-toggle{flex:0 0 auto;}
.ks-blog-prose #ez-toc-container .ez-toc-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;min-height:40px;padding:4px;border:0;background:transparent;box-shadow:none;}
.ks-blog-prose #ez-toc-container ul{margin:6px 0 0;padding:0;list-style:none;}
.ks-blog-prose #ez-toc-container li{margin:0;padding:0;line-height:1.65;}
.ks-blog-prose #ez-toc-container ul ul{margin:0 0 4px 8px;padding-left:12px;border-left:1px solid var(--kb-line);}
.ks-blog-prose #ez-toc-container a.ez-toc-link{display:block;padding:6px 0;color:#655239;font-size:inherit;font-weight:500;line-height:inherit;text-decoration:none;overflow-wrap:anywhere;}
.ks-blog-prose #ez-toc-container ul ul a.ez-toc-link{padding:4px 0;font-size:.94em;font-weight:400;}
.ks-blog-prose #ez-toc-container a.ez-toc-link:hover{text-decoration:underline;text-underline-offset:4px;}
.ks-blog-prose #ez-toc-container :is(a,button):focus-visible{outline:2px solid #68694f;outline-offset:3px;}
.ks-blog-prose #ez-toc-container.ks-toc-enhanced .ez-toc-title-toggle{display:none;}
.ks-blog-prose #ez-toc-container.ks-toc-enhanced>nav,.ks-blog-prose #ez-toc-container.ks-toc-enhanced>nav>ul{display:block!important;}
.ks-blog-prose #ez-toc-container .ks-toc-detail-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:0 0 auto;min-height:40px;margin:0;padding:4px 8px;border:1px solid var(--kb-line);border-radius:4px;background:transparent;color:#655239;font:400 12px/1.5 var(--sans,"Noto Sans JP",sans-serif);letter-spacing:0;cursor:pointer;}
.ks-blog-prose #ez-toc-container .ks-toc-detail-toggle::after{content:'＋';font-size:14px;}
.ks-blog-prose #ez-toc-container .ks-toc-detail-toggle[aria-expanded="true"]::after{content:'−';}
.ks-blog-prose #ez-toc-container.ks-toc-compact ul ul{display:none!important;}
@media(max-width:767px){
 .ks-blog-prose #ez-toc-container{margin-bottom:28px;padding:12px 13px;font-size:14px;line-height:1.6;letter-spacing:0;}
 .ks-blog-prose #ez-toc-container .ez-toc-title{font-size:16px;}
 .ks-blog-prose #ez-toc-container>nav>ul{margin-top:5px;}
 .ks-blog-prose #ez-toc-container a.ez-toc-link{padding:6px 0;font-weight:400;}
 .ks-blog-prose #ez-toc-container ul ul{margin-left:4px;padding-left:10px;}
 .ks-blog-prose #ez-toc-container ul ul a.ez-toc-link{font-size:13px;padding:4px 0;}
}

/* Article-end physician profile. Shared profile content stays editable in one place. */
.ks-blog-reviewer{margin:40px 0 0;scroll-margin-top:110px;}
.ks-blog-reviewer .ks-menu-reviewer{padding:0;background:transparent;}
.ks-blog-reviewer .ks-menu-reviewer__card{max-width:none;grid-template-columns:112px minmax(0,1fr);gap:24px;padding:28px;align-items:start;border-radius:6px;}
.ks-blog-reviewer .ks-menu-reviewer__photo{width:112px;max-width:100%;}
.ks-blog-reviewer .ks-menu-reviewer__body{min-width:0;overflow-wrap:anywhere;}
.ks-blog-reviewer .ks-menu-reviewer__link{max-width:100%;min-height:44px;gap:16px;}
.ks-blog-reviewer .ks-menu-reviewer__link>span{flex-shrink:0;}
.ks-blog-reviewer-sample{max-width:800px;margin:44px auto 0;}
.ks-blog-reviewer-sample>.ks-blog-preview-note{margin-bottom:20px;}
.ks-blog-reviewer-sample>.ks-blog-reviewer{margin-top:0;}
@media(max-width:600px){
 .ks-blog-reviewer{margin-top:32px;scroll-margin-top:85px;}
 .ks-blog-reviewer .ks-menu-reviewer__card{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px 20px;}
 .ks-blog-reviewer .ks-menu-reviewer__photo{width:96px;}
 .ks-blog-reviewer .ks-menu-reviewer__name{font-size:24px;}
 .ks-blog-reviewer .ks-menu-reviewer__link{gap:12px;}
}
@media(max-width:1023px) and (min-width:768px){.ks-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.ks-blog-grid--home{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}.ks-blog-grid--home .ks-blog-card__body{padding:18px;}.ks-blog-grid--home .ks-blog-card__title{font-size:17px;}.ks-blog-grid--home .ks-blog-card__placeholder>b{font-size:18px;}}
@media(max-width:767px){
 .ks-homepage #contents>.ks-blog-home{padding:40px 44px 44px 0;}
 .ks-blog-inner{width:calc(100% - 36px);}
 .ks-blog-heading{font-size:26px;}.ks-blog-intro{font-size:14px;}.ks-blog-mobile-break{display:block;}
 .ks-blog-grid{grid-template-columns:1fr;gap:20px;}
 .ks-blog-grid--home{display:flex;overflow-x:auto;gap:14px;padding:0 0 16px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;}
 .ks-blog-grid--home>.ks-blog-card{flex:0 0 88%;scroll-snap-align:start;}
 .ks-blog-grid--home>.ks-blog-card:only-child{flex-basis:100%;}
 .ks-blog-card__body{padding:20px;}.ks-blog-more{margin-top:20px;}
 .ks-blog-button{width:100%;padding:13px 18px;gap:18px;}
 .ks-blog-banner{padding:32px 44px 32px 0;}.ks-blog-banner h1{font-size:28px;}
 .ks-blog-archive .ks-blog-breadcrumb,.ks-blog-archive .ks-blog-listing,.ks-blog-article .ks-blog-breadcrumb{padding-right:44px;}
 .ks-blog-listing{padding-top:30px;padding-bottom:44px;}
 .ks-blog-reading{width:auto;margin:0 18px;padding:26px 0 40px;}
 .ks-blog-article .ks-blog-breadcrumb{padding-right:0;}
 .ks-blog-article h1.ks-blog-article-title{font-size:23px;line-height:1.6;}
 .ks-blog-prose{font-size:15px;line-height:1.85;letter-spacing:0;}
 .ks-blog-prose p{margin-bottom:1.2em;}
 .ks-blog-prose h2{margin-top:2em;padding:12px 13px;font-size:20px;line-height:1.65;scroll-margin-top:95px;}
 .ks-blog-prose h3{font-size:17px;line-height:1.65;scroll-margin-top:95px;}
 .ks-blog-prose strong{font-weight:600;}
 .ks-blog-prose .ez-toc-section{scroll-margin-top:95px;}
 /* Reservation buttons use the shared header styles on both column listings and articles. */
 .ks-blog-empty{padding:26px 18px;}.ks-blog-preview-note{font-size:12px;padding:12px 14px;}
}
@media(prefers-reduced-motion:reduce){.ks-blog-card__image>img{transition:none;}.ks-blog-card__link:hover .ks-blog-card__image>img{transform:none;}}
