/* 第3稿：1枚のメイン画像、本文中心、7院共通の紹介形式。 */
:root{--ink:#35312c;--muted:#716b62;--gold:#be943f;--gold-deep:#806125;--cream:#fffbef;--line:#e6e0d5;--cta:#b9472c;--font:"Hiragino Kaku Gothic ProN","Yu Gothic","Meiryo",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:#f3f4f5;color:var(--ink);font-family:var(--font);font-size:15px;line-height:2;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,figure{margin:0}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}button,summary,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #986f20;outline-offset:4px}::selection{background:#fae8a9;color:#382c16}mark,.marker{background:linear-gradient(transparent 65%,#fff0a5 65%,#fff0a5 96%,transparent 96%);color:inherit;padding:0 2px;font-weight:700}.svg-defs{position:absolute;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:12px;top:-100px;z-index:100;background:#fff;padding:12px 20px}.skip-link:focus{top:10px}
.site-header{max-width:840px;margin:auto;display:flex;align-items:center;justify-content:space-between;background:#fff;padding:17px 44px;border-bottom:1px solid #ede9df;gap:20px}.brand{font-family:Georgia,serif;font-size:23px;color:#675333;line-height:1.2}.brand>span{display:block;font-family:var(--font);font-size:8px;letter-spacing:.08em;margin-top:5px;color:#81745e}.site-header>a:last-child{font-size:12px;font-weight:700;color:#7c6028;border-bottom:1px solid #bda977;padding:4px 0}.site-header>a:last-child>span{margin-left:10px}.article-main{max-width:840px;padding:28px 44px 0;background:#fff;margin:auto}.article-meta{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#787266;gap:15px;margin-bottom:18px}.ad-label{border:1px solid #aaa499;padding:0 9px;line-height:1.8;color:#696153}.article-main>h1{font-size:25px;line-height:1.65;letter-spacing:.015em;margin:0 0 23px;font-weight:700}.main-visual{margin:0 0 27px}.main-visual>img{width:100%;height:auto;border:1px solid #f0e4c8}.main-visual figcaption{font-size:10px;line-height:1.8;color:#847d70;margin-top:8px}.article-intro p{margin-top:21px}.article-intro p:first-child{font-weight:700;font-size:18px;line-height:1.8;margin-top:0}.article-intro strong{font-weight:700}.article-check{margin:29px 0 18px;border:2px solid #dbbc6a;background:#fffdf7;padding:20px 24px;border-radius:3px}.article-check>p{font-weight:700;color:#7a5e23;font-size:16px;margin-bottom:11px}.article-check ul{list-style:none;padding:0;margin:0}.article-check li{position:relative;padding-left:27px;margin:6px 0;font-size:14px}.article-check li:before{content:"✓";position:absolute;left:0;color:#b58a2d;font-weight:700}.editorial-note,.small-note{font-size:12px;color:#776f63;line-height:1.9}.editorial-note a,.small-note a{text-decoration:underline;text-underline-offset:3px}.clinic-jumps{margin:28px 0 40px;padding:20px 23px;background:#faf9f6;border:1px solid #e4ded1}.clinic-jumps>p{font-size:14px;font-weight:700;margin-bottom:12px}.clinic-jumps>div{display:grid;grid-template-columns:1fr 1fr;gap:6px 23px}.clinic-jumps a{display:flex;align-items:center;gap:10px;border-bottom:1px solid #e7e1d5;padding:9px 0;font-size:12px;line-height:1.7}.clinic-jumps a>span{font-family:Arial,sans-serif;color:#9b7b33;font-size:12px;font-weight:700}.clinic-jumps a>b{margin-left:auto;color:#927940;font-size:18px}.clinic-jumps a:hover{color:#b04229}.article-heading{font-size:23px;line-height:1.65;padding:17px 20px;background:#f8efd5;border-left:5px solid #c6a253;margin:47px 0 23px}.comparison-section>p:not([class]),.clinics-section>p:not([class]),.basics-section>p:not([class]){margin:18px 0;font-size:15px}.table-scroll-hint{font-size:11px;color:#7c7569;text-align:right;margin:16px 0 6px}.table-scroll{overflow-x:auto;position:relative;border:1px solid #dbd3c4;scrollbar-width:thin;scrollbar-color:#b9a578 #f0ece2}.table-scroll table{width:100%;min-width:1040px;border-collapse:separate;border-spacing:0;text-align:left;font-size:12px;line-height:1.75}.table-scroll th,.table-scroll td{padding:16px 14px;border-right:1px solid #e4ded2;border-bottom:1px solid #e4ded2;vertical-align:middle;background:#fff}.table-scroll thead th{background:#f4ebd7;color:#746039;font-size:12px;white-space:nowrap}.table-scroll tbody th{width:205px;font-size:13px;background:#fffcf4}.table-scroll tr:last-child>th,.table-scroll tr:last-child>td{border-bottom:0}.table-scroll tr>th:last-child,.table-scroll tr>td:last-child{border-right:0}.table-scroll th:first-child{position:sticky;left:0;z-index:1;box-shadow:2px 0 3px #3a2b1610}.table-scroll thead th:first-child{z-index:2}.table-scroll td>strong{font-size:24px;line-height:1.5;font-family:Arial,sans-serif;font-weight:600;color:#805929}.table-scroll td>strong small{font-size:12px;font-family:var(--font);margin-left:3px;font-weight:600}.table-scroll td>span{display:block;color:#797267;font-size:11px;margin-top:4px}.table-index{display:block;color:#ab8534;font-family:Arial,sans-serif;font-size:11px;margin-bottom:3px}.table-scroll tbody th a{display:block;text-decoration:underline;text-decoration-color:#c1ae87;text-underline-offset:4px}.table-scroll .booking-button{font-size:11px;min-width:128px;min-height:44px;padding:11px 12px;border-bottom-width:2px;gap:10px}.comparison-section>.small-note{margin-top:14px}.clinics-section>.small-note{margin:17px 0 34px}
.recommendation{border-top:3px solid transparent;border-image:linear-gradient(90deg,#b5872b,#f6df8f,#b5872b) 1;margin-top:40px;padding-top:27px;scroll-margin-top:20px}.clinic-heading{display:flex;align-items:center;gap:24px}.gold-badge{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:86px;height:100px;flex:0 0 86px;border:1px solid #cda344;border-radius:45px;background:linear-gradient(135deg,#fff5cc 0%,#fffdf2 25%,#f7dd91 54%,#fff8dc 79%,#ecd08b 100%);box-shadow:inset 0 0 0 4px #ffffffa8,inset 0 0 0 5px #d6b96c55,0 3px 8px #9c722014;color:#987125;line-height:1}.gold-badge:after{content:"✦";position:absolute;right:-8px;top:4px;font-size:19px;color:#c99d3f;text-shadow:0 1px 0 #fff}.gold-badge svg{width:43px;height:30px;margin-top:5px}.gold-badge>strong{font-family:Georgia,serif;font-size:30px;font-weight:400;line-height:1.08;margin:2px 0}.gold-badge small{font-size:8px;letter-spacing:.12em;margin-bottom:6px}.clinic-heading>div:last-child{flex:1;min-width:0}.clinic-heading>div:last-child>p{font-size:12px;color:#99804d;line-height:1.5;margin-bottom:7px;letter-spacing:.1em}.clinic-heading h2{font-size:25px;line-height:1.55;letter-spacing:.015em;margin:0}.clinic-lead{font-size:17px;font-weight:700;line-height:1.95;margin:24px 0 18px}.clinic-logo{min-height:114px;display:flex;align-items:center;justify-content:center;border:1px solid #eee5d3;background:#fffdf8;margin:20px 0 23px;padding:23px;border-radius:3px}.clinic-logo img{max-height:75px;max-width:270px;object-fit:contain}.recommend-points{border:1px solid #d7b360;border-radius:3px;padding:0 22px 18px;margin:24px 0}.recommend-points h3{font-size:15px;color:#745419;margin:0 -22px 15px;padding:11px 18px;background:linear-gradient(90deg,#f2d899,#fff0c7,#edce84);border-radius:2px 2px 0 0;line-height:1.85}.recommend-points ul{list-style:none;padding:0;margin:0}.recommend-points li{position:relative;padding-left:27px;font-size:14px;line-height:1.95;margin:7px 0;font-weight:600}.recommend-points li:before{content:"✓";position:absolute;left:0;top:0;color:#b88922;font-size:18px;font-weight:700}.doctor-summary{margin:27px 0}.doctor-summary>h3,.clinic-price>h3{font-size:17px;border-bottom:2px solid #d3b46b;padding-bottom:8px;margin-bottom:15px}.doctor-summary>p{font-size:14px;line-height:1.95;margin:8px 0}.doctor-summary>p>strong{font-size:16px}.more-evidence{border:1px solid #e4decf;background:#fbfaf7;margin-top:17px;border-radius:3px}.more-evidence summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 17px;font-size:12px;font-weight:700;color:#7a6640;cursor:pointer;line-height:1.8}.more-evidence summary::-webkit-details-marker{display:none}.more-evidence summary>span{font-size:16px;font-weight:400}.more-evidence[open] summary{border-bottom:1px solid #e4decf}.more-evidence .clinic-doctor{padding:5px 18px 18px}.clinic-doctor p{font-size:12px;line-height:1.95;margin-top:12px}.clinic-doctor p>span{display:block;font-size:11px;color:#777064}.clinic-doctor p.source-inline{font-size:11px}.evidence-photo{margin-top:18px;max-width:460px;margin-inline:auto}.evidence-photo img{display:block;width:100%;height:auto}.evidence-photo figcaption{font-size:10px;color:#7f7667;line-height:1.9;margin-top:8px}.evidence-photo a{text-decoration:underline;text-underline-offset:3px}.reader-record{margin:27px 0;padding:23px 25px;background:#faf9f5;border:1px solid #ddd8cd;border-radius:3px;position:relative}.reader-record:before{content:"";position:absolute;width:65px;height:7px;top:-4px;left:24px;background:#e8d49b80;transform:rotate(-3deg)}.record-tag{font-size:11px;color:#9a7940;font-weight:700;letter-spacing:.04em;line-height:1.8;margin-bottom:8px}.reader-record h4{font-size:17px;line-height:1.8;margin:0 0 12px}.reader-record>p:not([class]){font-size:14px;line-height:2}.record-credit{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-top:1px dashed #d8d0c1;margin-top:17px;padding-top:12px;flex-wrap:wrap;row-gap:4px;font-size:11px;color:#756c5b}.record-credit strong{font-size:12px;font-weight:600}.record-credit time{font-size:10px}.record-disclosure{font-size:11px;line-height:1.85;color:#827868;margin-top:8px}.reader-record>a{display:inline-block;font-size:13px;color:#9b492f;text-decoration:underline;text-underline-offset:4px;margin-top:13px;font-weight:700}.clinic-price{margin:27px 0}.price-line{display:flex;align-items:baseline;gap:14px;background:#fffbf0;padding:14px 17px;margin:15px 0 11px;flex-wrap:wrap;row-gap:2px}.price-line>span{font-size:12px}.price-line>p{font-size:16px;line-height:1.3;color:#a4432b;white-space:nowrap}.price-line>p>b{font-size:33px;font-family:Arial,sans-serif;letter-spacing:-.03em;margin-right:4px}.price-line small{margin-left:auto;font-size:10px;color:#7f7360}.price-note{font-size:12px;line-height:1.95;color:#736a5c;margin:11px 0}.clinic-price dl{margin:17px 0}.clinic-price dl>div{display:flex;gap:14px;align-items:baseline;border-bottom:1px solid #e7e2d8;padding:12px 0;font-size:13px;line-height:1.9}.clinic-price dt{flex:0 0 91px;color:#8c7b58}.clinic-price dd{margin:0;flex:1}.source-inline{font-size:11px;line-height:1.95;color:#837a6c;margin-top:12px}.source-inline a{text-decoration:underline;text-underline-offset:3px}.source-inline a:hover{color:#9f402c}.clinic-action{text-align:center;margin:27px 0 37px}.clinic-action>p{font-size:12px;color:#887246;font-weight:600;margin-bottom:12px;line-height:1.9}.booking-button{display:flex;align-items:center;justify-content:center;gap:20px;background:linear-gradient(#c65238,#b7462c);color:#fff;border:1px solid #a74028;border-bottom:4px solid #90341e;border-radius:6px;min-height:62px;line-height:1.7;font-size:16px;font-weight:700;padding:16px 27px;box-shadow:0 3px 7px #a0412017;transition:background .15s}.booking-button:hover{background:#a8412a}.booking-button>span{font-family:Arial,sans-serif;font-size:27px;font-weight:400;line-height:1;flex-shrink:0}.clinic-action .booking-button{max-width:610px;margin:auto}.clinic-action>small{display:block;color:#8b8171;font-size:10px;line-height:1.8;margin-top:10px}.basics-section{margin-top:40px}.basics-panel{border:1px solid #dfdacc;background:#faf9f5;padding:20px 23px;margin:24px 0}.basics-panel h3{font-size:17px;margin-bottom:13px}.basics-panel ul{padding-left:20px;margin:10px 0 13px}.basics-panel li{font-size:14px;line-height:2;margin:4px 0}.basics-panel>p:not(.small-note){font-size:13px;line-height:1.9}.risk-panel{border-color:#d9c8b3;background:#fcf7ee}.faq-list{border-top:1px solid #e2dccf}.faq-list details{border-bottom:1px solid #e2dccf}.faq-list summary{list-style:none;display:flex;align-items:center;gap:13px;font-size:14px;font-weight:600;line-height:1.9;padding:19px 0;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span:first-child{color:#ad843a;font-size:14px;font-weight:700}.faq-list summary i{width:12px;height:12px;position:relative;margin-left:auto;flex-shrink:0}.faq-list summary i:before,.faq-list summary i:after{content:"";position:absolute;background:#8e7e60;left:0;top:5px;width:12px;height:1px}.faq-list summary i:after{transform:rotate(90deg)}.faq-list details[open] summary i:after{transform:none}.faq-answer{font-size:13px;line-height:2;padding:0 8px 23px 27px;color:#716958}.faq-answer a{display:block;font-size:11px;text-decoration:underline;text-underline-offset:3px;margin-top:9px}.closing-section{margin:42px 0 0;padding:27px 0 40px;border-top:3px double #d9c8a3;text-align:center}.closing-section h2{font-size:20px;line-height:1.8}.closing-section>p{font-size:14px;line-height:2;margin:19px 0 23px}.compare-again{display:flex;align-items:center;justify-content:center;gap:30px;background:#f3e2b2;border:1px solid #cead59;border-bottom:3px solid #b58c31;color:#70531b;min-height:55px;border-radius:4px;font-size:14px;font-weight:700;max-width:480px;margin:auto;padding:12px 20px}.site-footer{max-width:840px;margin:auto;padding:24px 44px 30px;background:#eeece7;color:#766e62}.site-footer details{border-bottom:1px solid #dcd5c7}.site-footer summary{list-style:none;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;padding:15px 0;cursor:pointer;gap:20px}.site-footer summary::-webkit-details-marker{display:none}.site-footer details>div{font-size:11px;line-height:2;padding:0 0 18px}.site-footer details>div p{margin:10px 0}.site-footer details a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.source-list{list-style:none;padding:0;margin:10px 0}.source-list li{margin:8px 0}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;padding-top:23px}.mobile-sticky{display:none}
@media(max-width:840px){body{background:white}.site-header{padding-inline:27px}.article-main{padding-inline:27px}.site-footer{padding-inline:27px}.article-main>h1{font-size:24px}.clinic-heading h2{font-size:24px}}
@media(max-width:600px){html{scroll-padding-top:12px}body{font-size:14px}.site-header{padding:14px 18px;gap:15px}.brand{font-size:21px}.brand>span{font-size:7px}.site-header>a:last-child{font-size:11px}.article-main{padding:21px 18px 0}.article-meta{font-size:9px;margin-bottom:15px}.ad-label{font-size:9px}.article-main>h1{font-size:20px;line-height:1.7;margin-bottom:18px;letter-spacing:0}.main-visual{margin-inline:-6px;margin-bottom:25px}.main-visual figcaption{font-size:9px;line-height:1.8;margin:7px 4px 0}.article-intro p{font-size:14px;line-height:2;margin-top:19px}.article-intro p:first-child{font-size:16px;line-height:1.8}.article-check{padding:18px 18px 14px;margin:25px 0 16px}.article-check>p{font-size:14px;margin-bottom:11px}.article-check li{font-size:13px;padding-left:24px;line-height:1.9;margin:7px 0}.editorial-note,.small-note{font-size:11px;line-height:1.9}.clinic-jumps{margin:24px 0 33px;padding:17px 18px}.clinic-jumps>p{font-size:13px;margin-bottom:11px}.clinic-jumps>div{grid-template-columns:1fr;gap:0}.clinic-jumps a{font-size:12px;padding:10px 0;gap:13px}.clinic-jumps a>span{font-size:12px}.clinic-jumps a>b{font-size:19px}.article-heading{font-size:19px;line-height:1.75;padding:14px 16px;border-left-width:4px;margin:38px 0 20px}.comparison-section>p:not([class]),.clinics-section>p:not([class]),.basics-section>p:not([class]){font-size:14px;line-height:2;margin:16px 0}.table-scroll-hint{font-size:10px;margin-top:15px}.table-scroll{margin-right:-18px}.table-scroll table{min-width:955px;font-size:11px}.table-scroll th,.table-scroll td{padding:13px 12px}.table-scroll thead th{font-size:11px}.table-scroll tbody th{min-width:151px;max-width:151px;width:151px;font-size:12px}.table-scroll td>strong{font-size:23px}.table-scroll td>span{font-size:10px}.table-index{font-size:10px}.table-scroll .booking-button{font-size:11px}.comparison-section>.small-note{font-size:11px;line-height:1.9;margin-top:13px}.clinics-section>.small-note{font-size:11px;margin-bottom:28px}.recommendation{margin-top:34px;padding-top:21px;scroll-margin-top:12px}.clinic-heading{gap:15px;align-items:center}.gold-badge{width:67px;height:84px;flex-basis:67px}.gold-badge:after{font-size:15px;right:-6px;top:2px}.gold-badge svg{width:34px;height:24px;margin-top:4px}.gold-badge>strong{font-size:25px;margin:2px 0}.gold-badge small{font-size:7px;margin-bottom:5px}.clinic-heading>div:last-child>p{font-size:10px;margin-bottom:6px}.clinic-heading h2{font-size:20px;line-height:1.65;letter-spacing:0}.clinic-lead{font-size:15px;line-height:2;margin:20px 0 16px}.clinic-logo{min-height:100px;padding:22px;margin:19px 0}.clinic-logo img{max-width:235px;max-height:63px}.recommend-points{padding:0 17px 14px;margin:21px 0}.recommend-points h3{font-size:13px;line-height:1.85;margin:0 -17px 13px;padding:10px 14px}.recommend-points li{font-size:13px;line-height:1.95;padding-left:23px;margin:8px 0}.recommend-points li:before{font-size:16px}.doctor-summary{margin:24px 0}.doctor-summary>h3,.clinic-price>h3{font-size:16px;padding-bottom:8px;margin-bottom:13px}.doctor-summary>p{font-size:13px;line-height:2;margin:7px 0}.doctor-summary>p>strong{font-size:15px}.more-evidence{margin-top:16px}.more-evidence summary{font-size:11px;padding:12px 14px;gap:8px}.more-evidence .clinic-doctor{padding:3px 14px 15px}.clinic-doctor p{font-size:12px;line-height:2;margin-top:12px}.clinic-doctor p.source-inline{font-size:10px}.evidence-photo figcaption{font-size:10px}.reader-record{padding:20px 18px;margin:24px 0}.reader-record:before{left:18px;width:55px}.record-tag{font-size:10px;margin-bottom:8px}.reader-record h4{font-size:15px;line-height:1.9;margin-bottom:11px}.reader-record>p:not([class]){font-size:13px;line-height:2}.record-credit{display:block;padding-top:11px;margin-top:15px}.record-credit>strong{font-size:11px;display:block;line-height:1.9}.record-credit>time{font-size:10px;display:block;margin-top:3px}.record-disclosure{font-size:10px;line-height:1.9;margin-top:7px}.reader-record>a{font-size:12px;margin-top:12px}.clinic-price{margin:24px 0}.price-line{padding:13px 14px;gap:8px 12px;align-items:baseline}.price-line>span{font-size:10px}.price-line>p{font-size:14px}.price-line>p>b{font-size:31px}.price-line small{font-size:9px;flex-basis:100%;text-align:right;margin-top:0;line-height:1.7}.price-note{font-size:11px;line-height:2}.clinic-price dl>div{font-size:12px;gap:12px;padding:11px 0;line-height:1.9}.clinic-price dt{flex-basis:74px;font-size:11px}.source-inline{font-size:10px;line-height:2}.clinic-action{margin:24px 0 31px}.clinic-action>p{font-size:10px;font-weight:500;line-height:1.9;margin-bottom:10px}.booking-button{font-size:13px;padding:15px 15px;gap:12px;min-height:59px;line-height:1.85;justify-content:space-between}.booking-button>span{font-size:24px}.clinic-action>small{font-size:9px;margin-top:9px}.basics-section{margin-top:34px}.basics-panel{padding:18px 18px;margin:21px 0}.basics-panel h3{font-size:15px;margin-bottom:12px}.basics-panel ul{padding-left:17px}.basics-panel li{font-size:13px;line-height:1.9;margin:8px 0}.basics-panel>p:not(.small-note){font-size:12px;line-height:2}.faq-list summary{font-size:13px;line-height:1.95;gap:10px;padding:18px 0}.faq-answer{font-size:12px;padding:0 5px 20px 24px;line-height:2}.faq-answer a{font-size:10px}.closing-section{margin-top:33px;padding:23px 0 32px}.closing-section h2{font-size:17px;line-height:1.9}.closing-section>p{font-size:13px;line-height:2;margin:16px 0 20px}.closing-section>p br{display:none}.compare-again{font-size:13px;min-height:53px;padding:12px 17px}.site-footer{padding:21px 18px 100px}.site-footer summary{font-size:11px;line-height:1.9;padding:15px 0}.site-footer details>div{font-size:11px}.footer-bottom{font-size:9px;gap:12px}.mobile-sticky{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;background:#fffefa;border-top:1px solid #dfc98f;padding:8px 12px calc(8px + env(safe-area-inset-bottom));gap:8px;box-shadow:0 -2px 10px #6c502014}.mobile-sticky>a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 13px;min-height:47px;font-size:11px;border:1px solid #d5b361;background:#fffdf5;border-radius:4px;line-height:1.7;font-weight:600;color:#7f6328;flex:1}.mobile-sticky>a:last-child{background:#ead092;border-color:#c6a65a;color:#665020}.mobile-sticky>a>span{font-size:16px;font-weight:400}}
@media(max-width:370px){.article-main,.site-footer{padding-inline:16px}.site-header{padding-inline:16px}.article-main>h1{font-size:18px}.article-meta{font-size:8px}.clinic-heading{gap:13px}.clinic-heading h2{font-size:18px}.gold-badge{flex-basis:60px;width:60px;height:77px}.gold-badge svg{width:31px;height:21px}.gold-badge>strong{font-size:23px}.clinic-lead{font-size:14px}.reader-record{padding-inline:16px}.clinic-logo img{max-width:220px}.clinic-action>p{font-size:9px}.booking-button{font-size:12px;padding-inline:14px}.clinic-price dt{flex-basis:68px}.table-scroll{margin-right:-16px}.table-scroll tbody th{width:139px;min-width:139px;max-width:139px}.mobile-sticky>a{font-size:10px;padding-inline:10px}.article-check li{font-size:12px}.clinic-price dl>div{font-size:11px}.recommend-points li{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{body{background:#fff;font-size:11px}.site-header,.mobile-sticky,.booking-button,.skip-link{display:none}.article-main,.site-footer{max-width:none;padding-inline:0}.main-visual{max-width:600px}.article-heading{break-after:avoid}.recommendation{break-before:page}.table-scroll{overflow:visible}table{min-width:0!important}.table-scroll th,.table-scroll td{padding:7px}.table-scroll th:first-child{position:static}.reader-record,.clinic-price,.recommend-points{break-inside:avoid}.site-footer{padding-bottom:0}.more-evidence .clinic-doctor,.faq-answer{display:block}}
.footer-bottom nav{display:flex;align-items:center;justify-content:flex-end;gap:18px}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}@media(max-width:600px){.footer-bottom nav{gap:12px;flex-wrap:wrap}}
.mobile-break{display:none}@media(max-width:600px){.mobile-break{display:block}}
html{scroll-behavior:auto}

/* 第4稿：公式の院内・受賞写真を本文で提示する。写真自体には装飾加工をしない。 */
.article-main{padding-top:15px}.article-meta{margin-bottom:12px}.article-main>h1.sr-only{margin:0;padding:0;width:1px;height:1px}.main-visual{margin-bottom:24px}.official-gallery{margin:24px 0}.photo-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px;flex-wrap:wrap}.photo-heading h3{font-size:15px;line-height:1.8}.photo-heading>span{font-size:10px;color:#806b3c;border:1px solid #dcccaa;padding:1px 8px;background:#fffcf3;white-space:nowrap}.interior-grid,.award-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.official-photo{min-width:0}.photo-open{display:block;position:relative;background:#f4f2ec;overflow:hidden;border:1px solid #e4dfd4;cursor:zoom-in}.photo-open img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.photo-open>span{position:absolute;bottom:7px;right:7px;background:#fffef8ed;color:#594a30;padding:3px 9px;border:1px solid #d9cfbb;border-radius:2px;font-size:10px;line-height:1.8}.photo-open:hover>span{background:#fff0c7}.official-photo figcaption{font-size:11px;line-height:1.85;color:#726b60;margin-top:8px;overflow-wrap:anywhere}.official-photo figcaption a{display:inline-block;font-size:10px;text-decoration:underline;text-underline-offset:3px;color:#887044;margin-top:3px}.award-record{padding:21px 23px 23px;margin:27px 0;border:1px solid #d2b462;background:linear-gradient(135deg,#fffdf6,#fff9e8)}.award-label{font-size:11px;font-weight:700;color:#947029;letter-spacing:.12em;margin-bottom:5px}.award-record h3{font-size:18px;line-height:1.8;margin-bottom:17px;color:#6f531e}.award-grid{gap:14px;margin-bottom:18px}.award-grid .photo-open img{aspect-ratio:4/3;object-fit:contain}.award-record>p:not([class]){font-size:13px;line-height:2;margin-top:14px}.award-record .award-note{font-size:10px;line-height:1.9;color:#7d715b;margin-top:12px;overflow-wrap:anywhere}.single-award{display:block}.single-award .official-photo{max-width:330px;margin:auto}.single-award .photo-open{background:#181619}.single-award .photo-open img{aspect-ratio:auto;max-height:430px;object-fit:contain}.single-award .photo-open>span{bottom:9px;right:9px}.photo-dialog{width:min(1100px,calc(100vw - 32px));max-height:94vh;border:0;padding:18px 22px 20px;background:#fffdf7;color:var(--ink);border-radius:4px;box-shadow:0 15px 70px #0006;overflow:auto}.photo-dialog::backdrop{background:#15120ece}.photo-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}.photo-dialog-bar>p{font-size:12px;color:#7b6639}.photo-close{font:inherit;font-size:12px;line-height:1.5;border:1px solid #cfbd92;background:#fff9e8;color:#624f2b;min-height:44px;padding:9px 16px;border-radius:3px;cursor:pointer}.photo-close:focus-visible{outline:3px solid #a57e29;outline-offset:3px}.photo-dialog>img{display:block;width:100%;max-height:calc(88vh - 130px);height:auto;object-fit:contain;margin:auto}.photo-dialog-caption{font-size:12px;line-height:1.9;margin-top:12px}.risk-panel{background:#faf9f5;border-color:#dfdacc}
@media(max-width:600px){.article-main{padding-top:12px}.article-meta{margin-bottom:10px}.main-visual{margin-inline:-18px}.main-visual>img{border-inline:0}.main-visual figcaption{margin-inline:18px}.article-intro p:first-child{font-size:16px}.official-gallery{margin:21px 0}.photo-heading{gap:7px;margin-bottom:11px}.photo-heading h3{font-size:13px}.photo-heading>span{font-size:9px;padding-inline:6px}.interior-grid{grid-template-columns:1fr;gap:17px}.photo-open img{aspect-ratio:auto;max-height:250px;object-fit:contain}.official-photo figcaption{font-size:10px;margin-top:6px}.official-photo figcaption a{font-size:9px}.photo-open>span{font-size:9px;padding:3px 8px}.award-record{padding:18px 17px;margin:24px 0}.award-label{font-size:10px}.award-record h3{font-size:15px;line-height:1.9;margin-bottom:14px}.award-grid{grid-template-columns:1fr;gap:17px}.award-grid .photo-open img{aspect-ratio:auto;max-height:260px}.award-record>p:not([class]){font-size:12px;line-height:2}.award-record .award-note{font-size:10px}.single-award .official-photo{max-width:280px}.single-award .photo-open img{max-height:370px}.photo-dialog{padding:12px 12px 16px;width:calc(100vw - 18px);max-height:95vh}.photo-dialog-caption{font-size:11px}.photo-dialog-bar{margin-bottom:10px}.photo-close{font-size:11px;padding-inline:13px}}
@media(max-width:370px){.main-visual{margin-inline:-16px}.main-visual figcaption{margin-inline:16px}.photo-heading h3{font-size:12px}.photo-heading{gap:6px}.photo-heading>span{font-size:8px}.award-record{padding-inline:14px}}
@media print{.photo-open>span,.photo-dialog{display:none}.official-gallery,.award-record{break-inside:avoid}.interior-grid{grid-template-columns:1fr 1fr}}

/* 第5稿：所在地マップ、縦項目の比較表、短い費用サマリー。 */

.location-section{margin-top:28px}.location-section>p:not([class]){font-size:14px;line-height:1.9;margin:16px 0 20px}.tokyo-map{position:relative;width:100%;overflow:hidden;border:1px solid #d9dfd9;border-radius:5px;background:#eef2e9}.tokyo-map>svg{width:100%;height:100%;display:block}.map-direction{position:absolute;right:12px;top:12px;font-size:11px;background:#fffefaeb;padding:4px 9px;border:1px solid #d3d8ca;color:#495a54;border-radius:3px}.map-pin{position:absolute;transform:translate(-50%,-50%);width:36px;height:36px;display:flex;align-items:center;justify-content:center;z-index:2}.map-pin>span{display:grid;place-items:center;min-width:30px;height:30px;border:2px solid #fff;border-radius:50%;color:white;background:#325c76;box-shadow:0 2px 6px #22374440;font:700 14px Arial,sans-serif}.map-pin b{position:absolute;left:34px;white-space:nowrap;display:block;background:#fffffff0;border:1px solid #d3dce0;color:#2a4759;box-shadow:0 1px 3px #21394714;border-radius:3px;font-size:10px;line-height:1.6;padding:4px 6px}.map-pin:hover>span,.map-pin:focus-visible>span{background:#b9472c}.pin-senshinkai>span{background:#9a782a}.pin-senshinkai b{left:auto;right:34px}.pin-eyecare b,.pin-shinagawa b{left:auto;right:34px}.map-credit{font-size:10px;color:#7b8177;line-height:1.85;margin:8px 0}.map-credit a{text-decoration:underline;text-underline-offset:3px}.map-legend{display:grid;grid-template-columns:1fr 1fr;gap:5px 20px;list-style:none;margin:17px 0;padding:0}.map-legend li>a{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #e8e5db}.map-legend li>a>span{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:50%;background:#eff3f5;color:#3c6075;font:700 12px Arial}.map-legend li:first-child>a>span{background:#f7e9c4;color:#90702b}.map-legend strong{font-size:12px;line-height:1.65;display:block}.map-legend small{font-size:10px;color:#797b70;line-height:1.7;display:block;margin-top:2px}.map-legend b{margin-left:auto;color:#a59471}.map-addresses{font-size:11px;margin:15px 0 34px;border-bottom:1px solid #e5e0d4}.map-addresses summary{cursor:pointer;padding:11px 0;list-style:none;color:#84734e;display:flex;justify-content:space-between}.map-addresses summary::-webkit-details-marker{display:none}.map-addresses ul{list-style:none;margin:10px 0 20px;padding:0}.map-addresses li{margin:12px 0}.map-addresses strong,.map-addresses span{display:block}.map-addresses a{text-decoration:underline;color:#927445;font-size:10px}
.rating-notice{font-size:11px;line-height:1.85;color:#776f62;margin:15px 0 13px}.rating-notice strong{color:#826827}.comparison-toolbar{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#747969;line-height:1.7;margin:18px 0 8px}.comparison-toolbar>span:last-child{white-space:nowrap;color:#617b8c}.clinic-matrix-scroll{overflow-x:auto;position:relative;border:1px solid #d0dfe7;border-radius:7px;scrollbar-width:thin;scrollbar-color:#819daa #edf4f8}.clinic-matrix{table-layout:fixed;border-collapse:separate;border-spacing:0;width:1460px;text-align:center;font-size:12px;line-height:1.8}.metric-col{width:109px}.data-col{width:193px}.clinic-matrix th,.clinic-matrix td{padding:15px 13px;border-bottom:1px solid #dce8ef;border-right:1px solid #dce8ef;vertical-align:middle;background:white}.clinic-matrix tr>*:last-child{border-right:0}.clinic-matrix tbody tr:last-child>*{border-bottom:0}.clinic-matrix .first-choice{background:#eef8ff}.clinic-matrix tbody th,.clinic-matrix .matrix-corner{position:sticky;left:0;z-index:3;width:109px;background:#f0f6fa;color:#304c61;font-size:11px;font-weight:700;box-shadow:2px 0 3px #213b4d0a}.clinic-matrix thead .matrix-corner{background:#1d3e56;color:#fff}.clinic-matrix thead th{background:#214760;color:#fff;padding:12px 13px 16px;vertical-align:top}.clinic-matrix thead th.first-choice{background:#1674b2}.table-rank{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10px;font-weight:400;line-height:1.6;margin:0 0 9px}.table-rank svg{width:28px;height:23px}.table-clinic-name{display:flex;align-items:center;justify-content:center;font-size:13px;min-height:48px;line-height:1.8;font-weight:700;margin-bottom:12px}.table-booking.booking-button{min-width:0;min-height:42px;padding:9px 11px;border-bottom-width:3px;font-size:12px;gap:7px;border-radius:4px}.table-booking.booking-button>span{font-size:20px}.editor-stars{display:block;color:#c59929;font-size:21px;letter-spacing:1px;white-space:nowrap;line-height:1.45}.clinic-matrix small{display:block;font-size:10px;line-height:1.8;color:#536c7d;margin-top:4px;overflow-wrap:anywhere}.clinic-matrix .stars-row small{font-size:9px;color:#927e51}.table-photo{display:block;color:#1473a4;font-size:10px}.table-photo img{width:100%;height:101px;object-fit:cover;border:1px solid #dce6eb;margin-bottom:6px}.table-photo span{display:block;text-decoration:underline;text-underline-offset:3px}.compare-symbol{display:block;font-size:34px;line-height:1.2;font-weight:500;margin:0 0 7px;font-family:Arial,"Yu Gothic",sans-serif}.symbol-double{color:#249fc9}.symbol-circle{color:#2c9b69}.symbol-triangle{color:#b79b56}.symbol-unknown{color:#9aa5ab}.table-price{display:block;font:700 22px Arial;color:#203f53;line-height:1.5;white-space:nowrap}.table-price>span{font-size:11px;margin-left:2px;font-family:var(--font)}.cell-main{font-size:12px;font-weight:600;line-height:1.9;color:#304e62}.notable{color:#a65137}.recommend-reader{font-size:11px;color:#2e5065;line-height:1.9;background:linear-gradient(transparent 68%,#fff1b7 68%)}.comparison-footnote{padding:14px 0 2px;font-size:10px;color:#777368;line-height:1.9}.comparison-footnote p{margin:6px 0}
.compact-price-top{padding:18px 20px;background:#fffbef;border:1px solid #ece1c6;border-radius:3px;margin:15px 0 0}.compact-price-top>p:first-child{font-size:11px;color:#837454;line-height:1.8}.compact-price-top>div{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;line-height:1.5;margin:6px 0 8px;color:#a24730}.compact-price-top strong{font:700 36px Arial;letter-spacing:-.03em}.compact-price-top>div>span{font-size:16px}.compact-price-top small{font-size:10px;color:#857451;margin-left:6px}.cost-condition{font-size:12px;font-weight:600;line-height:1.85}.cost-condition>span{font-size:11px;font-weight:400;color:#7d725f}.compact-price .cost-facts{margin:10px 0 0}.compact-price .cost-facts>div{padding:13px 1px;gap:20px}.cost-facts dd>strong{font-size:13px;font-weight:600;color:#3e3a32;line-height:1.8}.cost-facts dd>small{display:block;font-size:10px;color:#807866;line-height:1.8;margin-top:3px}.cost-details{border:1px solid #e4dccd;background:#fbfaf7;border-radius:3px;margin-top:17px}.cost-details summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;padding:12px 16px;font-size:12px;font-weight:600;color:#7d6940}.cost-details summary::-webkit-details-marker{display:none}.cost-details[open] summary{border-bottom:1px solid #e4dccd}.cost-details>div{padding:5px 18px 17px;font-size:12px;line-height:1.95}.cost-details ul{margin:10px 0;padding-left:17px}.cost-details li{margin:10px 0}.point-evidence{border-top:1px solid #e3d4af;margin-top:14px;padding-top:5px}.point-evidence p{font-size:10px;line-height:1.85;font-weight:400;color:#7b7059;margin:8px 0}.point-evidence a{text-decoration:underline;text-underline-offset:2px}.recommend-points sup{font-size:9px;margin-left:3px}
@media(max-width:600px){.location-section>p:not([class]){font-size:13px;margin:14px 0 17px}.tokyo-map{margin-inline:-7px;width:calc(100% + 14px);border-radius:3px;min-height:270px}.tokyo-map>svg{position:absolute;inset:0;object-fit:cover}.map-pin{width:35px;height:35px}.map-pin>span{min-width:28px;height:28px;font-size:13px}.map-pin b{display:none}.map-direction{font-size:9px;padding:3px 6px;right:6px;top:6px}.map-credit{font-size:9px;margin-top:7px}.map-legend{grid-template-columns:1fr 1fr;gap:3px 12px;margin:15px 0}.map-legend li>a{gap:7px;align-items:flex-start;padding:9px 0}.map-legend li>a>span{flex-basis:21px;width:21px;height:21px;font-size:10px;margin-top:2px}.map-legend strong{font-size:10px;line-height:1.85}.map-legend small{font-size:8px;line-height:1.85}.map-legend b{display:none}.map-addresses{font-size:10px;margin-bottom:28px}.map-addresses summary{padding-block:9px}.rating-notice{font-size:10px;line-height:1.9}.comparison-toolbar{font-size:9px;gap:8px;align-items:center}.comparison-toolbar>span:first-child{max-width:170px}.clinic-matrix-scroll{margin-right:-18px;border-radius:5px 0 0 5px}.clinic-matrix{width:1206px;font-size:11px}.metric-col{width:86px}.data-col{width:160px}.clinic-matrix tbody th,.clinic-matrix .matrix-corner{width:86px;font-size:10px;padding:11px 8px}.clinic-matrix th,.clinic-matrix td{padding:12px 10px}.clinic-matrix thead th{padding:10px 10px 13px}.table-clinic-name{font-size:11px;min-height:43px;margin-bottom:10px}.table-rank{font-size:9px;margin-bottom:6px;gap:2px}.table-rank svg{width:26px;height:22px}.table-booking.booking-button{font-size:10px;min-height:40px;padding:8px 9px;justify-content:center}.table-booking.booking-button>span{font-size:17px}.editor-stars{font-size:19px;letter-spacing:.6px}.clinic-matrix small{font-size:9px;line-height:1.85}.clinic-matrix .stars-row small{font-size:8px}.table-photo{font-size:9px}.table-photo img{height:88px}.compare-symbol{font-size:31px}.table-price{font-size:21px}.table-price>span{font-size:10px}.cell-main{font-size:11px;line-height:1.9}.recommend-reader{font-size:10px;line-height:1.9}.comparison-footnote{font-size:9px;padding-top:11px;line-height:1.9}.compact-price-top{padding:15px 16px}.compact-price-top strong{font-size:33px}.compact-price-top>p:first-child{font-size:10px}.compact-price-top small{font-size:9px;margin-left:1px}.cost-condition{font-size:11px}.cost-condition>span{font-size:10px}.compact-price .cost-facts>div{gap:12px;padding-block:12px}.cost-facts dd>strong{font-size:12px}.cost-facts dd>small{font-size:9px}.cost-details summary{font-size:11px;padding:12px 14px}.cost-details>div{padding:3px 14px 14px;font-size:11px}.point-evidence p{font-size:9px;line-height:1.95}.point-evidence{margin-top:11px}}
@media(max-width:370px){.clinic-matrix-scroll{margin-right:-16px}.tokyo-map{min-height:250px}.map-legend{gap:3px 9px}.map-legend strong{font-size:9px}.map-legend li>a{gap:5px}.map-legend small{font-size:8px}.cost-facts dd>strong{font-size:11px}.compact-price .cost-facts>div{gap:11px}}
@media(max-width:600px){.tokyo-map{min-height:0}}
@media print{.clinic-matrix-scroll{overflow:visible}.clinic-matrix{width:100%;font-size:8px}.metric-col{width:10%}.data-col{width:auto}.clinic-matrix td,.clinic-matrix th{padding:5px!important;font-size:8px!important}.clinic-matrix tbody th{position:static}.editor-stars{font-size:11px}.table-photo img{height:70px}.map-pin b{display:none}.cost-details>div{display:block}}

/* 第6稿：記事と揃えたシャンパンゴールドの比較表。 */
.comparison-toolbar>span:last-child{color:#88713c}
.clinic-matrix-scroll{border-color:#ddcfad;scrollbar-color:#b8a579 #f6f1e5;background:#fffdf7}
.clinic-matrix th,.clinic-matrix td{border-color:#e8dfcb}
.clinic-matrix .first-choice{background:#fff9e9}
.clinic-matrix tbody th,.clinic-matrix .matrix-corner{background:#f5f0e5;color:#60533c;box-shadow:2px 0 3px #6d53200b}
.clinic-matrix thead th{background:#f1e6cc;color:#58462c;border-bottom-color:#cdb47b}
.clinic-matrix thead th.first-choice{background:#e8cf92;color:#514023}
.clinic-matrix thead .matrix-corner{background:#e7dcc2;color:#635131}
.clinic-matrix small{color:#7d715c}
.table-photo{color:#897036}
.table-photo img{border-color:#e4dac4}
.table-price,.cell-main,.recommend-reader{color:#57472f}
.cell-main.notable{color:#99651f}
.symbol-double{color:#a17a29}
.symbol-circle{color:#77845a}
.symbol-triangle{color:#99866a}
.symbol-unknown{color:#aaa193}
.table-evidence{display:block;font-size:9px;line-height:1.8;margin-top:6px;color:#88703d;text-decoration:underline;text-underline-offset:3px}
.cell-pending{font-size:11px;font-weight:500;color:#837968}
.research-note{margin-top:12px;border-top:1px solid #e4dac3;padding-top:12px}
.research-note>summary{cursor:pointer;color:#816b3e;font-size:11px;line-height:1.8}
.research-note>div{font-size:11px;line-height:1.9;padding:8px 0}
.research-note a{text-decoration:underline;text-underline-offset:3px;color:#806631}
.wide-award .official-photo{max-width:560px}
.clinic-matrix thead a:focus-visible{outline:3px solid #674c19;outline-offset:3px}
@media(max-width:600px){
  .clinic-matrix-scroll.matrix-sticky-enabled thead{position:relative;z-index:5;transform:translateY(var(--matrix-head-offset,0px))}
  .clinic-matrix thead th{padding:8px 10px 10px}
  .table-rank{flex-direction:row;justify-content:center;gap:5px;margin-bottom:5px;font-size:8px}
  .table-rank svg{width:21px;height:18px}
  .table-clinic-name{min-height:41px;margin-bottom:7px;line-height:1.7}
  .table-booking.booking-button{min-height:37px;padding:7px 8px}
  .table-evidence{font-size:9px}
  .cell-pending{font-size:10px}
  .research-note>summary,.research-note>div{font-size:10px}
}
@media print{.clinic-matrix-scroll.matrix-sticky-enabled thead{transform:none!important;position:static}}

/* A single clinic action replaces the two general shortcuts while reading. */
.mobile-sticky .clinic-context-link[hidden]{display:none}
@media(max-width:600px){
  .mobile-sticky.is-clinic-active>a:not(.clinic-context-link){display:none}
  .mobile-sticky.is-clinic-active>.clinic-context-link{display:flex;justify-content:center;position:relative;min-height:56px;padding:8px 37px;background:var(--cta);border:1px solid #aa4027;border-bottom:3px solid #8e321e;color:#fff;box-shadow:0 2px 3px #7c311b16}
  .mobile-sticky .context-words{display:block;text-align:center;min-width:0;font-size:13px;font-weight:700;line-height:1.65}
  .context-clinic-name{display:block;font-size:11px;font-weight:500;line-height:1.7;overflow-wrap:anywhere}
  .context-words strong{display:block;font-size:14px;line-height:1.55}
  .mobile-sticky .context-arrow{position:absolute;right:17px;top:50%;transform:translateY(-50%);font-size:26px;font-weight:400}
  .clinic-context-link:focus-visible{outline:3px solid #79571d;outline-offset:2px}
}

/* Map scores follow the comparison table's editorial recommendation scale. */
.map-rating-notice{margin:0 0 12px;color:#766d5b;font-size:10px;line-height:1.85}
.map-editor-stars{display:block;color:#a17b24;font-family:Arial,sans-serif;font-weight:700;font-style:normal;letter-spacing:1px;white-space:nowrap;line-height:1.35}
.map-pin b .map-editor-stars{margin-top:1px;font-size:11px}
.map-legend .map-editor-stars{margin:2px 0 1px;font-size:13px}
@media(max-width:600px){.map-rating-notice{margin-bottom:10px;font-size:9px;line-height:1.9}.map-legend .map-editor-stars{margin:1px 0;font-size:11px;letter-spacing:.7px}}
@media(max-width:370px){.map-legend .map-editor-stars{font-size:10px}}

/* V8: checklist and author profile share a quiet editorial frame. */
.article-check{position:relative;margin-top:38px;border:1px solid #cbb386;border-radius:0;background:#fff;padding:32px 24px 24px;scroll-margin-top:28px}
.article-check>p{position:absolute;top:0;left:22px;max-width:calc(100% - 44px);transform:translateY(-50%);margin:0;padding:7px 14px;background:#f3ecdd;border:1px solid #cbb386;color:#665232;font-size:15px;line-height:1.7;letter-spacing:.015em}
.article-check>ul>li{margin:0;padding:14px 0 14px 31px;border-bottom:1px dashed #dfd4c0;font-size:14px;line-height:1.9}
.article-check>ul>li:before{display:grid;place-items:center;left:0;top:17px;width:19px;height:19px;border-radius:50%;background:#ad755d;color:#fff;font-size:12px;line-height:1;font-weight:500}
.author-profile{display:grid;grid-template-columns:112px minmax(0,1fr);grid-template-areas:"heading heading" "portrait bio";column-gap:22px;row-gap:16px;margin-top:24px;break-inside:avoid}
.author-profile-heading{grid-area:heading;min-width:0}
.author-profile-kicker{margin:0 0 3px;color:#8b7551;font-size:10px;letter-spacing:.08em}
.author-profile-heading h2{margin:0;font-size:17px;line-height:1.8;font-weight:600;color:#584630}
.author-profile-pending{display:inline-block;margin-top:5px;padding:2px 8px;border:1px solid #d8ccba;color:#80705a;font-size:10px;line-height:1.8;background:#faf8f3}
.author-profile-portrait{grid-area:portrait;margin:0;min-width:0}
.author-profile-portrait img{display:block;width:112px;height:112px;aspect-ratio:1;object-fit:cover;border:1px solid #eadfca}
.author-profile-portrait figcaption{margin-top:6px;text-align:center;color:#898072;font-size:9px;line-height:1.6}
.author-profile-bio{grid-area:bio;min-width:0;align-self:center;font-size:13px;line-height:2;color:#655b4c}
.author-profile-bio p{margin:0}
.author-profile-bio p+p{margin-top:7px}
@media(max-width:600px){
  .article-check{margin-top:34px;padding:27px 16px 20px}
  .article-check>p{left:12px;max-width:calc(100% - 24px);padding:6px 10px;font-size:13px}
  .article-check>ul>li{padding:12px 0 12px 27px;font-size:12px;line-height:1.9}
  .article-check>ul>li:before{top:15px;width:17px;height:17px;font-size:11px}
  .author-profile{grid-template-columns:80px minmax(0,1fr);grid-template-areas:"portrait heading" "bio bio";column-gap:14px;row-gap:13px;margin-top:21px;align-items:center}
  .author-profile-heading h2{font-size:15px}
  .author-profile-kicker{font-size:9px;letter-spacing:.03em}
  .author-profile-pending{font-size:9px;margin-top:6px;padding-inline:6px}
  .author-profile-portrait img{width:80px;height:80px}
  .author-profile-portrait figcaption{font-size:8px;line-height:1.7;margin-top:4px}
  .author-profile-bio{font-size:12px;line-height:1.95}
}
@media(max-width:350px){.article-check>p{font-size:12px;padding-inline:7px}.author-profile{column-gap:11px}.author-profile-heading h2{font-size:14px}}

/* V11: consolidated references, disclosed only when expanded. */
#sources .source-group{margin:22px 0 0;padding-top:16px;border-top:1px solid #dcd5c7}
#sources .source-group h3{font-size:13px;line-height:1.9;color:#645236;margin:0 0 9px}
#sources .source-group h4{font-size:12px;line-height:1.9;margin:16px 0 7px;color:#645236}
#sources .source-list li{margin:9px 0;line-height:1.9}
#sources .source-list small{display:block;color:#847969;line-height:1.85}
#sources .source-note{font-size:11px;line-height:1.9}
@media(max-width:600px){#sources .source-group h3{font-size:12px}#sources .source-group h4{font-size:11px}#sources .source-list li{margin:11px 0}}
#sources .source-category{font-size:14px;line-height:1.9;color:#645236;margin:21px 0 10px}
#sources .source-group h4:first-child{margin-top:0}
#sources .source-disclosure{font-size:10px;color:#847969;line-height:1.85}

/* V12: the same finish is used in comparison crowns and clinic badges. */
.rank-gold{--rank-ink:#74521a;--rank-border:#b58b32;--rank-sparkle:#bb8a24;--rank-ring:#b9923d66;--rank-shadow:#8d621b24;--rank-surface:linear-gradient(135deg,#cda24b 0%,#f7e5b2 22%,#fffbed 39%,#e4c36b 53%,#f9e8b4 77%,#c4963c 100%)}
.rank-silver{--rank-ink:#4f6373;--rank-border:#94a4b1;--rank-sparkle:#8196a7;--rank-ring:#93a6b866;--rank-shadow:#506a8224;--rank-surface:linear-gradient(135deg,#aab8c4 0%,#e7eef4 23%,#ffffff 40%,#bfccd8 54%,#eef4f8 78%,#a3b2c0 100%)}
.rank-bronze{--rank-ink:#804d30;--rank-border:#b6815b;--rank-sparkle:#b2784d;--rank-ring:#bd8b6366;--rank-shadow:#89512f24;--rank-surface:linear-gradient(135deg,#bb865e 0%,#efcbaa 22%,#fff1e1 39%,#d39d74 53%,#f3d8bf 78%,#b97d53 100%)}
.rank-matte{--rank-ink:#746e61;--rank-border:#bbb5a8;--rank-sparkle:#8f897d;--rank-surface:#eeece5}
.gold-badge.rank-gold,.gold-badge.rank-silver,.gold-badge.rank-bronze{color:var(--rank-ink);border-color:var(--rank-border);background:var(--rank-surface);box-shadow:inset 0 0 0 4px #ffffffa8,inset 0 0 0 5px var(--rank-ring),0 3px 8px var(--rank-shadow)}
.gold-badge.rank-gold:after,.gold-badge.rank-silver:after,.gold-badge.rank-bronze:after{color:var(--rank-sparkle)}
.gold-badge.rank-matte{color:var(--rank-ink);border-color:var(--rank-border);background:var(--rank-surface);box-shadow:none}
.gold-badge.rank-matte:after{content:none}
.table-rank .rank-crown{overflow:visible}
.table-rank.rank-gold .rank-crown,.table-rank.rank-silver .rank-crown,.table-rank.rank-bronze .rank-crown{filter:drop-shadow(0 1px 0 #ffffff9e)}
.table-rank.rank-matte .rank-crown{filter:none}

/* V13: ICL guide and cost comparison. All rules use new section classes. */
.icl-explainer{margin:24px 0;background:#fff;border:1px solid #dfd3b7;border-radius:5px;overflow:hidden}
.icl-explainer .icl-procedure{width:100%;margin:0}
.icl-explainer .icl-procedure img{display:block;width:100%;height:auto;aspect-ratio:1320/743;object-fit:contain;background:#fffdf7}
.icl-explainer .icl-procedure figcaption{padding:10px 22px 0;color:#7b7261;font-size:11px;line-height:1.85}
.icl-explainer-copy{padding:18px 22px 22px;color:var(--ink,#35312c);font-size:14px;line-height:2}
.icl-explainer-copy p{margin:0}
.icl-explainer-copy p+p{margin-top:12px}
.icl-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}
.icl-info-card{min-width:0;padding:20px 22px;background:#fffdf7;border:1px solid #dfd3b7;border-radius:4px}
.icl-info-card h3{margin:0 0 13px;padding:0 0 11px;border-bottom:1px solid #e4d6b5;color:#705a2c;font-size:16px;line-height:1.8}
.icl-info-card ul{margin:0;padding:0 0 0 1.25em;list-style:disc}
.icl-info-card li{padding-left:3px;font-size:13px;line-height:1.95}
.icl-info-card li+li{margin-top:7px}
.icl-info-card li::marker{color:#ad8841}
.icl-cautions{background:#faf8f3;border-color:#ddd5c7}
.icl-cautions h3{color:#665744;border-bottom-color:#ded5c6}
.icl-cautions li::marker{color:#8e7b61}
.icl-aftercare{margin:20px 0 26px;padding:16px 20px;border-left:3px solid #b79858;background:#faf8f1;color:#5f5749;font-size:13px;line-height:2}
.icl-aftercare p{margin:0}
.icl-aftercare p+p{margin-top:9px}

.cost-comparison-section{--cost-contact:#a85337;--cost-icl:#9f7a24;margin-top:40px;color:var(--ink,#35312c)}
.cost-comparison-section h2.article-heading{margin-bottom:20px}
.cost-comparison-section .cost-intro{margin:0 0 22px;font-size:14px;line-height:2}
.cost-comparison-section .cost-simulator{min-width:0;padding:24px;background:#fff;border:1px solid #d9c8a2;border-radius:5px}
.cost-comparison-section .cost-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,210px);align-items:center;gap:9px 18px;padding:17px 18px;background:#fcf8ed;border:1px solid #e6dbc2;border-radius:4px}
.cost-comparison-section .cost-controls label{color:#6a552c;font-size:14px;font-weight:700;line-height:1.85}
.cost-comparison-section .cost-controls select{display:block;box-sizing:border-box;width:100%;min-width:0;min-height:48px;margin:0;padding:11px 34px 11px 13px;border:1px solid #bca66d;border-radius:4px;background-color:#fff;color:#4f4533;font-family:var(--font,sans-serif);font-size:16px;font-weight:600;line-height:1.5;cursor:pointer}
.cost-comparison-section .cost-controls select:focus-visible{outline:3px solid #986f20;outline-offset:3px}
.cost-comparison-section .cost-controls small{grid-column:1/-1;display:block;color:#786e5c;font-size:11px;line-height:1.85}
.cost-comparison-section .cost-chart-heading{margin:25px 0 11px;text-align:center;color:#5f4d2b;font-size:18px;font-weight:700;line-height:1.85}
.cost-comparison-section .cost-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:7px 22px;margin:0 0 13px;font-size:12px;line-height:1.7}
.cost-comparison-section .cost-legend .legend-contact,.cost-comparison-section .cost-legend .legend-icl{display:inline-flex;align-items:center;gap:8px;color:#605749}
.cost-comparison-section .cost-legend .legend-contact::before,.cost-comparison-section .cost-legend .legend-icl::before{content:"";display:block;flex:0 0 24px;width:24px;height:4px;border-radius:2px;background:var(--cost-contact)}
.cost-comparison-section .cost-legend .legend-icl::before{background:var(--cost-icl)}
.cost-comparison-section .cost-chart-wrap{width:100%;min-width:0;margin:0}
.cost-comparison-section .cost-chart{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:2/1;overflow:hidden;background:#fff}
.cost-comparison-section .cost-chart text{font-family:var(--font,sans-serif);font-size:14px}
.cost-comparison-section .cost-chart text.cost-axis-label,.cost-comparison-section .cost-chart text.axis-label{font-size:12px}
.cost-comparison-section .cost-chart-caption{margin:10px 0 0;color:#7a705f;font-size:11px;line-height:1.85}
.cost-comparison-section .cost-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}
.cost-comparison-section .cost-summary{min-width:0;padding:17px 18px;background:#fffaf3;border:1px solid #e4d6bf;border-top:3px solid var(--cost-contact);border-radius:4px}
.cost-comparison-section .cost-summary.icl-initial{background:#fdf9eb;border-color:#e2d5ae;border-top-color:var(--cost-icl)}
.cost-comparison-section .cost-summary>p{margin:0;color:#655a47;font-size:12px;line-height:1.85}
.cost-comparison-section .cost-summary>strong{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 5px;margin:7px 0 8px;color:var(--cost-contact);font-weight:700;line-height:1.25}
.cost-comparison-section .cost-summary.icl-initial>strong{color:#8c681c}
.cost-comparison-section .cost-summary>strong>span{font-family:Arial,sans-serif;font-size:36px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.cost-comparison-section .cost-summary>strong>small{font-size:13px;font-weight:600;line-height:1.6}
.cost-comparison-section .cost-summary .cost-formula{margin-top:7px;color:#71634f;font-size:12px;line-height:1.85;overflow-wrap:anywhere}
.cost-comparison-section .cost-summary .cost-mini-note{display:block;margin-top:5px;color:#827763;font-size:11px;line-height:1.8}
.cost-comparison-section .cost-method{margin-top:21px;padding:16px 18px;background:#f7f6f2;border-radius:3px;color:#716858;font-size:12px;line-height:1.95}
.cost-comparison-section .cost-method p{margin:0}
.cost-comparison-section .cost-method p+p{margin-top:8px}
.cost-comparison-section .cost-assumptions{margin-top:15px;border:1px solid #ded6c5;border-radius:4px;background:#fffdf9;font-size:12px;line-height:1.95}
.cost-comparison-section .cost-assumptions summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:46px;padding:12px 16px;list-style:none;color:#796238;font-weight:700;cursor:pointer}
.cost-comparison-section .cost-assumptions summary::-webkit-details-marker{display:none}
.cost-comparison-section .cost-assumptions summary::after{content:"＋";flex:0 0 auto;font-size:16px;font-weight:400;line-height:1}
.cost-comparison-section .cost-assumptions[open] summary{border-bottom:1px solid #e7dfd0}
.cost-comparison-section .cost-assumptions[open] summary::after{content:"−"}
.cost-comparison-section .cost-assumptions ul{margin:0;padding:13px 20px 17px 34px;color:#776b57;list-style:disc}
.cost-comparison-section .cost-assumptions li{padding-left:2px}
.cost-comparison-section .cost-assumptions li+li{margin-top:6px}
.cost-comparison-section .cost-return{display:flex;align-items:center;justify-content:center;gap:16px;width:100%;max-width:460px;min-height:52px;margin:23px auto 0;padding:12px 18px;border:1px solid #cbb06a;border-bottom:3px solid #b08c3f;border-radius:4px;background:#f4e5b9;color:#6f551f;font-size:14px;font-weight:700;line-height:1.8;text-align:center;text-decoration:none}
.cost-comparison-section .cost-return:hover{background:#efdcaa}

@media(max-width:600px){
  .icl-explainer{margin:21px 0;border-radius:4px}
  .icl-explainer .icl-procedure figcaption{padding:10px 16px 0;font-size:10px;line-height:1.9}
  .icl-explainer-copy{padding:15px 16px 18px;font-size:13px;line-height:2}
  .icl-explainer-copy p+p{margin-top:11px}
  .icl-info-grid{grid-template-columns:minmax(0,1fr);gap:14px;margin:21px 0}
  .icl-info-card{padding:16px}
  .icl-info-card h3{margin-bottom:11px;padding-bottom:10px;font-size:15px;line-height:1.85}
  .icl-info-card li{font-size:13px;line-height:1.95}
  .icl-aftercare{margin:18px 0 23px;padding:14px 16px;font-size:12px;line-height:2}
  .cost-comparison-section{margin-top:34px}
  .cost-comparison-section h2.article-heading{margin-bottom:17px}
  .cost-comparison-section .cost-intro{margin-bottom:19px;font-size:13px;line-height:2}
  .cost-comparison-section .cost-simulator{padding:16px;border-radius:4px}
  .cost-comparison-section .cost-controls{grid-template-columns:minmax(0,1fr);gap:8px;padding:14px}
  .cost-comparison-section .cost-controls label{font-size:13px}
  .cost-comparison-section .cost-controls select{min-height:48px;font-size:16px}
  .cost-comparison-section .cost-controls small{font-size:10px;line-height:1.9}
  .cost-comparison-section .cost-chart-heading{margin:22px 0 10px;font-size:15px;line-height:1.85}
  .cost-comparison-section .cost-legend{gap:5px 14px;margin-bottom:10px;font-size:11px;line-height:1.8}
  .cost-comparison-section .cost-legend .legend-contact,.cost-comparison-section .cost-legend .legend-icl{gap:6px}
  .cost-comparison-section .cost-legend .legend-contact::before,.cost-comparison-section .cost-legend .legend-icl::before{width:20px;flex-basis:20px;height:3px}
  /* SVG text scales with its 720-unit viewBox; enlarge the units on small screens. */
  .cost-comparison-section .cost-chart text{font-size:26px}
  .cost-comparison-section .cost-chart text.cost-axis-label,.cost-comparison-section .cost-chart text.axis-label{font-size:24px}
  .cost-comparison-section .cost-chart-caption{margin-top:10px;font-size:10px;line-height:1.9}
  .cost-comparison-section .cost-summary-grid{grid-template-columns:minmax(0,1fr);gap:13px;margin-top:19px}
  .cost-comparison-section .cost-summary{padding:15px 16px}
  .cost-comparison-section .cost-summary>p{font-size:12px}
  .cost-comparison-section .cost-summary>strong{margin:6px 0 7px}
  .cost-comparison-section .cost-summary>strong>span{font-size:34px}
  .cost-comparison-section .cost-summary .cost-formula{font-size:11px}
  .cost-comparison-section .cost-summary .cost-mini-note{font-size:10px;line-height:1.9}
  .cost-comparison-section .cost-method{margin-top:18px;padding:14px 16px;font-size:11px;line-height:2}
  .cost-comparison-section .cost-assumptions{margin-top:13px;font-size:11px;line-height:2}
  .cost-comparison-section .cost-assumptions summary{padding:12px 14px}
  .cost-comparison-section .cost-assumptions ul{padding:12px 16px 15px 30px}
  .cost-comparison-section .cost-return{min-height:50px;margin-top:20px;padding:12px 15px;font-size:12px;line-height:1.85}
}
@media(max-width:370px){
  .cost-comparison-section .cost-chart text{font-size:28px}
  .cost-comparison-section .cost-chart text.cost-axis-label,.cost-comparison-section .cost-chart text.axis-label{font-size:26px}
  .cost-comparison-section .cost-controls{padding:12px}
  .cost-comparison-section .cost-summary>strong>span{font-size:32px}
}
@media print{
  .icl-explainer,.icl-info-card,.cost-comparison-section .cost-chart-wrap,.cost-comparison-section .cost-summary{break-inside:avoid}
  .cost-comparison-section .cost-return{display:none}
  .cost-comparison-section .cost-chart text{font-size:14px}
  .cost-comparison-section .cost-chart text.cost-axis-label,.cost-comparison-section .cost-chart text.axis-label{font-size:12px}
}

.cost-controls[hidden]{display:none}

/* 共通デザインと5院用比較表。えの眼科の2拠点は同じ掲載番号を使用。 */
.clinic-matrix{width:1074px}
.interior-grid.single-photo{grid-template-columns:1fr;max-width:420px;margin-inline:auto}
.interior-grid.single-photo .photo-open img{object-fit:contain;background:#f4f2ec}
.kobe-map .map-pin b{left:34px;right:auto}
.kobe-map .map-label-left b{left:auto;right:34px}
.kobe-map .pin-senshinkai>span{background:#9a782a}
.kobe-map .branch-pin>span{font-size:12px}
.map-branch-note{font-size:11px;line-height:1.8;color:#716c60;margin:10px 0}
.footer-bottom nav{display:flex;align-items:center;justify-content:flex-end;gap:18px}
.footer-bottom a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.clinic-matrix{width:886px}.map-branch-note{font-size:10px}.kobe-map .branch-pin>span{font-size:11px}.footer-bottom nav{gap:12px;flex-wrap:wrap}}
