.rd-root{--base:#f0f0f0;--ink:#2b3338;--ink-soft:#6a7178;--dark:#2e353b;--line:#2b333824;--en:"Satoshi",sans-serif;--jp:"Zen Kaku Gothic New",sans-serif;--num:"Oswald",sans-serif;--ease:cubic-bezier(.22,1,.36,1)}.rd-root,.rd-root *{box-sizing:border-box;margin:0;padding:0}.rd-root{background:var(--base);color:var(--ink);font-family:var(--en),var(--jp);letter-spacing:.02em;-webkit-font-smoothing:antialiased;font-weight:400;line-height:1.9;overflow-x:hidden}.rd-root img,.rd-root video{object-fit:cover;width:100%;height:100%;display:block}.rd-root a{color:inherit;text-decoration:none}.rd-root .jp{font-family:var(--jp)}.rd-root .wrap{max-width:1280px;margin:0 auto;padding:0 48px}.rd-root header{z-index:900;color:#fff;width:100%;transition:background .5s var(--ease),color .5s var(--ease),padding .5s var(--ease);justify-content:space-between;align-items:center;padding:26px 48px;display:flex;position:fixed;top:0;left:0}.rd-root header.solid{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink);background:#f0f0f0eb;padding:18px 48px}.rd-root .logo{font-family:var(--en);letter-spacing:.01em;align-items:center;gap:9px;font-size:22px;font-weight:500;display:flex}.rd-root .logo .mark{width:22px;height:22px}.rd-root .logo .mark svg{width:100%;height:100%;display:block}.rd-root nav ul{letter-spacing:.06em;gap:30px;font-size:14px;list-style:none;display:flex}.rd-root nav a{opacity:.9;transition:opacity .3s;position:relative}.rd-root nav a:hover{opacity:.55}.rd-root .contact-pill{color:var(--ink);letter-spacing:.08em;transition:transform .4s var(--ease),opacity .3s,background .5s var(--ease),color .5s var(--ease);background:#fff;border-radius:999px;padding:11px 26px;font-size:13px}.rd-root .contact-pill:hover{opacity:.85;transform:translateY(-1px)}.rd-root .menu-right{align-items:center;gap:34px;display:flex}@media (max-width:900px){.rd-root nav ul{display:none}.rd-root .menu-right{gap:16px}}.rd-root .hero{height:100vh;min-height:640px;position:relative;overflow:hidden}.rd-root .hero-media{position:absolute;inset:-8% 0}.rd-root .hero-media img{animation:kenburns 18s var(--ease)infinite alternate;filter:saturate(.72)brightness(.82)contrast(1.04);transform:scale(1.08)}.rd-root .hero-media:after{content:"";background:linear-gradient(#1e2c3a47,#1e2c3a1f 40%,#1e2c3a6b);position:absolute;inset:0}@keyframes kenburns{0%{transform:scale(1.08)translateY(0)}to{transform:scale(1.16)translateY(-2%)}}.rd-root .hero-copy{color:#fff;position:absolute;bottom:64px;left:48px}.rd-root .hero-copy .kicker{font-family:var(--en);letter-spacing:.34em;opacity:.82;margin-bottom:22px;font-size:13px;font-weight:400}.rd-root .hero-copy .jp{letter-spacing:.1em;font-size:clamp(26px,3.4vw,46px);font-weight:400;line-height:1.5}.rd-root .hero-km{color:#fff;text-align:right;position:absolute;bottom:64px;right:48px}.rd-root .hero-km .lbl{font-family:var(--en);letter-spacing:.22em;opacity:.7;font-size:11px}.rd-root .hero-km .num{font-family:var(--num);letter-spacing:.02em;font-size:58px;font-weight:300;line-height:1.05}.rd-root .hero-km .sub{font-family:var(--en);opacity:.8;font-size:13px}.rd-root .scroll-hint{color:#fff;font-family:var(--num);letter-spacing:.35em;opacity:.75;writing-mode:vertical-rl;font-size:11px;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.rd-root section{position:relative}.rd-root .block{padding:150px 0}.rd-root .eyebrow{margin-bottom:70px;position:relative}.rd-root .eyebrow .en{font-family:var(--en);color:#2b33381a;letter-spacing:.01em;font-size:clamp(46px,7vw,96px);font-weight:300;line-height:1}.rd-root .eyebrow .jp{letter-spacing:.28em;color:var(--ink-soft);font-size:13px;font-weight:500;position:absolute;top:0;left:6px}.rd-root .reveal{opacity:0;transition:opacity 1s var(--ease),transform 1s var(--ease);transform:translateY(38px)}.rd-root .reveal.in{opacity:1;transform:none}.rd-root .reveal.d1{transition-delay:.12s}.rd-root .reveal.d2{transition-delay:.24s}.rd-root .reveal.d3{transition-delay:.36s}.rd-root .reveal.d4{transition-delay:.48s}.rd-root .reveal.d5{transition-delay:.6s}.rd-root .two{grid-template-columns:1fr 1fr;align-items:center;gap:80px;display:grid}@media (max-width:900px){.rd-root .two{grid-template-columns:1fr;gap:40px}.rd-root .wrap{padding:0 24px}.rd-root .block{padding:90px 0}.rd-root .hero-copy,.rd-root .hero-km{left:24px;right:24px}}.rd-root .lead{font-family:var(--jp);letter-spacing:.08em;margin-bottom:28px;font-size:clamp(22px,2.4vw,32px);font-weight:400;line-height:1.85}.rd-root .body{font-family:var(--jp);color:var(--ink-soft);letter-spacing:.06em;font-size:15px;line-height:2}.rd-root .more{letter-spacing:.12em;border:1px solid var(--line);transition:background .4s var(--ease),color .4s;border-radius:999px;align-items:center;gap:12px;margin-top:40px;padding:14px 30px;font-size:13px;display:inline-flex}.rd-root .more .dot{background:var(--ink);width:5px;height:5px;transition:transform .4s var(--ease);border-radius:50%}.rd-root .more:hover{background:var(--ink);color:var(--base)}.rd-root .more:hover .dot{background:var(--base);transform:translate(3px)}.rd-root .frame{aspect-ratio:4/5;background:#ddd;overflow:hidden}.rd-root .frame img{filter:saturate(.78)brightness(.96)}.rd-root .parallax img{will-change:transform}.rd-root .svc-head{align-items:baseline;gap:20px;margin-bottom:56px;display:flex}.rd-root .svc-head .no{font-family:var(--en);letter-spacing:.2em;color:var(--ink-soft);font-size:11px;font-weight:300}.rd-root .svc-head .en{font-family:var(--en);letter-spacing:.08em;color:var(--ink);font-size:clamp(34px,5vw,50px);font-weight:300;line-height:1}.rd-root .svc-head .jp{font-family:var(--jp);letter-spacing:.26em;color:var(--ink-soft);font-size:13px;font-weight:500}.rd-root .svc-lead{font-family:var(--jp);letter-spacing:.08em;color:var(--ink);max-width:700px;margin-bottom:74px;font-size:clamp(21px,2.2vw,28px);font-weight:400;line-height:1.8}.rd-root .svc-list{border-top:1px solid var(--line);list-style:none}.rd-root .svc-list li{border-bottom:1px solid var(--line);grid-template-columns:90px 446px minmax(0,1fr);align-items:start;padding:34px 0;display:grid}.rd-root .svc-list .no{font-family:var(--en);letter-spacing:.16em;color:var(--ink-soft);padding-top:5px;font-size:11px;font-weight:300}.rd-root .svc-list .jp{font-family:var(--jp);letter-spacing:.08em;color:var(--ink);font-size:clamp(18px,1.9vw,21px);font-weight:400;line-height:1.5}.rd-root .svc-list .en{font-family:var(--en);letter-spacing:.08em;color:var(--ink-soft);margin-top:8px;font-size:13px;font-weight:300}.rd-root .svc-list .desc{font-family:var(--jp);letter-spacing:.07em;color:var(--ink-soft);padding-top:3px;font-size:14.5px;font-weight:300;line-height:2}@media (max-width:900px){.rd-root .svc-head{flex-wrap:wrap;gap:14px;margin-bottom:36px}.rd-root .svc-lead{margin-bottom:44px}.rd-root .svc-list li{grid-template-columns:52px minmax(0,1fr);row-gap:14px;padding:26px 0}.rd-root .svc-list .desc{grid-column:2}}.rd-root .reg-feature{grid-template-columns:1fr 1fr;align-items:center;gap:56px;margin:40px 0 74px;display:grid}.rd-root .reg-img{aspect-ratio:16/10;background:#ddd;overflow:hidden}.rd-root .reg-label{font-family:var(--en);letter-spacing:.18em;color:var(--ink-soft);margin-bottom:16px;font-size:12px;font-weight:300}.rd-root .reg-title{font-family:var(--jp);letter-spacing:.06em;margin-bottom:20px;font-size:clamp(22px,2.4vw,28px);font-weight:500;line-height:1.7}.rd-root .reg-body{font-family:var(--jp);color:var(--ink-soft);letter-spacing:.05em;font-size:15px;line-height:2}@media (max-width:900px){.rd-root .reg-feature{grid-template-columns:1fr;gap:26px;margin:20px 0 50px}}.rd-root .rail{scroll-snap-type:x mandatory;scrollbar-width:none;gap:34px;padding-bottom:26px;display:flex;overflow-x:auto}.rd-root .rail::-webkit-scrollbar{display:none}.rd-root .card{scroll-snap-align:start;flex:0 0 clamp(280px,32vw,420px)}.rd-root .card .thumb{aspect-ratio:4/3;background:#ddd;margin-bottom:22px;overflow:hidden}.rd-root .card .thumb img{transition:transform 1.2s var(--ease);filter:saturate(.85)}.rd-root .card:hover .thumb img{transform:scale(1.06)}.rd-root a.card{cursor:pointer;display:block}.rd-root a.card:hover h4{text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:1px}.rd-root .card h4{font-family:var(--jp);letter-spacing:.06em;margin-bottom:10px;font-size:19px;font-weight:500}.rd-root .card .meta{font-family:var(--jp);color:var(--ink-soft);margin-bottom:14px;font-size:14px;line-height:1.8}.rd-root .tags{font-family:var(--en);color:var(--ink-soft);letter-spacing:.05em;flex-wrap:wrap;gap:10px;font-size:12px;display:flex}.rd-root .tags span:not(:last-child):after{content:" /";opacity:.5;margin-left:10px}.rd-root .progress{background:var(--line);height:1px;margin-top:8px;position:relative}.rd-root .progress b{background:var(--ink);width:40%;height:1px;position:absolute;top:0;left:0}.rd-root .cs-head{text-align:right;margin-bottom:80px}.rd-root .cs-head .en{font-family:var(--en);letter-spacing:.19em;font-size:clamp(26px,3vw,32px);font-weight:300;line-height:1.1}.rd-root .cs-head .jp{font-family:var(--jp);letter-spacing:.28em;color:var(--ink-soft);margin-top:15px;font-size:13px;font-weight:500}.rd-root .cs-items{flex-direction:column;gap:100px;display:flex}.rd-root .cs-item{grid-template-columns:64.5% 35.5%;align-items:center;display:grid}.rd-root .cs-item .cs-main{grid-area:1/1}.rd-root .cs-item .cs-side{grid-area:1/2}.rd-root .cs-item.rev{grid-template-columns:35.5% 64.5%}.rd-root .cs-item.rev .cs-main{grid-column:2}.rd-root .cs-item.rev .cs-side{grid-column:1}.rd-root .cs-en{font-family:var(--en);letter-spacing:.19em;font-size:clamp(24px,2.6vw,32px);font-weight:300;line-height:1.1}.rd-root .cs-jp{font-family:var(--jp);letter-spacing:.24em;margin-top:14px;font-size:clamp(17px,1.8vw,21px);font-weight:500}.rd-root .cs-photo{aspect-ratio:3/2;background:#ddd;margin-top:36px;display:block;overflow:hidden}.rd-root .cs-photo img{filter:saturate(.85);transition:transform 1.6s var(--ease);transform:scale(1.14)}.rd-root .cs-photo.in img{transform:scale(1)}.rd-root .cs-photo.in:hover img{transition-duration:1.2s;transform:scale(1.05)}.rd-root .cs-body{font-family:var(--jp);color:var(--ink-soft);letter-spacing:.05em;margin-top:44px;font-size:15px;line-height:2}.rd-root .cs-side{flex-direction:column;align-items:center;gap:clamp(40px,6vw,86px);display:flex}.rd-root .cs-illust{width:clamp(110px,13vw,186px);color:var(--ink);opacity:.5}.rd-root .cs-illust svg{width:100%;height:auto;display:block}.rd-root .cs-link{flex-direction:column;align-items:flex-start;gap:16px;display:inline-flex}.rd-root .cs-link-row{align-items:center;gap:26px;display:flex}.rd-root .cs-line{width:56px;height:1px;transition:width .5s var(--ease);background:#2e8b70}.rd-root .cs-ring{border:1px solid var(--ink);width:50px;height:50px;transition:background .4s var(--ease),color .4s var(--ease);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.rd-root .cs-ring svg{width:14px;height:14px;display:block}.rd-root .cs-url{font-family:var(--en);letter-spacing:.14em;color:var(--ink-soft);transition:color .3s var(--ease);font-size:12px;font-weight:300}.rd-root .cs-link:hover .cs-line{width:78px}.rd-root .cs-link:hover .cs-ring{background:var(--ink);color:var(--base)}.rd-root .cs-link:hover .cs-url{color:var(--ink)}@media (max-width:900px){.rd-root .cs-head{margin-bottom:52px}.rd-root .cs-items{gap:72px}.rd-root .cs-item,.rd-root .cs-item.rev{grid-template-columns:1fr;row-gap:34px}.rd-root .cs-item .cs-main,.rd-root .cs-item.rev .cs-main{grid-area:1/1}.rd-root .cs-item .cs-side,.rd-root .cs-item.rev .cs-side{grid-area:2/1;align-items:flex-start}.rd-root .cs-illust{display:none}.rd-root .cs-photo{margin-top:26px}.rd-root .cs-body{margin-top:28px}}.rd-root .recruit{position:relative}.rd-root .editorial{grid-template-columns:repeat(12,1fr);align-items:start;gap:24px;display:grid}.rd-root .editorial .a{aspect-ratio:3/4;grid-column:1/6;overflow:hidden}.rd-root .editorial .b{aspect-ratio:4/3;grid-column:7/13;margin-top:120px;overflow:hidden}.rd-root .editorial img,.rd-root .editorial video{filter:saturate(.82)}.rd-root .recruit-text{text-align:center;max-width:540px;font-family:var(--jp);color:var(--ink-soft);letter-spacing:.06em;margin:70px auto 0;font-size:15px;line-height:2}.rd-root .big-slogan{font-family:var(--en);color:#2b333814;text-align:center;letter-spacing:.02em;margin-top:70px;font-size:clamp(40px,6vw,84px);font-weight:300}@media (max-width:900px){.rd-root .editorial .b{margin-top:20px}}.rd-root .contact{padding:150px 0}.rd-root .contact .lead{max-width:640px}.rd-root footer{color:var(--ink);border-top:1px solid var(--line);background:#fff;padding:90px 0 60px}.rd-root footer a{color:var(--ink-soft);transition:color .3s}.rd-root footer a:hover{color:var(--ink)}.rd-root .fgrid{grid-template-columns:1.4fr 1fr 1fr 1.4fr;align-items:start;gap:40px;display:grid}.rd-root .fnav{color:var(--ink-soft);font-family:var(--en);letter-spacing:.02em;flex-direction:column;gap:20px;font-size:22px;font-weight:300;display:flex}.rd-root .fmeta{font-family:var(--jp);color:var(--ink-soft);font-size:14px;line-height:1.9}.rd-root .social{gap:14px;margin-top:12px;display:flex}.rd-root .social a{width:42px;height:42px;font-family:var(--en);border:1px solid #2b333838;border-radius:50%;justify-content:center;align-items:center;font-size:13px;display:flex}.rd-root .flogo{font-family:var(--en);color:var(--ink);margin-bottom:20px;font-size:22px;font-weight:500}.rd-root .copyright{font-family:var(--num);letter-spacing:.15em;color:var(--ink);opacity:.45;margin-top:70px;font-size:11px}@media (max-width:900px){.rd-root .fgrid{grid-template-columns:1fr 1fr;gap:30px}.rd-root .fnav{font-size:18px}}.rd-root .cm-overlay{z-index:2000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .35s var(--ease),visibility .35s;background:#161b1d8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.rd-root .cm-overlay.open{opacity:1;visibility:visible}.rd-root .cm-card{width:min(720px,100%);max-height:90vh;color:var(--ink);transition:transform .4s var(--ease);background:#fff;border-radius:6px;padding:clamp(28px,5vw,56px);position:relative;overflow-y:auto;transform:translateY(14px);box-shadow:0 30px 80px -30px #141e1a80}.rd-root .cm-overlay.open .cm-card{transform:none}.rd-root .cm-close{cursor:pointer;width:40px;height:40px;color:var(--ink-soft);background:0 0;border:none;font-size:26px;line-height:1;transition:color .2s;position:absolute;top:18px;right:20px}.rd-root .cm-close:hover{color:var(--ink)}.rd-root .cm-eyebrow{font-family:var(--en);letter-spacing:.2em;color:var(--ink-soft);font-size:12px;font-weight:500}.rd-root .cm-title{font-family:var(--jp);letter-spacing:.04em;margin:8px 0 16px;font-size:clamp(26px,4vw,34px);font-weight:700}.rd-root .cm-desc{font-family:var(--jp);color:var(--ink-soft);letter-spacing:.03em;margin:0 0 30px;font-size:15px;line-height:1.95}.rd-root .cm-form{flex-direction:column;gap:24px;display:flex}.rd-root .cm-row{grid-template-columns:1fr 1fr;gap:26px;display:grid}@media (max-width:560px){.rd-root .cm-row{grid-template-columns:1fr;gap:24px}.rd-root .cm-card{padding:32px 22px}}.rd-root .cm-field{flex-direction:column;gap:9px;display:flex}.rd-root .cm-field label{font-family:var(--jp);color:var(--ink-soft);letter-spacing:.06em;font-size:13px}.rd-root .cm-field label span{color:#c2532f;margin-left:2px}.rd-root .cm-field input,.rd-root .cm-field select,.rd-root .cm-field textarea{font-family:var(--jp);color:var(--ink);background:0 0;border:none;border-bottom:1px solid #2b333842;width:100%;padding:8px 2px;font-size:16px;transition:border-color .25s}.rd-root .cm-field input::placeholder,.rd-root .cm-field textarea::placeholder{color:#2b333859}.rd-root .cm-field input:focus,.rd-root .cm-field select:focus,.rd-root .cm-field textarea:focus{border-bottom-color:var(--ink);outline:none}.rd-root .cm-field select{appearance:none;cursor:pointer;background:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"%236a7178\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"/></svg>") right 2px center no-repeat;padding-right:26px}.rd-root .cm-field textarea{resize:vertical;min-height:96px;line-height:1.7}.rd-root .cm-submit{background:var(--dark);color:#fff;cursor:pointer;font-family:var(--jp);letter-spacing:.08em;transition:transform .3s var(--ease),opacity .3s;border:none;border-radius:4px;align-self:flex-start;align-items:center;gap:12px;margin-top:6px;padding:17px 40px;font-size:15px;display:inline-flex}.rd-root .cm-submit:hover{opacity:.9;transform:translateY(-1px)}.rd-root .cm-submit span{transition:transform .3s var(--ease)}.rd-root .cm-submit:hover span{transform:translate(4px)}.rd-root .cm-done{text-align:center;padding:20px 0 8px}.rd-root .cm-done .ic{color:#2e8b70;background:#e4f1ec;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 18px;font-size:26px;display:flex}.rd-root .cm-done h3{font-family:var(--jp);letter-spacing:.04em;margin:0 0 10px;font-size:20px}.rd-root .cm-done p{font-family:var(--jp);color:var(--ink-soft);margin:0 0 24px;font-size:14px;line-height:1.9}.rd-root .cm-done button{border:1px solid var(--line);letter-spacing:.1em;cursor:pointer;color:var(--ink);background:0 0;border-radius:999px;padding:12px 30px;font-size:13px}@media (prefers-reduced-motion:reduce){.rd-root .cm-overlay,.rd-root .cm-card,.rd-root .cm-submit,.rd-root .cm-submit span{transition:none}.rd-root .hero-media img{animation:none}.rd-root .reveal{opacity:1;transition:none;transform:none}.rd-root .cs-photo img,.rd-root .cs-photo.in img,.rd-root .cs-photo.in:hover img{transition:none;transform:none}.rd-root .cs-link:hover .cs-line{width:56px}}.rd-root .cm-error{font-family:var(--jp);color:#b3261e;margin:-6px 0 4px;font-size:13px;line-height:1.8}.rd-root .cm-submit:disabled{opacity:.55;cursor:default}
