@charset "UTF-8";
:root{--paper:#f7f7f4;--white:#fff;--ink:#20211f;--muted:#6a6b65;--line:#dadbd5;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Helvetica Neue",Arial,"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--content:1280px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img,svg{display:block;max-width:100%}img{height:auto}p,h1,h2,h3{margin:0}h1,h2,h3{font-weight:400}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #6c705c;outline-offset:5px}::selection{background:#d9ddcf;color:#161713}[hidden]{display:none!important}
.skip-link{position:fixed;top:-100px;left:20px;padding:15px;background:var(--ink);color:white;z-index:200}.skip-link:focus{top:10px}.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;height:100px;padding:0 4.3%;background:rgba(247,247,244,.96);border-bottom:1px solid rgba(32,33,31,.1);backdrop-filter:blur(16px);gap:34px}.brand{display:flex;align-items:center;gap:19px;margin-right:auto;flex-shrink:0}.brand img{width:222px}.branch{font-size:11px;letter-spacing:.1em;padding-left:19px;border-left:1px solid #b9bab2;white-space:nowrap}.desktop-nav{display:flex;gap:28px;font-size:12px;letter-spacing:.06em}.desktop-nav a{position:relative;padding:12px 0}.desktop-nav a::after{content:"";position:absolute;bottom:5px;left:0;width:0;height:1px;background:var(--ink);transition:width .25s}.desktop-nav a:hover::after{width:100%}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;background:var(--ink);color:#fff;min-height:56px;padding:0 27px;font-size:13px;letter-spacing:.08em;border:1px solid var(--ink);transition:background .25s,color .25s,transform .25s}.button:hover{background:#454640}.button span[aria-hidden]{font-size:20px;font-family:Arial,sans-serif;transition:transform .25s}.button:hover span[aria-hidden]{transform:translate(2px,-2px)}.header-cta{font-size:12px;min-height:48px;padding:0 22px;gap:24px}.menu-toggle{display:none}.mobile-nav{display:none}
.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1800px;margin:auto;min-height:720px;height:calc(100svh - 100px);max-height:850px}.hero-copy{position:relative;padding:52px 7.7vw 27px 7.1vw;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:10px;font-weight:500;letter-spacing:.17em;line-height:1.6}.hero-eyebrow{display:flex;align-items:center;gap:16px;font-size:9px;white-space:nowrap}.tiny-cross{font-size:22px;font-weight:300;line-height:1}h1{font-family:var(--serif);font-size:clamp(38px,4.05vw,60px);line-height:1.5;letter-spacing:.075em;margin:28px 0 20px;white-space:nowrap}.h1-space{display:block}.hero-description{font-size:12px;line-height:2.2;letter-spacing:.14em;color:#55574f}.hero-cta{min-width:240px;margin-top:34px}.hero-bottom{display:flex;justify-content:space-between;width:100%;margin-top:auto;padding-top:35px;gap:10px;font-size:9px;letter-spacing:.1em;align-items:center}.hero-bottom small{display:inline-block;font-size:9px;margin-left:8px;letter-spacing:.03em}.scroll-link{font-size:8px;display:flex;align-items:center;gap:16px}.scroll-link span{font-size:18px}.hero-visual{position:relative;overflow:hidden;margin:20px 22px 20px 0;background:#c6c6c2}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:50% 43%}.hero-visual::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.22));pointer-events:none}.image-caption{position:absolute;z-index:1;bottom:35px;left:35px;right:35px;color:white;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.script-caption{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:clamp(30px,4.8vw,74px);font-weight:400;letter-spacing:-.05em}.visual-side{position:absolute;top:28px;right:18px;writing-mode:vertical-rl;color:#fff;font-size:8px;letter-spacing:.2em;opacity:.85}
.section{max-width:var(--content);margin:auto;padding:110px 48px}.section-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:38px}.section-index{font-size:11px;letter-spacing:.09em;color:var(--muted)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:45px}.en-heading{display:block;font-family:Georgia,"Times New Roman",serif;font-size:clamp(43px,5.4vw,72px);letter-spacing:-.05em;line-height:1.12}.heading-dot{color:#8a8b82}.jp-heading{display:block;font-size:12px;letter-spacing:.16em;margin-top:19px;line-height:1.8}.section-intro{font-size:12px;line-height:2;letter-spacing:.05em;padding-bottom:2px}.section-intro small{display:block;font-size:10px;letter-spacing:0;margin-top:13px;color:var(--muted)}.category-nav{display:flex;gap:8px 10px;flex-wrap:wrap;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:49px}.category-nav a{display:flex;align-items:center;justify-content:space-between;gap:13px;padding:9px 12px;border:1px solid var(--line);font-size:11px;line-height:1.7;transition:background .2s,border-color .2s}.category-nav a:hover{background:var(--ink);border-color:var(--ink);color:white}.category-nav a span{font-size:11px}.price-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:56px;row-gap:52px;align-items:start}.price-category{scroll-margin-top:125px;border-top:1px solid var(--ink);padding-top:23px;min-width:0}.price-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:22px}.category-number{font-family:Georgia,serif;font-size:13px;color:#77796f}.price-heading h3{font-size:20px;line-height:1.5;font-weight:500;letter-spacing:.02em}.price-heading h3 small{font-size:11px;font-weight:400;margin-left:8px;white-space:nowrap}.category-en{display:block;font-size:9px;letter-spacing:.12em;color:var(--muted);margin-top:7px}.price-table{width:100%;border-collapse:collapse;table-layout:fixed}.price-table caption{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.price-table tr{border-bottom:1px solid var(--line)}.price-table th{text-align:left;font-weight:400;padding:16px 12px 16px 0;width:64%;font-size:12px;line-height:1.8;overflow-wrap:anywhere}.price-table td{text-align:right;padding:16px 0;vertical-align:middle;white-space:nowrap}.quantity{font-size:10px;color:var(--muted);display:block;line-height:1.5;margin-top:2px}.price{font-family:Georgia,"Times New Roman",serif;font-variant-numeric:tabular-nums;font-size:23px;letter-spacing:-.025em;line-height:1}.price .currency{font-size:14px;padding-right:3px}.price-tax{display:block;font-size:9px;color:var(--muted);margin-top:6px}.category-note{font-size:10px;line-height:1.9;color:var(--muted);margin-top:15px}.menu-notes{display:flex;gap:20px;padding:26px 0;line-height:2;color:var(--muted);font-size:10px;margin-top:35px;border-bottom:1px solid var(--line)}.note-cross{font-size:23px;color:var(--ink);line-height:1.7}.menu-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:30px;font-size:12px;letter-spacing:.06em}.text-cta{font-size:13px;display:flex;align-items:center;gap:60px;padding-bottom:9px;border-bottom:1px solid var(--ink)}.text-cta span{font-size:23px}.text-cta:hover{opacity:.6}
.statement{background:#eaece6;position:relative;overflow:hidden;text-align:center}.statement-inner{position:relative;z-index:1;padding:92px 24px}.statement h2{font-family:var(--serif);font-size:34px;line-height:1.9;letter-spacing:.13em;margin:30px 0 25px}.statement p:not(.eyebrow){font-size:12px;line-height:2.5;letter-spacing:.1em}.statement-word{display:block;font-size:38px;font-style:italic;font-family:Georgia,serif;letter-spacing:-.035em;margin-top:34px;color:#73786b}.statement-watermark{position:absolute;left:-35px;bottom:-160px;font-family:Georgia,serif;font-style:italic;font-size:650px;line-height:1;opacity:.035;pointer-events:none}
.news{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;padding-top:115px;padding-bottom:115px}.news-copy>.eyebrow{margin-bottom:36px}.body-copy{font-size:12px;line-height:2.2;letter-spacing:.06em;margin-top:35px}.social-signature{display:flex;gap:17px;align-items:center;margin-top:37px}.social-signature svg{width:17px;height:17px}.social-signature a{font-size:13px}.social-signature a span{margin-left:20px}.social-signature a:hover{text-decoration:underline}.social-note{font-size:10px;line-height:1.8;color:var(--muted);margin-top:23px;max-width:300px}.social-panel{border:1px solid var(--line);background:#fff;min-width:0}.social-panel-top{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.17em;padding:20px 25px;border-bottom:1px solid #e4e4df}.social-panel-top span:last-child{font-size:20px}.x-timeline{min-height:355px;max-height:480px;overflow:auto;padding:0 12px}.x-timeline iframe{width:100%!important;max-width:100%!important}.x-placeholder{min-height:355px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:20px;padding:30px 10px}.x-monogram{font-family:Arial,sans-serif;font-size:50px;color:#c1c2ba}.x-placeholder p{font-size:11px;color:var(--muted);line-height:1.8;max-width:270px}.plain-link{font-size:12px;text-decoration:underline;text-underline-offset:5px}.plain-link span{margin-left:8px}.embed-note{text-align:center;font-size:9px;color:var(--muted);padding:15px;border-top:1px solid #eee}
.access{border-top:1px solid var(--line)}.access-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:stretch}.clinic-information{padding-top:12px}.clinic-information h3{font-size:20px;letter-spacing:.035em;margin-bottom:24px}.clinic-information h3 span{font-size:12px;display:block;margin-top:12px}.clinic-information dl{margin:0}.clinic-information dl>div{display:grid;grid-template-columns:88px 1fr;gap:20px;align-items:start;padding:20px 0;border-bottom:1px solid var(--line);font-size:12px}.clinic-information dt{color:var(--muted);font-size:11px;padding-top:3px}.clinic-information dd{margin:0;line-height:1.9}.clinic-information address{font-style:normal}.hours{font-family:Georgia,serif;font-size:27px;letter-spacing:.025em;line-height:1.1}.hours span{font-size:15px;margin:0 15px}.telephone{letter-spacing:.1em}.access-note{font-size:10px;line-height:1.8;color:var(--muted);margin-top:19px}.map-wrap{background:#e6e7e2;display:flex;flex-direction:column;min-width:0}.map-wrap iframe{display:block;border:0;width:100%;min-height:405px;flex:1;filter:grayscale(1);opacity:.9}.map-caption{display:flex;align-items:center;justify-content:space-between;font-size:10px;padding:17px 22px;border-top:1px solid var(--line);background:#eeefea;letter-spacing:.04em}.map-caption span:last-child{font-family:Georgia,serif;font-size:18px}
.faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px;border-top:1px solid var(--line);padding-top:80px;padding-bottom:100px}.faq-heading .eyebrow{margin-bottom:30px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:20px 1fr 16px;align-items:center;gap:15px;font-size:12px;line-height:1.9;padding:24px 0}.faq-list summary::-webkit-details-marker{display:none}.question-mark{font-family:Georgia,serif;font-size:20px;color:#77796f}.faq-icon::after{content:"+";font-size:21px;font-weight:300}.faq-list details[open] .faq-icon::after{content:"−"}.faq-answer{padding:0 30px 25px 35px;font-size:12px;line-height:2.1;color:#5a5d53}.reservation{background:#20221f;color:#fff;text-align:center;padding:82px 24px 75px;position:relative;overflow:hidden}.reservation .eyebrow{color:#afb3a7}.reservation h2{font-family:var(--serif);font-size:33px;line-height:1.85;letter-spacing:.1em;margin:25px 0 35px}.button-light{background:var(--paper);border-color:var(--paper);color:var(--ink);width:310px}.button-light:hover{background:#dfe2d8;color:var(--ink)}.reservation-note{font-size:10px;color:#afb3a7;letter-spacing:.1em;margin-top:22px}.footer{padding:55px max(48px,calc((100vw - 1184px)/2)) 25px;background:#f7f7f4}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:40px}.footer-logo img{width:250px}.footer-links{display:flex;gap:25px;font-size:10px}.footer-links a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);padding-top:25px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:8px;letter-spacing:.07em;color:var(--muted)}.mobile-booking{display:none}
@media(min-width:1600px){.hero-copy{padding-left:115px;padding-right:110px}.hero h1{font-size:60px}}
@media(max-width:1100px){.site-header{gap:23px;padding:0 30px}.brand img{width:190px}.brand{gap:13px}.branch{padding-left:13px;font-size:10px}.desktop-nav{gap:18px;font-size:11px}.header-cta{padding:0 16px;gap:13px}.hero{min-height:690px;max-height:780px}.hero-copy{padding:58px 5vw 27px}.hero-eyebrow{font-size:8px;gap:8px}h1{font-size:4.4vw;margin-top:40px}.hero-cta{min-width:220px}.hero-bottom{font-size:8px}.hero-bottom small{display:block;margin:7px 0 0}.price-grid{column-gap:35px}.price-heading h3{font-size:18px}.price-table th{font-size:11px}.price{font-size:21px}.news{gap:45px}.access-grid{gap:45px}.section{padding-left:36px;padding-right:36px}.footer{padding-left:36px;padding-right:36px}}
@media(max-width:900px){.site-header{height:82px;padding:0 24px;gap:22px}.desktop-nav{display:none}.brand img{width:190px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:38px;height:44px;background:none;border:0;padding:7px}.menu-toggle span{display:block;width:24px;height:1px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav{display:block;position:fixed;z-index:49;top:82px;right:0;left:0;background:var(--paper);padding:22px 30px 34px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #0000000b}.mobile-nav>a{display:flex;align-items:center;gap:20px;padding:19px 0;border-bottom:1px solid var(--line);font-size:14px}.mobile-nav>a span:first-child{font-size:10px;color:var(--muted)}.mobile-nav>a span:last-child{margin-left:auto;font-size:20px}.mobile-nav p{font-size:10px;line-height:2;margin-top:25px;color:var(--muted)}.hero{height:650px;min-height:0}.hero-copy{padding:45px 4.5vw 24px}.hero h1{font-size:4.4vw;margin-top:46px}.hero-description{font-size:11px}.hero-visual{margin:16px 16px 16px 0}.hero-eyebrow{font-size:7px;letter-spacing:.1em}.tiny-cross{font-size:16px}.hero-bottom .scroll-link{display:none}.hero-cta{min-width:200px;padding:0 20px;min-height:52px;font-size:12px}.price-grid{column-gap:28px}.price-heading h3{font-size:16px}.price-heading h3 small{font-size:10px;display:block;margin:3px 0 0}.section{padding-top:80px;padding-bottom:80px}.section-intro{font-size:11px}.price-table th{width:61%}.price{font-size:20px}.price-tax{font-size:8px}.section-heading{gap:20px}.category-nav a{font-size:10px}.news{gap:35px}.access-grid{gap:35px;grid-template-columns:1fr 1fr}.clinic-information h3{font-size:18px}.clinic-information dl>div{gap:12px;grid-template-columns:64px 1fr}.faq{gap:35px;grid-template-columns:.65fr 1.35fr}.footer-logo img{width:200px}.footer-links{gap:15px}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:700px){html{scroll-padding-top:94px}.site-header{height:74px;padding:0 20px;gap:16px}.brand img{width:165px}.brand{gap:11px}.branch{font-size:9px;padding-left:11px}.header-cta{display:none}.menu-toggle{margin-left:auto}.mobile-nav{top:74px}.hero{display:flex;flex-direction:column;height:auto;max-height:none}.hero-copy{padding:36px 27px 25px;min-height:0}.hero-eyebrow{font-size:8px;letter-spacing:.13em;gap:10px}.tiny-cross{font-size:19px}.hero h1{font-size:clamp(26px,7.1vw,44px);line-height:1.7;margin:27px 0 17px;letter-spacing:.07em}.h1-space{display:inline}.hero-description{font-size:11px;line-height:2;letter-spacing:.12em}.hero-cta{margin-top:24px;min-width:215px;min-height:51px}.hero-bottom{padding-top:27px;font-size:8px}.hero-bottom small{display:inline;margin:0 0 0 9px}.hero-bottom .scroll-link{display:flex;font-size:7px;gap:12px}.hero-visual{order:-1;margin:0 15px 0;height:clamp(330px,105vw,540px)}.hero-visual>img{object-position:50% 40%}.image-caption{bottom:21px;left:22px;right:22px}.script-caption{font-size:46px}.visual-side{font-size:7px;top:20px;right:14px}.section{padding:65px 24px}.section-top{margin-bottom:27px}.section-index{font-size:9px;letter-spacing:.02em}.section-heading{display:block;margin-bottom:27px}.en-heading{font-size:44px}.jp-heading{font-size:11px;margin-top:14px}.section-intro{margin-top:23px;font-size:11px;line-height:1.9}.section-intro br{display:none}.section-intro small{margin-top:9px;font-size:9px}.category-nav{gap:8px;margin-bottom:34px;padding:18px 0}.category-nav a{font-size:10px;padding:8px 10px;gap:12px;flex:1 0 calc(50% - 8px);min-height:38px}.price-grid{grid-template-columns:1fr;gap:35px}.price-category{padding-top:22px;scroll-margin-top:99px}.price-heading{margin-bottom:13px}.price-heading h3{font-size:19px}.price-heading h3 small{display:inline;font-size:10px;margin-left:8px}.category-en{font-size:8px;margin-top:6px}.category-number{font-size:13px}.price-table th{font-size:12px;padding-top:15px;padding-bottom:15px;width:65%}.price-table td{padding:15px 0}.price{font-size:24px}.price-tax{font-size:9px;margin-top:5px}.quantity{font-size:10px}.category-note{font-size:9px}.menu-notes{margin-top:22px;gap:11px;font-size:9px;padding:22px 0;line-height:2}.menu-notes p+p{margin-top:6px}.menu-bottom{padding-top:24px;align-items:flex-start;gap:20px;font-size:10px}.text-cta{font-size:11px;gap:17px;white-space:nowrap}.text-cta span{font-size:18px}.menu-bottom>p{max-width:160px;line-height:1.8}.statement-inner{padding:65px 24px}.statement h2{font-size:28px;line-height:1.9;letter-spacing:.1em;margin-top:25px}.statement p:not(.eyebrow){font-size:11px;line-height:2.5}.statement-word{font-size:32px;margin-top:25px}.statement-watermark{font-size:450px;bottom:-100px;left:-55px}.news{grid-template-columns:1fr;gap:30px}.news-copy>.eyebrow{margin-bottom:26px}.body-copy{font-size:11px;margin-top:23px}.social-signature{margin-top:24px}.social-note{font-size:9px;max-width:none;margin-top:17px}.x-timeline{min-height:320px}.x-placeholder{min-height:320px}.social-panel-top{padding:15px 20px}.access-grid{grid-template-columns:1fr;gap:30px}.clinic-information{padding-top:2px}.clinic-information h3{font-size:20px;margin-bottom:16px}.clinic-information h3 span{font-size:11px}.clinic-information dl>div{grid-template-columns:76px 1fr;padding:17px 0;font-size:12px;gap:15px}.hours{font-size:27px}.map-wrap iframe{min-height:330px;height:330px;flex:none}.map-caption{font-size:9px;padding:14px 18px}.access-note{font-size:9px}.faq{grid-template-columns:1fr;gap:29px}.faq-heading .eyebrow{margin-bottom:26px}.faq-list summary{font-size:11px;gap:12px;padding:21px 0;grid-template-columns:18px 1fr 15px}.faq-answer{font-size:11px;padding:0 15px 22px 30px;line-height:2}.reservation{padding:62px 24px 58px}.reservation h2{font-size:26px;line-height:1.9;letter-spacing:.05em;margin:22px 0 28px}.button-light{width:min(300px,100%);font-size:12px}.footer{padding:40px 24px 108px}.footer-main{align-items:flex-start;flex-direction:column;gap:25px;padding-bottom:28px}.footer-logo img{width:210px}.footer-links{flex-wrap:wrap;gap:16px 24px;font-size:10px}.footer-bottom{font-size:7px;gap:8px;padding-top:22px}.mobile-booking{position:fixed;z-index:60;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:10px;background:rgba(247,247,244,.97);border-top:1px solid var(--line);padding:12px 16px calc(12px + env(safe-area-inset-bottom));backdrop-filter:blur(12px)}.mobile-booking>div{min-width:0;display:flex;flex-direction:column;gap:5px}.mobile-booking>div>span{font-size:9px;letter-spacing:.04em;font-weight:500}.mobile-booking small{font-size:8px;color:var(--muted)}.mobile-booking .button{font-size:11px;min-height:44px;padding:0 16px;gap:22px}.mobile-booking .button span{font-size:19px}}
@media(max-width:360px){.brand img{width:145px}.site-header{padding:0 15px}.branch{font-size:8px}.hero-copy{padding-left:23px;padding-right:23px}.hero h1{font-size:25px;letter-spacing:.05em}.hero-eyebrow{font-size:7px}.section{padding-left:20px;padding-right:20px}.en-heading{font-size:38px}.section-index{font-size:8px}.price-table th{width:62%;font-size:11px}.price{font-size:22px}.price-heading h3{font-size:17px}.mobile-booking{padding-left:12px;padding-right:12px}.mobile-booking .button{gap:14px;padding:0 13px}.mobile-booking>div>span{font-size:8px}.mobile-booking small{font-size:7px}.footer-links{gap:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.site-header,.mobile-booking,.hero-visual,.hero-cta,.category-nav,.news,.map-wrap,.reservation,.menu-bottom,.footer-links,.scroll-link{display:none!important}html{scroll-padding:0}body{background:white;color:black;font-size:10pt}.hero{display:block;height:auto;min-height:0}.hero-copy{padding:20px 0}.hero h1{font-size:28pt}.hero-bottom{margin-top:20px}.section{padding:25px 0}.price-grid{gap:25px}.price-category{break-inside:avoid}.statement{padding:0;background:#eee}.statement-inner{padding:30px}.statement-watermark{display:none}.access-grid{display:block}.faq{display:block}.faq-list details .faq-answer{display:block}.footer{padding:20px 0}.en-heading{font-size:30pt}a{color:inherit}}


/* Legal pages and the shared footer links. */
.footer-legal{display:flex;flex-wrap:wrap;align-items:center;gap:8px 26px;border-top:1px solid var(--line);padding:12px 0}
.footer-legal a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding:4px 0;color:var(--ink);font-size:12px;line-height:1.6;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.footer-legal a:hover,.footer-legal a[aria-current=page]{text-decoration-thickness:2px}
.legal-main{max-width:960px;margin:auto;padding:30px 48px 88px}
.legal-home-link,.legal-return{display:inline-flex;align-items:center;gap:12px;min-height:44px;min-width:44px;font-size:13px;line-height:1.7;color:var(--ink);text-decoration:underline;text-underline-offset:5px}
.legal-home-link{flex-shrink:0;margin-left:auto}
.legal-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:0 15px;color:var(--muted);font-size:12px;line-height:1.8}
.legal-breadcrumb a{display:inline-flex;align-items:center;min-width:44px;min-height:44px;color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.legal-heading{padding:48px 0 35px}
.legal-title{font-family:var(--serif);font-size:clamp(28px,4vw,44px);font-weight:400;line-height:1.6;letter-spacing:.06em;white-space:normal;overflow-wrap:anywhere;margin:18px 0}
.legal-date{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:28px}
.legal-intro{font-size:15px;line-height:2.1;letter-spacing:.025em;overflow-wrap:anywhere}
.legal-toc{padding:24px 28px;margin-bottom:12px;background:#eeefea;border:1px solid var(--line)}
.legal-toc-label{font-size:13px;font-weight:500;letter-spacing:.1em;margin-bottom:12px}
.legal-toc ol{display:grid;grid-template-columns:1fr 1fr;column-gap:36px;row-gap:4px;list-style:none;padding:0;margin:0;counter-reset:legal-toc}
.legal-toc li{counter-increment:legal-toc;min-width:0}
.legal-toc a{display:flex;align-items:center;gap:10px;min-height:44px;padding:7px 0;font-size:13px;line-height:1.7;text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.legal-toc a::before{content:counter(legal-toc,decimal-leading-zero);font-family:Georgia,serif;font-size:12px;flex-shrink:0;text-decoration:none}
.legal-section{padding:36px 0;border-bottom:1px solid var(--line);scroll-margin-top:120px}
.legal-section h2{font-size:19px;font-weight:500;line-height:1.8;letter-spacing:.03em;margin-bottom:16px}
.legal-section h3{font-size:16px;font-weight:500;line-height:1.8;margin-bottom:12px}
.legal-section p,.legal-section li,.legal-contact{font-size:15px;line-height:2.1;letter-spacing:.015em;overflow-wrap:anywhere}
.legal-section p+p{margin-top:12px}
.legal-section ul{padding-left:1.5em;margin:12px 0}
.legal-section li+li{margin-top:8px}
.legal-section strong{font-weight:600}
.legal-section a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.legal-section a:hover{ text-decoration-thickness:2px }
.legal-service{padding:24px;margin:20px 0;background:#eeefea;border-left:2px solid #a8ad9f}
.legal-service p+p{margin-top:8px}
.legal-external-link{display:inline-flex;flex-wrap:wrap;align-items:center;gap:10px;min-width:44px;min-height:44px;margin-top:8px;font-size:14px;line-height:1.8}
.legal-contact{margin:18px 0 0}
.legal-contact>div{display:grid;grid-template-columns:100px 1fr;gap:18px;padding:12px 0;border-bottom:1px solid var(--line)}
.legal-contact>div:last-child{border-bottom:0}
.legal-contact dt{font-size:13px;color:var(--muted)}
.legal-contact dd{margin:0}
.legal-return{margin-top:32px}
.legal-page .footer{padding-bottom:28px}
.legal-page .footer-bottom>a{display:inline-flex;align-items:center;min-height:44px;font-size:11px;color:var(--ink)}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:700px){
  .footer-legal{gap:4px 22px;padding:10px 0}
  .footer-legal a{font-size:12px}
  .legal-site-header{gap:14px}
  .legal-site-header .brand img{width:145px}
  .legal-site-header .branch{display:none}
  .legal-home-link{font-size:12px;gap:7px}
  .legal-main{padding:20px 24px 55px}
  .legal-heading{padding:28px 0}
  .legal-title{font-size:27px;letter-spacing:.025em;margin:15px 0}
  .legal-intro,.legal-section p,.legal-section li,.legal-contact{font-size:15px;line-height:2}
  .legal-toc{padding:20px}
  .legal-toc ol{grid-template-columns:1fr;gap:2px}
  .legal-toc a{font-size:13px}
  .legal-section{padding:28px 0;scroll-margin-top:95px}
  .legal-section h2{font-size:18px}
  .legal-service{padding:18px}
  .legal-contact>div{grid-template-columns:76px 1fr;gap:12px}
  .legal-contact dt{font-size:12px}
}
@media(max-width:360px){.legal-main{padding-left:20px;padding-right:20px}.legal-site-header .brand img{width:135px}.legal-title{font-size:25px}.legal-contact>div{grid-template-columns:1fr;gap:2px}}
@media print{.legal-main{max-width:none;padding:0}.legal-heading{padding-top:0}.legal-toc,.legal-return,.footer-legal{display:none}.legal-section{break-inside:auto;padding:16px 0}.legal-section h2,.legal-section h3{break-after:avoid}}
