:root{--ink: #101110;--ink-2: #1c1d1b;--white: #ffffff;--paper: #f4f1e9;--gold: #a47739;--gold-deep: #79551f;--pale-gold: #d5be93;--line: #d8d4ca;--muted: #60645f;--line-dark: rgba(255, 255, 255, .18);--font-ja: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, system-ui, sans-serif;--font-en: "Barlow Condensed", Impact, "Arial Narrow", "Helvetica Neue Condensed", sans-serif;--container: 1240px;--gutter: 20px;--section-y: 80px;--header-h: 72px;--header-h-compact: 72px;--fs-body: 16px;--lh-body: 1.85;--fs-h1: 36px;--fs-h2: 30px;--fs-display: clamp(58px, 15vw, 90px);--fs-ghost: clamp(88px, 12vw, 180px);--ease-out: cubic-bezier(.2, .7, .2, 1)}@media(min-width:768px){:root{--gutter: 32px;--section-y: 104px;--fs-h1: 48px;--fs-h2: 36px}}@media(min-width:1024px){:root{--gutter: 56px;--section-y: 136px;--header-h: 92px;--fs-body: 17px;--lh-body: 1.9;--fs-h1: 64px;--fs-h2: 44px;--fs-display: clamp(150px, 13vw, 200px)}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scrollbar-gutter:stable}body{margin:0;padding-top:var(--header-h);background:var(--white);color:var(--ink);font-family:var(--font-ja);font-size:var(--fs-body);line-height:var(--lh-body);font-weight:400;letter-spacing:.03em;overflow-x:clip;-webkit-font-smoothing:antialiased}body.is-locked{overflow:hidden}img,svg{display:block;max-width:100%}img{height:auto}h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer}h1,h2,h3,h4{font-weight:900;line-height:1.4;letter-spacing:.04em;font-feature-settings:"palt";word-break:auto-phrase}.phrase{display:inline-block;max-width:100%;vertical-align:top;overflow-wrap:anywhere}p,dd,.page-title__lead,.job-links__lead,.news-list__title{line-break:strict;overflow-wrap:anywhere;text-wrap:pretty;word-break:auto-phrase}h1,h2,h3,h4{line-break:strict;text-wrap:balance;overflow-wrap:anywhere}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.section--ink :focus-visible,.site-header :focus-visible,.site-footer :focus-visible,.menu-dialog :focus-visible,.hero :focus-visible,.not-found :focus-visible,.page-title--dark :focus-visible,.image-dialog :focus-visible{outline-color:var(--pale-gold)}.contact-cta :focus-visible{outline-color:var(--ink)}main:focus{outline:none}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;top:8px;left:8px;z-index:200;padding:10px 16px;border:0;background:var(--white);color:var(--ink);font-weight:700;transform:translateY(-150%)}.skip-link:focus-visible{transform:none}.en,.section-head__en,.page-title__en,.ghost-en,.logo__en{font-family:var(--font-en);font-style:italic;font-weight:800;letter-spacing:.01em;line-height:.9;text-transform:uppercase}.container{width:100%;max-width:calc(var(--container) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}.section{position:relative;padding-block:var(--section-y)}.section--paper{background:var(--paper)}.section--ink{background:var(--ink);color:var(--white)}.section-foot{display:flex;justify-content:center;margin-top:48px}.section-foot--start{justify-content:flex-start}.section-foot--split{flex-wrap:wrap;gap:16px 32px;align-items:center}.section-foot--top{margin-top:0}.note{margin-top:24px;color:var(--muted);font-size:14px}.note--light{color:#ffffffb8}.h-sub{font-size:24px;margin-bottom:24px}.h-mini{font-size:17px;margin-bottom:8px;padding-left:14px;border-left:3px solid var(--gold);line-height:1.5}.lead-text{font-size:18px;line-height:1.9}.inline-link{display:inline-block;color:var(--gold-deep);font-weight:700;text-underline-offset:4px}.tag{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;background:var(--gold-deep);color:var(--white);font-size:12px;font-weight:700;letter-spacing:.06em;line-height:1}.tag--line{background:transparent;color:var(--ink);border:1px solid var(--ink)}.tag--light{background:var(--white);color:var(--ink)}.section-head{margin-bottom:40px}.section-head__en{max-width:100%;overflow:hidden;white-space:nowrap;font-size:clamp(52px,13vw,72px);color:var(--ink);opacity:.08;margin-bottom:-.38em}.section--ink .section-head__en,.page-title--dark .section-head__en{color:var(--white);opacity:.12}.section-head__label{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:700;color:var(--gold-deep);letter-spacing:.12em}.section-head__label:before{content:"";width:48px;height:1px;background:currentColor}.section--ink .section-head__label{color:var(--pale-gold)}.section-head__title{margin-top:12px;font-size:var(--fs-h2);line-height:1.45}@media(min-width:1024px){.section-head__en{font-size:104px}}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:56px;padding:0 28px;border:1px solid transparent;border-radius:999px;font-size:15px;font-weight:700;letter-spacing:.06em;text-decoration:none;line-height:1.4;transition:background-color .28s,color .28s,border-color .28s}.btn .arrow{flex:none;transition:transform .28s var(--ease-out)}.btn:hover .arrow,.btn:focus-visible .arrow{transform:translate(6px)}.btn--gold{background:var(--gold-deep);color:var(--white)}.btn--gold:hover{background:#5e4117}.btn--ink{background:var(--ink);color:var(--white)}.btn--ink:hover{background:#2d2e2b}.btn--outline-light{border-color:#ffffffb3;color:var(--white);background:#10111040}.btn--outline-light:hover{background:var(--white);color:var(--ink)}.btn--outline-dark{border-color:var(--ink);color:var(--ink);background:transparent}.btn--outline-dark:hover{background:var(--ink);color:var(--white)}.btn--text{background:transparent;color:var(--muted);text-decoration:underline;text-underline-offset:4px;padding-inline:12px}.btn--wide{min-width:min(100%,300px)}.text-link{display:inline-flex;align-items:center;gap:14px;min-height:44px;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}.text-link .arrow{transition:transform .28s var(--ease-out)}.text-link:hover .arrow,.text-link:focus-visible .arrow{transform:translate(6px)}.text-link--light{color:var(--white)}.site-header{position:fixed;inset:0 0 auto;z-index:50;height:var(--header-h);background:var(--ink);color:var(--white);border-bottom:1px solid transparent;transition:height .2s ease,border-color .2s ease}.site-header.is-compact{height:var(--header-h-compact);border-bottom-color:#d5be9366}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;height:100%;max-width:1440px;margin-inline:auto;padding-inline:var(--gutter)}.site-header__brand{display:inline-flex;min-height:44px;align-items:center;text-decoration:none;color:var(--white)}.logo{display:inline-flex;flex-direction:column;gap:4px}.logo__en{font-size:30px;line-height:.9;letter-spacing:.02em}.logo__en:after{content:"";display:block;width:40px;height:2px;margin-top:4px;background:var(--gold)}.logo__ja{font-size:11px;font-weight:500;letter-spacing:.2em;color:#ffffffdb}.global-nav{display:none}.menu-toggle{display:inline-grid;place-items:center;width:52px;height:52px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:transparent}.menu-toggle__bars{display:grid;gap:7px;width:22px}.menu-toggle__bars span{display:block;height:2px;background:var(--white)}.menu-toggle__bars span:last-child{width:14px;justify-self:end;background:var(--gold)}@media(min-width:1024px){.logo__en{font-size:34px}.global-nav{display:flex;align-items:center;gap:32px}.global-nav ul{display:flex;gap:28px}.global-nav ul a{position:relative;display:inline-flex;align-items:center;min-height:44px;font-size:15px;font-weight:700;text-decoration:none;color:var(--white)}.global-nav ul a:after{content:"";position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .28s var(--ease-out)}.global-nav ul a:hover:after,.global-nav ul a[aria-current=page]:after{transform:scaleX(1)}.menu-toggle{display:none}}.pill{display:inline-flex;align-items:center;min-height:48px;padding:0 28px;border-radius:999px;background:var(--gold-deep);color:var(--white);font-size:15px;font-weight:700;text-decoration:none;transition:background-color .28s}.pill:hover{background:var(--gold);color:var(--ink)}.menu-dialog{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0 var(--gutter) 40px;border:0;background:var(--ink);color:var(--white);overflow-y:auto}.menu-dialog::backdrop{background:var(--ink)}.menu-dialog__top{display:flex;align-items:center;justify-content:space-between;height:var(--header-h-compact);margin-bottom:16px}.menu-close{display:inline-grid;place-items:center;width:52px;height:52px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:transparent;font-size:28px;line-height:1}.menu-dialog__list{border-top:1px solid var(--line-dark)}.menu-dialog__list a{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line-dark);text-decoration:none}.menu-dialog__en{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:40px;line-height:1}.menu-dialog__ja{font-size:14px;color:var(--pale-gold)}.menu-dialog__list a[aria-current=page] .menu-dialog__en{color:var(--pale-gold)}.site-footer{background:var(--ink);color:var(--white);padding-block:64px 32px;border-top:1px solid rgba(213,190,147,.35)}.site-footer__top{display:grid;gap:40px}.site-footer__logo{display:inline-flex;color:var(--white);text-decoration:none}.site-footer__logo .logo__en{font-size:44px}.site-footer__brand p{margin-top:16px;font-size:14px;color:#ffffffc7;max-width:28em}.site-footer__nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}.site-footer__label{font-size:12px;color:var(--pale-gold);letter-spacing:.12em;margin-bottom:8px}.site-footer__nav a{display:inline-flex;align-items:center;min-height:44px;font-size:15px;text-decoration:none}.site-footer__nav a:hover{text-decoration:underline;text-underline-offset:4px}.site-footer__bottom{margin-top:48px;padding-top:24px;border-top:1px solid var(--line-dark);display:grid;gap:12px}.site-footer__notice{font-size:13px;line-height:1.8;color:#ffffffdb}.site-footer__copy{font-family:var(--font-en);font-style:italic;font-weight:700;font-size:14px;color:#fff9}@media(min-width:768px){.site-footer__nav{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.site-footer{padding-block:96px 40px}.site-footer__top{grid-template-columns:1fr 1.3fr;gap:80px}.site-footer__bottom{grid-template-columns:1fr auto;align-items:center}}.page-title{position:relative;padding-block:32px 56px;overflow:hidden}.page-title--dark{background:var(--ink);color:var(--white)}.page-title--paper{background:var(--paper)}.page-title__en{margin-top:32px;font-size:clamp(64px,18vw,96px);color:var(--gold);overflow-wrap:anywhere}.page-title--dark .page-title__en{color:var(--pale-gold)}.page-title__h1{position:relative;margin-top:16px;font-size:var(--fs-h1);line-height:1.35;max-width:20em;overflow-wrap:anywhere}.page-title__lead{margin-top:24px;max-width:760px}.page-title--dark .page-title__lead{color:#ffffffdb}.page-title:after{content:"";position:absolute;left:max(var(--gutter),calc((100% - var(--container)) / 2));bottom:0;width:1px;height:32px;background:var(--gold)}.breadcrumb ol{display:flex;flex-wrap:wrap;gap:4px 0;font-size:13px}.breadcrumb li{display:inline-flex;align-items:center}.breadcrumb li+li:before{content:"/";margin-inline:10px;opacity:.6}.breadcrumb a{display:inline-flex;align-items:center;min-height:32px;text-underline-offset:3px}.breadcrumb [aria-current]{opacity:.8}@media(min-width:1024px){.page-title{padding-block:40px 96px}.page-title__en{margin-top:48px;font-size:150px}.page-title__h1{margin-top:8px}.page-title:after{height:56px}}.hero-stage{--cut-top: 42%;--cut-bottom: 34%;position:relative;background:var(--paper)}.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr);padding:32px var(--gutter) 40px;background:var(--paper);color:var(--ink);overflow:hidden}.hero__text{display:contents}.hero__eyebrow{order:1;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;font-family:var(--font-en);font-style:italic;font-weight:700;font-size:15px;letter-spacing:.14em;line-height:1.4}.hero__eyebrow-sub{color:var(--gold-deep)}.hero__rule{order:1;display:block;width:72px;height:1px;margin-top:14px;background:var(--gold);transform-origin:left}.hero__title{order:1;margin-top:20px;font-family:var(--font-en);font-style:italic;font-weight:800;font-size:clamp(76px,23vw,150px);line-height:.82;letter-spacing:-.035em;word-break:keep-all}.hero__line{display:block}.hero__line:last-child{color:var(--gold-deep)}.hero__lead{order:1;margin-top:16px;font-size:15px;line-height:1.9;max-width:30em}.hero__visual{order:2;position:relative;margin:28px calc(var(--gutter) * -1) 0 0}.hero__photo{position:relative;clip-path:polygon(14% 0,100% 0,100% 100%,0 100%)}.hero__img{width:100%;aspect-ratio:4 / 3;object-fit:cover;object-position:62% 46%}.hero__edge{position:absolute;inset:0;z-index:1;pointer-events:none}.hero__edge span{position:absolute;inset:0;background:var(--gold);clip-path:polygon(calc(14% - 3px) 0,14% 0,0 100%,-3px 100%)}.hero__ctas{order:3;display:grid;gap:12px;margin-top:24px}.hero__lane,.hero__labels{display:none}@media(min-width:768px){.hero__ctas{display:flex;flex-wrap:wrap;gap:16px}.hero__img{aspect-ratio:16 / 9}}@media(min-width:1024px){.hero{display:block;height:clamp(600px,calc(100svh - var(--header-h)),820px);padding:0}.hero__text{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;width:42%;height:100%;padding:40px 48px 64px max(var(--gutter),calc((100vw - var(--container)) / 2));opacity:calc(1 - var(--text, 0));transform:translate(calc(var(--text, 0) * -56px))}.hero__eyebrow{font-size:16px}.hero__rule{width:96px;margin-top:18px}.hero__title{margin-top:28px;font-size:clamp(100px,9vw,148px);line-height:.82}.hero__lead{margin-top:24px;font-size:17px;max-width:24em}.hero__ctas{margin-top:36px;display:grid;grid-template-columns:minmax(0,1fr);width:min(100%,calc(34vw - max(var(--gutter),calc((100vw - var(--container)) / 2)) - 32px));gap:12px}.hero__ctas .btn{min-width:0;padding-inline:16px;gap:12px;font-size:14px;white-space:nowrap}.hero__lane{display:block;position:absolute;left:max(var(--gutter),calc((100vw - var(--container)) / 2));right:26%;bottom:36px;height:2px;background:repeating-linear-gradient(90deg,var(--gold) 0 28px,transparent 28px 48px);opacity:.55}.hero__visual{position:absolute;inset:0;margin:0;pointer-events:none}.hero__photo{position:absolute;inset:0;--cut-t: calc(var(--cut-top) * (1 - var(--grow, 0)));--cut-b: calc(var(--cut-bottom) * (1 - var(--grow, 0)));clip-path:polygon(var(--cut-t) 0,100% 0,100% 100%,var(--cut-b) 100%)}.hero__photo-reveal,.hero__photo picture{display:block;height:100%}.hero__img{height:100%;aspect-ratio:auto;object-position:72% 52%;transform:scale(calc(1.04 - var(--grow, 0) * .04))}.hero__edge span{--cut-t: calc(var(--cut-top) * (1 - var(--grow, 0)));--cut-b: calc(var(--cut-bottom) * (1 - var(--grow, 0)));clip-path:polygon(calc(var(--cut-t) - 2px) 0,var(--cut-t) 0,var(--cut-b) 100%,calc(var(--cut-b) - 2px) 100%);opacity:calc(1 - var(--grow, 0))}.hero__labels{display:block;position:absolute;left:max(var(--gutter),calc((100vw - var(--container)) / 2));bottom:48px;z-index:2;padding:24px 28px;background:#101110db;color:var(--white);border-top:2px solid var(--gold);opacity:var(--label, 0);transform:translateY(calc((1 - var(--label, 0)) * 16px))}.hero__labels-en{font-family:var(--font-en);font-style:italic;font-weight:700;font-size:15px;letter-spacing:.14em;color:var(--pale-gold)}.hero__labels ul{display:flex;gap:0;margin-top:8px}.hero__labels li{font-size:17px;font-weight:700;line-height:1.5}.hero__labels li+li:before{content:"";display:inline-block;width:1px;height:.9em;margin-inline:18px;background:var(--pale-gold);vertical-align:-.1em}.hero-stage.is-linked{height:calc(clamp(600px,calc(100svh - var(--header-h)),820px) + 45svh)}.hero-stage.is-linked .hero{position:sticky;top:var(--header-h-compact)}.hero-stage.is-text-out .hero__text{pointer-events:none}}.road-line{display:block;overflow:visible}.road-line path{fill:none;vector-effect:non-scaling-stroke}.road-line__edge{stroke:var(--ink);stroke-width:1.5}.road-line__center{stroke:var(--gold);stroke-width:3}.section--ink .road-line__edge{stroke:var(--white)}.home-service{overflow:hidden}.ghost-en{position:absolute;top:40px;right:-.06em;font-size:var(--fs-ghost);color:var(--white);pointer-events:none;-webkit-user-select:none;user-select:none}.home-service .container{position:relative}.home-service__main{display:grid}.home-service__photo img,.home-service__item img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.home-service__panel{padding:32px 24px 36px;background:var(--ink);color:var(--white)}.home-service__num{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:56px;line-height:1;color:var(--pale-gold)}.home-service__panel h3{margin-top:12px;font-size:26px}.home-service__panel>p:not(.home-service__num){margin-top:16px;color:#ffffffe0}.home-service__sub{padding-top:16px;border-top:1px solid var(--line-dark);font-size:15px}.home-service__sub strong{display:block;color:var(--white);margin-bottom:4px}.home-service__panel .text-link{margin-top:24px}.home-service__pair{display:grid;gap:40px;margin-top:48px}.home-service__item>div{margin-top:16px}.home-service__item .home-service__num{color:var(--gold);font-size:44px}.home-service__item h3{font-size:22px;margin-top:4px}.home-service__item p:not(.home-service__num){margin-top:8px}@media(min-width:1024px){.home-service__main{grid-template-columns:6fr 4fr}.home-service__photo img{height:100%;aspect-ratio:auto;min-height:520px}.home-service__panel{padding:56px 48px;display:flex;flex-direction:column;justify-content:center}.home-service__pair{grid-template-columns:1.45fr 1fr;gap:56px;margin-top:72px;align-items:start}.home-service__item--narrow{margin-top:120px}.home-service__item--narrow img{aspect-ratio:4 / 5}}.works-card{height:100%}.works-card__link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}.works-card__media{overflow:hidden;background:var(--ink-2)}.works-card__media img{width:100%;aspect-ratio:3 / 2;object-fit:cover;transition:transform .28s var(--ease-out)}.works-card__body{padding-top:18px}.works-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;font-size:13px;font-weight:500}.works-card__title{margin-top:10px;font-size:20px;line-height:1.5}.works-card__summary{margin-top:6px;font-size:15px;opacity:.86}.works-card__more{display:inline-flex;align-items:center;gap:12px;margin-top:12px;font-size:14px;font-weight:700}.works-card__more .arrow{transition:transform .28s var(--ease-out)}@media(hover:hover){.works-card__link:hover img{transform:scale(1.035)}.works-card__link:hover .works-card__more .arrow{transform:translate(6px)}}.works-card__link:focus-visible img{transform:scale(1.035)}.works-card__link:focus-visible .works-card__more .arrow{transform:translate(6px)}.section--ink .tag--line{color:var(--white);border-color:#ffffffb3}.home-works__head{display:grid;gap:8px;margin-bottom:40px}.home-works__lead{color:#ffffffd6;max-width:34em}.home-works__grid{display:grid;gap:48px}@media(min-width:768px){.home-works__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 24px}.home-works__a{grid-column:1 / -1}}@media(min-width:1024px){.home-works__head{grid-template-columns:1fr 1fr;align-items:end;gap:64px}.home-works__head .section-head{margin-bottom:0}.home-works__grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:56px 32px}.home-works__a{grid-column:1 / 5}.home-works__a .works-card__title{font-size:26px}.home-works__b{grid-column:5 / 7}.home-works__b .works-card__media img{aspect-ratio:auto;height:100%;min-height:0}.home-works__b .works-card__media{aspect-ratio:4 / 5.05}.home-works__c{grid-column:1 / 4}.home-works__d{grid-column:4 / 7;margin-top:80px}}.home-company__grid{display:grid;gap:32px}.home-company__photo img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.home-company__text>.reveal+.reveal{margin-top:24px}@media(min-width:1024px){.home-company__grid{grid-template-columns:1.25fr 1fr;gap:80px;align-items:center}.home-company__photo{margin-left:calc(var(--gutter) * -1)}.home-company__photo img{aspect-ratio:4 / 3.2}}.home-onsite{padding-top:0;background:var(--paper)}.home-onsite__band{background:var(--ink);color:var(--white);padding-top:var(--section-y);padding-bottom:56px;border-top:1px solid var(--gold)}.home-onsite__grid{display:grid;gap:32px}.home-onsite__text p{color:#ffffffdb}.home-onsite .section-head__en{color:var(--white);opacity:.12}.home-onsite .section-head__label{color:var(--pale-gold)}.home-onsite__photo img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.home-onsite__list{display:grid;gap:0;margin-top:40px;border-top:1px solid var(--gold)}.home-onsite__list li{padding:28px 0;border-bottom:1px solid var(--line)}.home-onsite__en{font-family:var(--font-en);font-style:italic;font-weight:700;font-size:16px;letter-spacing:.08em;color:var(--gold-deep)}.home-onsite__list h3{margin-top:6px;font-size:20px}.home-onsite__list p:last-child{margin-top:8px;font-size:15px}@media(min-width:1024px){.home-onsite__band{padding-bottom:0}.home-onsite__grid{grid-template-columns:1fr 1.1fr;gap:72px;align-items:end}.home-onsite__text{padding-bottom:96px}.home-onsite__photo{margin-bottom:-96px}.home-onsite__list{grid-template-columns:repeat(3,1fr);margin-top:160px;border-top:0}.home-onsite__list li{padding:28px 32px 32px 0;border-bottom:0;border-top:1px solid var(--gold)}.home-onsite__list li+li{padding-left:32px;border-left:1px solid var(--line)}}.home-recruit__photo img{width:100%;aspect-ratio:16 / 9;object-fit:cover}.home-recruit__grid{display:grid;gap:32px;margin-top:32px}.home-recruit__jobs{border-top:1px solid var(--ink)}.home-recruit__jobs a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;min-height:72px;padding:16px 4px;border-bottom:1px solid var(--ink);text-decoration:none}.home-recruit__num{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:36px;color:var(--gold);line-height:1}.home-recruit__job strong{display:block;font-size:18px}.home-recruit__job span{font-size:14px;color:var(--muted)}.home-recruit__jobs .arrow{transition:transform .28s var(--ease-out)}.home-recruit__jobs a:hover .arrow,.home-recruit__jobs a:focus-visible .arrow{transform:translate(6px)}@media(min-width:1024px){.home-recruit__head{margin-bottom:48px}.home-recruit__head .section-head__title{font-size:56px}.home-recruit__photo img{aspect-ratio:21 / 9}.home-recruit__grid{grid-template-columns:1fr 1fr;gap:80px;margin-top:56px}}.home-news__grid{display:grid;gap:24px}.news-list{border-top:1px solid var(--ink)}.news-list__link{display:grid;grid-template-columns:auto auto 1fr;grid-template-areas:"date tag arrow" "title title title";align-items:center;gap:8px 16px;padding:20px 4px;border-bottom:1px solid var(--line);text-decoration:none}.news-list__link time{grid-area:date;font-family:var(--font-en);font-style:italic;font-weight:700;font-size:18px}.news-list__link .tag{grid-area:tag}.news-list__title{grid-area:title;font-weight:500}.news-list__link .arrow{grid-area:arrow;justify-self:end;transition:transform .28s var(--ease-out)}.news-list__link:hover .news-list__title{text-decoration:underline;text-underline-offset:4px}.news-list__link:hover .arrow,.news-list__link:focus-visible .arrow{transform:translate(6px)}@media(min-width:768px){.news-list__link{grid-template-columns:110px 140px 1fr auto;grid-template-areas:"date tag title arrow";padding:24px 8px}.news-list__link .tag{justify-self:start}}@media(min-width:1024px){.home-news__grid{grid-template-columns:1fr 2fr;gap:64px}}.contact-cta{background:var(--gold);color:var(--ink);padding-block:80px;overflow:hidden}.contact-cta__inner{display:grid;gap:24px}.contact-cta__en{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:clamp(64px,18vw,160px);line-height:.85;color:var(--ink);opacity:.16}.contact-cta__title{margin-top:-.2em;font-size:clamp(28px,7.4vw,52px);line-height:1.4}.contact-cta__side{display:grid;gap:24px;justify-items:start;font-weight:500}@media(min-width:1024px){.contact-cta{padding-block:120px}.contact-cta__inner{grid-template-columns:1.4fr 1fr;align-items:end;gap:64px}}.biz-row{display:grid;gap:24px;margin-bottom:64px}.biz-row:last-child{margin-bottom:0}.biz-row__photo img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.biz-row__text>p{max-width:760px}@media(min-width:1024px){.biz-row{grid-template-columns:1fr 1fr;gap:72px;align-items:center;margin-bottom:120px}.biz-row:has(.biz-row__photo--large){grid-template-columns:1.4fr 1fr}.biz-row--reverse .biz-row__photo{order:2}.biz-row__photo--large{margin-left:calc(var(--gutter) * -1)}}.biz-types{display:grid;gap:0;margin-top:56px;border-top:2px solid var(--ink)}.biz-types li{padding:24px 0;border-bottom:1px solid var(--line)}.biz-types h3{font-size:19px}.biz-types h3:before{content:"";display:inline-block;width:10px;height:10px;margin-right:10px;background:var(--gold);vertical-align:.1em}.biz-types p{margin-top:6px;font-size:15px}@media(min-width:768px){.biz-types{grid-template-columns:repeat(2,1fr)}.biz-types li:nth-child(odd){padding-right:32px}.biz-types li:nth-child(2n){padding-left:32px;border-left:1px solid var(--line)}}@media(min-width:1024px){.biz-types{grid-template-columns:repeat(4,1fr)}.biz-types li,.biz-types li:nth-child(odd),.biz-types li:nth-child(2n){padding:28px 24px;border-left:1px solid var(--line);border-bottom:0}.biz-types li:first-child{border-left:0;padding-left:0}}.check-list{display:grid;gap:8px;margin-top:24px}.check-list li{position:relative;padding-left:28px;font-weight:500}.check-list li:before{content:"";position:absolute;left:0;top:.85em;width:16px;height:2px;background:var(--gold)}.layers{display:grid;gap:4px}.layers__item{position:relative;padding:24px 24px 24px 72px;background:var(--ink-2)}.layers__band{position:absolute;left:0;top:0;bottom:0;width:48px;background:var(--band)}.layers__item--1{--band: repeating-linear-gradient(135deg, #5b5c58 0 6px, #474845 6px 12px)}.layers__item--2{--band: radial-gradient(circle at 30% 30%, #8a7d66 2px, transparent 3px) 0 0 / 10px 10px, #6a604f}.layers__item--3{--band: #2b2c2a}.layers__item--4{--band: linear-gradient(180deg, var(--gold) 0 4px, #232422 4px)}.layers__en{font-family:var(--font-en);font-style:italic;font-weight:700;font-size:16px;letter-spacing:.1em;color:var(--pale-gold)}.layers__item h3{font-size:22px;margin-top:4px}.layers__item p:last-child{margin-top:6px;color:#ffffffdb;font-size:15px}@media(min-width:1024px){.layers{grid-template-columns:repeat(4,1fr);gap:4px}.layers__item{padding:104px 28px 36px}.layers__band{right:0;bottom:auto;width:auto;height:64px}}.flow{display:grid;gap:0;counter-reset:flow;border-left:2px solid var(--gold);margin-left:8px}.flow li{position:relative;padding:0 0 32px 32px}.flow li:before{content:"";position:absolute;left:-9px;top:6px;width:16px;height:16px;background:var(--ink);border:3px solid var(--gold);border-radius:50%}.flow__num{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:28px;line-height:1;color:var(--gold-deep)}.flow h3{margin-top:4px;font-size:20px}.flow p{margin-top:4px;font-size:15px}.biz-flow__line{display:none}@media(min-width:1024px){.flow{grid-template-columns:repeat(5,1fr);border-left:0;border-top:2px solid var(--gold);margin-left:0;padding-top:0}.flow li{padding:40px 24px 0 0}.flow li:before{left:0;top:-9px}}.filter{display:grid;gap:16px;margin-bottom:40px}.filter__chips{display:flex;flex-wrap:wrap;gap:10px}.chip{min-height:44px;padding:0 22px;border:1px solid var(--ink);border-radius:999px;background:transparent;font-size:15px;font-weight:700;transition:background-color .12s,color .12s}.chip:hover{background:var(--paper)}.chip[aria-pressed=true]{background:var(--ink);color:var(--white)}.filter__count{font-size:14px;color:var(--muted)}.works-index__grid{display:grid;gap:48px}@media(min-width:768px){.works-index__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 32px}.works-index__grid .is-lead{grid-column:1 / -1}.works-index__grid .is-lead .works-card__link{display:grid;grid-template-columns:1.6fr 1fr;gap:32px;align-items:end}.works-index__grid .is-lead .works-card__title{font-size:26px}}@media(min-width:1024px){.works-index__grid li:nth-child(odd):not(.is-lead){margin-top:72px}}.empty{display:grid;justify-items:start;gap:16px;padding:40px 0}.work-meta,.news-meta{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center}.news-meta time{font-family:var(--font-en);font-style:italic;font-weight:700;font-size:20px}.work-hero{background:linear-gradient(180deg,var(--ink) 0 50%,var(--white) 50% 100%)}.work-hero__figure img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.work-hero__figure figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:16px;font-weight:700}@media(min-width:1024px){.work-hero__figure img{aspect-ratio:16 / 8}}.work-body__grid{display:grid;gap:48px}.spec-table{border-top:2px solid var(--ink)}.spec-table>div{display:grid;grid-template-columns:7em 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.spec-table dt{font-weight:700;font-size:15px}.spec-table dd{min-width:0;overflow-wrap:anywhere}.spec-table .pre{white-space:pre-wrap}@media(min-width:768px){.spec-table--wide>div{grid-template-columns:12em 1fr;padding:22px 0}}.work-story{display:grid;gap:0}.work-story__item{padding:28px 0;border-top:1px solid var(--line)}.work-story__item.is-point{margin-top:16px;padding:28px 24px;background:var(--ink);color:var(--white);border-top:2px solid var(--gold)}.work-story__en{font-family:var(--font-en);font-style:italic;font-weight:700;font-size:16px;letter-spacing:.1em;color:var(--gold-deep)}.work-story__item.is-point .work-story__en{color:var(--pale-gold)}.work-story__item h2{margin-top:4px;font-size:22px}.work-story__item p:last-child{margin-top:8px}@media(min-width:1024px){.work-body__grid{grid-template-columns:1fr 1.5fr;gap:80px;align-items:start}.work-outline{position:sticky;top:calc(var(--header-h-compact) + 32px)}.work-story{grid-template-columns:1fr 1fr;column-gap:40px}.work-story__item.is-point{grid-column:1 / -1;padding:36px 40px}}.related-works{display:grid;gap:40px}@media(min-width:768px){.related-works{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}.image-dialog{width:min(1400px,100vw - 32px);max-width:none;max-height:calc(100svh - 32px);padding:0;border:0;background:transparent;color:var(--white);overflow:visible}.image-dialog::backdrop{background:#101110eb}.image-dialog__figure img{width:100%;max-height:calc(100svh - 140px);object-fit:contain}.image-dialog__figure figcaption{margin-top:12px;font-weight:700}.image-dialog__close{display:inline-flex;align-items:center;min-height:48px;margin-top:12px;padding:0 24px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:transparent;color:var(--white);font-weight:700}.company-photo,.quality-photo,.recruit-photo{background:linear-gradient(180deg,var(--ink) 0 40%,var(--white) 40% 100%)}.recruit-photo{background:linear-gradient(180deg,var(--paper) 0 40%,var(--white) 40% 100%)}.company-photo img,.quality-photo img,.recruit-photo img{width:100%;aspect-ratio:3 / 2;object-fit:cover}@media(min-width:1024px){.company-photo img,.quality-photo img,.recruit-photo img{aspect-ratio:21 / 9}}.message__grid{display:grid;gap:16px}.message__body{display:grid;gap:24px;max-width:760px}.message__sign{margin-top:8px;font-weight:700;text-align:right}@media(min-width:1024px){.message__grid{grid-template-columns:1fr 1.4fr;gap:80px}.message__grid .section-head{position:sticky;top:calc(var(--header-h-compact) + 32px);align-self:start}}.profile>*{max-width:1000px}.local__grid{display:grid;gap:48px}.local__grid p{color:#ffffffdb}.local__grid .reveal+.reveal{margin-top:24px}.local__area{padding:28px 24px;border:1px solid var(--line-dark)}.local__area-title{font-size:20px;color:var(--white)}.local__area>p{margin-top:4px}.area-diagram{margin-top:16px}.area-diagram svg{width:100%;max-width:420px;margin-inline:auto}.area-diagram figcaption{color:#ffffffb8}@media(min-width:1024px){.local__grid{grid-template-columns:1fr 1fr;gap:80px;align-items:center}.local__area{padding:40px}}.quality-list{display:grid;gap:0}.quality-block{display:grid;gap:16px;padding:48px 0;border-top:1px solid var(--line)}.quality-block:first-child{padding-top:0;border-top:0}.quality-block__head{display:flex;align-items:baseline;gap:16px}.quality-block__num{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:64px;line-height:1;color:var(--gold)}.quality-block__en{font-family:var(--font-en);font-style:italic;font-weight:700;font-size:18px;letter-spacing:.1em}.quality-block__label{font-size:14px;font-weight:700;color:var(--gold-deep)}.quality-block__title{font-size:var(--fs-h2);line-height:1.45}.quality-block__body>p{margin-top:16px;max-width:760px}.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:24px}.checks li{display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 14px;background:var(--paper);font-weight:700;font-size:15px;line-height:1.4}.checks li:before{content:"";flex:none;width:14px;height:8px;border-left:2px solid var(--gold-deep);border-bottom:2px solid var(--gold-deep);transform:rotate(-45deg) translateY(-2px)}@media(min-width:1024px){.quality-block{grid-template-columns:1fr 2.2fr;gap:64px;padding:72px 0}.quality-block__head{flex-direction:column;gap:8px}.quality-block__num{font-size:120px}.checks{grid-template-columns:repeat(4,minmax(0,1fr))}}.recruit .page-title__en{color:var(--gold)}.recruit-team{display:grid;gap:8px;margin-bottom:56px}.recruit-team>p{max-width:760px}@media(min-width:1024px){.recruit-team{grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:96px}}.job-compare{display:grid;gap:0;border-top:2px solid var(--ink)}.job-compare li{display:grid;align-content:start;gap:8px;padding:32px 0;border-bottom:1px solid var(--line)}.job-compare__num{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:96px;line-height:.9;color:var(--gold)}.job-compare h4{font-size:24px}.job-compare__lead{font-weight:700;color:var(--gold-deep)}.job-compare .text-link{justify-self:start;margin-top:8px}@media(min-width:1024px){.job-compare{grid-template-columns:repeat(3,1fr)}.job-compare li{padding:40px 36px 40px 0;border-bottom:0}.job-compare li+li{padding-left:36px;border-left:1px solid var(--line)}.job-compare__num{font-size:140px}}.people{display:grid;gap:48px}.people__link{display:block;text-decoration:none;color:inherit}.people__photo{overflow:hidden;background:var(--line)}.people__photo img{width:100%;aspect-ratio:4 / 5;object-fit:cover;transition:transform .28s var(--ease-out)}.people__role{margin-top:16px;font-size:14px;font-weight:700;color:var(--gold-deep)}.people__headline{margin-top:6px;font-size:20px;line-height:1.55}.people__more{display:inline-flex;align-items:center;gap:12px;margin-top:12px;font-weight:700;font-size:14px}.people__more .arrow{transition:transform .28s var(--ease-out)}@media(hover:hover){.people__link:hover img{transform:scale(1.035)}.people__link:hover .arrow{transform:translate(6px)}}.people__link:focus-visible .arrow{transform:translate(6px)}.people__link--row{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:center}.people__link--row .people__role{margin-top:0}@media(min-width:640px){.people{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 32px}}@media(min-width:1024px){.people:not(.people--two){grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.people__item--2{margin-top:80px}.people__item--3{margin-top:32px}.people__link--row{grid-template-columns:180px 1fr;gap:28px}}.timeline{display:grid;gap:24px}.timeline__tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.timeline__tab{display:grid;justify-items:start;gap:2px;min-height:64px;padding:10px 14px;border:1px solid var(--line);background:var(--white);text-align:left;transition:background-color .2s,border-color .2s,color .2s}.timeline__tab:hover{border-color:var(--ink)}.timeline__tab[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:var(--white)}.timeline__time{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:24px;line-height:1}.timeline__tab[aria-selected=true] .timeline__time{color:var(--pale-gold)}.timeline__label{font-size:14px;font-weight:700;line-height:1.4}.timeline__panel{position:relative;padding:28px 24px;background:var(--paper);border-top:3px solid var(--gold)}.timeline__progress{position:absolute;top:-3px;left:0;right:0;height:3px;background:var(--line)}.timeline__progress span{display:block;height:100%;background:var(--ink);transform-origin:left;transition:transform .3s var(--ease-out)}.timeline__panel-time{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:72px;line-height:1;color:var(--gold)}.timeline__panel-title{margin-top:8px;font-size:24px}.timeline__panel>p:not(.timeline__panel-time):not(.timeline__step){margin-top:8px;font-size:17px}.timeline__step{margin-top:16px;font-family:var(--font-en);font-style:italic;font-weight:700;color:var(--muted)}@media(min-width:768px){.timeline__tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.timeline{grid-template-columns:1fr 1.4fr;gap:48px}.timeline__tabs{grid-template-columns:1fr;gap:0;border-left:2px solid var(--line)}.timeline__tab{grid-template-columns:80px 1fr;align-items:center;border:0;border-left:4px solid transparent;margin-left:-3px;background:transparent;padding:12px 16px}.timeline__tab[aria-selected=true]{border-left-color:var(--gold)}.timeline__panel{padding:48px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.timeline__panel-time{font-size:120px}}.growth{display:grid;gap:40px}.growth p{color:#ffffffdb}.growth__steps{display:grid;gap:4px}.growth__steps li{padding:24px;background:var(--ink-2);border-left:3px solid var(--gold)}.growth__en{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:18px;letter-spacing:.08em;color:var(--pale-gold)}.growth__steps h3{font-size:24px;margin-top:2px}.growth__steps p{margin-top:4px;font-size:15px}@media(min-width:1024px){.growth{grid-template-columns:1fr 1fr;gap:80px;align-items:center}.growth__steps li:nth-child(2){margin-left:40px}.growth__steps li:nth-child(3){margin-left:80px}}.job-links{border-top:2px solid var(--ink)}.job-links a{display:grid;grid-template-columns:1fr auto;grid-template-areas:"title arrow" "lead arrow";align-items:center;gap:2px 16px;min-height:80px;padding:18px 4px;border-bottom:1px solid var(--line);text-decoration:none}.job-links__title{grid-area:title;font-size:20px;font-weight:900}.job-links__lead{grid-area:lead;color:var(--muted);font-size:15px}.job-links .arrow{grid-area:arrow;transition:transform .28s var(--ease-out)}.job-links a:hover .arrow,.job-links a:focus-visible .arrow{transform:translate(6px)}@media(min-width:768px){.job-links a{grid-template-columns:16em 1fr auto;grid-template-areas:"title lead arrow";padding:24px 8px}}.conditions-note{margin-top:24px;padding:16px 20px;background:var(--paper);border-left:3px solid var(--gold);font-weight:500}.section--paper .conditions-note{background:var(--white)}.faq>*{max-width:960px}.accordion{border-top:2px solid var(--ink)}.accordion__item{border-bottom:1px solid var(--line)}.accordion__heading{font-size:17px}.accordion__heading button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;width:100%;min-height:64px;padding:16px 4px;border:0;background:transparent;text-align:left;font-weight:700;line-height:1.6}.accordion__q,.accordion__a{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:28px;line-height:1.15;color:var(--gold-deep)}.accordion__a{margin-right:16px;color:var(--ink)}.accordion__icon{position:relative;width:18px;height:18px}.accordion__icon:before,.accordion__icon:after{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background:var(--ink);transition:transform .22s var(--ease-out)}.accordion__icon:after{transform:rotate(90deg)}.is-open .accordion__icon:after{transform:rotate(0)}.accordion__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .22s var(--ease-out)}.is-open .accordion__panel{grid-template-rows:1fr}.accordion__panel-inner{overflow:hidden}.accordion__panel-inner p{padding:0 4px 24px 44px;text-indent:-44px}.job-lead{font-size:22px;font-weight:900;color:var(--gold-deep)}.job-detail{display:grid;gap:56px}.job-detail__num{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:120px;line-height:.8;color:var(--gold);margin-bottom:24px}.job-detail__main .h-mini{margin-top:40px}.tasks{display:grid;gap:8px;margin-top:16px}.tasks li{display:flex;align-items:center;gap:16px;min-height:60px;padding:12px 20px;background:var(--paper);font-weight:700}.tasks span{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:24px;color:var(--gold-deep)}.job-detail__pair{display:grid;gap:0 40px}.conditions .conditions-note{margin-top:12px}.job-detail__person .h-mini{margin-bottom:16px}@media(min-width:768px){.tasks{grid-template-columns:repeat(2,1fr)}.job-detail__pair{grid-template-columns:1fr 1fr}}@media(min-width:1024px){.job-detail{grid-template-columns:1.7fr 1fr;gap:80px;align-items:start}.job-detail__person{position:sticky;top:calc(var(--header-h-compact) + 32px)}.job-detail__num{font-size:180px}}.interview__grid{display:grid;gap:40px}.interview__photo img{width:100%;aspect-ratio:4 / 5;object-fit:cover}.interview__quote{position:relative;padding-top:40px;font-size:clamp(26px,6.6vw,44px);font-weight:900;line-height:1.5;letter-spacing:.04em}.interview__quote:before{content:"“";position:absolute;top:-10px;left:-4px;font-family:var(--font-en);font-style:italic;font-weight:800;font-size:96px;line-height:1;color:var(--gold)}.interview__qa{margin-top:56px;padding-top:32px;border-top:1px solid var(--line)}.interview__q{display:flex;gap:16px;font-size:20px;line-height:1.6}.interview__q span{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:32px;line-height:1;color:var(--gold-deep)}.interview__a{margin-top:16px;font-size:17px;line-height:2;max-width:760px}.interview .section-foot{margin-top:56px}@media(min-width:1024px){.interview__grid{grid-template-columns:4fr 6fr;gap:80px;align-items:start}.interview__photo{position:sticky;top:calc(var(--header-h-compact) + 32px)}}.news-index>*{max-width:1040px}.article{display:grid;gap:48px}.article__body{max-width:760px;font-size:17px;line-height:2}.article__related{padding:24px;background:var(--paper);border-top:2px solid var(--gold)}.article__related ul{display:grid;gap:4px}@media(min-width:1024px){.article{grid-template-columns:1.6fr 1fr;gap:64px;align-items:start}}.contact__grid>*{max-width:880px}.steps{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:32px;border-bottom:1px solid var(--line)}.steps li{display:flex;align-items:center;gap:10px;padding:12px 0;color:var(--muted);font-weight:700;border-bottom:3px solid transparent;margin-bottom:-1px}.steps li span{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:22px}.steps li.is-current{color:var(--ink);border-bottom-color:var(--gold)}.preview-notice{display:flex;flex-wrap:wrap;gap:4px 16px;margin-bottom:32px;padding:16px 20px;border:1px solid var(--ink);font-weight:700}.form .h-sub{scroll-margin-top:120px}.form .h-sub:focus{outline:none}.form .h-sub:focus-visible{outline:3px solid var(--gold)}.form__summary{margin-bottom:24px;padding:14px 18px;background:#fbeeee;border-left:4px solid #a3261f;color:#7d1d17;font-weight:700}.form__field{margin:0 0 28px;padding:0;border:0;min-width:0}.form__field>label,.form__field>legend{display:block;margin-bottom:8px;font-weight:700;padding:0}.req,.opt{display:inline-block;margin-left:10px;padding:2px 8px;font-size:12px;line-height:1.5;vertical-align:.1em}.req{background:var(--gold-deep);color:var(--white)}.opt{border:1px solid var(--muted);color:var(--muted)}.form input[type=text],.form input[type=email],.form select,.form textarea{width:100%;min-height:52px;padding:12px 14px;border:1px solid #8b8e88;border-radius:2px;background:var(--white);font-size:16px}.form textarea{resize:vertical;line-height:1.8}.form [aria-invalid=true]{border-color:#a3261f;border-width:2px}.form__hint{margin-top:6px;font-size:13px;color:var(--muted)}.form__error{margin-top:6px;color:#a3261f;font-size:14px;font-weight:700}.radio-group{display:grid;gap:8px}.radio,.checkbox{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 14px;border:1px solid var(--line);cursor:pointer;font-weight:500}.radio:has(input:checked){border-color:var(--ink);background:var(--paper)}.radio input,.checkbox input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--ink)}.form__actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:40px}.confirm .spec-table{margin-top:24px}.done p{font-size:17px}@media(min-width:768px){.radio-group{grid-template-columns:repeat(2,1fr)}}.privacy>*{max-width:880px}.privacy__list{border-top:2px solid var(--ink)}.privacy__list>div{padding:24px 0;border-bottom:1px solid var(--line)}.privacy__list dt{font-weight:900;font-size:18px}.privacy__list dd{margin-top:8px}@media(min-width:768px){.privacy__list>div{display:grid;grid-template-columns:10em 1fr;gap:24px}.privacy__list dd{margin-top:0}}.not-found{min-height:70svh;display:flex;align-items:center;padding-block:80px;background:var(--ink);color:var(--white)}.not-found__en{font-family:var(--font-en);font-style:italic;font-weight:800;font-size:clamp(56px,14vw,160px);line-height:.9;color:var(--pale-gold)}.not-found__title{margin-top:24px;font-size:var(--fs-h1);line-height:1.4}.not-found p:not(.not-found__en){margin-top:16px}.not-found__links{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.form__field>label.checkbox{display:flex;margin-bottom:0;font-weight:700}.home-service__head{display:grid;gap:8px;margin-bottom:40px}.home-service__head .section-head{margin-bottom:0}.home-service__lead{max-width:38em}@media(min-width:1024px){.home-service__head{grid-template-columns:1fr 1fr;align-items:end;gap:64px;margin-bottom:56px}}.home-service__item img{width:100%}.works-card__title span{background:linear-gradient(currentColor,currentColor) 0 100% / 0 1px no-repeat;transition:background-size .28s var(--ease-out)}.works-card .tag{transition:background-color .28s,color .28s}@media(hover:hover){.works-card__link:hover .works-card__title span{background-size:100% 1px}.works-card__link:hover .tag:not(.tag--line){background:var(--gold);color:var(--ink)}}.works-card__link:focus-visible .works-card__title span{background-size:100% 1px}.works-card__link:focus-visible .tag:not(.tag--line){background:var(--gold);color:var(--ink)}.home-onsite__line{width:100%;height:40px;margin-top:32px}.home-recruit__head{display:grid;gap:8px;margin-bottom:32px}.home-recruit__head .section-head{margin-bottom:0}.home-recruit__sub{font-size:17px;max-width:34em}.home-recruit__visual{display:grid}.home-recruit__quote{position:relative;margin:-32px 16px 0;padding:24px 22px;background:var(--white);border-left:3px solid var(--gold);box-shadow:0 1px 0 var(--line)}.home-recruit__quote blockquote{margin:0}.home-recruit__quote blockquote p:first-child{font-size:20px;font-weight:900;line-height:1.6}.home-recruit__quote-body{margin-top:8px;font-size:15px}.home-recruit__quote figcaption a{display:inline-flex;align-items:center;gap:12px;min-height:44px;margin-top:8px;font-size:14px;font-weight:700;color:var(--gold-deep);text-decoration:none}.home-recruit__quote figcaption a:hover{text-decoration:underline;text-underline-offset:4px}@media(min-width:1024px){.home-recruit__head{grid-template-columns:1fr 1fr;align-items:end;gap:64px;margin-bottom:48px}.home-recruit__head .section-head__title{font-size:var(--fs-h2)}.home-recruit__visual{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end}.home-recruit__photo{grid-column:1 / 10;grid-row:1}.home-recruit__photo img{aspect-ratio:16 / 9}.home-recruit__quote{grid-column:8 / 13;grid-row:1;margin:0 0 -48px;padding:36px 36px 28px}.home-recruit__grid{grid-template-columns:1fr;margin-top:96px}.home-recruit__jobs{display:grid;grid-template-columns:repeat(3,1fr);gap:0 32px;border-top:0}.home-recruit__jobs li{border-top:1px solid var(--ink)}}.reveal__mask{display:block;height:100%}.profile__note{display:inline-block;margin-left:8px;font-size:13px;color:var(--muted)}.access__grid{display:grid;grid-template-areas:"info" "map" "link";gap:20px}.access__info{grid-area:info}.access__map{grid-area:map}.access__link{grid-area:link}.access__notice{margin-top:12px;font-size:13px;color:var(--muted)}.map-embed{position:relative;height:300px;border:1px solid var(--line);background:var(--paper)}.map-embed__fallback{position:absolute;inset:0;display:grid;place-items:center;padding:24px;font-size:14px;color:var(--muted);text-align:center}.map-embed iframe{position:relative;display:block;width:100%;height:100%;border:0}.map-embed__activate{display:none}@media(pointer:coarse){.map-embed:not(.is-active) iframe{pointer-events:none}.map-embed__activate{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:0;border-radius:999px;background:var(--ink);color:var(--white);font-size:14px;font-weight:700}}@media(min-width:1024px){.access__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);grid-template-areas:"info map" "link map";grid-template-rows:auto 1fr;gap:24px 64px}.access__link{align-self:start}.map-embed{height:440px}}@media(min-width:1280px){.hero__ctas{grid-template-columns:repeat(2,minmax(0,1fr))}}.works-pagination{display:flex;justify-content:center;gap:10px;margin-top:40px}.works-pagination [aria-current=page]{background:var(--ink);color:var(--white)}.works-pagination button:disabled{opacity:.35;cursor:default}.works-index__heading{scroll-margin-top:110px;margin-bottom:20px}.works-index__grid>.works-index__item{grid-column:auto}.works-index__grid li.works-index__item:nth-child(odd):not(.is-lead){margin-top:0}@media(min-width:1024px){.works-index__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.local__grid{grid-template-columns:1fr;max-width:850px}}.has-recruit-actions{padding-bottom:112px}.recruit-actions{position:fixed;z-index:65;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:14px max(var(--gutter),calc((100vw - var(--container))/2));padding-bottom:calc(14px + env(safe-area-inset-bottom));background:#101110f7;border-top:1px solid var(--gold);box-shadow:0 -6px 28px #0002}.recruit-actions__caption{margin-right:auto;color:var(--pale-gold);font:italic 800 23px var(--font-en);letter-spacing:.05em}.recruit-actions__caption small{display:block;font:400 12px var(--font-ja);color:var(--paper);margin-top:4px}.recruit-actions .btn{min-width:210px}.requirements-tabs{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:40px}.requirements-panel{margin-top:48px}.requirements-panel .spec-table{margin-top:24px}.people__career{display:block;margin-top:8px;font-size:13px;color:var(--muted);font-weight:400}.entry-container{max-width:900px}.entry-container h2{scroll-margin-top:120px}.entry-steps{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}.entry-steps li{padding:14px 18px;border-bottom:2px solid var(--line);color:var(--muted)}.entry-steps [aria-current]{border-color:var(--gold);color:var(--ink);font-weight:700}.entry-notice{padding:20px 24px;background:var(--paper);border-left:3px solid var(--gold);font-size:14px;margin:24px 0 36px}.entry-form{display:grid;gap:28px;margin-top:32px}.entry-form__pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.entry-field{display:grid;gap:12px;font-weight:700}.entry-field b,.entry-consent b{display:inline-block;font-size:11px;font-weight:500;padding:2px 7px;background:var(--gold-deep);color:#fff;margin-left:8px}.entry-field input,.entry-field select,.entry-field textarea{width:100%;min-width:0;padding:14px;border:1px solid var(--line);border-radius:3px;background:var(--white);font:400 16px var(--font-ja)}.entry-field textarea{resize:vertical}.entry-consent{display:flex;gap:12px;align-items:flex-start}.entry-consent input{width:20px;height:20px;flex:none;margin-top:5px;accent-color:var(--gold-deep)}.entry-form>.btn{justify-self:center;min-width:280px}.entry-container dd{white-space:pre-wrap}@media(max-width:767px){.recruit-actions{gap:10px;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom))}.recruit-actions__caption{display:none}.recruit-actions .btn{flex:1;min-width:0;min-height:52px;padding-inline:14px;gap:8px;font-size:13px}.has-recruit-actions{padding-bottom:calc(90px + env(safe-area-inset-bottom))}.entry-form__pair{grid-template-columns:1fr}.entry-notice{padding:16px}}.home-company__actions{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.recruit-gateway{padding-block:72px;background:var(--ink);color:var(--white);border-top:4px solid var(--gold)}.recruit-gateway__grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:64px}.recruit-gateway__image{position:relative;overflow:hidden;min-height:520px}.recruit-gateway__image .reveal__mask{height:100%}.recruit-gateway__image img{height:100%;width:100%;object-fit:cover;object-position:60% center}.recruit-gateway__caption{position:absolute;bottom:0;left:0;padding:12px 20px;background:var(--gold-deep);color:var(--white);font:italic 700 14px var(--font-en);letter-spacing:.12em}.recruit-gateway__body{display:flex;flex-direction:column;justify-content:center;padding-block:12px}.recruit-gateway__en{font:italic 800 clamp(72px,8vw,120px)/.85 var(--font-en);color:var(--pale-gold);letter-spacing:-.02em}.recruit-gateway__label{font-size:14px;font-weight:700;letter-spacing:.16em;margin-top:14px;color:var(--pale-gold)}.recruit-gateway h2{margin-top:26px;font-size:clamp(30px,3vw,44px);line-height:1.4}.recruit-gateway__lead{margin-top:20px;font-size:15px;line-height:1.9;color:#dddcd5}.recruit-gateway__roles{display:flex;flex-wrap:wrap;margin-top:24px;gap:10px}.recruit-gateway__roles a{display:flex;align-items:center;gap:12px;font-size:12px;text-decoration:none;padding:8px 12px;border:1px solid var(--line-dark);transition:background .2s,border-color .2s}.recruit-gateway__roles a:hover{background:var(--gold-deep);border-color:var(--gold)}.recruit-gateway__actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:28px}@media(max-width:1023px){.recruit-gateway__grid{gap:32px}.recruit-gateway__image{min-height:500px}.recruit-gateway__break{display:none}}@media(max-width:767px){.recruit-gateway{padding-block:44px}.recruit-gateway__grid{grid-template-columns:1fr;gap:28px}.recruit-gateway__image{min-height:0;height:250px}.recruit-gateway__body{padding:0}.recruit-gateway__en{font-size:82px}.recruit-gateway h2{font-size:30px;margin-top:18px}.recruit-gateway h2 br{display:none}.recruit-gateway__actions{gap:20px}}.logo__ja{font-size:12px}.recruit-gateway__roles a{font-size:13px;min-height:44px}.entry-field b,.entry-consent b{font-size:12px}@media(max-width:767px){.page-title__en--long{font-size:clamp(42px,11vw,74px)}.recruit-actions .btn{font-size:14px}}@media(max-width:767px){.recruit-actions .btn{white-space:nowrap;padding-inline:8px;gap:4px}.recruit-actions .btn>span{flex:none;font-size:14px}.hero__scroll{order:4}}@keyframes page-fade{0%{opacity:0}to{opacity:1}}.page-fade{animation:page-fade .16s ease-out}@keyframes hero-photo-in{0%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes hero-edge-in{0%{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}@keyframes rule-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes text-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.hero__photo-reveal{animation:hero-photo-in 1.1s var(--ease-out) both}.hero__edge{animation:hero-edge-in .55s var(--ease-out) both}.hero__rule{animation:rule-in .5s var(--ease-out) both}.hero__lead,.hero__ctas{animation:text-in .4s var(--ease-out) both}.hero__ctas{animation-delay:80ms}.motion-ready .reveal--fade{opacity:0;transform:translateY(12px);transition:opacity .42s ease-out,transform .6s var(--ease-out)}.motion-ready .reveal--fade.is-shown{opacity:1;transform:none}.motion-ready .reveal--mask .reveal__mask{overflow:hidden}.motion-ready .reveal--mask img{transform:scale(1.025);transition:transform .85s var(--ease-out)}.motion-ready .reveal--mask.is-shown .reveal__mask{clip-path:inset(0 0 0 0)}.motion-ready .reveal--mask.is-shown img{transform:scale(1)}.motion-ready .reveal--quote{opacity:0;transform:translate(24px);transition:opacity .5s ease-out,transform .6s var(--ease-out)}.motion-ready .reveal--quote.is-shown{opacity:1;transform:none}.section-head__label.is-tracked:before{transform:scaleX(var(--line, 0));transform-origin:left}.road-line__center{stroke-dasharray:.02 .015}.motion-ready .road-line__edge{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .7s var(--ease-out)}.motion-ready .road-line__center{opacity:0;transition:opacity .5s ease-out .3s}.motion-ready .road-line.is-drawn .road-line__edge{stroke-dashoffset:0}.motion-ready .road-line.is-drawn .road-line__center{opacity:1}@keyframes list-in{0%{opacity:0}to{opacity:1}}.works-index__grid,.news-list--page{animation:list-in .12s ease-out}.timeline__panel-time{animation:list-in .2s ease-out}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important;transition-delay:0ms!important;scroll-behavior:auto!important}.reveal,.motion-ready .reveal{opacity:1;transform:none}.reveal__mask,.motion-ready .reveal--mask .reveal__mask{clip-path:none}.works-card__link:hover img,.people__link:hover img{transform:none}}@keyframes headline-arrive{0%{opacity:.25;transform:translate3d(-28px,24px,0) skew(-7deg)}to{opacity:1;transform:translateZ(0) skew(0)}}@keyframes scroll-cue{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@media(prefers-reduced-motion:no-preference){.has-cinematic-motion .hero__line{animation:headline-arrive .8s var(--ease-out) both}.has-cinematic-motion .hero__img{transform:translate3d(0,var(--scene-y,0px),0) scale(1.08)}.has-cinematic-motion .hero__photo-reveal{animation:none}.has-cinematic-motion .ghost-en{transform:translate3d(var(--scene-x,0px),0,0)}.has-cinematic-motion .home-company__photo img,.has-cinematic-motion .home-recruit__photo img{transform:translate3d(0,var(--scene-y,0px),0) scale(1.06)}.has-cinematic-motion .hero__scroll span{animation:scroll-cue 1.7s ease-in-out infinite}.has-cinematic-motion .hero__lane{background-position-x:var(--scene-x,0px)}}.hero__scroll{display:flex;align-items:center;gap:14px;margin-top:20px;font:700 12px var(--font-en);letter-spacing:.17em;color:var(--gold-deep)}.hero__scroll span{display:inline-block;font-size:22px}.home-company__photo,.home-recruit__photo{overflow:hidden}@media(hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.has-cinematic-motion .works-card__link{transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .25s ease-out}.home-motion .btn{transition:transform .25s var(--ease-out),background-color .25s,color .25s,box-shadow .25s}.home-motion .btn:hover{transform:translateY(-3px);box-shadow:0 8px 22px #10111018}}@media(min-width:1024px){.hero__scroll{position:absolute;right:40px;bottom:32px;z-index:3;color:var(--paper);writing-mode:vertical-rl;margin:0}.hero__scroll span{writing-mode:horizontal-tb}}@media(max-width:767px){.has-cinematic-motion .hero__img,.has-cinematic-motion .home-company__photo img,.has-cinematic-motion .home-recruit__photo img{transform:none}}.hero--sequenced .hero__line,.hero--sequenced .hero__lead,.hero--sequenced .hero__ctas,.hero--sequenced .hero__edge,.hero--sequenced .hero__photo-reveal{animation:none!important}.hero--sequenced .hero__visual{backface-visibility:hidden}@media(max-width:1023px){.hero--sequenced .hero__visual{overflow:hidden}}.hero__line{overflow:clip;padding:.1em .14em .13em 0;margin:-.1em -.14em -.13em 0}.hero__word{display:block;position:relative;transform-origin:0 100%;white-space:nowrap}.hero__line:nth-child(2) .hero__word{margin-left:.1em}.hero__word--gold{color:transparent;-webkit-text-stroke:1px var(--gold-deep)}.hero__fill{position:absolute;inset:0;color:var(--gold-deep);-webkit-text-stroke:0}@media(prefers-reduced-motion:reduce){.hero__word{transform:none!important}.hero__fill{clip-path:none!important}}@media(prefers-reduced-motion:no-preference){.has-cinematic-motion [data-scroll-photo]{overflow:hidden}.home-motion.has-cinematic-motion [data-scroll-photo] img{transform:translate3d(0,var(--photo-y,0px),0) scale(var(--photo-zoom,1.08));transition:none}.has-cinematic-motion [data-scroll-heading]{transform:translate3d(0,var(--heading-y,0px),0)}.has-cinematic-motion .home-works .section-head__en,.has-cinematic-motion .home-news .section-head__en{transform:translate3d(var(--scene-x,0px),0,0)}.has-cinematic-motion .hero__img{transform:scale(var(--hero-zoom,1.06))}.has-cinematic-motion .recruit-gateway__caption{transform:translate3d(var(--scene-x,0px),0,0)}}@media(min-width:1024px)and (prefers-reduced-motion:no-preference){.hero-stage.hero-scroll-linked{height:calc(clamp(600px,calc(100svh - var(--header-h)),820px) + 60svh)}.hero-scroll-linked .hero{position:sticky;top:var(--header-h-compact)}.hero-scroll-linked .hero__title{transform:translate3d(var(--hero-travel,0px),0,0);opacity:calc(1 - var(--hero-scroll,0)*.65)}.hero-scroll-linked .hero__text:focus-within .hero__title{transform:none;opacity:1}.hero-scroll-linked .hero__labels{left:auto;right:32px;bottom:36px;width:min(38vw,480px);padding:22px 26px;opacity:var(--hero-label,0);transform:translate3d(0,calc((1 - var(--hero-label,0))*20px),0)}.hero-scroll-linked .hero__labels ul{flex-wrap:wrap;gap:8px 0}.hero-scroll-linked .hero__labels li{font-size:14px}.hero-scroll-linked .hero__labels li+li:before{margin-inline:12px}.hero-scroll-linked .hero:after{content:"";position:absolute;z-index:4;bottom:0;left:0;width:100%;height:3px;background:var(--gold);transform:scaleX(var(--hero-scroll,0));transform-origin:left;pointer-events:none}}@media(min-width:1024px){.hero-scroll-linked .hero__labels ul{flex-direction:column;gap:6px}.hero-scroll-linked .hero__labels li+li:before{display:none}}.en-sweep{display:inline-block;transform-origin:left center}@media(min-width:1024px)and (prefers-reduced-motion:no-preference){.hero-scroll-linked .hero__photo,.hero-scroll-linked .hero__edge{transform:scale(calc(1 + var(--hero-scroll,0)*.06));transform-origin:100% 50%}.hero-scroll-linked .hero__ctas{translate:calc(var(--hero-travel,0px)*.35) 0}.hero-scroll-linked .hero__lead{translate:calc(var(--hero-travel,0px)*.25) 0}}.page-title__en{overflow:clip;padding:.12em .12em .12em 0}.page-title__en-word{display:inline-block;transform-origin:left center}[data-page-motion] [data-detail-photo]{overflow:hidden}[data-page-motion] [data-detail-photo][data-detail-photo] img{transform:translate3d(0,var(--detail-photo-y,0px),0) scale(1.06);transition:none}[data-page-motion]:before{content:"";position:fixed;z-index:85;left:0;right:0;top:var(--header-h-compact);height:2px;background:var(--gold);transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}@media(hover:hover)and (pointer:fine)and (prefers-reduced-motion:no-preference){.btn{transition:background-color .25s,color .25s,box-shadow .25s,translate .25s}.btn:hover{translate:0 -2px;box-shadow:0 6px 18px #10111016}.job-links a,.people__link,.news-list__link{transition:background-color .25s,box-shadow .25s}.job-links a:hover,.news-list__link:hover{background-color:#a477390b}.text-link .arrow{transition:transform .25s var(--ease-out)}.text-link:hover .arrow{transform:translate(6px)}}@media(prefers-reduced-motion:reduce){[data-detail-photo] img{transform:none!important}[data-page-motion]:before{display:none}}.hero__photo,.hero__edge,.hero--sequenced .hero__word{backface-visibility:hidden}@font-face{font-family:Barlow Condensed;font-style:italic;font-display:swap;font-weight:700;src:url(./barlow-condensed-latin-700-italic-DjyOzRJ7.woff2) format("woff2"),url(./barlow-condensed-latin-700-italic-B90Hg2GM.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:italic;font-display:swap;font-weight:800;src:url(./barlow-condensed-latin-800-italic-Cnej2eWp.woff2) format("woff2"),url(./barlow-condensed-latin-800-italic-B5BpsPSY.woff) format("woff")}
