@charset "UTF-8";
:root{--ink:#252c2a;--paper:#f7f3e9;--green:#25493e;--orange:#e78636;--navy:#10243b;--ice:#eaf3f6;--line:#d4d8d3;--sans:"source-han-sans-japanese","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--serif:"source-han-serif-japanese","Hiragino Mincho ProN","Yu Mincho",serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.9;background:#fff}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit;cursor:pointer}img{display:block;max-width:100%;object-fit:cover}figure,p,h1,h2,h3{margin:0}h1,h2,h3{line-height:1.55;overflow-wrap:anywhere}h1{font-size:clamp(36px,4.8vw,70px);letter-spacing:.04em}h2{font-size:clamp(27px,3vw,42px);letter-spacing:.04em}h3{font-size:21px}p+p{margin-top:20px}button,a,input,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #d45b00;outline-offset:5px}button:focus-visible,input:focus-visible{outline-offset:3px}.skip{position:fixed;left:15px;top:-100px;background:white;padding:10px;z-index:500}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}.section{padding:105px max(6vw,calc((100vw - 1240px)/2));scroll-margin-top:110px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:600;line-height:1.6;margin-bottom:22px}.fine{font-size:11px;line-height:1.9;color:#626b67;margin-top:20px}.fine a{text-decoration:underline}.section-top{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:42px}.section-top>p{font-size:14px;line-height:2.1}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--green);color:white;padding:16px 24px;min-height:54px;font-size:13px;font-weight:600;border:1px solid transparent;transition:background .25s,transform .25s}.button:hover{background:#366353;transform:translateY(-2px)}.button span{font-size:18px;line-height:1}.button.outline{background:transparent;border-color:currentColor;color:inherit}.button.outline:hover{background:#ffffff66}.button.text-link{color:inherit;background:transparent;padding-left:0;padding-right:0;gap:20px}.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:32px}.arrow-link{display:inline-flex;align-items:center;min-height:44px;font-size:13px;text-decoration:underline;text-underline-offset:7px;white-space:nowrap}.proposal-bar{height:35px;background:var(--navy);color:white;display:flex;justify-content:space-between;align-items:center;padding:0 4vw;font-size:9px;letter-spacing:.08em}.proposal-bar>span{display:flex;align-items:center;gap:14px}.proposal-bar b{font-weight:500}.proposal-bar i{font-style:normal;font-size:9px;border-left:1px solid #738294;padding-left:12px}.proposal-bar nav{display:flex;align-items:center;gap:24px}.proposal-bar a{display:flex;align-items:center;min-height:32px}.site-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:30px;padding:20px 4vw;background:var(--paper);min-height:90px;border-bottom:1px solid #25493e20}.wordmark{font-weight:600;font-size:21px;line-height:1.6;letter-spacing:.08em;display:block}.wordmark small{font-family:Arial,sans-serif;display:block;font-size:7px;letter-spacing:.12em;font-weight:400;margin-bottom:5px}.desktop-nav{display:flex;gap:28px;margin-left:auto;font-size:12px;white-space:nowrap}.desktop-nav a{display:inline-flex;align-items:center;min-height:44px}.desktop-nav a:hover,.desktop-nav a.is-current{border-bottom:1px solid currentColor}.header-consult{min-height:44px;padding:11px 22px;gap:20px;font-size:12px}.menu-toggle{display:none;border:0;background:transparent;font-size:24px;width:46px;height:46px}.mobile-menu{position:fixed;inset:80px 0 auto;background:var(--paper);padding:20px 6vw 30px;z-index:50;box-shadow:0 14px 20px #0002}.mobile-menu a{display:block;padding:12px 0;border-bottom:1px solid var(--line);min-height:50px}.design-a{background:var(--paper);color:var(--green)}.design-a h1,.design-a h2,.design-a .editorial h3,.design-a .a-membership h3{font-family:var(--serif);font-weight:500}.a-hero{position:relative;padding:32px 0 0 6vw}.a-hero-copy{position:relative;width:49%;z-index:2;padding:53px 0 70px}.a-hero-copy h1{font-size:clamp(36px,4.7vw,70px);line-height:1.65;letter-spacing:.08em}.a-hero-copy h1 span{position:relative}.a-hero-copy h1 span:after{content:"";height:7px;width:36px;background:var(--orange);display:block;margin-top:21px}.hero-note{font-size:14px;line-height:2.2;margin-top:28px}.a-hero .actions{gap:26px}.a-hero .text-link{font-size:12px}.a-hero-image{position:absolute;right:0;top:32px;bottom:78px;width:53%;overflow:hidden}.a-hero-image>img{height:100%;width:100%;object-position:56% 50%;animation:gentle-in 1.4s ease-out}.a-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#132b2c00 60%,#132b2c22)}.a-hero-image figcaption{position:absolute;bottom:20px;left:24px;font-size:10px;color:white;text-shadow:0 1px 4px #000;z-index:1}.vertical-copy{position:absolute;right:28px;top:40px;writing-mode:vertical-rl;color:white;font-family:var(--serif);font-size:17px;letter-spacing:.2em;z-index:1;text-shadow:0 1px 5px #000}.a-hero-index{display:block;font-family:Arial,sans-serif;font-size:10px;letter-spacing:.12em;margin-top:57px}.a-hero-bottom{position:relative;display:flex;justify-content:space-between;align-items:center;padding:24px 6vw 24px 0;font-size:9px;letter-spacing:.1em}.a-hero-bottom a{min-height:36px;display:flex;align-items:center}.a-news{padding-top:75px;padding-bottom:75px;background:#fffaf2}.a-news h2{font-size:28px}.news-list{border-top:1px solid #aab3ad}.news-row{display:grid;grid-template-columns:110px 115px 1fr 20px;gap:20px;align-items:center;border-bottom:1px solid #ccd0c7;padding:24px 0;font-size:13px;transition:padding .2s,background .2s}.news-row:hover{padding-left:10px;background:#fff8}.news-row time{font-size:12px;font-family:Arial,sans-serif;letter-spacing:.07em}.tag{font-size:10px;padding:2px 7px;border:1px solid #9ba79f;text-align:center;line-height:1.8}.a-support{padding-bottom:70px}.a-service-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #a5b2a7;border-left:1px solid #a5b2a7}.a-service{position:relative;padding:30px 25px;border-right:1px solid #a5b2a7;border-bottom:1px solid #a5b2a7;transition:background .2s}.a-service:hover{background:#f0e7d8}.a-service h3{font-family:var(--serif);font-size:23px;margin:13px 0}.a-service p{font-size:12px}.service-no{font-size:12px;letter-spacing:.1em;font-family:Arial,sans-serif}.a-service>span:last-child{position:absolute;right:22px;top:25px}.editorial{display:grid;grid-template-columns:1.1fr 1fr;gap:100px;align-items:center}.editorial figure img{height:520px;width:100%}.editorial figure{position:relative}.editorial figure:before{position:absolute;content:"";width:80px;height:80px;background:var(--orange);border-radius:50%;top:-30px;left:-25px;z-index:-1}.editorial figcaption{font-size:9px;margin-top:12px}.editorial h2{font-size:38px;margin-bottom:28px}.editorial p{font-size:14px;line-height:2.2}.service-details{max-width:1100px;margin:auto;padding-top:65px}.service-details h2{margin-bottom:45px}.service-details details{border-top:1px solid #a5b2a7}.service-details details:last-child{border-bottom:1px solid #a5b2a7}summary{cursor:pointer;min-height:60px;padding:22px 0;font-size:16px;line-height:1.7}summary:hover{opacity:.8}.service-details summary{display:flex;list-style:none;align-items:center;gap:30px}.service-details summary::-webkit-details-marker{display:none}.service-details summary span{font-size:11px}.service-details summary b{margin-left:auto;font-size:20px;font-weight:400}.service-details details>div{padding:0 0 30px 43px}.service-details details p{font-size:14px;margin-top:15px}.service-details details[open] summary b{transform:rotate(45deg)}.local-section{background:#eae8dc}.local-grid{display:grid;grid-template-columns:1.25fr 1fr .7fr;gap:26px;align-items:start}.local-grid figure:nth-child(2){padding-top:60px}.local-grid figure:nth-child(3){padding-top:135px}.local-grid img{width:100%;height:310px}.local-grid figure:nth-child(2) img{height:280px}.local-grid figure:nth-child(3) img{height:210px}.local-grid figcaption{font-size:10px;margin-top:13px}.a-membership{display:grid;grid-template-columns:1fr 1fr;gap:100px}.a-membership h2{margin-bottom:25px}.a-membership p{font-size:13px}.a-membership .fine{font-size:11px}.a-membership .button{margin-top:25px}.mutual{border:1px solid #a6b0a3;padding:36px}.mutual h3{font-size:25px;margin-bottom:18px}.mutual ul{font-size:13px;padding-left:20px}.access{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#ecefe9;align-items:center}.access-photo img{height:430px;width:100%;object-fit:contain;background:#d9ddd4}.access h2{margin-bottom:25px}.access dl{font-size:13px;margin:0 0 20px}.access dl>div{display:grid;grid-template-columns:85px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid #bfc8bc}.access dd{margin:0}.access dt{font-size:11px}.contact{background:var(--green);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.contact h2{font-size:36px;margin-bottom:25px}.contact p{font-size:13px;line-height:2.1}.phone-box{border-top:1px solid #799184;padding-top:30px}.phone-box>span{font-size:12px}.phone-box>a{display:block;font-size:clamp(25px,3vw,43px);font-family:Arial,sans-serif;line-height:1.8;margin:10px 0;letter-spacing:.02em}.phone-box>a span{font-size:24px}.phone-box small{font-size:11px}.design-a footer{background:#f7f3e9}footer{padding:60px 6vw 25px;display:grid;grid-template-columns:1fr 1fr;gap:50px;background:#f4f5f4}footer p{font-size:11px;margin-top:12px}footer small{font-size:9px;color:#65706d}footer nav{display:grid;grid-template-columns:1fr 1fr;gap:2px 30px;justify-self:end;font-size:12px}footer nav a{display:flex;align-items:center;min-height:44px}.footer-bottom{grid-column:1/-1;border-top:1px solid #ccd0cb;padding-top:20px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.06em}.design-b{--ink:var(--navy);color:var(--navy)}.design-b .site-header{background:white}.design-b .button,.design-b .contact{background:var(--navy)}.design-b .button:hover{background:#284963}.design-b .outline{color:var(--navy);background:transparent}.design-b .wordmark{letter-spacing:.02em}.design-b .button.outline:hover{background:#eaf3f6}.b-hero{display:grid;grid-template-columns:1.08fr 1fr;background:var(--ice);position:relative}.b-hero-text{padding:64px 30px 55px 6vw;background-image:radial-gradient(#a3b4bd66 .6px,transparent .6px);background-size:12px 12px}.b-hero-text h1{font-size:clamp(36px,4.9vw,70px);letter-spacing:-.04em;line-height:1.5;font-weight:750}.b-hero-text h1 span{color:#2e7084}.b-hero-text>p:not(.eyebrow){font-size:13px;line-height:2.2;margin-top:25px}.b-hero-text .actions{gap:14px}.b-principle{display:flex;gap:25px;border-top:1px solid #b7c8cf;padding-top:23px;font-size:11px;margin-top:45px}.b-principle span:before{content:"＋";color:#327b8e;margin-right:5px}.b-hero-visual{position:relative;overflow:hidden;margin:34px 34px 34px 0}.b-hero-visual img{height:100%;width:100%;object-position:40% 45%}.b-hero-visual:after{content:"";position:absolute;inset:20% 0 0;background:linear-gradient(transparent,#10243bce)}.b-photo-label{position:absolute;bottom:35px;left:35px;right:25px;color:white;z-index:1}.b-photo-label>span{font-size:9px;letter-spacing:.15em}.b-photo-label b{font-size:29px;line-height:1.6;display:block;margin:15px 0}.b-photo-label small{font-size:8px;display:block}.b-quick{display:grid;grid-template-columns:repeat(3,1fr);padding:0 6vw;background:var(--navy);color:white}.b-quick a{padding:23px 22px;border-right:1px solid #4c5a6a;font-size:13px}.b-quick a:first-child{border-left:1px solid #4c5a6a}.b-quick a:hover{background:#294861}.b-quick span{color:#77c3d4;font-family:Arial,sans-serif;font-size:11px;margin-right:16px}.design-b .eyebrow{color:#3e6679}.design-b .contact .eyebrow{color:#aac7d7}.finder{padding-bottom:90px}.finder h2{font-size:32px}.support-tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-bottom:16px}.support-tabs button{background:white;border:1px solid #b5c6cd;min-height:60px;padding:10px 5px;font-size:12px;font-weight:600}.support-tabs button[aria-selected=true]{background:var(--navy);border-color:var(--navy);color:white}.support-panel{background:var(--ice);border-left:4px solid #3e92a6;padding:34px 40px;display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:220px}.support-panel h3{font-size:27px;margin-bottom:16px}.support-panel p{max-width:650px;font-size:13px}.support-panel .eyebrow{display:block;margin-bottom:12px}.support-panel .button{flex-shrink:0}.b-services{background:#f5f7f8}.b-service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid #bdcbd1;border-top:1px solid #bdcbd1}.b-service-grid article{background:white;padding:30px;border-right:1px solid #bdcbd1;border-bottom:1px solid #bdcbd1;transition:box-shadow .2s,transform .2s;scroll-margin-top:120px}.b-service-grid article:hover{box-shadow:0 8px 25px #10243b12;transform:translateY(-3px)}.b-service-grid .service-no{color:#326a7c}.b-service-grid h3{font-size:24px;margin:20px 0 17px}.b-service-grid p{font-size:13px;line-height:2;min-height:100px}.b-service-grid small{font-size:10px;color:#486575;display:block;margin-top:22px}.b-service-grid article>a{border-top:1px solid #d8e0e4;margin-top:23px;padding-top:15px;display:flex;justify-content:space-between;align-items:center;min-height:50px;font-size:12px}.flow ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px}.flow li{padding:30px 0;border-top:2px solid #2b6179}.flow li>span{font-size:11px;color:#486c81;letter-spacing:.1em}.flow h3{font-size:23px;margin:18px 0}.flow li p{font-size:13px}.b-news{background:var(--ice)}.b-faq{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.b-faq h2{margin-bottom:25px}.b-faq p{font-size:13px}.b-faq details{border-top:1px solid #b6c6ce;padding-bottom:5px}.b-faq details:last-child{border-bottom:1px solid #b6c6ce}.b-faq summary{font-size:14px}.b-faq details p,.b-faq details a{margin:0 0 20px;font-size:13px}.b-faq details a{display:block;text-decoration:underline}.b-members{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;background:var(--navy);color:white;align-items:center}.b-members .eyebrow{color:#98c3d3}.b-member-photo img{width:100%;height:350px}.b-members h2{font-size:32px;margin-bottom:25px}.b-members p{font-size:13px}.b-members .button{background:white;color:var(--navy)}.b-members .button.outline{background:transparent;color:white}.design-b .access{background:#f1f5f7}.design-b .access h2{font-size:32px}.floating-phone{position:fixed;right:22px;bottom:22px;background:var(--navy);color:white;z-index:30;padding:12px 20px;font-size:10px;box-shadow:0 3px 14px #0002;transition:opacity .2s}.floating-phone span{display:block;font-size:17px;font-family:Arial,sans-serif}.floating-phone.is-hidden{opacity:0;pointer-events:none}.compare{background:#f4f3ef}.compare-header{display:flex;justify-content:space-between;align-items:center;padding:20px 4vw;border-bottom:1px solid #d0d1ca;font-size:12px}.compare-header>a:first-child{font-family:Arial,sans-serif;font-size:22px;letter-spacing:.04em;font-weight:600}.compare-header a>span{font-size:9px;margin-left:15px;letter-spacing:.12em;font-weight:400}.compare-header a{min-height:44px;display:flex;align-items:center}.compare-intro{padding:48px 4vw 36px;display:flex;justify-content:space-between;align-items:flex-end}.compare-intro .eyebrow{margin-bottom:15px}.compare-intro h1{font-family:var(--serif);font-weight:500;font-size:37px;line-height:1.5;letter-spacing:.06em}.compare-intro p:last-child{font-size:12px;margin-top:14px}.proposal-label{font-size:10px;line-height:1.9;text-align:right;color:#65706d}.previews{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:0 4vw 65px}.design-preview{background:var(--paper);border:1px solid #c5c8bf;overflow:hidden}.preview-heading{display:flex;justify-content:space-between;align-items:center;padding:18px 22px}.preview-heading>div{display:flex;align-items:center;gap:16px}.design-letter{font-family:Georgia,serif;font-size:45px;line-height:1}.preview-heading p{font-family:Arial,sans-serif;font-size:9px;letter-spacing:.14em}.preview-heading .button{font-size:11px;min-height:44px;padding:10px 16px;gap:20px}.preview-image{display:block;overflow:hidden;background:#deded6}.preview-image img{width:100%;height:auto;aspect-ratio:1.6;transition:transform .5s}.preview-image:hover img{transform:scale(1.02)}.preview-caption{padding:20px 24px 24px}.preview-caption h2{font-family:var(--serif);font-weight:500;font-size:24px}.preview-caption p{font-size:11px;margin-top:8px}.preview-b{background:var(--navy);color:white;border-color:var(--navy)}.preview-b .design-letter{font-family:Arial,sans-serif}.preview-b .button{background:white;color:var(--navy)}.preview-b .preview-caption h2{font-family:var(--sans);font-weight:600}.comparison{background:#fff;padding-top:80px}.comparison>p:not(.eyebrow){font-size:13px;margin-top:22px}.table-wrap{margin-top:40px;overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}th,td{padding:22px 24px;border-bottom:1px solid #d7ddd8;vertical-align:top}thead{background:#edf0eb}thead th{font-weight:500;font-size:12px}tbody th{font-weight:500;width:18%;font-size:12px}td{width:41%}.gallery-cta{display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center}.gallery-cta p{font-size:13px;margin-top:20px}.gallery-cta .button{margin-top:30px}.gallery-cta>a{border-left:1px solid #bac1b8;padding-left:65px;display:flex;flex-direction:column;font-size:10px;letter-spacing:.1em}.gallery-number{font-family:Georgia,serif;font-size:200px;line-height:1.2;color:var(--green)}.sp-only{display:none}.gallery{background:#f4f5f3}.gallery-main{max-width:1380px;margin:auto;padding:0 5vw}.gallery-intro{padding:65px 0 45px}.gallery-intro h1{font-family:var(--serif);font-weight:500;font-size:45px}.gallery-intro>p:not(.eyebrow){margin-top:25px;font-size:14px}.gallery-intro .fine{font-size:11px!important}.gallery-toolbar{position:sticky;top:0;background:#f4f5f3ed;backdrop-filter:blur(10px);z-index:20;display:flex;justify-content:space-between;gap:30px;padding:15px 0;border-bottom:1px solid #bac5be;align-items:center}.gallery-toolbar [role=tablist]{display:flex;gap:10px}.gallery-toolbar button{border:1px solid #a9b7ac;background:transparent;padding:12px 22px;font-size:13px;min-height:48px}.gallery-toolbar button[aria-selected=true]{background:var(--green);color:white;border-color:var(--green)}.gallery-toolbar fieldset{border:0;margin:0;padding:0;display:flex;gap:20px;font-size:12px}.gallery-toolbar label{display:flex;align-items:center;gap:5px;min-height:44px;cursor:pointer}.variation{padding:55px 0 65px;border-bottom:1px solid #bac5be}.variation-head{display:flex;gap:28px;align-items:flex-start;margin-bottom:28px}.variation-head>span{font-size:42px;font-family:Georgia,serif;line-height:1.3;color:var(--green)}.variation-head h2{font-size:24px;font-weight:500}.variation-head p{font-size:12px;max-width:800px;margin-top:12px}.variation-images{display:grid;grid-template-columns:1fr 26%;gap:35px;align-items:start}.variation-images figure>figcaption{font-size:9px;letter-spacing:.12em;margin-bottom:10px}.enlarge{border:0;display:block;padding:0;background:white;width:100%;position:relative;box-shadow:0 4px 20px #10243b10}.enlarge img{width:100%;height:auto;object-fit:contain}.enlarge>span{position:absolute;bottom:12px;right:12px;padding:6px 13px;font-size:10px;background:#10243be8;color:white;min-height:35px;display:flex;align-items:center}.enlarge:hover{outline:2px solid #6a8c79}.variation-images.only-pc{grid-template-columns:1fr}.variation-images.only-pc .device-pc{max-width:100%}.variation-images.only-sp{grid-template-columns:minmax(0,370px)}.adopted{padding:65px 0}.adopted h2{font-size:25px}.adopted p{font-size:12px}.adopted>div{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:25px}.adopted a{font-size:12px}.adopted img{margin-bottom:10px;border:1px solid #c5cec6;height:auto}dialog{border:0;padding:18px 28px;width:min(1400px,96vw);max-width:96vw;height:94dvh;max-height:94dvh;background:#f7f8f5;color:var(--ink)}dialog::backdrop{background:#0a1927e8}.lightbox-top{display:flex;justify-content:space-between;align-items:center;gap:15px;height:50px}.lightbox-top h2{font-size:15px;font-weight:500}.lightbox-top button,.lightbox-controls button{border:1px solid #a6b4ab;padding:10px 16px;min-height:44px;background:transparent;font-size:12px}.lightbox-stage{height:calc(100% - 145px);display:flex;align-items:center;justify-content:center;padding:10px 0}.lightbox-stage img{max-width:100%;max-height:100%;height:auto;object-fit:contain;width:auto}.lightbox-controls{display:flex;justify-content:center;align-items:center;gap:30px;height:55px;font-size:12px}.lightbox-dots{display:flex;justify-content:center;align-items:center;gap:0;height:35px}.lightbox-dots button{border:0;background:transparent;min-width:30px;min-height:35px;padding:8px;position:relative}.lightbox-dots button:after{content:"";display:block;width:6px;height:6px;border-radius:50%;background:#a2aca4;margin:auto}.lightbox-dots button[aria-current=true]:after{background:var(--green);outline:2px solid var(--green);outline-offset:3px}.credit-content{max-width:1100px;margin:auto;padding:60px 6vw}.credit-content h1{font-size:35px}.credit-content h2{font-size:23px;margin:45px 0 20px}.credit-content p,.credit-content li{font-size:13px;overflow-wrap:anywhere}.credit-content a{text-decoration:underline}.credit-entry{margin:20px 0;padding:20px 0;border-bottom:1px solid var(--line)}.credit-entry img{width:180px;height:120px;margin-bottom:15px}.js-ready .reveal{opacity:0;transform:translateY(18px);transition:opacity .65s,transform .65s}.js-ready .reveal.visible{opacity:1;transform:translateY(0)}@keyframes gentle-in{from{transform:scale(1.025)}to{transform:scale(1)}}
@media(min-width:1500px){.a-hero-copy{padding-top:75px;padding-bottom:90px}.b-hero-text{padding-top:85px;padding-bottom:80px}}
@media(max-width:1100px){.desktop-nav{gap:15px}.site-header{gap:18px}.wordmark{font-size:19px}.section{padding:75px 5vw}.a-hero{padding-left:5vw}.a-hero-copy{padding-top:40px}.a-hero-copy h1{font-size:46px}.a-hero .actions{gap:12px}.a-hero .button{padding:13px 18px;gap:18px}.editorial{gap:50px}.a-membership{gap:50px}.access,.contact,.b-faq,.b-members{gap:45px}.b-hero-text{padding-left:5vw}.b-hero-text h1{font-size:49px}.b-hero-visual{margin-right:20px}.support-panel{padding:30px;gap:20px}.support-panel .button{gap:15px;padding:15px}.preview-heading{padding:15px}.preview-heading>div{gap:10px}.preview-heading p{font-size:8px}.preview-heading .button{gap:10px;padding:10px}.preview-caption h2{font-size:20px}.compare-intro h1{font-size:32px}.b-service-grid article{padding:25px}.b-service-grid p{min-height:130px}}
@media(max-width:850px){.desktop-nav{display:none}.header-consult{margin-left:auto}.menu-toggle{display:block}.site-header{min-height:78px;padding:15px 5vw}.mobile-menu{top:78px}.a-hero-copy h1{font-size:39px}.hero-note{font-size:12px}.a-hero-copy{width:50%;padding-bottom:35px}.a-hero .actions{align-items:flex-start;flex-direction:column;gap:5px}.a-hero-index{margin-top:25px}.a-hero-image{width:49%;bottom:72px}.a-hero .eyebrow{font-size:8px}.a-service-list{grid-template-columns:repeat(2,1fr)}.b-hero-text h1{font-size:39px}.b-hero-text{padding-top:45px}.b-hero-text .actions{align-items:stretch;gap:10px}.b-hero-text .button{padding:12px;gap:12px;font-size:11px}.b-hero-visual{margin-left:0}.b-principle{gap:10px;font-size:10px}.b-quick a{padding:20px 12px;font-size:11px}.section-top{gap:25px}.support-tabs{grid-template-columns:repeat(3,1fr)}.support-panel{display:block}.support-panel .button{margin-top:25px}.b-service-grid{grid-template-columns:repeat(2,1fr)}.b-service-grid p{min-height:90px}.editorial{gap:35px}.editorial figure img{height:460px}.local-grid{gap:15px}.local-grid img{height:250px}.a-membership{gap:35px}.access{gap:35px}.access-photo img{height:350px}.access dl>div{grid-template-columns:55px 1fr;gap:15px}.access h2,.contact h2{font-size:28px}.contact{gap:35px}.phone-box>a{font-size:28px}.b-members{gap:30px}.b-member-photo img{height:310px}.b-members h2{font-size:27px}.preview-heading p{display:none}.compare-intro h1{font-size:30px}.previews{gap:20px}.preview-caption h2{font-size:17px}.gallery-cta{gap:40px}.gallery-cta>a{padding-left:40px}.gallery-number{font-size:160px}.gallery-toolbar{gap:15px}.gallery-toolbar fieldset{gap:10px}.gallery-toolbar button{padding:12px;font-size:12px}.b-faq{gap:35px}.b-faq h2{font-size:28px}}
@media(max-width:600px){html{scroll-padding-top:78px}body{font-size:14px}.section{padding:60px 6vw}.eyebrow{font-size:9px;margin-bottom:18px}h2{font-size:28px}.proposal-bar{height:32px;padding:0 5vw;letter-spacing:0;font-size:8px}.proposal-bar>span{gap:8px}.proposal-bar i{display:none}.proposal-bar nav{gap:14px}.proposal-bar a{font-size:9px}.wordmark{font-size:17px;letter-spacing:.03em}.wordmark small{font-size:5.4px;letter-spacing:.06em;margin-bottom:4px}.site-header{padding:12px 5vw;min-height:72px;gap:10px}.header-consult{padding:9px 10px;min-height:42px;font-size:10px;gap:7px}.header-consult span{font-size:13px}.menu-toggle{width:36px;min-width:36px;padding:0;font-size:23px}.mobile-menu{top:72px}.section-top{display:block;margin-bottom:30px}.section-top>p{font-size:12px;margin-top:22px}.section-top .arrow-link{margin-top:18px}.button{min-height:50px;padding:13px 20px;font-size:12px;gap:25px}.actions{gap:18px;margin-top:25px}.a-hero{padding:0 0 0}.a-hero-copy{width:100%;padding:38px 6vw 27px}.a-hero-copy h1{font-size:42px;line-height:1.6;letter-spacing:.06em}.a-hero-copy h1 span:after{height:5px;width:30px;margin-top:15px}.a-hero .eyebrow{font-size:9px;margin-bottom:15px}.hero-note{font-size:12px;line-height:2;margin-top:20px}.a-hero .actions{flex-direction:row;align-items:center;gap:20px;margin-top:20px}.a-hero .text-link{font-size:11px}.a-hero-index{display:none}.a-hero-image{position:relative;top:auto;right:auto;bottom:auto;width:94%;height:290px;margin-left:6%}.a-hero-image img{object-position:56% 50%}.a-hero-image figcaption{font-size:8px;bottom:14px;left:16px}.vertical-copy{font-size:12px;right:17px;top:22px}.a-hero-bottom{padding:15px 6vw;font-size:8px}.a-hero-bottom>span:last-child{display:none}.a-hero-bottom a{min-height:30px}.a-news h2{font-size:24px}.news-row{grid-template-columns:95px 1fr 14px;gap:11px;padding:22px 0;font-size:12px}.news-row>span:nth-child(3){grid-column:1/3;grid-row:2}.news-row>span:last-child{grid-row:2;grid-column:3}.news-row time{font-size:11px}.tag{font-size:9px;justify-self:start}.fine{font-size:10px;line-height:1.9}.a-service{padding:24px 16px}.a-service h3{font-size:21px;margin:14px 0 10px}.a-service p{font-size:10px;max-width:130px;line-height:1.9}.service-no{font-size:10px}.a-service>span:last-child{right:14px;top:18px}.editorial{grid-template-columns:1fr;gap:35px}.editorial figure img{height:350px}.editorial figure:before{width:65px;height:65px;top:-20px;left:-12px}.editorial h2{font-size:33px}.editorial p{font-size:13px}.service-details h2{margin-bottom:30px}.service-details details>div{padding-left:0}.service-details summary{font-size:15px;gap:20px}.service-details details h3{font-size:18px}.service-details details p{font-size:12px}.local-grid{grid-template-columns:1fr 1fr;gap:22px 15px}.local-grid figure:nth-child(2){padding-top:40px}.local-grid figure:nth-child(3){padding-top:0;grid-column:1/3;display:flex;align-items:center;gap:20px}.local-grid img{height:200px}.local-grid figure:nth-child(2) img{height:200px}.local-grid figure:nth-child(3) img{height:110px;width:45%}.local-grid figcaption{font-size:8px}.local-section .actions{align-items:flex-start;gap:12px;flex-direction:column}.a-membership{grid-template-columns:1fr;gap:35px}.mutual{padding:27px}.access{grid-template-columns:1fr;gap:30px}.access-photo img{height:280px;object-fit:cover}.access h2{font-size:28px}.access dl{font-size:12px}.access dl>div{grid-template-columns:70px 1fr}.contact{grid-template-columns:1fr;gap:30px}.contact h2{font-size:29px}.contact p{font-size:12px}.phone-box{padding-top:24px}.phone-box>a{font-size:34px;margin:8px 0}footer{padding:45px 6vw 25px;grid-template-columns:1fr;gap:30px}footer .wordmark{font-size:20px}footer nav{justify-self:stretch;font-size:11px;gap:0 20px}.footer-bottom{display:block;font-size:8px}.footer-bottom span{display:block;margin-top:8px}.b-hero{grid-template-columns:1fr}.b-hero-text{padding:38px 6vw 28px}.b-hero-text h1{font-size:43px;letter-spacing:-.045em;line-height:1.5}.b-hero-text>p:not(.eyebrow){font-size:11px;line-height:2;margin-top:22px}.b-hero-text .actions{margin-top:23px;gap:10px}.b-hero-text .button{font-size:11px;gap:16px;padding:13px 15px;min-height:47px}.b-principle{margin-top:26px;padding-top:18px;gap:25px;font-size:10px}.b-hero-visual{height:240px;margin:0 6vw 24px}.b-hero-visual img{object-position:center 56%}.b-photo-label{bottom:20px;left:20px}.b-photo-label>span{font-size:8px}.b-photo-label b{font-size:22px;line-height:1.5;margin:8px 0}.b-photo-label small{font-size:6px}.b-quick{padding:0 4vw}.b-quick a{padding:15px 7px;font-size:9px;line-height:1.8}.b-quick span{display:block;font-size:9px;margin:0}.finder h2{font-size:27px}.support-tabs{gap:7px}.support-tabs button{font-size:10px;min-height:50px;padding:7px 4px}.support-panel{padding:25px 22px;min-height:280px}.support-panel h3{font-size:22px}.support-panel p{font-size:12px}.support-panel .eyebrow{font-size:8px}.support-panel .button{margin-top:22px;font-size:11px}.b-services h2{font-size:28px}.b-service-grid{grid-template-columns:1fr}.b-service-grid article{padding:25px}.b-service-grid h3{font-size:23px;margin:15px 0}.b-service-grid p{font-size:12px;min-height:0}.b-service-grid small{margin-top:15px}.b-service-grid article>a{margin-top:18px}.flow ol{grid-template-columns:1fr;gap:5px;margin-top:30px}.flow li{padding:25px 0}.flow h3{font-size:21px;margin:12px 0}.flow li p{font-size:12px}.b-faq{grid-template-columns:1fr;gap:30px}.b-faq h2{font-size:28px}.b-faq summary{font-size:13px;min-height:60px;padding:20px 0}.b-faq details p,.b-faq details a{font-size:12px}.b-members{grid-template-columns:1fr;gap:30px}.b-member-photo img{height:240px}.b-members h2{font-size:28px}.b-members p{font-size:12px}.b-members .actions{gap:10px}.b-members .button{font-size:11px;padding:13px 15px;gap:12px}.design-b .access h2{font-size:28px}.floating-phone{right:12px;bottom:12px;padding:10px 15px;font-size:9px}.floating-phone span{font-size:15px}.compare-header{padding:12px 5vw;gap:15px}.compare-header>a:first-child{font-size:19px}.compare-header a>span{display:none}.compare-header>a:last-child{font-size:10px}.compare-intro{display:block;padding:35px 6vw 28px}.compare-intro h1{font-size:29px;line-height:1.7}.compare-intro .eyebrow{font-size:8px}.compare-intro p:last-child{font-size:10px;margin-top:13px}.proposal-label{display:block;text-align:left;font-size:8px;margin-top:18px}.proposal-label br{display:none}.sp-only{display:block}.previews{grid-template-columns:1fr;gap:24px;padding:0 6vw 45px}.preview-heading{padding:16px}.preview-heading p{display:block;font-size:7px;letter-spacing:.05em}.design-letter{font-size:39px}.preview-heading .button{font-size:10px;padding:10px 12px;gap:12px}.preview-image img{aspect-ratio:1.6}.preview-caption{padding:18px}.preview-caption h2{font-size:21px}.preview-caption p{font-size:10px}.comparison{padding-top:55px}.comparison h2{font-size:25px}.comparison>p:not(.eyebrow){font-size:12px}table{font-size:11px;table-layout:fixed}th,td{padding:15px 10px;overflow-wrap:anywhere}tbody th{font-size:10px;width:23%}thead th{font-size:10px}td{width:38.5%}.gallery-cta{grid-template-columns:1fr;gap:30px}.gallery-cta h2{font-size:30px}.gallery-cta p{font-size:11px}.gallery-cta .button{font-size:11px;gap:15px;padding:15px}.gallery-cta>a{border-left:0;border-top:1px solid #bac1b8;padding:25px 0 0;flex-direction:row;gap:25px;align-items:center;font-size:8px}.gallery-number{font-size:100px}.gallery-main{padding:0 6vw}.gallery-intro{padding:40px 0 30px}.gallery-intro h1{font-size:36px}.gallery-intro>p:not(.eyebrow){font-size:12px}.gallery-intro .fine{font-size:10px!important}.gallery-toolbar{display:block;padding:12px 0}.gallery-toolbar [role=tablist]{gap:8px}.gallery-toolbar button{flex:1;padding:10px 12px;min-height:44px;font-size:11px}.gallery-toolbar fieldset{gap:20px;justify-content:center;margin-top:6px;font-size:10px}.gallery-toolbar label{min-height:38px}.variation{padding:35px 0 40px}.variation-head{gap:15px}.variation-head>span{font-size:30px}.variation-head h2{font-size:20px}.variation-head p{font-size:10px;line-height:2}.variation-images{grid-template-columns:minmax(0,1fr) 31%;gap:12px}.variation-images figure>figcaption{font-size:7px;letter-spacing:.02em}.enlarge>span{right:5px;bottom:5px;font-size:8px;padding:4px 7px;min-height:28px}.variation-images.only-sp{grid-template-columns:minmax(0,1fr)}.adopted{padding:45px 0}.adopted h2{font-size:22px}.adopted>div{grid-template-columns:1fr;gap:25px}.adopted a{font-size:11px}dialog{padding:10px 12px;width:96vw;height:94dvh}.lightbox-top h2{font-size:12px}.lightbox-top button{font-size:10px;padding:8px 10px}.lightbox-controls{gap:18px}.lightbox-controls button{font-size:11px;padding:10px 13px}.lightbox-dots button{min-width:23px;padding:7px 5px}.credit-content{padding:40px 6vw}.credit-content h1{font-size:27px}.credit-content p,.credit-content li{font-size:11px}}
@media(max-width:355px){.a-hero-copy h1{font-size:36px}.b-hero-text h1{font-size:37px}.wordmark{font-size:15px}.wordmark small{font-size:4.8px}.header-consult{padding:9px 8px}.site-header{gap:6px}.a-hero .actions{gap:13px}.a-hero .button{padding:12px 15px}.a-hero .text-link{font-size:10px}.preview-heading p{display:none}.preview-caption h2{font-size:18px}.b-principle{gap:13px}.b-hero-text .actions{gap:8px}.b-hero-text .button{padding:12px 10px;gap:8px;font-size:10px}.phone-box>a{font-size:30px}.a-hero-image{height:260px}.gallery-toolbar button{font-size:10px}.proposal-bar>span{gap:4px}.proposal-bar nav{gap:10px}}
.lightbox-dots{display:grid;grid-template-columns:repeat(12,44px);height:44px;gap:0;justify-content:center}.lightbox-dots button{width:44px;height:44px;min-width:44px;min-height:44px}.lightbox-stage{height:calc(100% - 155px)}
@media(max-width:600px){.lightbox-dots{grid-template-columns:repeat(6,44px);height:88px}.lightbox-stage{height:calc(100% - 200px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-ready .reveal{opacity:1;transform:none}}

.preview-caption h2 span{display:inline-block}

.gallery{--sans:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--serif:"Hiragino Mincho ProN","Yu Mincho",serif}

/* Revision 2.0: raster scene illustrations; selectors stay within each design. */
.design-a .ai-scene,.design-b .ai-scene{min-width:0;margin:0}
.design-a .ai-scene img,.design-b .ai-scene img{display:block;width:100%;height:auto;object-fit:contain}
.design-a .ai-scene figcaption,.design-b .ai-scene figcaption{font-size:10px;line-height:1.6;margin-top:9px;letter-spacing:.03em}
.design-a .ai-scene figcaption{color:#51675a}
.design-a .ai-a-support-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center;margin-bottom:45px}
.design-a .ai-a-support-intro .section-top{display:block;margin:0}
.design-a .ai-a-support-intro .section-top>p{margin-top:26px}
.design-a .ai-consult-scene{max-width:610px;justify-self:end}
.design-a .ai-a-story-intro{display:grid;grid-template-columns:1fr 1.1fr;gap:30px;align-items:center;margin:0 0 40px}
.design-a .ai-a-story-intro h2{margin:0}
.design-a .ai-membership-scene{margin-top:30px;max-width:540px}
.design-a .ai-mutual-scene{margin-top:25px;max-width:390px}
.design-a .contact .ai-contact-scene{margin-top:23px;max-width:300px}
.design-a .contact .ai-contact-scene figcaption{color:#e4ece3}
.design-b .ai-scene figcaption{color:#496372}
.design-b .support-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,34%);gap:24px 38px;align-items:center}
.design-b .support-panel>div{grid-column:1;grid-row:1}
.design-b .support-panel>#panel-link{grid-column:1;grid-row:2;justify-self:start;margin:0}
.design-b .support-panel>.ai-finder-scene{grid-column:2;grid-row:1 / span 2;align-self:center}
.design-b .b-service-grid article{--ai-service-padding:30px;padding:var(--ai-service-padding)}
.design-b .b-service-grid .ai-service-scene{margin:calc(-1 * var(--ai-service-padding)) calc(-1 * var(--ai-service-padding)) 26px;background:#eaf3f6}
.design-b .ai-service-scene img{aspect-ratio:8/5;object-fit:cover}
.design-b .ai-service-scene figcaption{padding:0 var(--ai-service-padding) 10px;margin-top:0;font-size:9px}
@media(max-width:1100px){.design-a .ai-a-support-intro{gap:35px}.design-a .ai-a-story-intro{gap:28px}.design-b .b-service-grid article{--ai-service-padding:25px}}
@media(max-width:850px){.design-b .support-panel{grid-template-columns:minmax(0,1fr);gap:24px}.design-b .support-panel>div,.design-b .support-panel>#panel-link,.design-b .support-panel>.ai-finder-scene{grid-column:auto;grid-row:auto}.design-b .support-panel>.ai-finder-scene{max-width:440px;justify-self:center}.design-a .ai-a-support-intro{gap:25px}.design-a .ai-a-story-intro{grid-template-columns:1fr 1.2fr;gap:25px}}
@media(max-width:600px){.design-a .ai-a-support-intro{grid-template-columns:minmax(0,1fr);gap:25px;margin-bottom:30px}.design-a .ai-a-support-intro .section-top>p{margin-top:22px}.design-a .ai-consult-scene{justify-self:stretch}.design-a .ai-a-story-intro{grid-template-columns:minmax(0,1fr);gap:25px;margin-bottom:28px}.design-a .ai-membership-scene{margin-top:25px}.design-a .ai-mutual-scene{margin-top:23px}.design-a .contact .ai-contact-scene{max-width:270px}.design-a .ai-scene figcaption,.design-b .ai-scene figcaption{font-size:9px}.design-b .support-panel{gap:23px}.design-b .ai-service-scene figcaption{font-size:9px}.design-b .b-service-grid .ai-service-scene{margin-bottom:23px}}
