*,:before,:after{box-sizing:border-box}body{color:#241c17;background:#f6f1ea;margin:0;font-family:Zen Kaku Gothic New,Hiragino Sans,sans-serif;font-size:16px;line-height:1.9}body.is-locked{overflow:hidden}img{max-width:100%}button,input{font:inherit}a{color:inherit}:focus-visible{outline-offset:3px;outline:2px solid #e4c4a4}::selection{color:#241c17;background:#e7d3bc}.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}.skip{z-index:80;color:#f7f2eb;background:#241c17;padding:.45rem .8rem;text-decoration:none;position:absolute;top:-4rem;left:1rem}.skip:focus{top:1rem}.shell{width:min(1080px,100% - 3.2rem);margin-inline:auto}.mark{width:1.2rem;height:1.2rem;display:block}.kicker{letter-spacing:.24em;margin:0 0 .75rem;font-size:.74rem;font-weight:500;display:block}.display,.hero__title,.contact__tel,.facts dd,.flow__index,.chapter h3,.role h3,.openings__head h3{font-family:Zen Old Mincho,Yu Mincho,serif;font-weight:400}.display{letter-spacing:.04em;margin:0;font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:1.45}.btn{color:#f7f2eb;letter-spacing:.08em;background:#241c17;justify-content:center;align-items:center;min-height:2.9rem;padding:.65rem 1.2rem;font-size:.88rem;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{background:#3d312a}.textlink{letter-spacing:.06em;text-underline-offset:.28em;font-weight:500}.header{z-index:50;color:#241c17;background:#f6f1ea;align-items:center;gap:1.2rem;height:4.25rem;padding:0 1.4rem;display:flex;position:fixed;top:0;left:0;right:0}.header.is-overlay:not(.is-menu){color:#f7f2eb;background:0 0}.header.is-menu{color:#241c17;background:#f6f1ea}.header__logo,.footer__logo{z-index:45;color:inherit;letter-spacing:.16em;align-items:center;gap:.5rem;font-family:Zen Old Mincho,Yu Mincho,serif;font-size:1.02rem;text-decoration:none;display:inline-flex;position:relative}.nav{flex:1;justify-content:flex-end;align-items:center;gap:1.45rem;display:flex}.nav a{letter-spacing:.08em;font-size:.84rem;font-weight:500;text-decoration:none}.nav a:hover{opacity:.62}.nav__tel{display:none}.header__tel{z-index:45;letter-spacing:.05em;align-items:center;gap:.4rem;font-size:.84rem;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.header__tel svg{width:.9rem;height:.9rem}.header__toggle{z-index:45;width:2.4rem;height:2.4rem;color:inherit;cursor:pointer;background:0 0;border:0;display:none;position:relative}.header__toggle-lines,.header__toggle-lines:before,.header__toggle-lines:after{background:currentColor;width:1.15rem;height:1px;margin-inline:auto;display:block}.header__toggle-lines{position:relative}.header__toggle-lines:before,.header__toggle-lines:after{content:"";position:absolute;left:0}.header__toggle-lines:before{top:-6px}.header__toggle-lines:after{top:6px}.header.is-menu .header__toggle-lines{background:0 0}.header.is-menu .header__toggle-lines:before,.header.is-menu .header__toggle-lines:after{top:0}.header.is-menu .header__toggle-lines:before{transform:rotate(40deg)}.header.is-menu .header__toggle-lines:after{transform:rotate(-40deg)}.hero,.contact{color:#f7f2eb;align-items:flex-end;display:flex;position:relative;overflow:hidden}.hero{min-height:100svh}.contact{min-height:78vh;margin-top:clamp(4rem,8vw,6.5rem)}.hero__photo,.contact__photo,.hero__shade,.contact__shade{margin:0;position:absolute;inset:0}.hero__img,.contact__img,.chapter__img,.role__img,.company__img{object-fit:cover;width:100%;height:100%;display:block}.hero__shade,.contact__shade{pointer-events:none;background:linear-gradient(#100a086b 0%,#100a0800 24%,#100a080d 42%,#100a08d1 100%)}.hero__photo figcaption{color:#f7f2ebc7;letter-spacing:.2em;margin:0;font-size:.68rem;position:absolute;top:5.2rem;right:1.3rem}.hero__copy,.contact__copy{z-index:1;padding-bottom:2.4rem;position:relative}.hero h1{font:inherit;font-weight:inherit;margin:0}.hero__title{letter-spacing:.04em;max-width:10em;margin:0;font-size:clamp(2.8rem,6.4vw,5.4rem);line-height:1.22;display:block}.hero .kicker,.contact .kicker{color:#e4c4a4}.hero__lead,.contact__lead,.contact__address{color:#f7f2ebd6;max-width:34rem;margin:1rem 0 0}.hero__actions{flex-wrap:wrap;align-items:center;gap:1rem 1.5rem;margin-top:1.5rem;display:flex}.hero .btn{color:#241c17;background:#f7f2eb}.hero .btn:hover{background:#fff}.hero .textlink,.contact__tel{color:#f7f2eb}.hero__meta{color:#f7f2ebb8;letter-spacing:.04em;flex-wrap:wrap;gap:.35rem .7rem;margin:1.6rem 0 0;font-size:.86rem;display:flex}.hero__meta span{color:#e4c4a4}.intro,.services,.jobs,.flow,.company{padding-top:clamp(5rem,10vw,7.5rem)}.intro__grid{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:start;gap:1.5rem 4.5rem;display:grid}.intro .kicker,.band-head .kicker,.company .kicker{color:#9a623c}.intro__text p{color:#6e645c;margin:0 0 1rem}.facts{border-top:1px solid #241c171f;grid-template-columns:repeat(3,minmax(0,1fr));margin:2.8rem auto 0;padding:1.3rem 0 0;display:grid}.facts div+div{border-left:1px solid #241c171f;padding-left:1.4rem}.facts dt{color:#6e645c;letter-spacing:.1em;font-size:.78rem}.facts dd{letter-spacing:.06em;margin:.25rem 0 0;font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.2}.band-head{margin-bottom:2.2rem}.band-head__note{color:#6e645c;max-width:36rem;margin:.85rem 0 0}.chapter{margin-bottom:6.5rem;position:relative}.chapter__img{height:min(68vh,620px)}.chapter__card{z-index:1;background:#f6f1ea;width:min(28rem,100% - 2.4rem);margin:-5.2rem 0 0 max(1.2rem,50% - 540px);padding:1.7rem 1.7rem 1.5rem;position:relative}.chapter__index,.flow__index{color:#9a623c;letter-spacing:.14em;margin:0;font-family:Zen Old Mincho,Yu Mincho,serif}.chapter h3{letter-spacing:.06em;margin:.3rem 0 .55rem;font-size:1.85rem;line-height:1.4}.chapter p:last-child,.role p,.flow__list p:last-child{color:#6e645c;margin:0}.sheet{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.role__media{overflow:hidden}.role__img{height:300px}.role h3{letter-spacing:.04em;margin:.9rem 0 .3rem;font-size:1.28rem;line-height:1.45}.role h3 span{letter-spacing:.02em;margin-top:.1rem;font-family:Zen Kaku Gothic New,Hiragino Sans,sans-serif;font-size:.78em;display:block}.role p{font-size:.92rem}.openings{padding-top:3rem}.openings__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem 1.5rem;display:flex}.openings__head h3{letter-spacing:.05em;margin:0;font-size:1.55rem}.openings__head p{color:#6e645c;margin:0}.openings__list{margin:.9rem 0 0;padding:0;list-style:none}.openings__list a{border-top:1px solid #241c171f;grid-template-columns:1.3fr 1fr 1fr auto;align-items:center;gap:.4rem 1rem;padding:.95rem 0;text-decoration:none;display:grid}.openings__list a:hover{color:#9a623c}.openings__more{letter-spacing:.08em;justify-self:end;font-size:.84rem;font-weight:500}.openings__shifts,.openings__roles{color:#6e645c;margin:.8rem 0 0;font-size:.9rem}.openings__cta{margin-top:1.4rem}.flow__list{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem 2.5rem;margin:0 auto;padding:.6rem 0 0;list-style:none;display:grid}.flow__index{font-size:1.8rem}.flow__list h3{letter-spacing:.05em;margin:.35rem 0 .4rem;font-family:Zen Old Mincho,Yu Mincho,serif;font-size:1.35rem;font-weight:400}.company__photo{margin:0;position:relative}.company__img{height:min(52vh,460px)}.company__photo figcaption{color:#6e645c;letter-spacing:.18em;background:#f6f1eae6;margin:0;padding:.12rem .5rem;font-size:.68rem;position:absolute;bottom:.9rem;right:1rem}.company__main{padding-top:1.8rem}.spec{margin:1.5rem 0 0}.spec div{border-top:1px solid #241c171f;grid-template-columns:7rem minmax(0,1fr);gap:1rem;padding:.85rem 0;display:grid}.spec dt{color:#6e645c;letter-spacing:.1em;font-size:.78rem}.spec dd{margin:0}.spec a{font-weight:500}.spec a:not(:first-child){margin-left:.75rem}.contact__copy{padding-top:8rem;padding-bottom:2.6rem}.contact__tel{letter-spacing:.04em;margin-top:.8rem;font-size:clamp(2.3rem,5vw,3.8rem);line-height:1.2;text-decoration:none;display:inline-block}.contact__tel:hover{color:#e4c4a4}.privacy{width:min(1080px,100% - 3.2rem);margin:0 auto;padding:2.4rem 0 1.3rem}.privacy h2{letter-spacing:.08em;margin:0 0 .4rem;font-family:Zen Old Mincho,Yu Mincho,serif;font-size:1.05rem;font-weight:400}.privacy p{color:#6e645c;margin:0;font-size:.92rem}.footer{padding:0 0 2rem}.footer__bar{border-top:1px solid #241c171f;gap:.85rem;width:min(1080px,100% - 3.2rem);margin:0 auto;padding-top:1.2rem;display:grid}.footer nav{flex-wrap:wrap;gap:.4rem 1.1rem;display:flex}.footer nav a{color:#6e645c;letter-spacing:.06em;font-size:.82rem;text-decoration:none}.footer nav a:hover{color:#241c17}.footer__copy{color:#6e645c;letter-spacing:.05em;margin:0;font-size:.74rem}#services,#jobs,#flow,#company,#contact,#privacy,#top{scroll-margin-top:4.8rem}@media (width<=900px){.shell,.privacy,.footer__bar{width:min(1080px,100% - 1.8rem)}.header{padding-inline:.9rem .65rem}.header__tel span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.header__tel{margin-left:auto}.header__toggle{justify-content:center;align-items:center;display:inline-flex}.nav{z-index:40;color:#241c17;visibility:hidden;opacity:0;background:#f6f1ea;flex-direction:column;flex:none;justify-content:flex-end;align-items:flex-start;gap:.85rem;padding:5.5rem 1.4rem 2.2rem;display:flex;position:fixed;inset:0}.nav a{letter-spacing:.08em;font-family:Zen Old Mincho,Yu Mincho,serif;font-size:1.65rem}.nav.is-open{visibility:visible}.nav__tel{color:#9a623c;align-items:center;gap:.4rem;margin-top:.45rem;font-family:Zen Kaku Gothic New,Hiragino Sans,sans-serif;font-size:1rem;font-weight:500;display:inline-flex}.nav__tel svg{width:1rem;height:1rem}.intro__grid,.facts,.sheet,.flow__list,.openings__list a,.spec div{grid-template-columns:1fr}.facts div+div{border-top:1px solid #241c171f;border-left:0;margin-top:.85rem;padding-top:.85rem;padding-left:0}.chapter__img{height:58vw;min-height:220px}.chapter__card{width:calc(100% - 1.8rem);margin:-3.2rem .9rem 0}.chapter{margin-bottom:3.6rem}.role__img,.company__img{height:230px}.hero__title{font-size:clamp(2.4rem,11vw,3.4rem)}.contact{min-height:70vh}.openings__more{justify-self:start}}@media (width<=640px){.hero__actions .btn,.openings__cta{width:100%}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}
