@charset "UTF-8";
:root{--navy:#0c2148;--navy-deep:#06152f;--blue:#244776;--gold:#b18c42;--gold-light:#e8cf93;--ink:#152842;--muted:#586272;--paper:#fafbfc;--line:#d9dee5;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.95;background:#fff;-webkit-font-smoothing:antialiased}body,h1,h2,h3,p,figure,ul,ol{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b78f40;outline-offset:6px}::selection{background:#e9d4a1;color:var(--navy)}h1,h2,h3{font-family:var(--serif);font-weight:600;font-feature-settings:"palt";letter-spacing:.02em;line-height:1.65}h2{font-size:clamp(27px,3vw,39px)}h3{font-size:23px}em{font-style:normal;color:#aa8137}p{overflow-wrap:anywhere}.skip{position:fixed;top:-100px;left:10px;z-index:100;background:#fff;padding:12px}.skip:focus{top:10px}[hidden]{display:none!important}.header{height:94px;position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,4.6vw,80px);background:rgba(255,255,255,.96);border-bottom:1px solid rgba(12,33,72,.07);transition:box-shadow .25s}.header.scrolled{box-shadow:0 5px 30px #06152f10}.brand{display:flex;align-items:center;gap:18px;flex-shrink:0}.brand-name{font:600 29px/1 var(--serif);letter-spacing:-.015em;color:var(--navy)}.brand-sub{display:block;font:500 11px/1.2 var(--sans);letter-spacing:.07em;margin-top:9px}.brand-divider{height:36px;width:1px;background:#d3d6dd}.brand img{width:100px;height:50px;object-fit:cover}.desktop-nav{display:flex;align-items:center;gap:29px;font-size:14px;font-weight:600}.desktop-nav>a:not(.nav-cta){position:relative}.desktop-nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-7px;background:var(--gold);height:1px;transition:right .2s}.desktop-nav>a:hover:after{right:0}.nav-cta{padding:12px 22px;border:1px solid #173763;color:#fff;background:linear-gradient(115deg,#253f65,#0c2148);box-shadow:0 4px 10px #0c214820;border-radius:3px}.nav-cta span{margin-left:18px;color:var(--gold-light)}.menu-toggle{display:none}.mobile-nav{position:fixed;top:78px;left:0;right:0;background:linear-gradient(140deg,#fff,#eef1f6);z-index:29;padding:24px 28px 30px;box-shadow:0 15px 25px #0c214829}.mobile-nav a{display:block;padding:12px 0;border-bottom:1px solid #d9dee5}.hero{position:relative;min-height:756px;display:grid;grid-template-columns:55% 45%;overflow:hidden;background:radial-gradient(ellipse at 28% 15%,#2c476c 0%,transparent 48%),linear-gradient(125deg,#112c53,#071831 90%);color:#fff}.hero-glow{position:absolute;width:1200px;height:1200px;border:1px solid #ba96512b;border-radius:50%;left:-710px;top:-335px;pointer-events:none}.hero-glow:after{content:"";position:absolute;inset:45px;border:1px solid #ba965126;border-radius:50%}.hero-copy{position:relative;z-index:2;padding:72px 20px 105px max(5.5vw,calc((100vw - 1260px)/2));align-self:center}.eyebrow{font:600 12px/1.6 var(--sans);letter-spacing:.2em;color:#a07934;margin-bottom:21px}.eyebrow.light{color:#e1c48a}.hero .eyebrow{display:flex;align-items:center;gap:12px;font-size:13px;letter-spacing:.12em}.hero .eyebrow>span{height:1px;width:26px;background:#dab976}.hero h1{font-size:clamp(47px,5.3vw,78px);letter-spacing:.025em;line-height:1.5;margin-bottom:25px}.hero h1 em{color:#e4c686;background:linear-gradient(120deg,#f8e7b9,#ca9e52);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-lead{font-size:19px;line-height:1.85;letter-spacing:.07em;margin-bottom:21px}.hero-detail{font-size:15px;line-height:1.95;color:#cbd4e2;letter-spacing:.025em}.hero-actions{display:flex;gap:27px;align-items:center;margin:30px 0 33px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:62px;padding:17px 26px;border-radius:3px;font-size:15px;font-weight:700;letter-spacing:.045em;transition:transform .25s,box-shadow .25s,filter .25s;line-height:1.65}.button.gold{color:#172741;background:linear-gradient(115deg,#c8a15a 0%,#f6e6bc 43%,#d7b578 100%);border:1px solid #eddbac;box-shadow:0 6px 26px #06152f24,inset 0 1px 0 #fff9}.button:hover{transform:translateY(-3px);box-shadow:0 10px 27px #06152f3d;filter:brightness(1.04)}.button span{font:400 21px/1 var(--sans)}.text-link{display:inline-flex;align-items:center;gap:26px;padding:9px 0;border-bottom:1px solid #a6aebc;color:var(--navy);font-size:14px;font-weight:600}.text-link span{color:var(--gold)}.text-link.light{color:#fff;border-color:#66738a}.hero-proof{display:flex;align-items:flex-start;gap:29px;padding-top:23px;border-top:1px solid #ffffff25;max-width:492px;font-size:12px;color:#c6cfdf;line-height:1.6}.hero-proof>span{padding-right:25px}.hero-proof>span+span{border-left:1px solid #ffffff29;padding-left:28px}.hero-proof strong{display:block;font-size:18px;line-height:1.6;color:#f1dfb4;font-weight:600;margin-top:5px}.hero-proof small{font-size:11px;display:block;margin-top:5px;color:#b9c5d6}.hero-image{position:relative;margin:35px 35px 50px 0;min-width:0;clip-path:polygon(10% 0,100% 0,100% 100%,0 100%,0 10%);overflow:hidden}.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:51% 30%;animation:heroIn 1.7s ease both}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0b224bab,transparent 43%),linear-gradient(90deg,#14335324,transparent 35%);pointer-events:none}.hero-image figcaption{position:absolute;z-index:2;right:14px;top:14px;background:#fff9;color:var(--navy);font-size:11px;padding:3px 9px;letter-spacing:.07em}.hero-image-line{position:absolute;z-index:1;inset:24px;border:1px solid #fff7;pointer-events:none}.hero-image-word{position:absolute;left:40px;bottom:63px;z-index:2;font:italic 34px/1.2 Georgia,serif;letter-spacing:.025em;color:#fff;transform:rotate(-4deg)}.scroll-cue{position:absolute;bottom:25px;left:max(5.5vw,calc((100vw - 1260px)/2));font-size:10px;letter-spacing:.22em;color:#c7cfdb;display:flex;gap:28px;align-items:center}.scroll-cue span{font-size:23px;line-height:1;animation:nudge 2.2s infinite}.section{padding:115px max(6vw,calc((100vw - var(--max))/2));}.section-narrow{margin:0 auto;max-width:1200px}.about{display:grid;grid-template-columns:43% 1fr;gap:90px;align-items:center}.section-copy p{color:var(--muted);margin-top:22px;line-height:2.05}.section-copy .text-link{margin-top:20px}.photo{position:relative;overflow:hidden;background:#eef0f1}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.photo figcaption{position:absolute;right:8px;bottom:8px;padding:2px 8px;font:400 11px/1.7 var(--sans);color:#334057;background:#ffffffdf;z-index:1}.about-visual{position:relative;padding:0 34px 30px 0}.about-visual:before{content:"";position:absolute;inset:35px 0 0 40px;border:1px solid #c2a05e;background:linear-gradient(145deg,#eee7db30,#f7f5f200);z-index:-1}.about-photo{height:530px;box-shadow:0 18px 35px #13284410}.about-photo img{object-position:44% 35%}.image-seal{position:absolute;right:0;bottom:-3px;background:linear-gradient(140deg,#14355f,#071b3a);color:#ead4a4;width:174px;height:174px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #c8a665;outline:5px solid white}.image-seal>span{font:italic 25px/1.25 Georgia,serif}.image-seal small{font-size:9px;letter-spacing:.2em;margin-top:15px}.cta-band{display:flex;align-items:center;gap:31px;background:radial-gradient(ellipse at 90% 30%,#e3dfd347,transparent 55%),linear-gradient(110deg,#f4f6fa,#fefefe);border:1px solid #e2e3e6;padding:21px 31px 21px 21px;box-shadow:0 8px 32px #0c214807;position:relative;border-left:3px solid #b58f48}.cta-band>figure{width:146px;height:132px;position:relative;flex-shrink:0;overflow:hidden}.cta-band>figure img{width:100%;height:100%;object-fit:cover;object-position:50% 23%}.cta-band figcaption{position:absolute;right:5px;bottom:4px;font-size:10px;color:var(--navy);background:#ffffffce;padding:0 5px}.cta-band .eyebrow{font-size:10px;margin-bottom:5px}.cta-band h2{font-size:23px;line-height:1.65}.cta-band .button{margin-left:auto;white-space:nowrap}.stack{display:block}.tinted{background:radial-gradient(ellipse at 100% 0,#dce5ef40,transparent 50%),linear-gradient(125deg,#f8fafb,#f1f3f6 60%,#f9f9f8)}.section-heading{text-align:center;margin-bottom:57px}.section-heading p{color:var(--muted);margin-top:20px;line-height:1.95}.section-heading.left{text-align:left}.section-heading .eyebrow{margin-bottom:17px}#concerns{margin-top:105px}.grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}.image-card{background:linear-gradient(155deg,#fff,#fff 80%,#f4f3ef);border:1px solid #e4e5e8;box-shadow:0 15px 40px #162e4b06}.image-card .photo{aspect-ratio:1.48}.image-card:hover .photo img{transform:scale(1.035)}.card-body{padding:28px 25px 32px}.card-index{display:block;color:#9f803f;font-size:11px;font-weight:600;letter-spacing:.13em;margin-bottom:14px}.card-body h3{font-size:22px;line-height:1.75}.card-body p{font-size:15px;color:var(--muted);line-height:1.95;margin-top:15px}.recommended-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:33px}.future-card:nth-child(2){margin-top:54px}.future-card:nth-child(3){margin-top:108px}.future-card .photo{height:330px;clip-path:polygon(0 0,94% 0,100% 6%,100% 100%,0 100%)}.future-card .photo img{object-position:50% 25%}.future-card>div{padding:25px 0}.future-card .card-index{font-size:10px;letter-spacing:.12em}.future-card h3{font-size:25px;line-height:1.75}.future-card p{font-size:15px;line-height:1.95;color:var(--muted);margin-top:17px}.navy-section{color:#fff;background:radial-gradient(ellipse at 10% 10%,#23436985,transparent 40%),radial-gradient(ellipse at 95% 70%,#26477180,transparent 60%),linear-gradient(125deg,#102a50,#081832);position:relative}.navy-section h2 em{color:#e2c68b}.navy-section .section-heading p{color:#c0cbda}.reasons-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.reason-card{display:grid;grid-template-columns:38% 1fr;border:1px solid #71819a40;background:linear-gradient(130deg,#ffffff0d,#ffffff02);min-height:267px}.reason-card>.photo{height:100%;min-height:267px}.reason-card>.photo img{object-position:50% 23%}.reason-card>div{padding:27px}.reason-number{font:400 31px/1 Georgia,serif;color:#b79a61;display:block;margin-bottom:14px}.reason-card h3{font-size:23px;line-height:1.6;margin-bottom:12px}.reason-card p{color:#c2ccda;font-size:14px;line-height:1.95}.reason-card.wide{grid-column:1/-1;grid-template-columns:40% 1fr;min-height:355px}.reason-card.wide .photo{height:100%;max-height:440px}.reason-card.wide .photo img{object-position:50% 46%}.reason-card.wide>div{position:relative;padding:36px 45px}.reason-card.wide h3{font-size:29px}.reward{display:flex;gap:14px;align-items:baseline;margin-top:13px;color:#e7cb91}.reward>span{font-size:16px}.reward strong{font:400 65px/1.15 Georgia,serif;letter-spacing:-.015em}.reward strong small{font:400 25px var(--serif);margin-left:6px}.note{font-size:12px!important;color:#6a7280!important;line-height:1.8!important;margin-top:12px!important}.navy-section .note{color:#b4c0d2!important}.navy-section+.cta-band{margin-top:64px}.services-section{padding-top:96px}.service-list{display:flex;flex-direction:column;gap:64px}.service-row{display:grid;grid-template-columns:47% 1fr;gap:74px;align-items:center}.service-row .photo{height:347px;box-shadow:15px 15px 0 #f0f2f5}.service-row .photo img{object-position:50% 36%}.service-row.reverse{grid-template-columns:1fr 47%}.service-row.reverse>.photo{grid-column:2;grid-row:1;box-shadow:-15px 15px 0 #f0f2f5}.service-row.reverse>div{grid-column:1;grid-row:1}.service-row h3{font-size:31px}.service-row p{color:var(--muted);margin-top:20px;line-height:2}.service-tag{display:inline-block;font-size:12px;letter-spacing:.04em;border:1px solid #c6b388;padding:5px 13px;color:#816433;margin-top:24px;background:linear-gradient(135deg,#fcf8ef,#fff)}.photo-cta{height:470px;position:relative;overflow:hidden;background:var(--navy);color:#fff}.photo-cta>figure{position:absolute;inset:0}.photo-cta>figure img{width:100%;height:100%;object-fit:cover;object-position:50% 27%}.photo-cta>figure:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#091f48f5 10%,#0e2b50c7 54%,#10305740)}.photo-cta figcaption{position:absolute;right:20px;bottom:20px;color:#fff;font-size:11px;z-index:2;background:#0c214860;padding:2px 9px}.photo-cta-copy{position:relative;padding:64px max(6vw,calc((100vw - var(--max))/2));z-index:1}.photo-cta h2{font-size:38px;line-height:1.65}.photo-cta p{font-size:15px;color:#d9e0ea;margin-top:17px}.photo-cta .button{margin-top:25px}.photo-cta .eyebrow{font-size:10px;margin-bottom:15px}.steps{padding:0;list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}.step{position:relative}.step:not(:last-child):after{content:"›";position:absolute;top:85px;right:-19px;color:#ad8c4f;font:32px/1 Georgia,serif}.step .photo{height:200px;margin-bottom:24px}.step .photo img{object-position:50% 25%}.step .photo figcaption{font-size:10px;padding:0 5px;right:5px;bottom:5px}.step-number{font:600 11px/1.5 var(--sans);letter-spacing:.14em;color:#a17e3d}.step h3{font-size:20px;margin:10px 0 13px;letter-spacing:0}.step p{font-size:14px;color:var(--muted);line-height:1.95}.before{display:grid;grid-template-columns:1fr 39%;gap:90px;align-items:center}.before h2{font-size:34px}.before-photo{height:575px}.before-photo img{object-position:52% 40%}.check-list{list-style:none;padding:0;margin:27px 0 0}.check-list li{position:relative;padding:18px 0 18px 34px;border-bottom:1px solid #dce0e7}.check-list li:before{content:"✓";position:absolute;left:0;top:18px;color:#a6803a}.check-list strong{font-size:16px;font-weight:600}.check-list span{display:block;font-size:14px;color:var(--muted);margin-top:4px;line-height:1.85}.faq-section{display:grid;grid-template-columns:30% 1fr;gap:90px;align-items:start}.faq-intro h2{font-size:33px}.faq-intro p{color:var(--muted);margin-top:16px}.faq-intro .photo{height:280px;margin-top:31px}.faq-intro .photo img{object-position:50% 30%}.faq-list{border-top:1px solid #c7ccd6}.faq-list details{border-bottom:1px solid #c7ccd6}.faq-list summary{padding:25px 30px 25px 0;position:relative;display:flex;align-items:flex-start;gap:14px;cursor:pointer;font-size:16px;font-weight:600;list-style:none;line-height:1.9}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:#a28040;font:400 24px/1.35 Georgia,serif;flex-shrink:0}.faq-list summary i{position:absolute;right:2px;top:34px;width:13px;height:13px}.faq-list summary i:before,.faq-list summary i:after{content:"";background:#64748a;width:13px;height:1px;position:absolute;top:6px;left:0;transition:transform .2s}.faq-list summary i:after{transform:rotate(90deg)}.faq-list details[open] summary i:after{transform:rotate(0)}.answer{padding:0 18px 27px 36px;font-size:15px;line-height:2;color:var(--muted)}.contact-section{display:grid;grid-template-columns:44% 56%;background:radial-gradient(ellipse at 100% 10%,#294b7180,transparent 70%),linear-gradient(145deg,#102a50,#071832);color:#fff;min-height:655px}.contact-image{position:relative;overflow:hidden}.contact-image>img{width:100%;height:100%;object-fit:cover;object-position:50% 24%}.contact-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#0c214826)}.contact-image figcaption{position:absolute;bottom:14px;left:16px;font-size:11px;color:var(--navy);background:#ffffffe0;padding:2px 9px;z-index:1}.contact-copy{padding:78px max(6vw,calc((100vw - var(--max))/2)) 78px 75px}.contact-copy h2{font-size:clamp(29px,3.2vw,43px);line-height:1.65}.contact-copy h2 em{color:#e4ca91}.contact-copy p{font-size:16px;line-height:1.95;color:#cbd5e3;margin-top:25px}.contact-mail{margin-top:30px;min-width:340px}.mail-address{display:block;color:#d5ddeb;font-size:14px;margin-top:12px;letter-spacing:.04em;width:fit-content}.phone-contact{display:flex;align-items:center;flex-wrap:wrap;gap:9px 20px;padding-top:26px;border-top:1px solid #ffffff2b;margin-top:26px}.phone-contact>span{font-size:12px;color:#b5c4d9}.phone-contact>a{font:400 26px/1.5 Georgia,serif;letter-spacing:.01em}.phone-contact>a span{font:400 21px var(--sans);color:#dabc7d;margin-left:13px}.contact-copy .contact-hint{font-size:12px;color:#b4c3d9;margin-top:18px;line-height:1.9}.footer{padding:40px max(6vw,calc((100vw - var(--max))/2)) 24px;background:linear-gradient(110deg,#fff,#fafbfd)}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:29px;border-bottom:1px solid #e0e3e8}.footer .brand-name{font-size:27px}.footer .brand img{margin-left:7px}.back-top{font-size:12px;color:#596b82}.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:20px}.footer-bottom p{font-size:11px;color:#6c7583;line-height:1.85}.footer-bottom small{font-size:11px;color:#6c7583;white-space:nowrap}.mobile-cta{display:none}.mobile-only{display:none}.will-reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}.is-visible{opacity:1;transform:translateY(0)}.grid-three .reveal:nth-child(2),.recommended-grid .reveal:nth-child(2){transition-delay:.08s}.grid-three .reveal:nth-child(3),.recommended-grid .reveal:nth-child(3){transition-delay:.16s}@keyframes nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}@keyframes heroIn{from{transform:scale(1.045)}to{transform:scale(1)}}
@media(min-width:1600px){.hero{min-height:840px}.hero-copy{padding-left:calc((100vw - 1320px)/2)}.hero-image{margin-right:max(35px,calc((100vw - 1440px)/2))}.hero-image>img{object-position:50% 28%}.hero-actions{margin-top:36px}}
@media(max-width:1180px){.desktop-nav{gap:18px;font-size:13px}.brand{gap:10px}.brand-name{font-size:25px}.brand img{width:84px}.header{padding:0 28px}.hero{grid-template-columns:56% 44%}.hero-copy{padding-left:5vw;padding-top:56px}.hero h1{font-size:56px}.hero-lead{font-size:17px}.hero-detail{font-size:14px}.hero-actions{gap:18px;flex-wrap:wrap}.hero .button{font-size:14px;gap:19px;padding:15px 21px}.hero-image{margin-right:22px}.hero-proof{gap:20px}.hero-proof strong{font-size:17px}.hero-image-word{font-size:27px;left:28px}.section{padding:90px 5vw}.about{gap:55px}.about-photo{height:485px}.section h2{font-size:32px}.section-narrow{margin-left:5vw;margin-right:5vw}.cta-band{gap:23px;padding:20px}.cta-band h2{font-size:20px}.cta-band figure{width:106px;height:121px}.cta-band .button{font-size:14px;gap:16px;padding:16px 18px}.grid-three{gap:20px}.card-body{padding:23px 19px}.card-body h3{font-size:20px}.recommended-grid{gap:25px}.future-card h3{font-size:22px}.future-card .photo{height:290px}.reason-card{grid-template-columns:34% 1fr}.reason-card>div{padding:22px}.reason-card h3{font-size:21px}.service-row{gap:55px}.steps{gap:18px}.step h3{font-size:18px}.step .photo{height:175px}.step:not(:last-child):after{right:-16px;top:75px}.before{gap:65px}.faq-section{gap:55px}.contact-copy{padding:70px 5vw 70px 50px}.contact-mail{min-width:0;width:100%}}
@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:flex;width:42px;height:42px;flex-direction:column;justify-content:center;gap:7px;align-items:center;background:transparent;border:1px solid #d8dce3;border-radius:2px}.menu-toggle span{width:19px;height:1px;background:var(--navy);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.header{height:78px}.hero{min-height:0;grid-template-columns:56% 44%}.hero-copy{padding:54px 10px 78px 5vw}.hero h1{font-size:44px}.hero .eyebrow{font-size:11px;letter-spacing:.07em;gap:7px}.hero .eyebrow>span{width:17px}.hero-lead{font-size:15px;letter-spacing:.02em}.hero-detail{font-size:13px}.hero-actions{gap:15px;margin:22px 0}.hero-actions .text-link{font-size:12px}.hero-proof{gap:13px}.hero-proof>span{padding-right:0}.hero-proof>span+span{padding-left:15px}.hero-proof strong{font-size:14px}.hero-proof small{font-size:10px;max-width:155px}.hero-image{margin:25px 20px 35px 0}.hero-image-line{inset:14px}.hero-image-word{font-size:22px;left:20px;bottom:50px}.about{gap:34px;grid-template-columns:41% 1fr}.section h2{font-size:28px}.section-copy p{font-size:15px}.about-photo{height:470px}.image-seal{width:140px;height:140px}.image-seal>span{font-size:21px}.cta-band{display:grid;grid-template-columns:95px 1fr;gap:15px 22px;padding:20px}.cta-band figure{width:95px;height:110px;grid-row:1/3}.cta-band .button{justify-self:start;margin-left:0;padding:12px 20px;min-height:50px}.cta-band h2{font-size:21px}.cta-band h2 br{display:none}.grid-three{gap:15px}.card-body{padding:19px 15px 24px}.card-body h3{font-size:18px}.card-body p{font-size:14px}.future-card .photo{height:260px}.future-card h3{font-size:21px}.future-card .card-index{font-size:9px}.future-card p{font-size:14px}.reasons-grid{gap:18px}.reason-card{display:flex;flex-direction:column}.reason-card>.photo{height:180px;min-height:0}.reason-card .photo img{object-position:50% 30%}.reason-card.wide{display:grid;grid-template-columns:40% 1fr}.reason-card.wide .photo{min-height:100%}.reason-card.wide>div{padding:30px}.service-row,.service-row.reverse{gap:40px;grid-template-columns:46% 1fr}.service-row h3{font-size:26px}.service-row p{font-size:15px}.service-row .photo{height:325px}.steps{grid-template-columns:1fr}.step{display:grid;grid-template-columns:155px 1fr;gap:28px;padding:0 0 23px;margin-bottom:5px;border-bottom:1px solid #d5dbe3;align-items:center}.step .photo{height:150px;margin:0}.step:not(:last-child):after{display:none}.step h3{font-size:22px;margin:4px 0 9px}.step p{font-size:15px}.before{grid-template-columns:1fr 35%;gap:40px}.before-photo{height:580px}.before .section-copy h2{font-size:27px}.faq-section{grid-template-columns:30% 1fr;gap:35px}.faq-intro .eyebrow{font-size:10px}.faq-intro h2{font-size:25px}.faq-list summary{font-size:15px}.contact-section{grid-template-columns:40% 60%}.contact-copy{padding:60px 5vw 60px 35px}.contact-copy h2{font-size:29px}.contact-copy p{font-size:15px}.contact-mail{font-size:14px;padding:17px 19px}.phone-contact{display:block}.phone-contact>a{display:block;margin-top:4px}.footer-bottom{align-items:flex-end}.footer-bottom p{max-width:70%}}
@media(max-width:640px){html{scroll-padding-top:90px}.header{padding:0 19px;height:76px}.brand-name{font-size:24px}.brand-sub{font-size:9px;letter-spacing:.025em;margin-top:7px}.brand-divider{height:30px}.brand{gap:11px}.brand img{width:82px;height:45px}.mobile-nav{top:76px}.hero{display:flex;flex-direction:column;padding-bottom:0;overflow:hidden}.hero-copy{padding:44px 25px 35px;order:0}.hero .eyebrow{font-size:11px;letter-spacing:.08em;margin-bottom:19px}.hero h1{font-size:clamp(39px,11vw,61px);line-height:1.55;letter-spacing:.025em;margin-bottom:20px}.hero-lead{font-size:16px;line-height:1.9;letter-spacing:.015em;margin-bottom:17px}.hero-detail{font-size:14px;line-height:1.95;max-width:470px}.hero-actions{margin:26px 0 26px;flex-wrap:nowrap;gap:20px}.hero-actions .button{min-height:59px;padding:15px 20px;font-size:14px;gap:17px;flex-grow:1;white-space:nowrap}.hero-actions .text-link{font-size:12px;flex-direction:column;gap:0;border:none;white-space:nowrap;padding:0;line-height:1.6}.hero-proof{padding-top:20px;gap:0;max-width:none;font-size:11px}.hero-proof>span{flex:1;padding-right:14px}.hero-proof>span+span{padding-left:22px;padding-right:0;flex:1.12}.hero-proof strong{font-size:16px}.hero-proof small{font-size:10px;max-width:190px}.hero-image{height:345px;width:calc(100% - 25px);margin:0 0 0 25px;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%,0 9%);order:1;flex:none}.hero-image img{object-position:50% 28%}.hero-image figcaption{font-size:10px;top:12px;right:12px}.hero-image-line{inset:18px}.hero-image-word{font-size:27px;bottom:38px;left:34px}.scroll-cue{display:none}.section{padding:74px 25px}.about{display:flex;flex-direction:column;gap:44px}.about-visual{width:100%;padding:0 21px 23px 0}.about-photo{height:362px}.about-photo img{object-position:50% 24%}.about-visual:before{inset:25px 0 0 28px}.image-seal{width:133px;height:133px;right:0;bottom:0}.image-seal>span{font-size:21px}.image-seal small{font-size:8px;margin-top:12px}.section h2{font-size:27px;line-height:1.75;letter-spacing:0}.eyebrow{font-size:11px;margin-bottom:16px}.section-copy p{font-size:16px;line-height:2;margin-top:20px}.section-copy .text-link{font-size:14px;margin-top:15px}.section-narrow{margin-left:25px;margin-right:25px}.cta-band{padding:19px;grid-template-columns:75px 1fr;gap:14px 17px}.cta-band figure{width:75px;height:106px;grid-row:1}.cta-band figcaption{font-size:9px;right:2px;padding:0 3px}.cta-band h2{font-size:19px;line-height:1.75}.cta-band h2 br{display:initial}.cta-band .eyebrow{font-size:9px}.cta-band .button{grid-column:1/-1;width:100%;min-height:54px;padding:13px 19px;font-size:14px}.section-heading{margin-bottom:33px}.section-heading p{font-size:15px;margin-top:17px;line-height:1.95}.section-heading .eyebrow{margin-bottom:14px}#concerns{margin-top:72px}.mobile-only{display:initial}.desktop-only{display:none}.grid-three{grid-template-columns:1fr;gap:25px}.image-card .photo{aspect-ratio:1.6}.card-body{padding:23px 24px 29px}.card-index{font-size:11px;margin-bottom:10px}.card-body h3{font-size:24px}.card-body p{font-size:16px;margin-top:15px}.recommended-grid{grid-template-columns:1fr;gap:34px}.future-card:nth-child(2),.future-card:nth-child(3){margin-top:0}.future-card .photo{height:335px}.future-card .photo img{object-position:50% 25%}.future-card:nth-child(2) .photo img{object-position:50% 42%}.future-card>div{padding:21px 0 0}.future-card .card-index{font-size:10px}.future-card h3{font-size:26px}.future-card p{font-size:16px;margin-top:13px}.reasons-grid{grid-template-columns:1fr;gap:23px}.reason-card{display:grid;grid-template-columns:32% 1fr;min-height:0}.reason-card>.photo{height:100%;min-height:250px}.reason-card .photo img{object-position:47% 28%}.reason-card>div{padding:24px 19px 24px 21px}.reason-number{font-size:27px;margin-bottom:13px}.reason-card h3{font-size:22px}.reason-card p{font-size:15px;line-height:1.95}.reason-card .photo figcaption{font-size:9px;right:3px;bottom:5px;padding:1px 4px}.reason-card.wide{display:flex;flex-direction:column}.reason-card.wide .photo{height:228px;min-height:0}.reason-card.wide .photo img{object-position:50% 40%}.reason-card.wide>div{padding:26px}.reason-card.wide h3{font-size:28px}.reward strong{font-size:68px}.reward>span{font-size:15px}.navy-section+.cta-band{margin-top:49px}.service-list{gap:45px}.service-row,.service-row.reverse{display:flex;flex-direction:column;gap:33px;align-items:stretch}.service-row .photo,.service-row.reverse .photo{height:288px;box-shadow:10px 10px 0 #f1f2f5;margin-right:10px}.service-row h3{font-size:28px;line-height:1.65}.service-row p{font-size:16px;line-height:2;margin-top:17px}.service-tag{font-size:12px;margin-top:20px}.photo-cta{height:485px}.photo-cta>figure img{object-position:55% 25%}.photo-cta>figure:after{background:linear-gradient(90deg,#092048e8,#0e2b50ab)}.photo-cta-copy{padding:58px 25px}.photo-cta h2{font-size:33px;line-height:1.65}.photo-cta p{font-size:15px}.photo-cta .eyebrow{font-size:9px;letter-spacing:.16em}.photo-cta .button{font-size:14px;margin-top:28px;min-width:295px}.photo-cta figcaption{right:13px;bottom:12px;font-size:10px}.steps{gap:21px}.step{grid-template-columns:105px 1fr;gap:20px;padding-bottom:24px;align-items:stretch}.step .photo{height:100%;min-height:182px}.step .photo img{object-position:50% 24%}.step>div{padding-top:3px}.step h3{font-size:21px;margin:7px 0 12px}.step p{font-size:15px;line-height:1.95}.step .photo figcaption{font-size:9px;right:3px;bottom:3px;padding:1px 4px}.step-number{font-size:10px}.before{display:flex;flex-direction:column;gap:33px}.before .section-copy h2{font-size:26px}.before-photo{height:325px;width:100%;order:1}.before-photo img{object-position:50% 28%}.check-list strong{font-size:16px}.check-list span{font-size:14px;line-height:1.9}.check-list li{padding-top:17px;padding-bottom:17px}.faq-section{display:flex;flex-direction:column;gap:33px}.faq-intro{width:100%}.faq-intro .eyebrow{font-size:11px}.faq-intro h2{font-size:30px}.faq-intro p{font-size:16px}.faq-intro .photo{height:230px;margin-top:23px}.faq-intro .photo img{object-position:50% 24%}.faq-list{width:100%}.faq-list summary{padding:23px 28px 23px 0;font-size:16px;gap:12px;line-height:1.9}.faq-list summary>span{font-size:23px}.answer{font-size:15px;padding:0 4px 24px 32px;line-height:2}.contact-section{display:flex;flex-direction:column}.contact-image{height:295px;order:1}.contact-image img{object-position:50% 28%}.contact-copy{padding:63px 25px 50px;order:0}.contact-copy h2{font-size:34px;line-height:1.7}.contact-copy p{font-size:16px;margin-top:20px}.contact-mail{width:100%;font-size:16px;min-height:64px;margin-top:27px}.mail-address{font-size:14px;text-align:center;margin:13px auto 0}.phone-contact{display:flex;gap:9px 18px;align-items:center;justify-content:space-between;padding-top:21px;margin-top:24px}.phone-contact>span{font-size:12px}.phone-contact>a{font-size:26px;margin:0}.phone-contact>a span{font-size:17px;margin-left:6px}.contact-copy .contact-hint{font-size:12px;margin-top:20px}.footer{padding:32px 25px 100px}.footer-top{gap:18px;padding-bottom:23px}.footer .brand{gap:8px}.footer .brand-name{font-size:22px}.footer .brand-sub{font-size:8px}.footer .brand img{width:74px;height:44px;margin-left:0}.back-top{font-size:11px;max-width:55px;text-align:right;line-height:1.8}.footer-bottom{display:block;padding-top:20px}.footer-bottom p{max-width:none;font-size:11px;line-height:1.9}.footer-bottom small{display:block;margin-top:15px;font-size:10px}.mobile-cta{display:grid;grid-template-columns:30% 70%;position:fixed;bottom:0;left:0;right:0;z-index:28;background:linear-gradient(120deg,#19385f,#0c2148);box-shadow:0 -3px 20px #102a5029;padding-bottom:env(safe-area-inset-bottom,0px)}.mobile-cta a{min-height:61px;display:flex;align-items:center;justify-content:center;font-size:12px;color:#fff;font-weight:500;letter-spacing:.025em}.mobile-cta a+ a{font-size:14px;color:var(--navy);gap:22px;background:linear-gradient(110deg,#c7a057,#f0dba9 50%,#d5b579)}.mobile-cta span{font-size:21px}.will-reveal{transform:translateY(18px)}}
@media(max-width:370px){.header{padding:0 15px}.brand{gap:7px}.brand-name{font-size:21px}.brand img{width:73px}.brand-sub{font-size:8px}.hero-copy{padding-left:20px;padding-right:20px}.hero h1{font-size:38px}.hero-actions{gap:13px}.hero-actions .button{font-size:12px;padding:14px 14px;gap:10px}.hero-actions .text-link{font-size:11px}.hero-proof strong{font-size:14px}.hero-proof>span+span{padding-left:15px}.section{padding-left:20px;padding-right:20px}.section h2{font-size:25px}.reason-card>div{padding:20px 15px}.reason-card h3{font-size:20px}.reason-card p{font-size:14px}.cta-band h2{font-size:17px}.contact-copy h2{font-size:30px}.contact-mail{font-size:14px}.photo-cta .button{min-width:0;width:100%;font-size:13px}.step{grid-template-columns:90px 1fr;gap:16px}.step h3{font-size:19px}.mobile-cta a+a{font-size:12px}.phone-contact>a{font-size:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.will-reveal{opacity:1!important;transform:none!important}}

/* Official LINE consultation entry point */
.contact-line{margin-top:30px;min-width:340px}
.button.secondary{color:#e4eaf3;background:linear-gradient(115deg,#ffffff10,#ffffff03);border:1px solid #b8c6d35c;box-shadow:inset 0 1px 0 #ffffff0c}
.contact-line+.contact-mail{display:flex;width:fit-content;margin-top:14px}
@media(max-width:1180px){.contact-line{min-width:0;width:100%}.contact-line+.contact-mail{width:100%}}
@media(max-width:640px){.contact-line{font-size:16px;min-height:64px;margin-top:27px}.mobile-cta a+a{font-size:13px;gap:15px}}
@media(max-width:370px){.contact-line{font-size:14px}.mobile-cta a+a{font-size:12px}}
