@import"https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,700&family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap";:root{--black: #111111;--paper: #f5f4ef;--white: #ffffff;--orange: #ff4e2f;--blue: #4455ff;--lime: #d8ff35;--pink: #ffccd4;--line: rgba(17, 17, 17, .18);--pad: clamp(22px, 5.2vw, 80px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--black);font-family:DM Sans,Noto Sans JP,sans-serif;font-feature-settings:"palt";overflow-x:hidden}body.menu-open{overflow:hidden}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}button{font:inherit}.intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;display:grid;place-content:center;background:var(--black);color:var(--white);animation:intro-out .9s cubic-bezier(.77,0,.18,1) 1.55s forwards}.intro p{margin:0;font-size:clamp(4rem,14vw,11rem);font-weight:800;letter-spacing:-.08em;line-height:.8}.intro span{margin-top:24px;text-align:center;font-size:11px;letter-spacing:.35em}.intro__line{position:absolute;left:0;top:0;width:0;height:5px;background:var(--lime);animation:load-line 1.4s ease forwards}@keyframes load-line{to{width:100%}}@keyframes intro-out{to{transform:translateY(-100%);visibility:hidden}}.site-header{position:fixed;inset:0 0 auto;z-index:80;height:90px;padding:0 var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:var(--white);transition:height .35s ease,background .35s ease,color .35s ease,border-color .35s ease;border-bottom:1px solid transparent}.site-header.scrolled{height:72px;color:var(--black);background:#f5f4efeb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-color:var(--line)}.logo{justify-self:start;display:inline-flex;align-items:center;gap:10px;font-size:23px;font-weight:800;letter-spacing:-.05em}.logo__mark{display:grid;place-content:center;width:34px;height:34px;border-radius:50%;background:var(--orange);color:var(--white);font-size:17px}.desktop-nav{display:flex;gap:34px;font-size:11px;font-weight:700;letter-spacing:.12em}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:currentColor;transition:right .25s}.desktop-nav a:hover:after{right:0}.header-contact{justify-self:end;display:flex;align-items:center;gap:22px;font-size:11px;font-weight:700;letter-spacing:.12em}.header-contact span{display:grid;place-content:center;width:42px;height:42px;border:1px solid currentColor;border-radius:50%;transition:transform .3s,background .3s,color .3s}.header-contact:hover span{transform:rotate(45deg);background:var(--lime);color:var(--black)}.menu-button{display:none;justify-self:end;width:46px;height:46px;border:0;border-radius:50%;background:var(--white);padding:0 13px}.menu-button i{display:block;height:1px;background:var(--black);margin:6px 0;transition:transform .3s}body.menu-open .menu-button i:first-child{transform:translateY(3.5px) rotate(45deg)}body.menu-open .menu-button i:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-content:center;background:var(--lime);transform:translateY(-105%);transition:transform .65s cubic-bezier(.77,0,.18,1)}.mobile-menu.is-open{transform:none}.mobile-menu nav{display:grid;gap:10px}.mobile-menu a{font-size:clamp(2.5rem,12vw,5rem);font-weight:800;letter-spacing:-.07em}.mobile-menu a span{font-size:11px;letter-spacing:normal;vertical-align:top}.hero{position:relative;min-height:100svh;padding:140px var(--pad) 42px;background:var(--black);color:var(--white);overflow:hidden}.hero__noise{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.13;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.55) .6px,transparent .6px);background-size:5px 5px}.hero__eyebrow{position:relative;margin:0 0 45px;padding-left:60%;font-size:10px;letter-spacing:.22em}.hero__title{position:relative;z-index:2;margin:0;max-width:1030px;font-size:clamp(3.7rem,9.25vw,9.2rem);font-weight:800;line-height:.91;letter-spacing:-.085em}.hero__title span{display:block;overflow:hidden;animation:hero-line 1.1s cubic-bezier(.2,.7,.1,1) backwards}.hero__title span:nth-child(1){animation-delay:1.9s}.hero__title span:nth-child(2){animation-delay:2.02s;padding-left:.85em}.hero__title span:nth-child(3){animation-delay:2.14s}.hero__title span:nth-child(4){animation-delay:2.26s;padding-left:1.35em}.hero__title b{color:var(--lime);font-weight:inherit}@keyframes hero-line{0%{transform:translateY(110%)}}.hero__visual{position:absolute;z-index:1;right:var(--pad);top:16%;width:min(37vw,550px);height:69%}.hero__main-image{position:absolute;top:0;right:7%;bottom:0;left:0;overflow:hidden;border-radius:50% 50% 4px 4px;opacity:.63}.hero__main-image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,var(--black),transparent 48%)}.hero__float{position:absolute;margin:0;overflow:hidden;border:5px solid var(--black);box-shadow:0 10px 40px #0000004d;animation:float 5s ease-in-out infinite}.hero__float figcaption{position:absolute;left:9px;bottom:8px;padding:6px 8px;background:var(--lime);color:var(--black);font-size:8px;font-weight:800;letter-spacing:.12em}.hero__float--mobile{width:34%;aspect-ratio:.8;left:-9%;bottom:0;transform:rotate(-5deg)}.hero__float--event{width:40%;aspect-ratio:1.3;right:-4%;top:4%;transform:rotate(4deg);animation-delay:-1.5s}.hero__float--beauty{width:31%;aspect-ratio:.8;right:0;bottom:4%;transform:rotate(6deg);animation-delay:-3s}@keyframes float{50%{translate:0 -12px}}.hero__bottom{position:absolute;left:var(--pad);right:var(--pad);bottom:35px;z-index:3;display:flex;justify-content:space-between;align-items:end}.hero__bottom p{margin:0;font-size:clamp(12px,1.1vw,16px);line-height:1.8}.scroll-cue{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.18em}.scroll-cue span{width:38px;height:38px;border:1px solid rgba(255,255,255,.5);border-radius:50%;position:relative}.scroll-cue span:after{content:"↓";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center}.ticker{overflow:hidden;background:var(--lime);border-bottom:1px solid var(--black)}.ticker__track{display:flex;width:max-content;align-items:center;gap:26px;padding:18px 0;animation:ticker 22s linear infinite}.ticker span{font-size:clamp(2rem,4.2vw,4.6rem);font-weight:800;letter-spacing:-.06em}.ticker i{font-style:normal;font-size:12px}@keyframes ticker{to{transform:translate(-50%)}}.section{padding:clamp(90px,13vw,190px) var(--pad)}.section-heading{display:grid;grid-template-columns:1fr 2fr;align-items:end;margin-bottom:clamp(55px,8vw,120px)}.section-heading p{margin:0;font-size:11px;font-weight:700;letter-spacing:.14em}.section-heading p span{display:inline-grid;place-content:center;width:28px;height:28px;margin-right:11px;border:1px solid currentColor;border-radius:50%}.section-heading h2{margin:0;font-size:clamp(3.5rem,8vw,8.8rem);line-height:.78;letter-spacing:-.09em}.about__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(38px,8vw,130px)}.about__lead{margin:0;font-size:clamp(2.5rem,5.6vw,6.2rem);font-weight:700;line-height:1.13;letter-spacing:-.07em}.about__lead em,.company__message em{font-style:normal;color:var(--orange)}.about__copy{max-width:580px;margin:70px 0 0 auto;font-size:clamp(15px,1.25vw,19px);line-height:2.15}.about__image{position:relative;margin:70px 0 0;height:min(58vw,700px);overflow:hidden;border-radius:100vw 100vw 0 0}.about__image figcaption{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;padding:16px;background:var(--black);color:var(--white);font-size:9px;letter-spacing:.12em}.about__note{grid-column:1;display:flex;gap:24px;align-items:center;margin-top:-150px}.about__note p{margin:0;font-size:13px;line-height:1.7}.round-arrow{display:grid;place-content:center;width:90px;height:90px;border:1px solid var(--black);border-radius:50%;font-size:30px}.business{background:var(--black);color:var(--white)}.business-card{position:relative;min-height:720px;padding:clamp(38px,5vw,76px) 0;display:grid;grid-template-columns:90px .7fr 1.3fr;gap:clamp(28px,4vw,70px);border-top:1px solid rgba(255,255,255,.25)}.business-card:last-child{border-bottom:1px solid rgba(255,255,255,.25)}.business-card__number{font-size:13px}.business-card__content{padding-top:55px}.business-card__en{margin:0 0 14px;font-size:10px;letter-spacing:.18em;color:var(--lime)}.business-card h3{margin:0 0 32px;font-size:clamp(2.4rem,4vw,5.1rem);letter-spacing:-.07em;line-height:1.05}.business-card__content>p:not(.business-card__en){max-width:520px;font-size:15px;line-height:2;color:#ffffffbf}.business-card ul{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:36px 0 0;list-style:none}.business-card li{padding:9px 13px;border:1px solid rgba(255,255,255,.28);border-radius:100px;font-size:10px}.business-card__gallery{min-width:0;position:relative}.business-card__gallery figure{margin:0;overflow:hidden}.business-card__gallery img{transition:transform .8s cubic-bezier(.2,.7,.1,1)}.business-card__gallery figure:hover img{transform:scale(1.04)}.business-card__gallery--two .portrait{position:absolute;left:0;top:0;width:58%;height:76%;border-radius:2px 120px 2px 2px}.business-card__gallery--two .landscape{position:absolute;right:0;bottom:0;width:52%;height:46%;border:10px solid var(--black)}.business-card__gallery--mosaic{display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:1fr .75fr;gap:10px}.business-card__gallery--mosaic figure:first-child{grid-row:span 2;border-radius:180px 0 0}.business-card__gallery--mosaic figure:nth-child(4){display:none}.business-card__gallery--beauty figure:first-child{position:absolute;top:0;right:0;bottom:12%;left:0;border-radius:180px 180px 0 0}.business-card__gallery--beauty figure:last-child{position:absolute;width:46%;height:39%;right:-4%;bottom:0;border:10px solid var(--black)}.team-visual{position:relative;height:min(75vw,900px);min-height:540px;background:var(--blue);overflow:hidden;color:var(--white)}.team-visual__image{position:absolute;top:9%;right:9%;bottom:14%;left:9%;overflow:hidden;border-radius:240px 0}.team-visual__image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(transparent 50%,#0000008c)}.team-visual__word{position:absolute;top:2%;left:-2%;margin:0;color:var(--lime);font-size:clamp(5rem,17vw,15rem);font-weight:800;letter-spacing:-.1em;mix-blend-mode:screen}.team-visual__caption{position:absolute;right:12%;bottom:8%}.team-visual__caption span{font-size:9px;letter-spacing:.18em}.team-visual__caption p{margin:17px 0 0;font-size:clamp(1.7rem,3vw,3.6rem);font-weight:700;line-height:1.25;letter-spacing:-.05em}.company__layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,8vw,110px)}.company__message{margin:0;font-size:clamp(2.4rem,4.3vw,5rem);font-weight:700;line-height:1.2;letter-spacing:-.07em}.company__data{margin:0;border-top:1px solid var(--black)}.company__data div{display:grid;grid-template-columns:135px 1fr;padding:26px 0;border-bottom:1px solid var(--line)}.company__data dt{font-size:11px;font-weight:700}.company__data dd{margin:0;font-size:14px;line-height:1.9}.company__data a{text-decoration:underline;text-underline-offset:4px}.recruit{background:var(--blue);color:var(--white);overflow:hidden}.recruit__intro{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:clamp(50px,9vw,140px);margin-bottom:clamp(80px,12vw,170px)}.recruit__eyebrow{margin:0 0 34px;color:var(--lime);font-size:10px;font-weight:700;letter-spacing:.2em}.recruit__message h3{margin:0;font-size:clamp(3.2rem,6.6vw,7rem);line-height:.98;letter-spacing:-.08em}.recruit__message h3 em{color:var(--lime);font-style:normal}.recruit__message>p:last-child{max-width:590px;margin:52px 0 0 auto;color:#ffffffc7;font-size:15px;line-height:2.05}.recruit__image{position:relative;height:min(54vw,720px);margin:0;overflow:hidden;border-radius:240px 240px 0 0}.recruit__image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(transparent 58%,#0000008c)}.recruit__image figcaption{position:absolute;z-index:1;left:24px;bottom:22px;font-size:9px;letter-spacing:.15em}.job-card{background:var(--paper);color:var(--black)}.job-card__top{display:flex;justify-content:space-between;gap:35px;padding:clamp(32px,5vw,70px);border-bottom:1px solid var(--black)}.job-card__top p{margin:0 0 15px;font-size:9px;font-weight:700;letter-spacing:.18em;color:var(--blue)}.job-card__top h3{margin:0;font-size:clamp(1.8rem,3.8vw,4.2rem);letter-spacing:-.06em}.job-card__tags{display:flex;align-items:flex-start;gap:8px}.job-card__tags span{white-space:nowrap;padding:10px 15px;border:1px solid var(--black);border-radius:100px;font-size:10px;font-weight:700}.job-card__details{display:grid;grid-template-columns:1fr 1fr;margin:0}.job-card__details>div{display:grid;grid-template-columns:110px 1fr;gap:24px;padding:32px clamp(25px,4vw,58px);border-bottom:1px solid var(--line)}.job-card__details>div:nth-child(odd){border-right:1px solid var(--line)}.job-card__details dt{font-size:11px;font-weight:700}.job-card__details dd{margin:0;font-size:13px;line-height:1.85}.job-card__details small{color:#11111194}.job-card__bottom{display:flex;justify-content:space-between;align-items:center;gap:35px;padding:34px clamp(25px,4vw,58px)}.job-card__bottom p{max-width:560px;margin:0;color:#1111118c;font-size:10px;line-height:1.7}.job-card__bottom a{display:flex;align-items:center;gap:28px;padding:15px 22px;border:1px solid var(--black);border-radius:100px;font-size:11px;font-weight:700}.job-card__bottom a span{font-size:19px;transition:transform .3s}.job-card__bottom a:hover span{transform:rotate(45deg)}.contact{position:relative;min-height:760px;padding:clamp(100px,14vw,190px) var(--pad) 90px;background:var(--lime);overflow:hidden}.contact__orb{position:absolute;width:min(60vw,760px);aspect-ratio:1;right:-12%;top:-38%;border-radius:50%;background:var(--orange)}.contact__label{position:relative;margin:0 0 50px;font-size:10px;font-weight:700;letter-spacing:.2em}.contact__label span{display:inline-grid;place-content:center;width:28px;height:28px;margin-right:11px;border:1px solid currentColor;border-radius:50%;letter-spacing:0}.contact h2{position:relative;max-width:1050px;margin:0;font-size:clamp(3.8rem,8.8vw,9.6rem);line-height:.92;letter-spacing:-.09em}.contact__grid{position:relative;display:grid;grid-template-columns:.72fr 1.28fr;align-items:start;gap:clamp(55px,9vw,130px);margin-top:clamp(70px,10vw,130px)}.contact__direct>p{margin:0 0 36px;font-size:13px;line-height:1.9}.contact__button{display:grid;grid-template-columns:1fr auto;gap:10px 60px;min-width:min(100%,550px);padding:24px 26px;border:2px solid var(--black);border-radius:100px;transition:background .3s,color .3s}.contact__button span{font-size:10px;letter-spacing:.09em}.contact__button strong{font-size:clamp(1.4rem,2.4vw,2.2rem)}.contact__button i{grid-column:2;grid-row:1 / span 2;align-self:center;font-size:24px;font-style:normal;transition:transform .3s}.contact__button:hover{background:var(--black);color:var(--white)}.contact__button:hover i{transform:rotate(45deg)}.contact-form{padding:clamp(26px,4vw,54px);background:var(--paper);border:2px solid var(--black)}.contact-form__heading{display:grid;grid-template-columns:1fr auto;align-items:end;padding-bottom:30px;border-bottom:1px solid var(--black)}.contact-form__heading p{grid-column:1 / -1;margin:0 0 12px;color:var(--blue);font-size:9px;font-weight:700;letter-spacing:.18em}.contact-form__heading h3{margin:0;font-size:clamp(1.6rem,2.8vw,3.1rem);letter-spacing:-.06em}.contact-form__heading>span{font-size:9px;color:#1111118c}.form-row{display:block;margin-top:28px}.form-row--two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-row label,label.form-row{font-size:11px;font-weight:700}.form-row small{margin-left:8px;color:var(--orange);font-size:9px}.form-row input,.form-row select,.form-row textarea{width:100%;margin-top:11px;padding:15px 4px;border:0;border-bottom:1px solid rgba(17,17,17,.4);border-radius:0;outline:0;background:transparent;color:var(--black);font:inherit;font-size:14px;transition:border-color .25s}.form-row textarea{resize:vertical;line-height:1.75}.form-row select{cursor:pointer}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--blue);border-bottom-width:2px}.form-consent{display:flex;align-items:center;gap:10px;margin:28px 0;cursor:pointer;font-size:11px}.form-consent input{width:18px;height:18px;accent-color:var(--blue)}.form-submit{width:100%;display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border:0;background:var(--black);color:var(--white);cursor:pointer;font-weight:700}.form-submit i{font-size:21px;font-style:normal;transition:transform .3s}.form-submit:hover i{transform:rotate(45deg)}.form-status{min-height:1.5em;margin:13px 0 0;color:var(--blue);font-size:10px}.site-footer{padding:55px var(--pad);display:grid;grid-template-columns:1fr auto 1fr auto;align-items:end;gap:30px;background:var(--black);color:var(--white)}.site-footer>div{display:grid;gap:8px;font-size:10px;letter-spacing:.1em}.site-footer>p{justify-self:end;margin:0;font-size:9px;color:#ffffff8c}.page-top{display:grid;place-content:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.4);border-radius:50%}.reveal{opacity:0;transform:translateY(45px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.1,1)}.reveal.is-visible{opacity:1;transform:none}.image-parallax img{transform:scale(1.08);transition:transform 1.2s ease}.image-parallax.is-visible img{transform:scale(1)}@media (min-width: 901px) and (max-width: 1100px){.site-header{grid-template-columns:.8fr auto .8fr}.desktop-nav{gap:25px}.hero__eyebrow{padding-left:53%;font-size:9px}}@media (max-width: 900px){.site-header{height:72px;grid-template-columns:1fr auto}.desktop-nav,.header-contact{display:none}.menu-button{display:block}.site-header.scrolled .menu-button{background:var(--black)}.site-header.scrolled .menu-button i{background:var(--white)}.hero{min-height:900px;padding-top:120px}.hero__eyebrow{padding-left:0}.hero__title{font-size:clamp(3.5rem,14vw,7rem)}.hero__title span:nth-child(2){padding-left:.25em}.hero__title span:nth-child(4){padding-left:.5em}.hero__visual{right:4%;top:45%;width:70vw;height:45%}.hero__float--mobile{left:-24%}.hero__float--event{right:-10%}.hero__float--beauty{right:-9%}.hero__bottom{bottom:26px}.section-heading{grid-template-columns:1fr;gap:40px}.about__grid{grid-template-columns:1fr}.about__copy{margin:40px 0 0}.about__image{margin-top:10px;height:110vw;max-height:720px}.about__note{grid-column:auto;margin:0}.business-card{min-height:0;grid-template-columns:45px 1fr}.business-card__content{padding-top:0}.business-card__gallery{grid-column:1 / -1;height:76vw;min-height:430px}.company__layout,.recruit__intro{grid-template-columns:1fr}.recruit__message>p:last-child{margin:35px 0 0}.recruit__image{height:95vw;max-height:700px}.job-card__top{flex-direction:column}.job-card__details{grid-template-columns:1fr}.job-card__details>div:nth-child(odd){border-right:0}.job-card__bottom{align-items:flex-start;flex-direction:column}.contact{min-height:650px}.contact__orb{width:80vw;right:-35%;top:-18%}.contact__grid{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr auto}.site-footer>div{grid-row:2}.site-footer>p{grid-row:3;justify-self:start}.page-top{grid-row:2;grid-column:2}}@media (max-width: 560px){.hero{min-height:790px}.hero__eyebrow{font-size:8px;letter-spacing:.16em;white-space:nowrap}.hero__visual{top:48%;height:38%}.hero__main-image{right:0}.hero__float{border-width:3px}.hero__float figcaption{left:5px;bottom:5px;padding:5px 6px;font-size:6px;letter-spacing:.08em}.hero__bottom p{display:none}.hero__bottom{justify-content:flex-end}.round-arrow{width:65px;height:65px}.business-card{grid-template-columns:30px 1fr}.business-card__number{font-size:10px}.business-card__gallery--mosaic{height:120vw;grid-template-columns:1fr 1fr;grid-template-rows:1.2fr .8fr .8fr}.business-card__gallery--mosaic figure:first-child{grid-column:1 / -1;grid-row:auto}.business-card__gallery--mosaic figure:nth-child(4){display:block}.company__data div{grid-template-columns:95px 1fr}.job-card__details>div{grid-template-columns:1fr;gap:12px}.job-card__tags{flex-wrap:wrap}.contact h2{font-size:clamp(2.4rem,10.5vw,3rem);line-height:1;letter-spacing:-.075em}.contact__button{gap:7px 25px;padding:19px 22px}.contact-form{padding:22px}.form-row--two{grid-template-columns:1fr;gap:0}.contact-form__heading{grid-template-columns:1fr;gap:10px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.intro{display:none}.reveal{opacity:1;transform:none}}
