:root{--ink:#283f34;--paper:#f5f3eb;--muted:#62675d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font:15px/1.8 Arial,sans-serif}a{color:inherit}header{border-bottom:1px solid #283f3425;justify-content:space-between;align-items:center;height:105px;padding:0 6%;display:flex}.brand{letter-spacing:-1px;font:30px Georgia,serif;text-decoration:none}.brand span{letter-spacing:3px;margin-top:0;font:10px Arial,sans-serif;display:block}nav{gap:32px;display:flex}nav a{letter-spacing:1.5px;font-size:11px;text-decoration:none}.intro{grid-template-columns:1fr 1fr;min-height:720px;display:grid}.intro-copy{flex-direction:column;justify-content:center;padding:100px 10% 80px 12%;display:flex}.eyebrow{letter-spacing:2.5px;text-transform:uppercase;font-size:10px}h1{letter-spacing:-3px;margin:30px 0;font:clamp(50px,5.6vw,86px)/1.04 Georgia,serif}h1 em{color:#76836b;font-weight:400}.jp{letter-spacing:1px;font-size:14px;line-height:2.2}.intro img{object-fit:cover;width:100%;height:720px}.link{letter-spacing:1px;border-bottom:1px solid;width:fit-content;margin-top:32px;padding-bottom:6px;font-size:11px;text-decoration:none;display:inline-block}.section{padding:100px 6%}.section-top{justify-content:space-between;align-items:baseline;margin-bottom:38px;display:flex}h2{letter-spacing:-1px;margin:12px 0 25px;font:48px/1.1 Georgia,serif}.section-top p{max-width:330px;color:var(--muted);font-size:13px}.gallery{grid-template-columns:1.2fr 1fr;gap:28px;display:grid}.gallery figure{margin:0}.gallery img{object-fit:cover;width:100%;height:560px;display:block}.gallery figure:nth-child(2){padding-top:95px}.gallery figure:nth-child(2) img{height:465px}figcaption{letter-spacing:1px;justify-content:space-between;margin-top:14px;font-size:11px;display:flex}.about{background:#e8e8dc;grid-template-columns:1fr 1fr;align-items:center;gap:10%;display:grid}.about img{object-fit:cover;width:100%;height:570px}.about p{max-width:450px}.body-copy{color:var(--muted);font-size:14px}.services{grid-template-columns:repeat(3,1fr);gap:45px;padding-top:30px;display:grid}.service{border-top:1px solid #283f3450;padding-top:25px}.service b{letter-spacing:2px;font-size:10px;font-weight:400}h3{font:30px Georgia,serif}.service p{color:var(--muted);font-size:13px}.contact{text-align:center;background:var(--ink);color:var(--paper);padding:100px 6%}.button{letter-spacing:1px;border:1px solid #f5f3eb80;margin:25px 0 8px;padding:15px 30px;font-size:12px;text-decoration:none;display:inline-block}.button:hover{background:var(--paper);color:var(--ink)}footer{letter-spacing:1px;justify-content:space-between;padding:30px 6%;font-size:10px;display:flex}a:focus-visible{outline-offset:6px;outline:2px solid #b58351}@media (max-width:700px){header{height:90px}.brand{font-size:25px}nav{gap:16px}nav a{font-size:10px}nav a:first-child{display:none}.intro{flex-direction:column;display:flex}.intro-copy{padding:65px 7%}h1{font-size:61px}.intro img{height:530px}.section{padding:65px 7%}.section-top{display:block}h2{font-size:40px}.gallery{grid-template-columns:1fr;gap:22px}.gallery img{height:490px}.gallery figure:nth-child(2){padding-top:20px}.gallery figure:nth-child(2) img{height:420px}.about{grid-template-columns:1fr;gap:40px}.about img{height:410px}.services{grid-template-columns:1fr;gap:24px}.service h3{margin:16px 0}.contact{padding:75px 7%}footer{flex-wrap:wrap;gap:18px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 65px}.services-intro{color:var(--muted);font-size:14px;line-height:2}.service h3{max-width:470px;margin:20px 0 14px;font-size:32px;line-height:1.2}.service h4{letter-spacing:.5px;margin:0 0 20px;font-size:14px;font-weight:400}.service p{max-width:500px}.service-en{line-height:1.8;font-size:12px!important}.service details{border-top:1px solid #283f3425;margin-top:25px}.service summary{cursor:pointer;letter-spacing:.5px;padding:15px 0;font-size:11px}.service summary span{margin-left:12px;font-size:10px}.service ul{margin:0;padding:0;list-style:none}.service li{border-bottom:1px solid #283f3418;padding:13px 0;font-size:12px;line-height:1.8}.service small{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.6;display:block}@media (max-width:700px){.services{grid-template-columns:1fr;gap:38px}.service h3{font-size:29px}}h1{letter-spacing:.02em;margin:24px 0;font-family:Georgia,Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(34px,3.3vw,51px);font-weight:400;line-height:1.6}h2{letter-spacing:.03em;font-family:Georgia,Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(28px,3vw,40px);line-height:1.7}.hero-script{color:#76836b;margin-top:25px;font:italic 24px/1.4 Georgia,serif}.body-copy{font-size:14px;line-height:2.2}.about{gap:7%}.service-title-en{color:#76836b;margin-top:18px;font:italic 21px/1.35 Georgia,serif}.service h3{letter-spacing:.02em;margin:12px 0 18px;font:21px/1.7 Arial,sans-serif}.service p{font-size:14px;line-height:2}nav a{letter-spacing:.5px;font-size:12px}@media (max-width:700px){h1{font-size:33px;line-height:1.7}.hero-script{font-size:21px}h2{font-size:28px}.intro-copy{padding:52px 7%}.about img{height:420px}.service h3,.service-title-en{font-size:20px}nav a:first-child{display:block}nav{gap:13px}nav a{font-size:10px}.brand{font-size:22px}.brand span{letter-spacing:2px;font-size:8px}}.contact-form{text-align:left;max-width:650px;margin:38px auto 24px}.contact-form label{margin:18px 0 7px;font-size:13px;display:block}.contact-form input,.contact-form textarea{width:100%;color:inherit;background:#ffffff0a;border:1px solid #f5f3eb65;border-radius:2px;padding:12px;font:16px/1.7 Arial,sans-serif}.contact-form textarea{resize:vertical;min-height:150px}.contact-form input:focus,.contact-form textarea:focus{outline-offset:3px;outline:2px solid #c9d3b4}.contact-form .button{cursor:pointer;background:var(--paper);color:var(--ink);font:14px Arial,sans-serif}.form-note{opacity:.85;font-size:12px}.hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.company{border-top:1px solid #283f3425;padding:55px 6%}.company dl{grid-template-columns:100px 1fr;row-gap:15px;max-width:650px;font-size:13px;display:grid}.company dd{margin:0}.inbox{max-width:900px;margin:60px auto;padding:20px}.inquiry{border-bottom:1px solid #aaa;padding:25px 0}.inquiry p{white-space:pre-wrap}.status-page{max-width:650px;margin:100px auto;padding:25px}.form-alert{color:#56391b;background:#fff3df;margin:20px 0;padding:16px}.hero-script{letter-spacing:-.03em;color:var(--ink);max-width:520px;margin:24px 0 12px;font:italic clamp(38px,4.4vw,64px)/1.08 Georgia,serif}h1{letter-spacing:.04em;margin:22px 0;font-size:clamp(27px,2.7vw,39px);line-height:1.7}.eyebrow{text-transform:none;letter-spacing:-.02em;font:italic 30px/1.2 Georgia,serif}.intro .eyebrow{letter-spacing:1.4px;text-transform:uppercase;font:12px/1.7 Arial,sans-serif}h2{margin-top:20px;font-size:clamp(25px,2.5vw,34px);line-height:1.65}.service-title-en{letter-spacing:-.02em;color:var(--ink);max-width:500px;font:italic 31px/1.16 Georgia,serif}.service h3{margin-top:14px;font-size:18px;line-height:1.7}.service b{font-size:12px}.contact .eyebrow{font-size:40px}.contact h2{font-size:34px}.brand{font-size:38px}.brand span{letter-spacing:3px;font-size:12px}.company .eyebrow{font-size:27px}.company h2{font-size:22px}footer{font-size:11px}.about img{height:590px}.section-top p{line-height:2}.about .body-copy{line-height:2.25}@media (max-width:700px){.hero-script{max-width:330px;font-size:45px}.intro .eyebrow{letter-spacing:1px;font-size:10px}h1{font-size:27px;line-height:1.7}.eyebrow{font-size:29px}h2{font-size:26px}.service-title-en{font-size:29px}.service h3{font-size:18px}.brand{font-size:29px}.brand span{letter-spacing:2px;font-size:9px}.intro-copy{padding:48px 7%}.about img{height:420px}.contact .eyebrow{font-size:35px}.contact h2{font-size:28px}nav{gap:12px}nav a{font-size:10px}header{padding-left:5%;padding-right:5%}}header{z-index:10;background:var(--paper);grid-template-columns:auto 1fr auto;column-gap:30px;display:grid;position:sticky;top:0}header nav{justify-content:flex-end}.language-switch{letter-spacing:1px;white-space:nowrap;align-items:center;gap:9px;font-size:11px;display:flex}.language-switch a{opacity:.45;padding:8px 2px;text-decoration:none}.language-switch a[aria-current=page]{opacity:1;border-bottom:1px solid var(--ink)}.language-switch a:hover{opacity:1}.language-switch span{opacity:.3}.hero-actions{flex-wrap:wrap;align-items:center;gap:24px;margin-top:24px;display:flex}.primary-cta{background:var(--ink);color:var(--paper);letter-spacing:.03em;padding:15px 23px;font-size:13px;text-decoration:none;display:inline-block}.primary-cta:hover{background:#4e6557}.hero-actions .link{margin:0;font-size:12px}.intro-copy{padding-top:45px;padding-bottom:45px}.intro img{height:760px}.intro{min-height:760px}.process{background:#e8e8dc}.process-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:45px;margin-top:40px;display:grid}.process-steps>div{border-top:1px solid #283f3450;padding-top:22px}.process-steps b{letter-spacing:2px;font-size:12px;font-weight:400}.process-steps h3{margin:18px 0 12px;font:19px/1.6 Arial,sans-serif}.process-steps p{color:var(--muted);font-size:13px;line-height:2}.english-page h1{letter-spacing:-.02em;font-family:Georgia,serif;font-size:clamp(28px,3vw,42px);line-height:1.3}.english-page .hero-script{color:#76836b;font-size:clamp(30px,3vw,42px)}.english-page .jp{letter-spacing:0;font-size:15px;line-height:1.8}.english-page .service-title-en{margin-bottom:20px}.english-page h2{letter-spacing:-.02em;font-family:Georgia,serif;font-size:clamp(30px,3.2vw,45px);line-height:1.2}.english-page header nav a{letter-spacing:1px;font-size:11px}.english-page .company h2{font-size:26px}@media (max-width:700px){header{grid-template-columns:1fr auto;gap:8px 15px;height:auto;padding:16px 7% 12px}header nav{grid-area:2/1/auto/-1;justify-content:flex-start;gap:26px}.language-switch{grid-area:1/2}.intro-copy{padding:40px 7% 46px}.intro{min-height:0}.intro img{height:460px}.hero-script{font-size:44px}.hero-actions{gap:20px}.primary-cta{padding:15px 19px;font-size:12px}.process-steps{grid-template-columns:1fr;gap:26px}.process-steps h3{font-size:18px}section[id]{scroll-margin-top:140px}.english-page h1{font-size:33px}.english-page .hero-script{font-size:32px}.english-page .jp{font-size:14px}.english-page h2{font-size:33px}.english-page header nav a{font-size:10px}}.contact-intro{max-width:600px;margin:28px auto 0;font-size:15px;line-height:2}.contact-intro p{margin:0}.contact-intro .contact-audience{margin-top:22px}.contact-line{white-space:nowrap;display:block}.english-page .contact-intro{text-wrap:pretty}@media (max-width:700px){.contact-intro{font-size:clamp(13px,3.6vw,15px);line-height:2}.contact-intro .contact-audience{margin-top:20px}.contact h2{margin-bottom:0}}.hero-script span,.hero-copy-line{white-space:nowrap;display:block}.hero-description{letter-spacing:0;line-height:2.1}.english-page .intro .jp{text-wrap:pretty}@media (max-width:700px){.hero-description{letter-spacing:0;font-size:clamp(12px,3.5vw,14px);line-height:2.1}.hero-script{max-width:none;font-size:clamp(36px,11.2vw,46px)}}.brand-image{letter-spacing:0;width:128px;height:128px;line-height:0;display:block}.brand-image img{object-fit:contain;width:100%;height:100%;display:block}@media (max-width:700px){header{row-gap:12px;height:auto;padding-top:12px;padding-bottom:12px}.brand-image{width:100px;height:100px}section[id]{scroll-margin-top:180px}}header{height:116px;padding-top:12px;padding-bottom:12px}.brand-image{width:190px;height:92px}.brand-image img{object-fit:contain}section[id]{scroll-margin-top:132px}@media (max-width:700px){header{row-gap:10px;height:auto;padding-top:10px;padding-bottom:12px}.brand-image{width:152px;height:76px}section[id]{scroll-margin-top:154px}}.company dt.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.company dt.sr-only+dd{grid-column:1/-1;margin-bottom:12px;margin-left:0;font:30px/1.3 Georgia,serif}
