/*
Theme Name: Kotobuki Seikotsuin
Theme URI: https://kotobuki-tendo.com/
Author: Flexd Works
Description: 寿整骨院専用のオリジナルWordPressテーマ。院側でNEWS・FAQ・共通情報を更新できます。
Version: 1.5.0
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: kotobuki
*/

:root{--navy:#102b46;--blue:#1e6fa8;--sky:#eaf5fb;--ink:#172634;--muted:#657483;--line:#dbe5ec;--white:#fff;--green:#20b45a;--max:1180px;--radius:22px;--shadow:0 18px 45px rgba(16,43,70,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;line-height:1.8;overflow-x:hidden}body.admin-bar .site-header{top:32px}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.skip-link{position:fixed;top:-100px;left:16px;z-index:9999;background:#fff;padding:10px 14px;border:2px solid var(--navy)}.skip-link:focus{top:16px}.eyebrow{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--blue);font-weight:700}.section{padding:96px 0}.section--soft{background:#f6f9fb}.section__head{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:38px}.section__title{font-size:clamp(2rem,4vw,3.5rem);line-height:1.15;margin:.25rem 0 0;color:var(--navy);letter-spacing:-.02em}.section__lead{max-width:580px;color:var(--muted);margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;border:1px solid var(--navy);font-weight:700;transition:.2s ease}.btn:hover{transform:translateY(-1px)}.btn:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ffbf47;outline-offset:3px}.btn--navy{background:var(--navy);color:#fff}.btn--line{background:var(--green);border-color:var(--green);color:#fff}.btn--disabled{opacity:.55;pointer-events:none}.text-link{color:var(--blue);font-weight:700}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}

.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(219,229,236,.85)}.header__inner{height:82px;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;gap:12px;margin-right:auto}.brand__mark{width:42px;height:42px;border-radius:50% 50% 48% 52%;display:grid;place-items:center;background:var(--navy);color:#fff;font-family:serif;font-weight:700;font-size:1.3rem}.brand__name{font-weight:800;color:var(--navy);letter-spacing:.04em}.brand__sub{display:block;font-size:.66rem;color:var(--muted);font-weight:600;letter-spacing:.1em}.desktop-nav{display:flex;gap:22px;align-items:center;font-size:.88rem;font-weight:700}.header__cta{min-height:44px;padding-inline:18px}.nav-toggle{display:none;border:0;background:transparent;width:44px;height:44px;padding:10px}.nav-toggle span{display:block;height:2px;background:var(--navy);margin:6px 0}.mobile-nav{display:none}

.hero--editorial{position:relative;min-height:calc(100svh - 82px);background:#0b1e2d;overflow:hidden;isolation:isolate}.hero--editorial .hero__visual{position:absolute;inset:0;z-index:-2;background:#173650}.hero--editorial .hero__visual img{width:100%;height:100%;object-fit:cover}.hero--editorial .hero__visual.is-placeholder{background:radial-gradient(circle at 72% 24%,rgba(38,123,173,.42),transparent 28%),linear-gradient(130deg,#0c2134 0%,#174d70 50%,#071723 100%)}.hero--editorial .hero__visual.is-placeholder:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 38%,rgba(255,255,255,.06) 38% 54%,transparent 54% 100%);mix-blend-mode:screen}.hero__visual-note{position:absolute;right:32px;bottom:28px;color:rgba(255,255,255,.75);font-size:.68rem;line-height:1.55;letter-spacing:.18em;text-align:right}.hero__overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,19,30,.58),rgba(5,19,30,.17) 52%,rgba(5,19,30,.45)),linear-gradient(0deg,rgba(5,19,30,.35),transparent 45%)}.hero__inner{min-height:calc(100svh - 82px);display:grid;place-items:center;position:relative;z-index:2}.hero__copy{padding:92px 0;text-align:center;color:#fff;max-width:760px}.hero__en{display:block;color:#fff;font-size:clamp(1.55rem,3vw,2.7rem);letter-spacing:.08em;font-weight:500;margin-bottom:16px}.hero h1{font-size:clamp(3rem,7.2vw,6.4rem);line-height:1.04;letter-spacing:-.045em;color:#fff;margin:0;text-shadow:0 2px 22px rgba(0,0,0,.18)}.hero h1 br{display:block;content:"";margin-top:.1em}.hero__lead{font-size:1rem;color:rgba(255,255,255,.9);margin:24px auto 0;max-width:510px}.hero__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px}.hero__actions .btn--hero-sub{border-color:rgba(255,255,255,.72);color:#fff;background:rgba(255,255,255,.08)}.hero__actions .btn--hero-sub:hover{background:rgba(255,255,255,.18)}.open-strip{background:var(--navy);color:#fff}.open-strip__inner{display:flex;justify-content:center;align-items:center;gap:18px;min-height:70px;text-align:center}.open-strip strong{font-size:1.06rem}.open-strip span{color:#bdd4e5;font-size:.9rem}

.news-list{border-top:1px solid var(--line)}.news-item{display:grid;grid-template-columns:120px 120px 1fr auto;gap:18px;align-items:center;padding:20px 4px;border-bottom:1px solid var(--line)}.news-item time{font-variant-numeric:tabular-nums;color:var(--muted)}.news-item__cat{font-size:.75rem;padding:4px 10px;border-radius:999px;background:var(--sky);color:var(--blue);width:max-content}.news-item__title{font-weight:700}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.condition-card{min-height:230px;display:flex;flex-direction:column;justify-content:space-between}.condition-card h3,.policy-card h3,.flow-card h3{margin:0 0 10px;color:var(--navy)}.condition-card p,.policy-card p,.flow-card p{color:var(--muted);margin:0}.policy-card{min-height:220px}.policy-card__num{font-family:Georgia,serif;font-size:2.4rem;color:#abcfe1;line-height:1;margin-bottom:30px}.fee-placeholder{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:34px;border-radius:var(--radius);background:var(--navy);color:#fff}.fee-placeholder h3{font-size:1.5rem;margin:0 0 8px}.fee-placeholder p{margin:0;color:#c6d6e2}.fee-placeholder .btn{border-color:#fff;color:#fff}.flow-list{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.flow-card{padding:22px 18px;border-top:3px solid var(--blue)}.flow-card__num{color:var(--blue);font-weight:800;font-size:.78rem;margin-bottom:12px}.profile{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:center}.profile__photo{min-height:480px;border-radius:24px 120px 24px 24px;background:linear-gradient(135deg,#d7e7ef,#f8fbfd);display:grid;place-items:center;color:rgba(16,43,70,.25);font-weight:800;letter-spacing:.16em;overflow:hidden}.profile__photo img{width:100%;height:100%;object-fit:cover}.profile__name{font-size:2rem;color:var(--navy);font-weight:800}.profile__note{padding:18px;border-left:3px solid var(--blue);background:var(--sky);font-size:.9rem;color:var(--muted)}.faq-list{max-width:900px;margin:auto}.faq-item{border-bottom:1px solid var(--line)}.faq-item summary{list-style:none;display:flex;gap:18px;align-items:center;padding:23px 8px;font-weight:700;color:var(--navy);cursor:pointer}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:before{content:"Q";color:var(--blue);font-family:Georgia,serif;font-size:1.4rem}.faq-item summary:after{content:"＋";margin-left:auto;font-size:1.3rem}.faq-item[open] summary:after{content:"−"}.faq-item__answer{padding:0 54px 24px;color:var(--muted)}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.info-table{width:100%;border-collapse:collapse}.info-table th,.info-table td{padding:14px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.info-table th{width:34%;color:var(--muted);font-size:.86rem}.map-placeholder{min-height:420px;border-radius:var(--radius);background:#dce8ee;display:grid;place-items:center;text-align:center;padding:30px}.cta-panel{background:linear-gradient(135deg,var(--navy),#174d70);color:#fff;border-radius:32px;padding:56px;display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}.cta-panel h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.15;margin:0 0 16px}.cta-panel p{color:#cbdce6}.cta-list{display:grid;gap:12px}.cta-list .btn{width:100%}.cta-list .btn:not(.btn--line){border-color:#8eb1c6;color:#fff}.site-footer{background:#0c2236;color:#c2d1dc;padding:66px 0 100px}.footer__grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.footer__name{color:#fff;font-size:1.35rem;font-weight:800}.footer__nav{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:.86rem}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:40px;padding-top:22px;font-size:.76rem;color:#7891a3}.mobile-cta{display:none}

.page-hero{padding:92px 0 66px;background:linear-gradient(145deg,#f3f8fb,#fff);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.5rem,5vw,4.8rem);line-height:1.12;color:var(--navy);margin:8px 0 0}.content{padding:72px 0 110px}.content__narrow{max-width:850px;margin:auto}.notice{padding:18px 22px;background:#f5f9fb;border-left:3px solid var(--blue);color:var(--muted);margin:0 0 34px}.slot-card{border:1px dashed #9ab6c8;background:#f9fbfc;box-shadow:none}.slot-card strong{display:block;color:var(--navy);margin-bottom:6px}.article h2{color:var(--navy);margin-top:2em}.article a{color:var(--blue);text-decoration:underline}.article img{border-radius:18px}.post-meta{color:var(--muted);font-size:.86rem}.pager{display:flex;justify-content:space-between;gap:20px;margin-top:54px}.empty{color:var(--muted);padding:30px 0}

@media(max-width:980px){body.admin-bar .site-header{top:46px}.desktop-nav,.header__cta{display:none}.nav-toggle{display:block}.mobile-nav.is-open{display:block;border-top:1px solid var(--line);background:#fff;padding:10px 24px 22px}.mobile-nav a{display:block;padding:12px 0;border-bottom:1px solid #edf2f5;font-weight:700}.hero--editorial,.hero--editorial .hero__inner{min-height:calc(100svh - 68px)}.flow-list{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:1fr 1fr}.profile{gap:30px}.cta-panel{grid-template-columns:1fr}.news-item{grid-template-columns:100px 100px 1fr}.news-item .text-link{display:none}}
@media(max-width:680px){.container{width:min(calc(100% - 34px),var(--max))}.section{padding:70px 0}.section__head{display:block}.section__lead{margin-top:14px}.header__inner{height:68px}.brand__mark{width:36px;height:36px}.brand__sub{display:none}.hero__copy{padding:84px 0 108px}.hero__en{font-size:1.38rem}.hero h1{font-size:clamp(2.8rem,12vw,4.4rem)}.hero__lead{font-size:.9rem}.hero__actions{display:grid;width:min(100%,310px);margin-inline:auto}.hero__actions .btn{width:100%}.hero__visual-note{right:18px;bottom:18px;font-size:.58rem}.open-strip__inner{display:block;padding:15px 0}.open-strip span{display:block}.news-item{grid-template-columns:88px 1fr;gap:8px 14px}.news-item__cat{grid-column:2}.news-item__title{grid-column:1/3}.grid-3,.grid-2,.profile,.access-grid,.footer__grid{grid-template-columns:1fr}.flow-list{grid-template-columns:1fr}.profile__photo{min-height:380px}.fee-placeholder{grid-template-columns:1fr}.cta-panel{padding:34px 24px}.site-footer{padding-bottom:100px}.mobile-cta{position:fixed;display:grid;grid-template-columns:1.3fr 1fr .75fr;bottom:0;left:0;right:0;z-index:90;background:#fff;box-shadow:0 -8px 30px rgba(16,43,70,.12);padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));gap:6px}.mobile-cta a,.mobile-cta span{min-width:0;min-height:52px;border-radius:12px;display:grid;place-items:center;text-align:center;padding:5px;font-size:.68rem;font-weight:800;line-height:1.2}.mobile-cta__line{background:var(--green);color:#fff}.mobile-cta__line.is-disabled{opacity:.45}.mobile-cta__ig{background:#f3eef6;color:#7e3b72}.mobile-cta__phone{background:var(--navy);color:#fff}.page-hero{padding:64px 0 46px}.content{padding:54px 0 100px}}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* v1.4.0 — photo-led editorial direction */
.hero--editorial{min-height:calc(100svh - 82px)}.hero--editorial .hero__visual.is-placeholder{background:radial-gradient(circle at 80% 18%,rgba(87,166,208,.44),transparent 18%),linear-gradient(143deg,#102b46 0 38%,#1e6fa8 38% 68%,#d9eaf2 68% 100%)}.hero--editorial .hero__visual.is-placeholder:after{content:"";position:absolute;width:46vw;height:46vw;max-width:650px;max-height:650px;right:6vw;bottom:-18vw;border:1px solid rgba(255,255,255,.28);border-radius:50%;box-shadow:0 0 0 42px rgba(255,255,255,.06),0 0 0 86px rgba(255,255,255,.04)}.hero__overlay{background:linear-gradient(90deg,rgba(5,19,30,.55),rgba(5,19,30,.06) 60%,rgba(5,19,30,.28)),linear-gradient(0deg,rgba(5,19,30,.38),transparent 48%)}.hero__copy{max-width:850px}.hero__caption{position:absolute;bottom:28px;left:clamp(24px,5vw,72px);z-index:2;color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.18em}.notice-rail{border-bottom:1px solid var(--line);background:#fff}.notice-rail__inner{min-height:76px;display:flex;align-items:center;gap:28px;font-size:.9rem}.notice-rail__inner span:first-child{color:var(--blue);font-size:.76rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.notice-rail__inner span:last-child{margin-left:auto;color:var(--muted)}.news-section{border-bottom:1px solid var(--line);padding:32px 0}.news-section__inner{display:grid;grid-template-columns:170px 1fr auto;gap:34px;align-items:center}.news-section h2{font-size:1.25rem;line-height:1.2;margin:2px 0 0;color:var(--navy)}.news-list--compact{border:0}.news-list--compact .news-item{grid-template-columns:112px 1fr auto;gap:14px;padding:8px 0;border:0;font-size:.9rem}.news-list--compact .news-item b{color:var(--blue);font-size:1.1rem}.introduction{padding:140px 0 108px}.introduction__grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:end;margin-bottom:76px}.introduction__heading h2{margin:12px 0 0;color:var(--navy);font-size:clamp(2.3rem,4.5vw,4.7rem);line-height:1.25;letter-spacing:-.05em}.introduction__body{max-width:500px;color:var(--muted)}.introduction__body p:first-child{font-size:1.1rem;color:var(--ink)}.introduction__body .text-link{display:inline-block;margin-top:15px}.image-stage{position:relative;min-height:530px;overflow:hidden;background:linear-gradient(145deg,#e7f2f7 0%,#bdd8e6 47%,#163954 47%,#102b46 100%)}.image-stage:before{content:"";position:absolute;width:35%;height:150%;left:47%;top:-25%;background:rgba(255,255,255,.22);transform:rotate(27deg)}.image-stage.has-image{background:#102b46}.image-stage.has-image:before{display:none}.image-stage img{width:100%;height:530px;object-fit:cover;filter:saturate(.82) contrast(.98)}.image-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,43,70,.22),transparent 45%,rgba(16,43,70,.18))}.image-stage__label{position:absolute;z-index:2;left:38px;bottom:34px;color:#fff;font-family:Georgia,serif;font-size:clamp(2rem,4vw,4rem);line-height:.9;letter-spacing:-.06em}.image-stage__line{position:absolute;z-index:2;right:42px;top:38px;height:92px;width:1px;background:rgba(255,255,255,.8)}.section--mist{background:#edf5f8}.consultation{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center}.consultation__message{border-top:2px solid var(--navy);padding:24px 0 0}.consultation__message span{display:block;color:var(--blue);font-size:.76rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.consultation__message p{font-size:1.25rem;color:var(--navy);margin:18px 0 15px}.section__head--editorial{margin-bottom:58px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--navy)}.principles article{padding:28px 30px 14px 0;border-right:1px solid var(--line);min-height:215px}.principles article+article{padding-left:30px}.principles article:last-child{border-right:0}.principles span{display:block;font:1.05rem Georgia,serif;color:var(--blue);margin-bottom:38px}.principles h3{font-size:1.2rem;color:var(--navy);margin:0 0 8px}.principles p{margin:0;color:var(--muted);font-size:.94rem}.section--navy{background:var(--navy);color:#fff}.section--navy .eyebrow{color:#9bc5dd}.treatment{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}.treatment h2{font-size:clamp(2.2rem,4.5vw,4.5rem);line-height:1.12;margin:10px 0;color:#fff}.treatment p{color:#c5d7e1}.text-link--light{color:#fff;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:6px}.treatment__list{border-top:1px solid rgba(255,255,255,.3)}.treatment__list article{padding:22px 0;border-bottom:1px solid rgba(255,255,255,.3)}.treatment__list h3{margin:0 0 8px}.editorial-flow{border-top:1px solid var(--navy)}.editorial-flow article{display:grid;grid-template-columns:120px 1fr;gap:34px;padding:25px 0;border-bottom:1px solid var(--line);align-items:baseline}.editorial-flow span{font:1.1rem Georgia,serif;color:var(--blue)}.editorial-flow h3{margin:0 0 6px;color:var(--navy);font-size:1.18rem}.editorial-flow p{margin:0;color:var(--muted)}.profile--editorial{grid-template-columns:1fr .95fr}.profile--editorial .profile__photo{border-radius:0;min-height:570px;background:linear-gradient(145deg,#c9e0eb,#f9fcfd 60%,#174d70 60%);position:relative}.profile--editorial .profile__photo:after{content:"";position:absolute;right:0;bottom:0;width:28%;height:28%;background:var(--navy)}.profile--editorial .profile__photo.has-image:after{background:linear-gradient(135deg,transparent 0 48%,rgba(16,43,70,.75) 48%)}.profile--editorial .profile__photo span{z-index:1;font-size:.68rem;text-align:center;line-height:1.6;color:rgba(16,43,70,.5)}.profile--editorial .profile__photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.access-editorial{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.access-editorial__map{min-height:460px;background:linear-gradient(145deg,#d8eaf2,#fff 50%,#b4d1e0 50%,#7eacbf);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:38px;position:relative}.access-editorial__map:before{content:"";position:absolute;width:190px;height:190px;right:36px;top:38px;border-radius:50%;border:1px solid rgba(16,43,70,.28)}.access-editorial__map span{position:relative;color:var(--blue);font-size:.76rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.access-editorial__map strong{position:relative;color:var(--navy);font-size:1.4rem;line-height:1.45;margin:14px 0 22px}.access-list{margin:34px 0 26px;border-top:1px solid var(--navy)}.access-list div{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.access-list dt{color:var(--muted);font-size:.86rem}.access-list dd{margin:0;color:var(--navy)}.cta-panel--editorial{border-radius:0;background:linear-gradient(110deg,#102b46,#174d70)}.cta-panel--editorial .eyebrow{color:#a9cfdf}
@media(max-width:980px){.news-section__inner{grid-template-columns:150px 1fr}.news-section__inner>.text-link{grid-column:2}.introduction__grid,.consultation,.treatment,.access-editorial{gap:50px}.introduction__grid,.consultation,.treatment,.access-editorial{grid-template-columns:1fr}.principles{grid-template-columns:1fr}.principles article,.principles article+article{padding:23px 0;border-right:0;border-bottom:1px solid var(--line);min-height:0}.principles article:last-child{border-bottom:0}.principles span{margin-bottom:16px}.profile--editorial{grid-template-columns:1fr}.profile--editorial .profile__photo{min-height:480px}}
@media(max-width:680px){.hero__caption{display:none}.notice-rail__inner{min-height:64px;gap:10px;flex-wrap:wrap;justify-content:center;font-size:.78rem}.notice-rail__inner span:last-child{margin-left:0;width:100%;text-align:center;font-size:.72rem}.news-section{padding:27px 0}.news-section__inner{grid-template-columns:1fr;gap:15px}.news-section__inner>.text-link{grid-column:auto}.news-list--compact .news-item{grid-template-columns:92px 1fr auto;font-size:.82rem;padding:7px 0}.introduction{padding:92px 0 68px}.introduction__grid{margin-bottom:44px}.introduction__heading h2{font-size:clamp(2.2rem,11vw,3.5rem)}.image-stage,.image-stage img{min-height:380px;height:380px}.image-stage__label{left:22px;bottom:22px}.image-stage__line{top:22px;right:24px;height:60px}.consultation__message p{font-size:1.08rem}.section__head--editorial{margin-bottom:36px}.editorial-flow article{grid-template-columns:56px 1fr;gap:14px;padding:20px 0}.profile--editorial .profile__photo{min-height:390px}.access-editorial__map{min-height:340px;padding:28px}.access-editorial__map:before{width:125px;height:125px;right:24px;top:25px}.access-list div{grid-template-columns:94px 1fr}.cta-panel--editorial{padding:38px 24px}}

/* v1.5 — quiet, material-led design system */
:root{--navy:#0b1825;--ink:#121c25;--blue:#25a9d5;--sky:#eaf7fa;--mist:#f5f6f3;--line:#d8dedd;--muted:#66717a;--white:#fff;--radius:0;--shadow:none;--max:1240px}
body{background:var(--mist);font-family:"Helvetica Neue",Helvetica,Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",YuGothic,sans-serif;letter-spacing:.015em;line-height:1.85}
.container{width:min(calc(100% - 64px),var(--max))}.section{padding:136px 0;background:var(--mist)}.section--mist{background:#e9eeeb}.section__title{font-weight:500;letter-spacing:-.055em}.eyebrow,.section-index{font-family:Arial,sans-serif;font-size:.67rem;line-height:1.35;letter-spacing:.19em;text-transform:uppercase;font-weight:700;color:var(--blue)}.section-index{display:block;margin-bottom:18px}.section-index--light{color:#92d5e8}.text-link{position:relative;color:var(--ink);font-size:.84rem;letter-spacing:.09em;text-transform:uppercase;padding-bottom:7px;border-bottom:1px solid var(--ink);font-weight:700}.text-link:hover{color:var(--blue);border-color:var(--blue)}
.btn{min-height:48px;border-radius:0;padding:0 22px;border-color:var(--ink);font-size:.78rem;letter-spacing:.08em;font-weight:700}.btn:hover{transform:none;background:var(--ink);color:#fff}.btn--navy{background:var(--navy);border-color:var(--navy)}.btn--line{background:var(--blue);border-color:var(--blue)}.btn--line:hover{background:#168db7;border-color:#168db7}.btn--disabled{opacity:.45}

.site-header{position:sticky;background:rgba(245,246,243,.90);border-bottom:1px solid rgba(11,24,37,.18);backdrop-filter:blur(16px)}.header__inner{height:74px;gap:25px}.brand{gap:11px}.brand__mark{display:grid;place-items:center;width:24px;height:24px;color:var(--navy);background:transparent;border:1px solid var(--navy);border-radius:0;font-family:Arial,sans-serif;font-size:.72rem;line-height:1;font-weight:800}.brand__name{font-size:.86rem;font-weight:700;letter-spacing:.12em}.brand__sub{font-size:.55rem;letter-spacing:.16em;color:var(--muted);margin-top:2px}.desktop-nav{gap:20px;font-size:.75rem;letter-spacing:.06em;font-weight:600}.desktop-nav a{padding:8px 0;border-bottom:1px solid transparent}.desktop-nav a:hover{border-color:var(--blue);color:var(--blue)}.header__cta{min-height:36px;padding-inline:14px;font-size:.68rem}.nav-toggle span{height:1px;background:var(--navy)}

.hero--editorial{min-height:calc(100svh - 74px);background:#07131e}.hero--editorial .hero__visual{background:#10263a}.hero--editorial .hero__visual img{filter:saturate(.78) contrast(1.05) brightness(.77)}.hero--editorial .hero__visual.is-placeholder{background:radial-gradient(circle at 78% 14%,rgba(37,169,213,.38),transparent 17%),linear-gradient(125deg,#07131e 0 34%,#12334a 34% 59%,#8fb4c0 59% 73%,#e9eeeb 73% 100%)}.hero--editorial .hero__visual.is-placeholder:before{background:linear-gradient(113deg,transparent 0 47%,rgba(255,255,255,.20) 47% 47.3%,transparent 47.3% 100%);mix-blend-mode:normal}.hero--editorial .hero__visual.is-placeholder:after{width:42vw;height:42vw;right:8vw;bottom:-12vw;border:1px solid rgba(255,255,255,.36);box-shadow:0 0 0 24px rgba(255,255,255,.04),0 0 0 62px rgba(255,255,255,.025)}.hero__overlay{background:linear-gradient(90deg,rgba(3,13,22,.52),rgba(3,13,22,.08) 61%,rgba(3,13,22,.30)),linear-gradient(0deg,rgba(3,13,22,.48),transparent 52%)}.hero__inner{min-height:calc(100svh - 74px);place-items:center}.hero__copy{padding:110px 0 130px;max-width:850px}.hero__serial{margin:0 0 32px;color:rgba(255,255,255,.78);font:700 .66rem/1 Arial,sans-serif;letter-spacing:.20em}.hero__en{font-family:Arial,sans-serif;font-size:clamp(1.3rem,2.6vw,2.15rem);font-weight:500;letter-spacing:.17em;margin-bottom:17px}.hero h1{font-size:clamp(3rem,6.5vw,6.5rem);font-weight:400;line-height:1.05;letter-spacing:-.07em;text-shadow:none}.hero__actions{margin-top:44px}.hero__actions .btn--hero-sub{border-color:rgba(255,255,255,.66);background:transparent}.hero__actions .btn--hero-sub:hover{background:#fff;color:var(--navy)}.hero__caption{left:auto;right:clamp(24px,5vw,72px);bottom:25px;color:rgba(255,255,255,.74);font-size:.6rem;font-weight:600;letter-spacing:.17em}.hero__visual-note{font-family:Arial,sans-serif;font-size:.58rem;letter-spacing:.20em;color:rgba(255,255,255,.68)}

.notice-rail{background:var(--navy);border:0;color:#fff}.notice-rail__inner{min-height:64px;gap:22px;font-size:.8rem;letter-spacing:.05em}.notice-rail__inner span:first-child{color:#8bd4eb;font-size:.64rem}.notice-rail__inner span:last-child{color:rgba(255,255,255,.62)}.news-section{background:var(--mist);border-bottom:1px solid var(--line);padding:34px 0}.news-section h2{font-size:1.05rem;letter-spacing:-.02em}.news-list--compact .news-item{font-size:.82rem}.news-list--compact .news-item b{font-size:.95rem;color:var(--blue)}

.introduction{padding:164px 0 118px}.introduction__grid{gap:14vw;margin-bottom:86px}.introduction__heading h2{font-size:clamp(2.5rem,4.7vw,5rem);font-weight:500;line-height:1.22;letter-spacing:-.07em}.introduction__body{font-size:.95rem}.introduction__body p:first-child{font-size:1.08rem;font-weight:500}.image-stage{min-height:590px;background:linear-gradient(135deg,#e8efed 0 49%,#102b3e 49% 70%,#24a9d5 70% 100%)}.image-stage:before{left:63%;top:-38%;background:rgba(255,255,255,.16);transform:rotate(31deg)}.image-stage img{height:590px;filter:saturate(.72) contrast(1.03) brightness(.88)}.image-stage:after{background:linear-gradient(0deg,rgba(7,19,30,.46),transparent 52%)}.image-stage__label{left:34px;bottom:29px;font-family:Arial,sans-serif;font-size:clamp(1.4rem,2.9vw,2.8rem);line-height:1;letter-spacing:.04em}.image-stage__line{right:32px;top:31px;height:70px}

.consultation{gap:12vw}.consultation__message{border-top:1px solid var(--navy);padding-top:25px}.consultation__message p{font-size:1.34rem;font-weight:500;line-height:1.5;letter-spacing:-.04em}.section__head--editorial{margin-bottom:64px}.principles{border-top-color:var(--ink)}.principles article{padding:31px 32px 20px 0;border-right-color:var(--line)}.principles article+article{padding-left:32px}.principles span{font-family:Arial,sans-serif;color:var(--blue);font-size:.76rem;letter-spacing:.1em;margin-bottom:46px}.principles h3{font-size:1.04rem;font-weight:700;letter-spacing:.04em}.principles p{font-size:.9rem;line-height:1.75}

.section--navy{background:var(--navy)}.section--navy .section-index{color:#8bd4eb}.treatment{gap:12vw}.treatment h2{font-size:clamp(2.5rem,4.5vw,4.7rem);font-weight:500;letter-spacing:-.06em}.treatment p{font-size:.93rem}.treatment__list article{padding:27px 0}.treatment__list h3{font-weight:500;letter-spacing:.02em}.text-link--light{color:#fff;border-bottom-color:rgba(255,255,255,.56)}

.editorial-flow{border-top-color:var(--ink)}.editorial-flow article{grid-template-columns:148px 1fr;gap:42px;padding:29px 0}.editorial-flow span{font-family:Arial,sans-serif;font-size:.78rem;letter-spacing:.12em;color:var(--blue)}.editorial-flow h3{font-size:1.05rem;font-weight:700;letter-spacing:.04em}.editorial-flow p{font-size:.91rem}.profile--editorial{gap:10vw}.profile--editorial .profile__photo{min-height:610px;background:linear-gradient(145deg,#e6ece9 0 53%,#1d4b62 53% 75%,#0b1825 75%);border:0}.profile--editorial .profile__photo:after{width:32%;height:32%;background:var(--blue)}.profile--editorial .profile__photo.has-image:after{background:linear-gradient(135deg,transparent 0 50%,rgba(37,169,213,.85) 50%)}.profile__name{font-weight:500;letter-spacing:-.04em}.profile--editorial p{max-width:440px}.faq-list{max-width:none;border-top:1px solid var(--ink)}.faq-item summary{padding:26px 0;font-size:1rem;letter-spacing:.025em}.faq-item summary:before{font-family:Arial,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.1em}.faq-item summary:after{font-size:1rem;font-weight:400}.faq-item__answer{padding:0 0 26px 38px;font-size:.92rem}.access-editorial{gap:12vw}.access-editorial__map{min-height:510px;background:linear-gradient(135deg,#e7efec 0 50%,#96cbd9 50% 72%,#1c455d 72%);padding:35px}.access-editorial__map:before{width:220px;height:220px;border-color:rgba(11,24,37,.32)}.access-editorial__map strong{font-size:1.28rem;font-weight:500;letter-spacing:-.03em}.access-list{border-top-color:var(--ink)}.access-list div{grid-template-columns:128px 1fr}.access-list dt{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.cta-panel--editorial{background:#0b1825;padding:72px 64px;gap:10vw}.cta-panel h2{font-weight:500;letter-spacing:-.055em}.cta-panel p{color:#b7c4ca}.cta-list .btn{border-color:rgba(255,255,255,.75);color:#fff}.cta-list .btn:hover{background:#fff;color:var(--navy)}.cta-list .btn--line{border-color:var(--blue);background:var(--blue)}

.page-hero{background:var(--mist);border-bottom:1px solid var(--line);padding:114px 0 78px}.page-hero h1{font-size:clamp(2.7rem,5vw,5rem);font-weight:500;letter-spacing:-.07em}.content{background:var(--mist)}.card,.notice,.map-placeholder{border-radius:0;border-color:var(--line);box-shadow:none;background:transparent}.slot-card{min-height:180px}.site-footer{background:#07131e}.footer__name{font-weight:500;letter-spacing:.1em}.mobile-cta{background:rgba(245,246,243,.96)}.mobile-cta a,.mobile-cta span{border-radius:0}.mobile-cta__line{background:var(--blue)}.mobile-cta__ig{background:#dfe8e7;color:var(--ink)}.mobile-cta__phone{background:var(--navy)}

@media(max-width:980px){.section{padding:100px 0}.introduction{padding:122px 0 94px}.introduction__grid,.consultation,.treatment,.access-editorial{gap:54px}.profile--editorial{gap:52px}.image-stage,.image-stage img{min-height:480px;height:480px}.profile--editorial .profile__photo{min-height:500px}.cta-panel--editorial{padding:52px 42px}.editorial-flow article{grid-template-columns:100px 1fr}}
@media(max-width:680px){.container{width:min(calc(100% - 34px),var(--max))}.site-header,.header__inner{height:64px}.header__inner{gap:15px}.brand__name{font-size:.78rem}.brand__mark{width:22px;height:22px}.mobile-nav.is-open{background:var(--mist);border-top-color:var(--line);padding:8px 17px 20px}.mobile-nav a{font-size:.9rem;font-weight:600}.hero--editorial,.hero--editorial .hero__inner{min-height:calc(100svh - 64px)}.hero__copy{padding:94px 0 124px}.hero__serial{margin-bottom:24px;font-size:.58rem}.hero__en{font-size:1.18rem;margin-bottom:14px}.hero h1{font-size:clamp(2.55rem,11.5vw,3.8rem);letter-spacing:-.075em}.hero__actions{margin-top:35px;width:min(100%,285px)}.hero__caption{display:block;right:18px;bottom:18px;font-size:.51rem;letter-spacing:.11em}.hero__visual-note{right:18px;bottom:48px}.notice-rail__inner{min-height:58px;gap:8px;font-size:.73rem}.notice-rail__inner span:last-child{display:none}.news-section{padding:27px 0}.section{padding:80px 0}.section__title{font-size:clamp(2rem,10vw,3.2rem)}.introduction{padding:105px 0 75px}.introduction__grid{gap:34px;margin-bottom:46px}.introduction__heading h2{font-size:clamp(2.25rem,10vw,3.25rem)}.introduction__body p:first-child{font-size:1rem}.image-stage,.image-stage img{min-height:390px;height:390px}.image-stage__label{left:20px;bottom:20px;font-size:1.3rem}.image-stage__line{right:21px;top:20px;height:52px}.consultation__message p{font-size:1.13rem}.section__head--editorial{margin-bottom:38px}.principles article,.principles article+article{padding:23px 0}.principles span{margin-bottom:15px}.treatment h2{font-size:clamp(2.2rem,10vw,3.4rem)}.editorial-flow article{grid-template-columns:55px 1fr;gap:15px;padding:22px 0}.profile--editorial .profile__photo{min-height:405px}.access-editorial__map{min-height:355px;padding:26px}.access-editorial__map:before{width:135px;height:135px;right:22px;top:24px}.access-list div{grid-template-columns:88px 1fr}.cta-panel--editorial{padding:46px 24px}.cta-panel h2{font-size:2.25rem}.site-footer{padding-bottom:94px}}
