:root{--paper:#f5f4ef;--ink:#272925;--muted:#62665e;--accent:#d34b33;--line:#d7d8ce;--soft:#eceee6;--ease:cubic-bezier(.2,.7,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-size:.9375rem;line-height:1.9}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{color:#fff;background:#d34b33}svg{max-width:100%;display:block}[hidden]{display:none!important}.wrap{width:min(1280px,100% - 112px);margin-inline:auto}.dot{background:var(--accent);border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.eyebrow{letter-spacing:.13em;align-items:center;gap:12px;font-size:.875rem;font-weight:600;line-height:1.5;display:flex}.mono{letter-spacing:.04em;font-family:Courier New,monospace;font-size:.875rem}.skip-link{z-index:100;background:var(--ink);color:#fff;padding:12px 24px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:12px}.site-header{border-bottom:1px solid var(--line);z-index:20;justify-content:space-between;align-items:center;gap:24px;height:100px;margin:0 56px;display:flex;position:relative}.home-link{flex:none;display:inline-flex}.brand-logo{flex:none;align-items:center;width:220px;max-width:100%;line-height:1;display:inline-flex}.brand-logo img{width:100%;height:auto;display:block}.primary-nav{align-items:center;gap:36px;font-size:.875rem;font-weight:600;display:flex}.primary-nav>a{transition:color .2s;position:relative}.primary-nav>a:hover,.primary-nav>a[aria-current=page]{color:var(--accent)}.primary-nav .nav-contact{border:1px solid var(--ink);border-radius:2px;align-items:center;gap:30px;padding:12px 18px;display:flex}.nav-contact span{font-size:19px}.mobile-nav-en,.menu-toggle{display:none}.button{border:1px solid #0000;justify-content:space-between;align-items:center;gap:38px;min-height:58px;padding:17px 25px;font-size:.875rem;font-weight:600;transition:background .25s,color .25s,transform .25s;display:inline-flex}.button span{font-size:23px;font-weight:400;line-height:1}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:var(--accent);transform:translateY(-2px)}.text-link{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:center;gap:55px;padding:10px 0;font-size:.875rem;font-weight:600;transition:color .2s,gap .2s;display:inline-flex}.text-link:hover{color:var(--accent);gap:65px}.text-link span{font-size:21px;font-weight:400}.hero{grid-template-columns:1.08fr 1fr;column-gap:0;min-height:710px;padding-top:75px;display:grid;position:relative}.hero-copy{z-index:2;position:relative}.hero h1{letter-spacing:-.065em;white-space:nowrap;margin-top:29px;font-size:clamp(36px,4.4vw,66px);font-weight:600;line-height:1.58}.accent-word{color:var(--accent);position:relative}.accent-word:after{content:"";background:var(--accent);height:1px;position:absolute;bottom:0;left:0;right:0;transform:rotate(-3deg)}.hero-description{letter-spacing:.035em;color:#55594f;margin-top:27px;font-size:.875rem;line-height:2.05}.hero .button{margin-top:29px}.hero-english{letter-spacing:-.04em;margin-top:35px;font-family:Georgia,Times New Roman,serif;font-size:22px;line-height:1.3}.hero-english em{color:var(--muted);font-weight:400}.mobile-break{display:none}.hero-bottom{border-bottom:1px solid var(--line);letter-spacing:.11em;grid-column:1/-1;justify-content:space-between;align-items:center;gap:20px;margin-top:22px;padding:39px 0 23px;font-size:.875rem;display:flex}.hero-bottom a{align-items:center;gap:23px;display:flex}.hero-bottom a span{font-size:20px}.brand-art{align-self:center;width:100%;margin-top:0;position:relative}.workflow-visual{width:100%;height:auto;display:block}.art-caption{letter-spacing:.04em;color:var(--muted);justify-content:center;align-items:center;gap:10px;margin:18px 0 0;font-size:.875rem;display:flex}.intro-section{grid-template-columns:1fr 3fr;gap:36px;padding-block:110px 115px;display:grid}.section-label{align-self:start;margin-top:12px}.intro-content h2{letter-spacing:-.04em;font-size:34px;line-height:1.65}.intro-content{grid-template-columns:1.18fr 1fr;gap:50px;display:grid}.intro-text p{color:var(--muted);font-size:.875rem;line-height:2.15}.intro-text p+p{margin-top:20px}.intro-text .text-link{margin-top:18px}.services-section{background:var(--soft);padding:100px 0 72px}.section-heading{justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:53px;display:flex}.section-heading h2{letter-spacing:-.04em;margin-top:24px;font-size:41px;line-height:1.55}.section-heading>p{color:var(--muted);padding-bottom:6px;font-size:.875rem;line-height:2}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.service-card{background:var(--paper);transition:transform .35s var(--ease),border-color .35s;border:1px solid #0000;flex-direction:column;padding:27px 29px 29px;display:flex}.service-card:hover{border-color:#a4a99a;transform:translateY(-7px)}.service-card-top{justify-content:space-between;align-items:center;display:flex}.circle-arrow{border:1px solid var(--line);border-radius:50%;place-items:center;width:37px;height:37px;font-size:21px;transition:background .25s,color .25s;display:grid}.service-card:hover .circle-arrow{background:var(--ink);color:var(--paper)}.service-en{letter-spacing:-.02em;margin:5px 0 7px;font-family:Georgia,serif;font-size:19px}.service-card h3{letter-spacing:-.04em;font-size:21px}.service-summary{color:var(--muted);margin:18px 0 27px;font-size:.875rem;line-height:2}.tags{flex-wrap:wrap;gap:6px;margin-top:auto;display:flex}.tags span{border:1px solid var(--line);border-radius:2px;padding:2px 8px;font-size:.875rem}.service-illustration{width:150px;height:139px;margin:21px auto 19px;position:relative}.illustration-0 span{background:var(--paper);border:1px solid #828976;width:71px;height:71px;position:absolute;top:32px;left:38px;transform:rotate(30deg)skewY(-13deg)}.illustration-0 span:first-child{transform:translate(-24px,13px)rotate(30deg)skewY(-13deg)}.illustration-0 span:nth-child(3){border-color:var(--accent);transform:translate(24px,-13px)rotate(30deg)skewY(-13deg)}.illustration-0 i{background:var(--accent);width:12px;height:12px;position:absolute;top:39px;right:24px}.illustration-1{grid-template-rows:repeat(5,12px);grid-template-columns:repeat(5,12px);place-content:center;gap:10px;display:grid;transform:rotate(-12deg)}.illustration-1 span{border:1px solid #858b7a;border-radius:50%;transition:background .3s}.illustration-1 span:nth-child(3n){border-color:var(--accent);background:var(--accent);transform:scale(.7)}.illustration-1 span:nth-child(7n){transform:scale(.4)}.service-card:hover .illustration-1 span{background:#a4aa99}.illustration-2 span{background:var(--paper);border:1px solid #828976;border-radius:4px;width:88px;height:55px;position:absolute;top:42px;left:30px;transform:rotate(-30deg)skew(25deg)}.illustration-2 span:first-child{top:67px}.illustration-2 span:nth-child(2){top:45px}.illustration-2 span:last-child{border-color:var(--accent);top:23px}.illustration-3 span{background:var(--paper);position:absolute}.illustration-3 span:first-child{border:1px solid #828976;border-radius:14px 14px 14px 3px;width:94px;height:57px;top:22px;left:9px}.illustration-3 span:nth-child(2){border:1px solid var(--accent);border-radius:14px 14px 3px;width:94px;height:57px;top:61px;left:47px}.illustration-3 span:last-child{background:var(--accent);clip-path:polygon(50% 0,63% 37%,100% 50%,63% 63%,50% 100%,37% 63%,0 50%,37% 37%);width:28px;height:28px;top:75px;left:80px}.services-all{width:260px;margin:36px 0 0 auto;display:flex}.principle-section{color:var(--paper);background:#2b302a;overflow:hidden}.principle-inner{grid-template-columns:1.1fr 1fr;gap:42px 80px;padding-block:79px 88px;display:grid;position:relative}.principle-inner>.eyebrow{color:#d2d8c9;grid-column:1/-1}.principle-en{letter-spacing:-.045em;z-index:1;font-family:Georgia,Times New Roman,serif;font-size:clamp(40px,4.8vw,70px);line-height:1.18}.principle-en em{color:#c3cbb5}.principle-copy{z-index:1;padding:6px 0 0 18px}.principle-copy h2{letter-spacing:-.035em;font-size:28px;line-height:1.7}.principle-copy p{color:#c3c8bc;margin-top:23px;font-size:.875rem;line-height:2.2}.principle-mark{color:#424a3e;opacity:.75;font-family:Georgia,serif;font-size:360px;font-weight:400;line-height:1;position:absolute;bottom:-145px;right:-40px;transform:rotate(15deg)}.process-section{padding-block:105px 110px}.process-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;display:grid}.process-item{border-top:1px solid #a5aa9d;padding-top:22px}.process-number{letter-spacing:-.07em;justify-content:space-between;align-items:center;margin-bottom:26px;font-family:Georgia,serif;font-size:55px;line-height:1;display:flex}.process-number span{color:#8c9382;font-family:Arial,sans-serif;font-size:23px}.process-item>.mono{color:var(--muted);font-size:.875rem}.process-item h3{margin:12px 0 15px;font-size:24px}.process-item>p:last-child{color:var(--muted);max-width:33ch;font-size:.875rem;line-height:2}.faq-section{border-top:1px solid var(--line);grid-template-columns:1fr 1.8fr;gap:70px;padding-block:65px 110px;display:grid}.faq-section h2{margin-top:24px;font-size:29px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{cursor:pointer;justify-content:space-between;gap:20px;padding:23px 0;font-size:.875rem;font-weight:600;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:22px;line-height:1;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);padding:0 36px 24px 0;font-size:.875rem;line-height:2}.contact-band{background:#e3e8d9}.contact-band-inner{justify-content:space-between;align-items:center;gap:35px;padding-block:73px 78px;display:flex}.contact-band h2{letter-spacing:-.04em;margin-top:22px;font-size:41px;line-height:1.6}.contact-band-copy{color:#555e4c;margin-top:20px;font-size:.875rem}.contact-orbit{border:1px solid #777f6d;border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:9px;width:170px;height:170px;margin-right:45px;font-size:.875rem;transition:background .35s,color .35s,border-color .35s;display:flex}.contact-orbit:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.orbit-arrow{font-size:47px;line-height:1}.site-footer{padding-block:49px 23px}.footer-top{align-items:center;gap:42px;padding-bottom:43px;display:flex}.footer-top .brand-logo{width:200px}.footer-top p{color:var(--muted);font-size:.875rem}.back-top{align-items:center;gap:25px;margin-left:auto;font-size:.875rem;display:flex}.back-top span{font-size:19px}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);letter-spacing:.02em;justify-content:space-between;align-items:center;gap:24px;padding-top:22px;font-size:.875rem;display:flex}.footer-bottom small{font-size:.875rem}.footer-motto{font-family:Georgia,serif;font-size:.875rem;font-style:italic}.will-reveal{opacity:0;transition:opacity .75s var(--ease),transform .75s var(--ease);transform:translateY(20px)}.will-reveal.is-visible{opacity:1;transform:translateY(0)}.page-heading{border-bottom:1px solid var(--line);padding-block:75px 65px}.page-heading .page-en{letter-spacing:-.065em;margin-top:28px;font-family:Georgia,serif;font-size:clamp(64px,8.8vw,116px);font-weight:400;line-height:1.12}.page-heading h1{letter-spacing:-.04em;margin-top:22px;font-size:30px}.page-heading .page-description{color:var(--muted);max-width:640px;margin-top:22px;font-size:.875rem;line-height:2.05}.breadcrumb{color:var(--muted);gap:14px;margin-bottom:45px;font-size:.875rem;display:flex}.breadcrumb a:hover{color:var(--accent)}.service-jump{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.service-jump a{align-items:center;gap:15px;padding:25px 20px;font-size:.875rem;display:flex}.service-jump a:nth-child(2n){border-left:1px solid var(--line)}.service-jump a:nth-child(n+3){border-top:1px solid var(--line)}.service-jump a span:last-child{margin-left:auto}.service-jump a:hover{color:var(--accent)}.service-detail{border-bottom:1px solid var(--line);grid-template-columns:1fr 2fr;gap:90px;padding-block:85px;display:grid}.service-detail-label .detail-number{letter-spacing:-.06em;color:#858d78;font-family:Georgia,serif;font-size:82px;line-height:1}.service-detail-label .service-en{margin-top:23px}.service-detail-label h2{font-size:23px}.service-detail-body h3{white-space:pre-line;letter-spacing:-.04em;font-size:35px;line-height:1.7}.service-detail-body>p{color:var(--muted);max-width:620px;margin-top:23px;font-size:.875rem;line-height:2.15}.detail-features{margin-top:31px;padding:0;list-style:none}.detail-features li{border-bottom:1px solid var(--line);gap:16px;padding:12px 0;font-size:.875rem;display:flex}.detail-features li:before{content:"↗";color:var(--accent)}.situation-box{background:var(--soft);margin-top:35px;padding:25px 28px}.situation-box h4{margin:0 0 12px;font-size:.875rem}.situation-box ul{color:var(--muted);margin:0;padding-left:18px;font-size:.875rem;line-height:2.25}.service-detail .text-link{margin-top:22px}.services-end{padding-bottom:80px}.about-story{grid-template-columns:1.1fr 1fr;align-items:center;gap:65px;padding-block:90px;display:grid}.about-story h2{letter-spacing:-.04em;margin-bottom:30px;font-size:36px;line-height:1.7}.about-story p{color:var(--muted);margin-top:20px;font-size:.875rem;line-height:2.3}.about-story .brand-art{max-width:440px;margin:0 auto}.values-section{background:var(--soft);padding-block:80px}.value-grid{grid-template-columns:repeat(3,1fr);gap:45px;margin-top:48px;display:grid}.value-grid article{border-top:1px solid #a5aa9d;padding-top:22px}.value-grid h3{margin:18px 0;font-size:22px}.value-grid article>p:last-child{color:var(--muted);font-size:.875rem;line-height:2}.profile-section{grid-template-columns:1fr 2fr;gap:60px;padding-block:85px;display:grid}.profile-section h2{margin-top:20px;font-size:30px}.profile-table{margin:0}.profile-table>div{border-bottom:1px solid var(--line);grid-template-columns:120px 1fr;gap:25px;padding:23px 0;font-size:.875rem;display:grid}.profile-table>div:first-child{border-top:1px solid var(--line)}.profile-table dt{color:var(--muted)}.profile-table dd{margin:0}.contact-layout{grid-template-columns:1fr 1.5fr;gap:90px;padding-block:75px 100px;display:grid}.contact-aside h2{font-size:25px;line-height:1.8}.contact-aside p{color:var(--muted);margin-top:23px;font-size:.875rem;line-height:2.1}.contact-aside .contact-topics{margin-top:28px;padding:0;font-size:.875rem;line-height:2.5;list-style:none}.contact-topics li:before{content:"↗";color:var(--accent);margin-right:12px}.contact-direct{border-top:1px solid var(--line);margin-top:35px;padding-top:25px}.contact-direct a{text-underline-offset:5px;overflow-wrap:anywhere;font-size:.9375rem;text-decoration:underline}.contact-form{min-width:0}.form-grid{grid-template-columns:1fr 1fr;gap:24px 20px;display:grid}.field{flex-direction:column;gap:9px;display:flex}.field-full{grid-column:1/-1}.field label{align-items:center;gap:11px;font-size:.875rem;font-weight:600;display:flex}.required{color:var(--accent);font-size:.875rem;font-weight:400}.optional{color:var(--muted);font-size:.875rem;font-weight:400}.field input,.field select,.field textarea{width:100%;color:var(--ink);background:#fafaf6;border:1px solid #c5c8bb;border-radius:0;min-height:51px;padding:13px 15px;font-size:.875rem}.field textarea{resize:vertical;min-height:170px}.field input:focus,.field select:focus,.field textarea:focus{outline-offset:2px;outline:2px solid #68765c}.field input::placeholder,.field textarea::placeholder{color:#898d82}.consent{align-items:flex-start;gap:11px;margin:24px 0;font-size:.875rem;display:flex}.consent input{width:16px;height:16px;accent-color:var(--ink);flex:none;margin-top:5px}.consent a{text-underline-offset:3px;text-decoration:underline}.contact-form .button{width:100%;margin-top:3px}.contact-form .button:disabled{opacity:.5;cursor:not-allowed;transform:none}.form-notice{border-left:2px solid var(--accent);background:var(--soft);margin-bottom:26px;padding:17px 21px;font-size:.875rem;line-height:2}.form-result{margin-top:20px;font-size:.875rem;line-height:2}.form-result[data-state=error]{color:#a82f1d}.form-result[data-state=success]{color:#3c633a}.honeypot{display:none}.form-confirmation{background:var(--soft);padding:25px}.form-confirmation h3{margin-bottom:20px;font-size:21px}.form-confirmation dl{margin:0}.form-confirmation dl>div{border-top:1px solid var(--line);padding:13px 0}.form-confirmation dt{color:var(--muted);font-size:.875rem}.form-confirmation dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0 0;font-size:.875rem}.form-captcha{min-height:78px;margin:22px 0 18px}.form-captcha .h-captcha{transform-origin:0 0}.form-confirmation .edit-button{background:0 0;border:0;margin:8px auto 0;padding:15px;font-size:.875rem;text-decoration:underline;display:block}.form-note{color:var(--muted);margin-top:15px;font-size:.875rem;line-height:1.9}.privacy-content{max-width:800px;padding-block:65px 100px}.privacy-content section+section{margin-top:35px}.privacy-content h2{margin-bottom:14px;font-size:20px}.privacy-content p,.privacy-content li{color:var(--muted);font-size:.875rem;line-height:2.1}.error-page{padding-block:100px 130px}.error-page .error-number{color:#849079;font-family:Georgia,serif;font-size:150px;line-height:1.2}.error-page h1{margin:20px 0;font-size:29px}.error-page p{color:var(--muted);margin-bottom:30px;font-size:.875rem}@media (width>=1500px){.site-header{max-width:1400px;margin-inline:auto}.hero{min-height:795px;padding-top:92px}.hero h1{font-size:70px}}@media (width<=1150px){.wrap{width:calc(100% - 72px)}.site-header{margin-inline:36px}.primary-nav{gap:22px}.hero{min-height:650px;padding-top:58px}.hero h1{font-size:4.65vw}.hero-description{font-size:.875rem}.hero-english{font-size:20px}.intro-section{grid-template-columns:1fr;gap:30px;padding-block:80px}.intro-content{grid-template-columns:1.2fr 1fr}.intro-content h2{font-size:33px}.service-card{padding:23px 21px}.service-card h3{font-size:18px}.service-en{font-size:17px}.tags{gap:4px}.tags span{padding-inline:5px;font-size:.875rem}.principle-inner{gap:35px}.principle-copy{padding-left:0}.principle-copy h2{font-size:25px}.service-detail,.contact-layout{gap:45px}.contact-orbit{margin-right:15px}.footer-top{gap:25px}}@media (width<=800px){html{scroll-padding-top:30px}.wrap{width:calc(100% - 44px)}.site-header{height:78px;margin-inline:22px}.brand-logo{width:195px}.menu-toggle{border:1px solid var(--line);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:44px;height:44px;display:flex}.menu-toggle span{background:var(--ink);width:19px;height:1px;transition:transform .2s;display:block}.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)}.primary-nav{background:var(--paper);border-bottom:1px solid var(--line);padding:15px 22px 28px;display:none;position:absolute;top:77px;left:-22px;right:-22px;box-shadow:0 18px 25px #27292510}.primary-nav.is-open{flex-direction:column;align-items:stretch;gap:0;display:flex}.primary-nav>a{border-bottom:1px solid var(--line);justify-content:space-between;padding:18px 5px;font-size:.875rem;display:flex}.mobile-nav-en{color:var(--muted);font-family:Georgia,serif;font-size:.875rem;font-weight:400;display:block}.primary-nav .nav-contact{background:var(--ink);color:var(--paper);margin-top:20px;padding:13px 19px}.hero{grid-template-columns:1fr;min-height:auto;padding-top:43px}.hero h1{letter-spacing:-.065em;margin-top:25px;font-size:clamp(34px,7.8vw,60px);line-height:1.6}.hero-description{margin-top:21px;font-size:.875rem;line-height:2.1}.hero .button{gap:45px;min-height:54px;margin-top:25px;padding:14px 20px;font-size:.875rem}.hero-english{font-size:19px;position:absolute;bottom:8px;right:2px}.hero>.brand-art{width:100%;max-width:520px;margin:32px auto 12px}.art-caption{margin-top:12px;font-size:.875rem}.hero-bottom{letter-spacing:.04em;margin-top:4px;padding:22px 0 20px;font-size:.875rem}.hero-bottom a{gap:10px;font-size:.875rem}.hero-bottom a span{font-size:1rem}.eyebrow{letter-spacing:.09em;gap:9px;font-size:.875rem}.dot{width:6px;height:6px}.intro-section{gap:25px;padding-block:62px 66px}.intro-content{grid-template-columns:1fr;gap:24px}.intro-content h2{font-size:29px}.intro-text p{font-size:.875rem}.intro-text .text-link{margin-top:13px}.services-section{padding-block:65px 50px}.section-heading{flex-direction:column;align-items:flex-start;gap:22px;margin-bottom:30px}.section-heading h2{margin-top:20px;font-size:33px}.section-heading>p{font-size:.875rem}.service-grid{grid-template-columns:1fr;gap:14px}.service-card{grid-template-columns:1fr 120px;column-gap:20px;padding:22px 24px;display:grid}.service-card-top{grid-column:1/-1}.service-illustration{grid-area:2/2/6;align-self:center;width:120px;margin:0 0 10px -3px;transform:scale(.83)}.illustration-1{transform:rotate(-12deg)scale(.83)}.service-en{grid-area:2/1;margin-top:20px;font-size:19px}.service-card h3{grid-area:3/1;margin-top:1px;font-size:21px}.service-summary{grid-area:6/1/auto/-1;max-width:60ch;margin:17px 0 20px;font-size:.875rem}.tags{grid-area:7/1/auto/-1;gap:7px}.tags span{padding:2px 8px;font-size:.875rem}.services-all{width:240px;margin-top:25px}.principle-inner{grid-template-columns:1fr;gap:30px;padding-block:55px 65px}.principle-en{font-size:54px}.principle-copy h2{font-size:27px}.principle-copy p{font-size:.875rem}.principle-mark{font-size:330px;bottom:-70px;right:-110px}.process-section{padding-block:65px}.process-grid{grid-template-columns:1fr;gap:26px}.process-item{min-height:160px;padding:24px 0 0 79px;position:relative}.process-number{font-size:43px;position:absolute;top:23px;left:0}.process-number span{display:none}.process-item h3{margin:8px 0 12px;font-size:23px}.process-item>p:last-child{max-width:none;font-size:.875rem}.faq-section{grid-template-columns:1fr;gap:30px;padding-block:50px 65px}.faq-section h2{margin-top:18px;font-size:27px}.faq-list summary{padding:20px 0;font-size:.875rem}.faq-list details p{font-size:.875rem}.contact-band-inner{align-items:flex-end;gap:20px;padding-block:52px}.contact-band h2{margin-top:22px;font-size:29px}.contact-band-copy{max-width:220px;font-size:.875rem}.contact-orbit{gap:5px;width:106px;height:106px;margin:0 0 7px;font-size:.875rem}.orbit-arrow{font-size:32px}.site-footer{padding-block:35px 22px}.footer-top{grid-template-columns:1fr auto;gap:20px 15px;padding-bottom:30px;display:grid}.footer-top>p{grid-row:2;font-size:.875rem}.footer-top .brand-logo{width:180px}.back-top{grid-area:1/2/3;gap:10px;font-size:.875rem}.footer-bottom{gap:10px;font-size:.875rem}.footer-motto{display:none}.page-heading{padding-block:32px 40px}.breadcrumb{margin-bottom:34px;font-size:.875rem}.page-heading .page-en{margin-top:20px;font-size:68px}.page-heading h1{margin-top:18px;font-size:25px}.page-heading .page-description{margin-top:20px;font-size:.875rem}.service-jump{grid-template-columns:1fr}.service-jump a{padding:17px 0}.service-jump a+a,.service-jump a:nth-child(2n){border-left:0;border-top:1px solid var(--line)}.service-detail{grid-template-columns:1fr;gap:27px;padding-block:48px}.service-detail-label{grid-template-columns:65px 1fr;align-items:center;gap:0 20px;display:grid}.service-detail-label .detail-number{grid-row:1/3;font-size:61px}.service-detail-label .service-en{margin:0;font-size:18px}.service-detail-label h2{font-size:21px}.service-detail-body h3{font-size:29px}.service-detail-body>p{font-size:.875rem}.situation-box{padding:22px}.situation-box ul{font-size:.875rem}.services-end{padding-bottom:40px}.about-story{grid-template-columns:1fr;gap:10px;padding-block:50px}.about-story h2{font-size:29px}.about-story p{font-size:.875rem}.about-story .brand-art{width:85%}.values-section{padding-block:50px}.value-grid{grid-template-columns:1fr;gap:28px;margin-top:30px}.value-grid h3{margin:13px 0;font-size:21px}.profile-section{grid-template-columns:1fr;gap:27px;padding-block:50px}.profile-section h2{font-size:27px}.profile-table>div{grid-template-columns:78px 1fr;gap:20px;font-size:.875rem}.contact-layout{grid-template-columns:1fr;gap:35px;padding-block:40px 65px}.contact-aside h2{font-size:23px}.contact-aside p,.contact-aside .contact-topics{font-size:.875rem}.contact-direct{margin-top:23px}.form-grid{gap:22px 15px}.field input,.field select,.field textarea{font-size:1rem}.form-confirmation{padding:20px}.privacy-content{padding-block:40px 65px}.privacy-content h2{font-size:18px}.error-page{padding-block:60px 80px}.error-page .error-number{font-size:110px}.error-page h1{font-size:23px}}@media (width<=420px){.hero-english{font-size:.9375rem;bottom:12px;right:0}.hero h1{font-size:8.2vw}.hero-description{font-size:.875rem}.hero .button{gap:24px;padding:13px 17px;font-size:.875rem}.hero>.brand-art{width:100%;margin-top:30px}.mobile-break{display:block}.hero-bottom>span{font-size:.875rem}.intro-content h2{font-size:26px}.service-card{grid-template-columns:1fr 88px;padding:20px}.service-card h3{font-size:19px}.service-illustration{margin-left:-18px;transform:scale(.68)}.illustration-1{transform:rotate(-12deg)scale(.68)}.contact-band h2{font-size:25px}.contact-orbit{width:86px;height:86px}.contact-band-copy{max-width:210px;font-size:.875rem}.form-grid{grid-template-columns:1fr}.field{grid-column:1/-1}.hero-bottom a{font-size:.875rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.will-reveal{opacity:1;transform:none}}@media print{.site-header,.site-footer,.contact-band,.brand-art,.button,.skip-link{display:none}.wrap{width:100%}.will-reveal{opacity:1;transform:none}body{color:#000;background:#fff;font-size:11pt}.hero{min-height:0;display:block}.service-grid,.process-grid{display:block}.service-card,.process-item{break-inside:avoid}.hero-bottom{display:none}}.service-detail-body h3{text-wrap:balance}@media (width<=360px){.service-detail-body h3{font-size:26px}}.service-detail-label .detail-number{grid-column:1}@media (width<=800px){.service-detail-label .service-en{grid-area:1/2}.service-detail-label h2{grid-area:2/2}.page-heading .page-en{font-size:clamp(42px,12.3vw,68px)}.page-heading h1{text-wrap:balance}.hero-description{font-size:.875rem}}@media (width<=360px){.hero-english{display:none}.contact-band h2{font-size:22px}.contact-orbit{width:70px;height:70px}.contact-band-inner{gap:12px}.service-detail .text-link{gap:20px;font-size:.875rem}.service-detail-label{grid-template-columns:48px 1fr;gap:0 14px}.service-detail-label h2{font-size:18px}.service-detail-label .service-en{font-size:1rem}.principle-en{font-size:45px}}:root{--accent-text:#ad3925}body{font-size:1rem}.hero-description,.intro-text p,.section-heading>p,.service-summary,.principle-copy p,.process-item>p:last-child,.faq-list details p,.page-heading .page-description,.service-detail-body>p,.detail-features li,.situation-box ul,.about-story p,.value-grid article>p:last-child,.profile-table>div,.contact-aside p,.contact-aside .contact-topics,.field label,.field input,.field select,.field textarea,.consent,.form-confirmation dd,.form-result,.privacy-content p,.privacy-content li{font-size:1rem;line-height:1.95}.eyebrow,.hero-bottom,.hero-bottom a,.hero-bottom>span,.process-item>.mono{font-size:.75rem}.tags span{padding:4px 9px;font-size:.8125rem;line-height:1.65}.button,.hero .button,.text-link,.service-detail .text-link,.faq-list summary{font-size:1rem}.button{line-height:1.6}.text-link{gap:24px;min-height:48px}.text-link:hover{gap:28px}.primary-nav>a:hover,.primary-nav>a[aria-current=page],.text-link:hover,.breadcrumb a:hover,.service-jump a:hover,.required{color:var(--accent-text)}.button-dark:hover{background:var(--accent-text)}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:28px;display:flex}.hero-actions .button,.hero-actions .text-link{margin-top:0}.hero-description{letter-spacing:0;max-width:36em}.hero-english{margin-top:26px}.hero-bottom{letter-spacing:.04em;flex-wrap:wrap}.service-summary{margin-block:18px 25px}.service-card,.intro-content>*,.contact-layout>*,.service-detail>*{min-width:0}.situation-box h4{font-size:1rem}.situation-box li+li{margin-top:5px}.related-works{margin-top:32px}.related-works h4{color:var(--muted);margin:0 0 12px;font-size:.875rem;font-weight:500}.related-works ul{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.related-works a{border-bottom:1px solid var(--line);grid-template-columns:66px 1fr auto;align-items:center;gap:16px;padding:17px 0;font-size:.9375rem;line-height:1.75;display:grid}.related-works .mono{color:var(--accent-text);font-size:.75rem}.related-works a:hover{color:var(--accent-text)}.related-works a>span:last-child{font-size:21px}.profile-table a,.privacy-content a{text-underline-offset:4px;overflow-wrap:anywhere;text-decoration:underline}.profile-table a:hover,.privacy-content a:hover{color:var(--accent-text)}.footer-nav{flex-wrap:wrap;gap:8px 32px;margin-bottom:25px;font-size:.875rem;display:flex}.footer-nav a,.back-top,.footer-bottom a{align-items:center;min-height:44px;display:inline-flex}.footer-nav a:hover,.back-top:hover,.footer-bottom a:hover{color:var(--accent-text)}.footer-top p,.footer-bottom,.footer-bottom small{font-size:.875rem}.footer-top{flex-wrap:wrap}.contact-band-copy{max-width:34em;font-size:.9375rem}.contact-orbit{font-size:.9375rem}.form-intro{color:var(--muted);margin-bottom:22px;font-size:.875rem}.form-reference{background:var(--soft);border-left:2px solid var(--accent-text);margin-bottom:24px;padding:18px 22px}.form-reference p{color:var(--muted);font-size:.875rem}.form-reference a{text-underline-offset:4px;margin-block:7px;font-size:1rem;text-decoration:underline;display:inline-block}.contact-form .button{gap:16px;padding-inline:18px}.form-note a{text-underline-offset:4px;overflow-wrap:anywhere;text-decoration:underline}.field input::placeholder,.field textarea::placeholder{color:#696e63;opacity:1}.consent{cursor:pointer;padding-block:8px}.consent input{width:20px;height:20px;margin-top:6px}.form-confirmation dt,.form-confirmation .edit-button{font-size:.875rem}.form-captcha{min-height:144px;margin-block:24px}.form-captcha .h-captcha{transform:none}.form-result:not(:empty){background:#fafaf6;border:1px solid;padding:20px}.form-result:focus-visible,.form-confirmation:focus-visible{outline:2px solid var(--accent-text);outline-offset:4px}.privacy-content p+p{margin-top:18px}.privacy-links{margin-block:16px;padding-left:22px}.privacy-links li+li{margin-top:10px}@media (width>=801px) and (width<=1150px){.service-card h3{font-size:20px}.service-grid{gap:16px}}@media (width>=1001px) and (width<=1150px){.brand-logo{width:195px}.primary-nav{gap:18px}.primary-nav .nav-contact{gap:16px;padding-inline:14px}}@media (width<=1000px){.menu-toggle{border:1px solid var(--line);background:0 0;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:7px;width:44px;height:44px;display:flex}.menu-toggle span{background:var(--ink);width:19px;height:1px;transition:transform .2s;display:block}.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)}.primary-nav{background:var(--paper);border-bottom:1px solid var(--line);padding:15px 22px 28px;display:none;position:absolute;top:calc(100% - 1px);left:0;right:0;box-shadow:0 18px 25px #27292510}.primary-nav.is-open{flex-direction:column;align-items:stretch;gap:0;display:flex}.primary-nav>a{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:18px 5px;font-size:1rem;display:flex}.mobile-nav-en{color:var(--muted);font-family:Georgia,serif;font-size:.875rem;font-weight:400;display:block}.primary-nav .nav-contact{background:var(--ink);color:var(--paper);margin-top:20px;padding:13px 19px}}@media (width<=800px){.hero-english{margin-top:25px;font-size:22px;display:block;position:static}.hero-actions{gap:16px 24px}.hero .button{gap:24px;padding:15px 20px}.hero-description{margin-top:22px}.intro-text br,.principle-copy p br,.section-heading>p br,.contact-aside p br{display:none}.process-item{padding-left:65px}.faq-list details p{padding-right:0}.contact-band-inner{flex-wrap:wrap;align-items:center;gap:25px}.contact-band-copy{max-width:28em}.contact-orbit{width:122px;height:122px;font-size:1rem}.footer-top{grid-template-columns:1fr;padding-bottom:24px}.back-top{grid-area:auto/1;justify-self:start;margin-left:0}.footer-nav{grid-template-columns:1fr 1fr;gap:6px 18px;display:grid}.footer-nav>a:last-child{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;gap:6px 20px;padding-top:16px}.profile-table>div{grid-template-columns:80px 1fr;gap:16px}.form-confirmation{padding:20px 16px}.contact-form,.contact-unavailable{grid-row:1}.contact-aside{grid-row:2}.related-works a{grid-template-columns:56px 1fr auto;gap:10px}}@media (width<=360px){.profile-table>div{grid-template-columns:1fr;gap:8px}.service-card h3{font-size:20px}.service-card{column-gap:10px}}@media print{body{font-size:11pt}.footer-nav{display:none}}
