:root{color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color:#f5f5f7;background:#080d19;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}.masthead{position:absolute;inset:0 0 auto;z-index:3;display:flex;justify-content:space-between;align-items:center;padding:32px 5vw}.wordmark{font-family:Arial,sans-serif;font-size:29px;font-weight:700;letter-spacing:-1.3px}.wordmark span{font-size:18px;color:#edd9a4;margin-left:5px}.header-service{font-size:16px;color:#bbc3d4}.hero{position:relative;min-height:900px;min-height:max(760px,100svh);overflow:hidden;background:radial-gradient(ellipse at 75% 40%,#19263d88,transparent 47%),linear-gradient(125deg,#090e1a,#080c15 70%)}.art{position:absolute;inset:10% 0 10% 18%;pointer-events:none}.ambient{position:absolute;inset:10% 0 0;background:radial-gradient(ellipse at 72% 55%,#c4933c14,transparent 40%),radial-gradient(ellipse at 35% 40%,#355da320,transparent 50%)}.art:after{content:"";position:absolute;width:60%;height:7%;bottom:14%;left:20%;border-radius:50%;background:#02050ce0;filter:blur(25px)}canvas{display:block;width:100%;height:100%;position:relative;z-index:1;opacity:0}.art[data-ready="true"] canvas{opacity:1}.fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:20px;z-index:1;transform:rotate(-7deg)}.fallback span{font:900 clamp(160px,24vw,370px)/1 Arial,sans-serif;letter-spacing:-.055em;color:#526ba4;text-shadow:1px 1px #9faed2,3px 3px #2c3a61,6px 6px #2c3a61,10px 10px #1f2e50,17px 17px #111c33,24px 27px 26px #0008}.fallback i{width:40px;height:40px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fffce5,#ebcc86 40%,#856335);box-shadow:0 0 60px #eac57950;align-self:center;margin-top:160px}.art[data-ready="true"] .fallback{visibility:hidden}.copy{position:relative;z-index:2;max-width:920px;padding:clamp(190px,23vh,260px) 0 120px 5vw;pointer-events:none}.copy>*{pointer-events:auto;width:fit-content}.eyebrow{font:600 12px/1.5 Arial,sans-serif;letter-spacing:.2em;color:#aeb9d0;margin:0 0 23px}h1{margin:0;font-weight:700}.name{display:block;font:600 38px/1.2 Arial,sans-serif;letter-spacing:-1.5px;margin-bottom:24px}.reading{font:500 18px/1.5 -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN",sans-serif;letter-spacing:.03em;margin-left:8px}.headline{display:block;font-size:clamp(40px,4.1vw,59px);line-height:1.34;letter-spacing:-.045em;text-shadow:0 2px 25px #080d19aa}.headline em{font-style:normal;color:#f0ddb1}.description{font-size:18px;line-height:1.9;color:#c5ccda;margin:26px 0 16px}.service{font-size:16px;line-height:1.75;color:#b1bbce;margin:0 0 26px}.cta{display:flex;align-items:center;justify-content:space-between;gap:28px;background:#f3e2b8;color:#111a2b;padding:19px 25px;border:1px solid #f6e8cb;border-radius:40px;font-size:20px;font-weight:600;line-height:1.4;max-width:100%}.cta span{font:24px Arial,sans-serif}.cta:disabled{opacity:1;cursor:default}.cta:hover:not(:disabled){background:#fff0cc}.cta:focus-visible,a:focus-visible{outline:3px solid #fff;outline-offset:6px}.cta-note{font-size:16px;color:#aab4c8;margin:13px 0 0;line-height:1.6}.scene-footer{position:absolute;inset:auto 5vw 26px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #8294b62a;padding-top:20px}.scene-footer p{font-size:16px;line-height:1.6;margin:0;color:#aeb9ce}.scene-footer span{font:11px Arial,sans-serif;letter-spacing:.2em;color:#71819d}@media(min-width:1000px) and (max-height:760px){.hero{min-height:760px}.copy{padding-top:175px}.art{inset:7% 0 15% 18%}}@media(max-width:760px){.masthead{padding:25px 6vw}.wordmark{font-size:26px}.header-service{display:none}.hero{min-height:100svh;padding-bottom:0}.art{inset:74px 0 auto;height:310px}.art:after{bottom:10%;height:8%}.copy{padding:365px 6vw 35px;max-width:none}.eyebrow{margin-bottom:17px;font-size:10px}.name{font-size:32px;margin-bottom:20px;letter-spacing:-1px}.reading{font-size:16px;margin-left:3px}.headline{font-size:clamp(30px,7.7vw,45px);line-height:1.45;letter-spacing:-.055em}.description{font-size:18px;margin:22px 0 16px;line-height:1.9}.desktop-break{display:none}.service{font-size:16px;margin-bottom:24px}.cta{font-size:18px;width:100%;gap:10px;padding:18px 20px}.cta span{font-size:22px}.cta-note{font-size:16px}.fallback span{font-size:205px}.fallback i{width:28px;height:28px;margin-top:100px}.scene-footer{position:relative;inset:auto;margin:0 6vw;padding:23px 0 28px;display:block}.scene-footer span{display:block;margin-top:15px}.scene-footer p{font-size:16px}}@media(max-width:350px){.art{height:275px}.copy{padding-top:330px}.name{font-size:29px}.reading{display:block;margin:7px 0 0}.cta{font-size:18px;gap:4px;padding:17px 15px}.cta span{display:none}.fallback span{font-size:185px}}

@media(max-width:760px){.headline em{display:inline-block;max-width:11em;font-size:inherit}.copy{max-width:none}}

.description span{display:inline-block}

.headline em span{display:inline-block}

.service span{display:inline-block}
@media(min-width:1000px) and (max-height:760px){
 .hero{min-height:100svh}.copy{padding-top:clamp(115px,18vh,136px);padding-bottom:75px}
 .eyebrow{margin-bottom:16px}.name{margin-bottom:16px}.headline{font-size:48px;line-height:1.32}
 .description{margin:16px 0 14px;line-height:1.7}.service{margin-bottom:18px}.cta{padding:16px 24px}
 .scene-footer{bottom:16px;padding-top:14px}.art{inset:8% 0 13% 18%}
}

/* Reading sections retain ordinary HTML text and images. */
.section-nav{display:flex;gap:32px;align-items:center;font-size:16px;color:#d0d6e2}.section-nav a{padding:10px 0}.section-nav a:hover{text-decoration:underline;text-underline-offset:7px}
.reading-section{position:relative;padding:112px 5vw;color:#1b2941;scroll-margin-top:24px}.section-inner{max-width:1280px;margin:0 auto}.about-section{background:#f8f5ef}.about-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(40px,6vw,88px);align-items:center}.section-photo{margin:0;min-width:0}.section-photo img{display:block;width:100%;height:auto;border-radius:16px}.section-kicker{font:600 12px/1.5 Arial,sans-serif;letter-spacing:.2em;color:#6b7190;margin:0 0 22px}.reading-copy{min-width:0}.reading-copy h2{font-family:inherit;font-size:clamp(30px,3vw,44px);font-weight:700;line-height:1.5;letter-spacing:-.035em;color:#17273f;margin:0 0 28px}.reading-copy>p:not(.section-kicker){font-size:18px;line-height:1.95;margin:0 0 16px;max-width:33em}.service-lines{margin-top:32px;border-top:1px solid #d9d9d5}.service-lines>div{padding:22px 0;border-bottom:1px solid #d9d9d5}.service-lines h3{font-size:20px;font-weight:600;line-height:1.6;margin:0 0 8px;color:#203759}.service-lines p{font-size:18px;line-height:1.85;margin:0;color:#4c586a}.contact-section{background:#e9eef4}.contact-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(40px,7vw,100px);align-items:center}.contact-photo{max-width:440px;justify-self:end}.contact-section .contact-area{margin:24px 0 28px;font-size:16px;color:#4c586a}.contact-cta{background:#203759;color:#fff;border-color:#203759;width:fit-content;max-width:100%}.contact-cta:hover:not(:disabled){background:#2d4b77}.reading-section a:focus-visible{outline-color:#203759}.reading-copy .contact-note{font-size:16px;line-height:1.7;margin:16px 0 0;color:#4c586a}.site-footer{padding:38px 5vw;background:#080d19;display:flex;align-items:center;gap:24px;color:#c5ccda;font-size:16px;line-height:1.7}.footer-name{font-weight:600;color:#f5f5f7}.site-footer p{margin:0}.back-top{margin-left:auto}
@media(max-width:900px){.reading-section{padding:76px 6vw}.about-layout,.contact-layout{grid-template-columns:1fr;gap:40px}.section-photo{max-width:600px;width:100%;justify-self:center}.reading-copy{max-width:640px;margin:0 auto;width:100%}.contact-photo{max-width:420px}.site-footer{flex-wrap:wrap}}
@media(max-width:760px){.section-nav{gap:18px}.masthead{align-items:center}.reading-copy h2{font-size:32px}.section-kicker{margin-bottom:16px}.reading-section{padding-top:64px;padding-bottom:64px}.contact-cta{width:100%}.site-footer{padding:32px 6vw;display:block}.site-footer p{margin:10px 0 20px}.back-top{display:inline-block;padding:8px 0}.section-nav a{padding:8px 0}}
@media(max-width:350px){.wordmark{font-size:24px}.section-nav{gap:12px}.reading-copy h2{font-size:28px}.contact-cta{padding-left:14px;padding-right:14px}}

.reading-copy>p.contact-area{margin:24px 0 28px;font-size:16px;color:#4c586a}.reading-copy>p.contact-note{font-size:16px;line-height:1.7;margin:16px 0 0;color:#4c586a}

/* Motif appears in three reserved areas, clear of reading and button targets. */
.motif-stage{position:fixed;inset:0;width:100vw;height:100vh;z-index:2;pointer-events:none;opacity:0}.motif-stage[data-ready="true"]{opacity:1}.copy,.reading-copy,.section-nav,.site-footer{position:relative;z-index:3}.masthead{z-index:4}.reading-copy{isolation:isolate}.about-visual{min-width:0}.motif-slot{position:relative;pointer-events:none;overflow:hidden}.motif-aside{width:220px;height:140px;margin:24px 0 0 auto}.motif-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:900 90px/1 Arial,sans-serif;letter-spacing:-.05em;color:#334c84;text-shadow:3px 3px #233758;transform:rotate(-5deg)}.motif-fallback>span{font-size:24px;color:#b68b3c;margin:38px 0 0 8px}.motif-slot[data-ready="true"] .motif-fallback{visibility:hidden}.contact-visual{display:flex;flex-direction:column;align-items:center;gap:24px;min-width:0}.contact-brand{width:100%;text-align:center}.motif-signature{width:100%;max-width:360px;height:210px;margin:0 auto}.motif-signature .motif-fallback{font-size:120px;transform:none}.contact-brand-name{position:relative;z-index:3;color:#203759;font:600 28px/1.5 Arial,sans-serif;margin:0}.contact-brand-name span{font:500 16px/1.7 -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN",sans-serif;margin-left:7px}.contact-visual .contact-photo{max-width:260px;width:100%;justify-self:auto}.contact-layout{align-items:center}
@media(max-width:900px){.about-visual{width:100%;max-width:600px;justify-self:center}.contact-visual{order:-1;flex-direction:row;gap:20px;justify-content:center}.contact-brand{max-width:360px}.contact-visual .contact-photo{max-width:220px}.motif-signature{height:190px}}
@media(max-width:600px){.motif-aside{width:175px;height:112px;margin-top:14px}.contact-visual{gap:10px;align-items:center;justify-content:space-between}.contact-brand{flex:1;min-width:0}.motif-signature{height:145px}.contact-visual .contact-photo{width:34%;flex-shrink:0}.contact-brand-name{font-size:23px}.contact-brand-name span{display:block;margin:0;font-size:16px}.motif-signature .motif-fallback{font-size:80px}.contact-layout{gap:32px}}

.contact-cta:disabled{background:#596579;border-color:#596579;color:#fff;cursor:default;opacity:1}

/* Keep the explanation in front; its motif recedes in a separate image column. */
.about-section .reading-copy{background:#f8f5ef}
.motif-aside{margin-left:0;margin-right:auto}
.motif-aside .motif-fallback{opacity:.2;transform:scale(.72) rotate(-5deg)}

/* Preserve readable type; use spacing and grid placement to fit the explanation. */
.about-section{padding-top:76px;padding-bottom:76px}
.about-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:48px;row-gap:12px;align-items:start}
.about-visual{grid-column:1;grid-row:1}
.about-layout>.reading-copy{grid-column:2;grid-row:1 / span 2}
.about-layout>.motif-aside{grid-column:1;grid-row:2;margin:0}
.about-section .section-kicker{margin-bottom:16px}
.about-section .reading-copy h2{margin-bottom:22px}
.about-section .service-lines{margin-top:24px}
.about-section .service-lines>div{padding:18px 0}
@media(max-width:900px){
 .about-section{padding-top:44px;padding-bottom:44px}
 .about-layout{grid-template-columns:minmax(0,1fr);row-gap:24px}
 .about-layout>.reading-copy{grid-column:1;grid-row:1}
 .about-visual{grid-column:1;grid-row:2}
 .about-layout>.motif-aside{grid-column:1;grid-row:3;margin-top:-12px}
}
@media(max-width:350px){.about-section .reading-copy h2{font-size:32px}}

/* Ordinary information pages share the palette and readable typography. */
.detail-links{display:flex;flex-wrap:wrap;gap:12px 28px;font-size:18px;line-height:1.7}.detail-links a{padding:8px 0;text-decoration:underline;text-underline-offset:5px}.about-links{margin-top:24px}
.detail-page{background:#f8f5ef;color:#203759}.detail-page .masthead{position:relative;background:#080d19;color:#f5f5f7;gap:20px;flex-wrap:wrap}.detail-page .section-nav{flex-wrap:wrap;gap:16px 28px}.detail-inner{width:90%;max-width:1120px;margin:auto}.detail-hero{background:#080d19;color:#f5f5f7}.detail-hero .detail-inner{position:relative;padding:36px 0 64px;overflow:hidden}.breadcrumb{display:inline-block;font-size:16px;color:#c5ccda;padding:8px 0;margin-bottom:28px}.detail-hero .section-kicker{color:#b8c1d4;margin:0 0 16px}.detail-hero h1{font-size:52px;line-height:1.35;position:relative;z-index:1;color:#f0ddb1}.detail-lead{font-size:18px;line-height:1.8;margin:20px 0 0;position:relative;z-index:1}.detail-st{position:absolute;right:3%;top:50px;font:900 150px/1 Arial,sans-serif;color:#526ba4;opacity:.24;pointer-events:none}.detail-st>span{font-size:36px;color:#edd9a4;margin-left:12px}.detail-content{padding:64px 0 0}.detail-content h2,.detail-contact h2{font-size:32px;line-height:1.5;margin:0 0 24px;color:#203759}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.price-panel{background:#e9eef4;padding:28px;border-radius:16px}.price-panel h3{font-size:24px;line-height:1.5;margin:0 0 20px}.detail-list{margin:0}.detail-list>div{display:grid;grid-template-columns:minmax(140px,.32fr) minmax(0,1fr);gap:24px;padding:22px 0;border-bottom:1px solid #cdd2d9;font-size:18px;line-height:1.85}.detail-list dt{font-weight:600}.detail-list dd{margin:0;min-width:0;overflow-wrap:anywhere}.empty-value{min-height:34px}.price-panel .detail-list>div{display:block}.price-panel .detail-list dd{margin-top:12px}.detail-content .conditions-heading{margin-top:48px}.detail-contact{background:#e9eef4;border-radius:16px;padding:36px;margin:64px 0}.detail-contact p{font-size:16px;line-height:1.8;margin:18px 0 0}.detail-page .site-footer{color:#c5ccda}.detail-page .detail-links a:focus-visible,.detail-content a:focus-visible{outline-color:#203759}
@media(max-width:760px){.detail-page .masthead{padding:24px 6vw}.detail-page .section-nav{width:100%;gap:12px 24px}.detail-inner{width:88%}.detail-hero .detail-inner{padding:16px 0 40px}.detail-hero h1{font-size:40px}.detail-st{font-size:96px;right:0;top:65px;opacity:.14}.detail-st>span{font-size:24px;margin-left:4px}.detail-content{padding-top:40px}.price-grid{grid-template-columns:minmax(0,1fr);gap:20px}.price-panel{padding:24px}.detail-list>div{grid-template-columns:minmax(0,1fr);gap:8px;padding:18px 0}.detail-contact{padding:24px;margin:40px 0}.detail-content h2,.detail-contact h2{font-size:28px}.detail-links{gap:8px 24px}.site-footer .detail-links{margin:16px 0}}

body{padding:0;margin:0}h1{font-family:inherit}body .hero p{max-width:none}body{color:#f5f5f7;background:#080d19;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}.copy h1{color:inherit;font-family:inherit}

.detail-content h2,.detail-content h3,.detail-contact h2{font-family:inherit;font-weight:700}
