/* Release layer. Preserve the approved Integrated composition, artwork and motion. */
:root{--body-size:16px;--body-leading:1.9}
html{scroll-padding-top:calc(var(--header) + 24px)}
body{font-size:var(--body-size);line-height:var(--body-leading)}
.site-header{gap:24px}.brand-word small{font-size:10px;letter-spacing:0;line-height:1.5;margin-top:8px}
.desktop-nav{font-size:14px;gap:25px}.desktop-nav .header-contact{font-size:14px}
.motion-control{font-size:11px;gap:9px}.motion-control{min-width:32px}.motion-text{letter-spacing:.03em}
.hero{min-height:870px}.hero-copy{padding-bottom:102px}.hero-kicker{font-size:14px;line-height:1.7}
.hero-description{font-size:17px;line-height:1.9}.hero-description__small{font-size:14px;line-height:1.9}
.line-cta{font-size:15px;min-width:280px}.hero-baseline{font-size:13px;min-height:64px}
.hero-baseline>a{font-size:11px}.hero-visual__caption{font-size:11px}.hero-visual__footer{font-size:10px}
/* Japanese-first section labels: no 01–05 badges. */
.section-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:38px;line-height:1.5}
.section-kicker::before{content:"";width:36px;height:2px;background:var(--blue);flex-shrink:0}
.kicker-ja{font-size:15px;font-weight:700;letter-spacing:.035em}.kicker-en{font:12px/1.5 var(--latin);color:var(--muted);letter-spacing:.14em}
.approach .section-kicker::before,.contact .section-kicker::before{background:#fff}
.approach .kicker-en,.contact .kicker-en{color:#d0dcf2}
.section-heading>p,.about-copy,.about-copy .about-emphasis{font-size:16px;line-height:1.95}
.about-copy p+p{margin-top:26px}.section-heading>p{max-width:460px}
.service-row__meta{font-size:12px;line-height:1.8}.service-row__meta>span+span{font-size:13px}
.service-problem{font-size:15px;line-height:1.9}.service-description{font-size:16px;line-height:1.95}
.service-scope{font-size:14px;line-height:1.9}.service-detail summary{font-size:15px;min-height:54px}
.detail-content{font-size:15px;line-height:1.95}.text-cta{font-size:15px;min-height:56px;margin-top:24px;padding-block:10px}
.services-note{font-size:14px;line-height:1.9}.service-stage__top{font-size:12px;letter-spacing:.02em}
.service-stage__bottom{font-size:12px;letter-spacing:0}.service-stage__number{pointer-events:none}
.scope-list{display:grid;grid-template-columns:128px minmax(0,1fr);gap:18px 22px;margin:12px 0 24px}
.scope-list dt{font-size:14px;font-weight:700;color:var(--ink)}.scope-list dd{margin:0;font-size:15px;line-height:1.9}
.approach-lead{font-size:16px;line-height:1.95}.principle{grid-template-columns:65px 1fr;gap:20px}
.principle>span{font-family:var(--font);font-size:12px;padding-top:9px;color:#e4ebff}.principle h3{font-size:22px}
.principle p{font-size:16px;line-height:1.95;max-width:none}.process-track h3{font-size:20px}.process-track p{font-size:16px;line-height:1.9}
.process-number .step-label{font:600 13px/1.7 var(--latin);letter-spacing:.12em}.process-number{min-height:58px}
.faq-area .section-label{font-size:14px;letter-spacing:.08em}.faq-item summary{font-size:16px;line-height:1.8;padding-block:13px;min-height:76px}
.faq-item .detail-content{font-size:16px;line-height:1.9;padding-bottom:26px}
/* Prices: two editorial panels and ruled support rows, no generic rounded-card wall. */
.pricing{background:#fff}.pricing .section-heading{margin-bottom:64px}
.pricing-intro{margin-bottom:30px}.pricing-type{font:600 12px/1.5 var(--latin);letter-spacing:.12em;color:var(--blue)}
.pricing-intro h3{font-size:26px;letter-spacing:-.025em;margin:9px 0 12px;line-height:1.5}.pricing-intro>p{font-size:15px;line-height:1.9;color:var(--muted)}
.web-plans{display:grid;grid-template-columns:1fr 1fr;gap:32px}.price-plan{border-top:3px solid var(--ink);background:var(--paper);padding:34px 36px 25px;min-width:0}
.price-plan:nth-child(2){border-top-color:var(--blue)}.plan-kicker{font-size:14px;color:var(--muted);margin-bottom:13px}
.price-plan h4{font-size:25px;line-height:1.5;letter-spacing:-.035em;margin:0;font-weight:700}
.price{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:20px 0 16px;color:var(--blue);font-feature-settings:"tnum"}
.price strong{font:600 clamp(43px,4.3vw,61px)/1.15 var(--latin);letter-spacing:-.055em}.price>span{font-size:20px;line-height:1.25;color:var(--ink);white-space:nowrap}
.price small{display:block;font-size:12px;color:var(--muted);margin-top:5px;font-weight:400}.plan-description{font-size:16px;line-height:1.9;color:var(--muted);min-height:61px}
.plan-includes{list-style:none;margin:25px 0 18px;display:grid;gap:11px}.plan-includes li{position:relative;padding-left:22px;font-size:15px;line-height:1.8}
.plan-includes li::before{content:"";width:9px;height:5px;border-bottom:1.5px solid var(--blue);border-left:1.5px solid var(--blue);transform:rotate(-45deg);position:absolute;left:1px;top:10px}
.price-plan .text-cta{margin-top:30px;border-color:#bcc3c2;font-weight:600}.price-note{font-size:14px;line-height:1.9;color:var(--muted);margin-top:26px}
.support-pricing{margin-top:76px}.support-row{display:grid;grid-template-columns:1fr 215px 1fr;gap:36px;padding:27px 0;border-top:1px solid var(--line);align-items:center}
.support-row>div{min-width:0}.support-row h4{font-size:21px;line-height:1.55;margin:0 0 8px}.support-row p{font-size:15px;line-height:1.8}
.support-row>div:first-child p{color:var(--muted)}.support-row small{font-size:14px;line-height:1.8;color:var(--muted);display:block;margin-top:8px}
.support-row .support-price{font-size:15px;color:var(--blue);line-height:1.45;font-feature-settings:"tnum"}.support-price strong{font:600 33px var(--latin);letter-spacing:-.035em}
.support-price>span{display:block;font-size:13px;color:var(--muted);margin-top:4px}.support-cta{margin-left:auto;max-width:380px}
.extra-pricing{margin-top:58px;border-block:1px solid var(--line)}.extra-pricing>summary{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:29px 0}
.extra-pricing>summary small{display:block;font:12px/1.5 var(--latin);letter-spacing:.12em;color:var(--blue);margin-bottom:10px}
.extra-pricing>summary strong{font-size:23px;line-height:1.6;letter-spacing:-.02em}.extra-content{padding-bottom:30px}.extra-content>p{font-size:15px;line-height:1.9;color:var(--muted)}
.rate-table-wrap{margin-top:22px}.rate-table{width:100%;border-collapse:collapse;text-align:left;table-layout:fixed;font-size:15px;line-height:1.85}
.rate-table caption{text-align:left;font-size:14px;color:var(--muted);margin-bottom:12px}.rate-table th,.rate-table td{border-bottom:1px solid var(--line);padding:19px 16px;vertical-align:top;font-weight:400}
.rate-table thead th{font-size:13px;color:var(--muted);background:var(--paper);font-weight:500}.rate-table th:first-child{width:23%;padding-left:0;font-weight:600}.rate-table thead th:first-child{padding-left:16px}
.rate-table th:nth-child(2){width:19%}.rate-table tbody td:nth-child(2){font:600 18px/1.85 var(--latin);letter-spacing:-.02em;color:var(--blue)}
.rate-table td:last-child{font-size:14px;color:var(--muted)}.pricing-terms{margin-top:39px;padding-left:24px;border-left:2px solid var(--blue)}
.pricing-terms p:first-child{font-size:17px;font-weight:600}.pricing-terms p+p{font-size:14px;color:var(--muted);margin-top:10px}
/* Contact: no false send confirmation, no local-only modal in the public site. */
.contact-grid p{font-size:16px;line-height:1.9}.contact-grid .contact-entry__eyebrow{font-size:14px}.contact-grid .contact-entry__note{font-size:15px;line-height:1.9}
.contact-action{font-size:24px;text-decoration:none;min-height:85px}.contact-action>span{min-width:0}
.contact-privacy{font-size:14px;color:#dae4f4;display:inline-block;text-decoration:underline;text-underline-offset:6px;margin-top:24px;padding-block:8px}
.contact-bottom{align-items:center;flex-wrap:wrap;gap:14px 30px}.email-block{display:flex;align-items:center;gap:25px;flex-wrap:wrap}
.email-address{font:22px/1.6 var(--latin);letter-spacing:0;overflow-wrap:anywhere}.copy-email{min-width:65px;min-height:44px;justify-content:center;border:1px solid #7e92b0;padding:8px 14px}
.copy-label{font-size:13px;border:0;color:white}.contact-bottom .contact-delivery{font-size:14px;color:#c3cfe0;line-height:1.9;flex-basis:100%}
.business-profile{background:var(--paper);padding:52px 0 10px}.business-profile>.container{display:grid;grid-template-columns:200px 1fr;gap:40px}
.profile-label{font-size:15px;font-weight:700;margin-top:3px}.business-profile dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:18px 32px}
.business-profile dl>div{display:grid;grid-template-columns:80px 1fr;gap:15px;min-width:0}.business-profile dt{font-size:13px;color:var(--muted)}.business-profile dd{font-size:14px;margin:0;overflow-wrap:anywhere}
.site-footer{padding-bottom:34px;flex-wrap:wrap;row-gap:20px}.footer-logo{width:185px}.footer-word>span{font-size:12px;line-height:1.8;max-width:235px}
.footer-copyright,.back-top{font-size:12px}.footer-privacy{font-size:13px;text-decoration:underline;text-underline-offset:5px}.footer-copyright{margin-left:auto}
.status-toast{position:fixed;z-index:120;right:22px;bottom:22px;max-width:min(520px,calc(100% - 44px));padding:18px 22px;background:var(--ink);color:#fff;font-size:14px;line-height:1.8;box-shadow:0 4px 25px #0002;border:1px solid #fff9}
.legal-header{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:28px;border-bottom:1px solid var(--line)}
.legal-header img{width:230px;height:auto}.legal-back{font-size:15px;text-decoration:underline;text-underline-offset:6px;min-height:44px;display:inline-flex;align-items:center}
.legal-main{max-width:840px;padding-block:70px 90px}.legal-kicker{font:12px var(--latin);letter-spacing:.14em;color:var(--blue);margin-bottom:20px}
.legal-main h1{font-size:clamp(30px,4vw,44px);line-height:1.6;letter-spacing:-.03em;margin-bottom:28px}
.legal-main h2{font-size:23px;line-height:1.6;margin:42px 0 15px}.legal-main p,.legal-main dd{font-size:16px;line-height:2}
.legal-main p{color:var(--muted)}.legal-contact{display:grid;grid-template-columns:140px 1fr;gap:12px;margin:30px 0}.legal-contact dt{font-size:14px;font-weight:600}.legal-contact dd{margin:0}
.legal-footer{border-top:1px solid var(--line);padding-block:25px 45px;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:14px}
@media(max-width:1200px){.desktop-nav{gap:17px;font-size:13px}.site-header{gap:16px}.motion-text{display:none}.hero-kicker{font-size:13px}.hero-description{font-size:16px}.hero-description__small{font-size:14px}.support-row{grid-template-columns:1fr 190px 1fr;gap:25px}.price-plan{padding:29px 26px 22px}.service-stage__top{font-size:10px}.service-stage__bottom{font-size:11px}.business-profile>.container{grid-template-columns:150px 1fr;gap:30px}.business-profile dl{grid-template-columns:1fr}.footer-word>span{display:none}.scope-list{grid-template-columns:1fr;gap:6px}.scope-list dd{margin-bottom:13px}}
@media(max-width:900px){.hero{min-height:830px}.hero-copy{width:67%;padding-bottom:95px}.hero-description__small{max-width:92%}.hero-kicker{font-size:13px}.hero-visual__footer>span{font-size:9px}.hero-baseline{font-size:12px}.hero-baseline>a{font-size:10px}.about-copy{font-size:16px;margin-left:16%}.section-heading>p{font-size:15px}.service-row__meta{font-size:11px}.service-row__meta>span+span{font-size:12px}.service-problem{font-size:14px}.service-description{font-size:16px}.service-stage__top{font-size:9px}.service-stage__bottom{font-size:10px}.service-scope{font-size:14px}.principle{grid-template-columns:1fr;gap:10px}.principle>span{padding:0;font-size:12px}.principle h3{font-size:20px}.principle p{font-size:16px}.approach-lead{font-size:15px}.process-track h3{font-size:19px}.process-track p{font-size:16px}.contact-grid{grid-template-columns:1fr 285px;gap:30px}.contact h2{font-size:53px}.contact-action{font-size:22px}.contact-grid .contact-entry__note{font-size:14px}.footer-copyright{margin-left:0}.business-profile>.container{grid-template-columns:130px 1fr;gap:25px}.support-row{grid-template-columns:1fr 195px;gap:15px 30px}.support-row>div:last-child{grid-column:1/-1}.web-plans{gap:24px}.price-plan h4{font-size:22px}.price strong{font-size:44px}.plan-description{font-size:15px}.plan-includes li{font-size:14px}.faq-area{grid-template-columns:1fr;gap:20px}}
@media(max-width:600px){
 :root{--body-size:16px;--gutter:24px}.site-header{gap:10px}.brand-word{font-size:25px}.brand-word small{font-size:10px;margin-top:6px}.brand-symbol{width:37px;height:37px}.header-controls{gap:6px}.menu-toggle{width:44px}.motion-control{padding:8px 4px}.mobile-menu nav a{font-size:23px;gap:10px}.mobile-menu p{font-size:14px}.mobile-menu p span{font-size:12px}
 .hero{min-height:auto}.hero-kicker{font-size:12px;line-height:1.8;gap:8px}.hero-copy{width:100%;padding-top:28px;padding-bottom:18px}.hero h1{font-size:clamp(39px,10.6vw,60px)}
 .hero-description{font-size:16px;margin-top:27px;line-height:1.9;max-width:100%}.hero-description__small{font-size:14px;max-width:100%;margin-top:17px;line-height:1.9}.hero-description__small br.desktop-break{display:none}
 .line-cta{font-size:15px;margin-top:20px;min-width:267px}.hero-baseline{font-size:12px;gap:14px;flex-wrap:wrap;align-content:center;padding-block:15px;line-height:1.6}.hero-baseline>a{font-size:10px}.hero-baseline .icon{width:16px}.hero-visual__caption{font-size:10px}.hero-visual__footer{font-size:9px}.hero-visual__footer>span{font-size:9px}.hero-visual__footer>span+span{display:none}
 .section-kicker{gap:10px 14px;margin-bottom:31px}.section-kicker::before{width:26px}.kicker-ja{font-size:14px}.kicker-en{font-size:11px;letter-spacing:.08em}
 .about-copy,.about-copy .about-emphasis{font-size:16px;margin-left:0}.about-copy{margin-left:3%}.section-heading>p{font-size:16px;line-height:1.9}.section-heading{margin-bottom:40px}.service-row__meta{font-size:11px;flex-wrap:wrap;gap:5px 15px}.service-row__meta>span+span{font-size:12px}.service-problem{font-size:14px}.service-description{font-size:16px;line-height:1.95}.service-scope{font-size:14px}.service-detail summary{font-size:15px}.detail-content,.scope-list dd{font-size:15px}.services-note{font-size:14px}.service-title-group h3{font-size:26px}.text-cta{font-size:15px}
 .approach h2{font-size:43px}.approach-lead{font-size:16px}.principle{grid-template-columns:1fr;gap:10px}.principle h3{font-size:21px}.principle p{font-size:16px}
 .process-track{grid-template-columns:1fr;gap:32px}.process-track h3{font-size:22px;margin-top:17px}.process-track p{font-size:16px;margin-top:12px}.process-number{padding-bottom:12px;min-height:42px}.process-glyph{width:32px;height:32px}.faq-item summary{font-size:16px}.faq-item .detail-content{font-size:16px}.faq-area h2{font-size:30px}
 .pricing .section-heading{margin-bottom:44px}.pricing-intro h3{font-size:25px}.pricing-intro>p{font-size:15px}.web-plans{grid-template-columns:1fr;gap:28px}.price-plan{padding:27px 22px 20px}.price-plan h4{font-size:24px}.price strong{font-size:49px}.price>span{font-size:19px}.plan-description{min-height:0;font-size:16px}.plan-includes li{font-size:15px}.plan-kicker{font-size:14px}.price-plan .text-cta{font-size:15px;gap:18px}.price-note{font-size:14px;margin-top:23px}.support-pricing{margin-top:55px}.support-row{grid-template-columns:1fr;gap:17px;padding:26px 0}.support-row>div:last-child{grid-column:auto}.support-row h4{font-size:23px}.support-row p{font-size:16px}.support-row small{font-size:14px}.support-row .support-price{font-size:17px}.support-price strong{font-size:37px}.support-price>span{font-size:14px;display:inline;margin-left:10px}.support-cta{max-width:none}.extra-pricing{margin-top:39px}.extra-pricing>summary{padding:25px 0;gap:15px}.extra-pricing>summary strong{font-size:20px}.extra-content>p{font-size:15px}.rate-table caption{font-size:13px}.rate-table,.rate-table tbody,.rate-table tr,.rate-table th,.rate-table td{display:block;width:100%!important}.rate-table thead{display:none}.rate-table tr{padding:20px 0;border-bottom:1px solid var(--line)}.rate-table th,.rate-table td{border:0;padding:0!important}.rate-table th{font-size:17px;margin-bottom:8px}.rate-table tbody td:nth-child(2){font-size:21px;margin-bottom:10px}.rate-table td:last-child{font-size:15px;line-height:1.9}.pricing-terms{padding-left:18px}.pricing-terms p:first-child{font-size:16px;line-height:1.9}
 .contact-grid{display:block}.contact h2{font-size:clamp(42px,11vw,58px)}.contact-grid p{font-size:16px}.contact-entry{margin-top:34px}.contact-grid .contact-entry__eyebrow{font-size:14px}.contact-grid .contact-entry__note{font-size:15px}.contact-action{font-size:24px}.contact-privacy{font-size:14px;margin-top:18px}.contact-bottom{margin-top:37px}.email-address{font-size:21px}.email-block{gap:14px}.contact-bottom .contact-delivery{font-size:14px}.copy-label{font-size:13px}
 .business-profile{padding:35px 0 10px}.business-profile>.container{display:block}.profile-label{margin-bottom:22px;font-size:16px}.business-profile dl{gap:20px}.business-profile dl>div{grid-template-columns:72px 1fr;gap:16px}.business-profile dt{font-size:13px}.business-profile dd{font-size:14px}.site-footer{padding-top:30px;padding-bottom:27px;gap:18px}.footer-logo{width:167px}.footer-copyright{order:5;flex-basis:auto;font-size:12px}.footer-privacy{font-size:13px;order:4;flex-basis:100%;line-height:1.9}.back-top{font-size:11px;margin-left:auto}
 .legal-header{padding-block:24px;flex-wrap:wrap}.legal-header img{width:180px}.legal-back{font-size:14px}.legal-main{padding-block:43px 65px}.legal-main h1{font-size:29px}.legal-main h2{font-size:22px}.legal-contact{grid-template-columns:1fr;gap:6px}.legal-contact dd{margin-bottom:15px}.legal-main p,.legal-main dd{font-size:16px}.legal-footer{font-size:13px}.status-toast{right:14px;bottom:14px;max-width:calc(100% - 28px);padding:15px 18px}
}
@media(max-width:359px){:root{--gutter:20px}.brand-word{font-size:23px}.brand-symbol{width:31px;height:31px}.brand-word small{font-size:9px}.site-header{gap:4px}.header-controls{gap:2px}.hero-kicker{font-size:12px}.hero h1{font-size:38px}.line-cta{min-width:255px}.hero-visual__footer{font-size:8px}.service-title-group h3{font-size:24px}.service-mini-art{width:76px;flex-basis:76px}.price-plan{padding:25px 18px 18px}.price strong{font-size:43px}.price{gap:10px}.price-plan h4{font-size:22px}.price-plan .text-cta{font-size:14px}.contact-action{font-size:22px}.email-address{font-size:20px}.business-profile dl>div{grid-template-columns:1fr;gap:4px}.footer-logo{width:152px}.kicker-ja{font-size:14px}.kicker-en{font-size:11px}}
@media print{.site-header{position:static}.motion-control,.menu-toggle,.status-toast{display:none!important}.price-plan{break-inside:avoid}.will-reveal{opacity:1;transform:none}.contact-entry{display:block}.contact-privacy{color:inherit}.extra-pricing .extra-content{display:block}.contact{print-color-adjust:exact}}
