.hero{--hero-inset:max(8vw, calc((100vw - 1408px) / 2));--hero-radius:28px;padding-top:24px;position:relative}.hero-stage{position:relative}.hero-frame{margin-inline:var(--hero-inset);border-radius:var(--hero-radius);isolation:isolate;background:#ccd0ce;height:min(73svh,800px);min-height:480px;position:relative;overflow:hidden}.hero-poster,.hero-video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-video{z-index:1}.hero-shade{z-index:2;pointer-events:none;background:linear-gradient(#0000 45%,#071627a6),linear-gradient(90deg,#071627b3,#07162733);position:absolute;inset:0}.hero-copy{z-index:3;color:#fff;max-width:none;position:absolute;inset:auto 32px 32px;transform:none}.hero-brand{z-index:3;color:#fff;pointer-events:none;filter:drop-shadow(0 2px 6px #07162759);opacity:calc(1 - var(--hero-progress,0));margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-60%)}.hero-brand .lockup{--lockup-mark:clamp(40px, 9.4vw, 120px);--lockup-en:clamp(17px, 4.1vw, 52px);--lockup-ja:clamp(8px, 1.9vw, 24px);gap:clamp(10px,2.2vw,28px)}.hero-brand .lockup-name{gap:clamp(5px,.8vw,10px)}.hero-brand-text{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.about-story h3.about-primary-headline{letter-spacing:0;text-wrap:wrap;word-break:auto-phrase;font-family:Hiragino Kaku Gothic ProN,Yu Gothic Medium,Yu Gothic,Meiryo,sans-serif;font-size:clamp(28px,3.8vw - 8px,46px);font-weight:700;line-height:1.22}.hero-cta.action-link{--action-accent:#fff;--action-contrast:var(--ink);margin-top:24px;margin-left:auto;font-size:32px;transition:color .18s;display:flex}.hero-cta.action-link:is(:hover,:focus-visible){--action-accent:var(--link);--action-contrast:var(--canvas)}@media (width>=1000px){.hero-copy{justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.hero-cta.action-link{flex-shrink:0;margin-top:0}}.hero-cta .action-icon{flex-basis:40px;width:40px;height:40px}.hero-cta .action-icon svg{width:28px;height:28px}.hero-cta:focus-visible{outline-color:#fff;opacity:1!important;clip-path:none!important;transform:none!important}.announcement{z-index:19;background:var(--canvas);width:100%;color:var(--ink);position:relative;overflow:clip}.announcement-link{height:44px;min-height:44px;padding:8px var(--gutter);text-align:center;color:var(--ink);background:0 0;justify-content:center;align-items:center;gap:12px;font-size:clamp(11px,1.1vw,14px);line-height:1.4;display:flex}.new-label{font-size:inherit;color:var(--ink);flex-shrink:0;font-weight:600}.announcement-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.announcement-link svg{flex-shrink:0;align-self:center}.announcement-link:is(:hover,:focus-visible) .announcement-text{text-underline-offset:4px;text-decoration:underline}.video-toggle{z-index:5;clip-path:inset(50%);background:var(--ink);color:#fff;border:0;width:1px;height:1px;position:absolute;bottom:16px;right:16px;overflow:hidden}.video-toggle:focus-visible{clip-path:none;width:auto;height:auto;min-height:44px;padding:8px 16px}.business{padding-block:var(--home-section-space) 0;color:inherit;background:0 0;margin-top:0;position:relative}.business-card{background:var(--canvas);color:var(--ink);border-radius:32px;margin-inline:max(24px,50% - 672px);padding:0 32px}.about-section-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.business-content{gap:80px;display:grid;position:relative}.about-legacy-anchor{height:0;position:absolute;top:0}.about-story{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,4vw,64px);display:grid}.about-story h3.about-primary-headline{margin:0 0 20px}.about-primary-headline>.about-title-line{white-space:nowrap}.about-story-copy{min-width:0}@media (width>=768px){.about-story:nth-child(2) .about-story-copy{order:2}.about-story:nth-child(2) .about-story-photo{order:1}}.about-story h3{font-size:var(--home-subheading);text-wrap:pretty;word-break:auto-phrase;margin-bottom:20px;line-height:1.5}.about-title-line{display:block}.about-story p{white-space:pre-line;text-wrap:pretty;word-break:auto-phrase;font-size:var(--home-body);line-height:var(--home-line-height)}.about-story-photo{width:100%}.about-story-photo img{aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:12px;width:100%}.about-services{grid-template-rows:auto auto auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;display:grid}.about-service{grid-row:span 3;grid-template-rows:subgrid;min-width:0;display:grid}.about-service-icon{width:48px;height:48px;color:var(--ink);margin-bottom:20px}.about-service h3{text-wrap:pretty;margin-bottom:16px;font-size:22px;line-height:1.5}.about-service p{font-size:var(--home-body);color:var(--muted);text-wrap:wrap;word-break:normal;line-height:1.8}main[data-home] :is(.section-heading,.business-group)>h2{font-size:var(--home-section-heading);line-height:1.3}.section{margin-top:var(--home-section-space)}main[data-home] .section-heading{margin-bottom:var(--home-heading-gap)}html[data-motion-enhanced] #research[data-research-enhanced]{z-index:1;opacity:var(--research-opacity,1);transform:translateY(var(--research-y,0px)) scale(var(--research-scale,1));transform-origin:50% 0;position:relative}.project-grid.home-projects{--project-row-gap:56px}.home-projects .project-summary{margin-bottom:0}.home-projects .project-lead{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:40px;display:grid}.home-projects .project-lead .project-image{margin:0}.home-projects .project-lead h3{font-size:40px}.home-projects .project-lead .project-summary{font-size:19px}.home-news{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:64px;display:grid}.home-news-featured,.home-news-list,.home-news-item{min-width:0}.home-news-image{border-radius:8px;margin-bottom:16px;display:block;overflow:hidden}.home-news-image img{aspect-ratio:2;object-fit:cover;width:100%;transition:transform .5s}.home-news-image:is(:hover,:focus-visible) img,.home-news-featured:focus-within .home-news-image img{transform:scale(1.025)}.home-news-meta{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin-bottom:12px;font-size:14px;line-height:1.5;display:flex}.home-news-meta time{font-variant-numeric:tabular-nums}.home-news h3{text-wrap:pretty;word-break:auto-phrase;font-size:22px;line-height:1.6}.home-news .title-link{color:var(--ink)}.home-news-summary{font-size:var(--home-body);line-height:var(--home-line-height);color:var(--muted);margin-top:12px}.home-news-list{border-top:1px solid var(--rule)}.home-news-item{border-bottom:1px solid var(--rule);padding-block:24px}.home-news-item h3{font-size:19px}.home-news-item .home-news-summary{margin-top:12px;font-size:15px}.social-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.social-card{border:1px solid var(--rule);background:var(--canvas);min-width:0;min-height:136px;color:var(--ink);transform-origin:50%;border-radius:12px;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:20px;padding:24px;text-decoration:none;transition:transform .24s,border-color .24s;display:grid}@media (hover:hover) and (pointer:fine){.social-card:hover{border-color:var(--link);transform:scale(1.025)}}.social-card:focus-visible{border-color:var(--link);transform:scale(1.025)}.social-icon{width:48px;display:block}.social-icon svg{width:100%;height:auto}.social-account{min-width:0}.social-account h3{font-size:var(--home-subheading);font-weight:600;line-height:1.2}.social-account small{color:var(--muted);overflow-wrap:anywhere;margin-top:8px;font-size:14px;line-height:1.5;display:block}.section-footer{margin-top:12px}main[data-home] .section-footer .archive-link{align-items:center;margin-top:0}main[data-home] .section-footer .archive-link,main[data-home] .title-link{color:var(--ink);text-decoration:none;transition:color .25s}main[data-home] .section-footer .archive-link:is(:hover,:focus-visible),main[data-home] .title-link:is(:hover,:focus-visible){color:var(--link);text-decoration:none;-webkit-text-fill-color:currentColor!important}.social-intro{font-size:var(--home-body);line-height:var(--home-line-height);color:var(--muted);margin-bottom:32px}p[data-lines-fit]>span[data-preferred-line]{display:block}html[data-motion-enhanced]{scroll-padding-top:calc(var(--header-height) + 24px)}html[data-motion-enhanced] main[data-home]{padding-top:0}html[data-motion-enhanced][data-home-static] main[data-home]{padding-top:var(--header-height)}html[data-motion-enhanced] .announcement{position:absolute;top:0;left:0;right:0}html[data-motion-enhanced][data-home-static] .announcement{position:relative;top:auto}.announcement-link:focus-visible{outline-offset:-4px}html[data-motion-enhanced] .home-header{width:100%;padding-inline:max(var(--gutter), calc((100% - var(--container)) / 2));position:fixed;top:0;left:0;right:0}html[data-motion-enhanced] .hero{height:210svh;margin-top:0;padding-top:0}html[data-motion-enhanced] .hero-stage{height:100svh;position:sticky;top:0}html[data-motion-enhanced] .hero-frame{top:var(--hero-top,24px);height:var(--hero-height,calc(100svh - 48px));left:var(--hero-inset,24px);right:var(--hero-inset,24px);border-radius:var(--hero-radius,28px);min-height:0;opacity:calc(1 - var(--hero-switch,0));transform:translateY(calc(var(--hero-switch,0) * -48px)) scale(calc(1 - var(--hero-switch,0) * .03));margin:0;position:absolute}html[data-motion-enhanced] .hero[data-hero-switched] .hero-frame{visibility:hidden}html[data-motion-enhanced] .hero[data-hero-static]{height:auto;padding-top:24px}html[data-motion-enhanced] .hero[data-hero-static] .hero-stage{height:auto;position:relative}html[data-motion-enhanced] .hero[data-hero-static] .hero-frame{height:auto;min-height:480px;margin-inline:var(--gutter);align-items:flex-end;display:flex;position:relative;inset:auto}html[data-motion-enhanced] .hero[data-hero-static] .hero-copy{width:100%;padding:160px 32px 32px;position:relative;inset:auto}html[data-motion-enhanced] .business[data-business-enhanced]{height:330svh;margin-block:0;padding-block:0;position:relative}html[data-motion-enhanced]:not([data-home-static]) .business[data-business-enhanced]{margin-top:calc(var(--header-height) - 150svh)}html[data-motion-enhanced][data-home-static] .business[data-business-enhanced]{height:280svh}html[data-motion-enhanced] .business[data-business-enhanced][data-business-entering]{pointer-events:none}html[data-motion-enhanced] .business[data-business-enhanced] .business-stage{height:calc(100svh - var(--header-height));top:var(--header-height);padding-block:24px;position:sticky}html[data-motion-enhanced] .business[data-business-enhanced] .business-card{height:calc(100svh - var(--header-height) - 48px);margin-inline:var(--business-inset);padding:var(--business-padding,32px);background:0 0;flex-direction:column;justify-content:center;display:flex;overflow:hidden}html[data-motion-enhanced] .business[data-business-enhanced] .business-group{flex:none;width:100%}html[data-motion-enhanced] .business[data-business-enhanced] .services-flow-heading{opacity:var(--services-title-opacity,1);transform:translateY(var(--services-title-y,0px))}.services-flow-heading{margin-bottom:var(--home-heading-gap);font-size:var(--home-section-heading);grid-column:1/-1;line-height:1.3}html[data-motion-enhanced] .business[data-business-enhanced] .business-content{height:var(--about-scene-height,auto);min-height:0;display:block}html[data-motion-enhanced] .business[data-business-enhanced] .about-scene{width:100%;transform:translateY(calc(-50% + var(--scene-y,0px))) scale(var(--scene-scale,1));opacity:var(--scene-opacity,0);position:absolute;top:50%}html[data-motion-enhanced] .business[data-business-enhanced] .about-service{opacity:var(--service-opacity,1);transform:translateY(var(--service-y,0px))}@media (width<=1100px){.home-news,.home-projects .project-lead{column-gap:40px}}@media (width<=999px){.home-news,.social-links{grid-template-columns:minmax(0,1fr)}.home-news{gap:32px}.about-story{grid-template-columns:1fr;gap:32px}.about-services{gap:var(--home-heading-gap);grid-template-rows:none;grid-template-columns:1fr}.about-service{grid-row:auto;grid-template-rows:auto auto;grid-template-columns:48px minmax(0,1fr);column-gap:20px;display:grid}.about-service-icon{grid-area:1/1/span 2;align-self:center;margin-bottom:0}.about-service h3,.about-service p{grid-column:2}.about-service h3{word-break:auto-phrase;margin-bottom:12px}.about-story-photo img{max-height:420px}.hero-frame{height:calc(100svh - var(--header-height) - 92px);min-height:480px;max-height:none}}@media (width>=768px) and (width<=999px){.hero{--hero-inset:24px}.about-story h3.about-primary-headline{font-size:clamp(34px,4.2vw,46px)}}@media (width<=767px){.hero{--hero-inset:12px;--hero-radius:20px}.hero-poster,.hero-video{object-position:51% 50%}.hero-copy{max-width:none;bottom:24px;left:24px;right:24px}.about-story h3.about-primary-headline{font-size:clamp(22px,6.3vw,40px)}.about-primary-headline>.about-title-line{white-space:normal}html[lang=en] .about-story h3.about-primary-headline{font-size:clamp(18px,5.6vw,36px)}.hero-cta{font-size:var(--home-mobile-hero-cta)}.announcement-link{gap:8px}.business{padding-block:var(--home-mobile-section-space) 0}.business-card{margin-inline:0;padding:0 24px}.business-content{gap:var(--home-mobile-section-space)}.about-story h3:not(.about-primary-headline){margin-bottom:20px}.about-services{gap:var(--home-heading-gap);grid-template-columns:1fr}.section{margin-top:var(--home-mobile-section-space)}main[data-home] :is(.section-heading,.business-group)>h2,.services-flow-heading{font-size:var(--home-mobile-section-heading)}.home-projects .project-lead{grid-column:auto;gap:0;display:flex}.home-projects .project-lead .project-image{margin-bottom:24px}.home-projects .project-lead h3{font-size:26px}.home-projects .project-lead .project-summary{font-size:16px}.home-news h3{font-size:22px}.home-news-item h3{font-size:18px}.home-news-image{margin-bottom:16px}.social-card{grid-template-columns:40px minmax(0,1fr);gap:12px 16px;padding:24px}.social-icon{width:40px}.social-account h3{font-size:24px}}@media (width<=370px){.hero-cta{font-size:var(--home-mobile-hero-cta)}html[lang=en] .about-story h3.about-primary-headline{font-size:17px}}@media (width<=999px){.services-flow-heading{margin-bottom:0}}main[data-home] .section-footer .archive-link{color:var(--link)}@media (prefers-reduced-motion:reduce){.social-card:is(:hover,:focus-visible){transition:none;transform:none}}.intro{z-index:70;background:var(--canvas);pointer-events:none;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.intro-mark{width:min(28vw,160px)}.intro-mark svg{width:100%;height:auto;display:block}html[data-intro=play] .intro{animation:.3s .9s forwards intro-leave;display:flex}html[data-intro=play] .intro circle{transform-box:fill-box;transform-origin:50%;opacity:0;animation:intro-dot .42s cubic-bezier(.2, .8, .2, 1) calc(var(--i,0) * 26ms) forwards;transform:scale(0)}@keyframes intro-dot{to{opacity:1;transform:scale(1)}}@keyframes intro-leave{to{opacity:0;visibility:hidden}}@media (prefers-reduced-motion:reduce){html[data-intro=play] .intro{animation:none;display:none}}.home-news-featured{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:20px;display:grid}.home-news-featured-copy{min-width:0}.home-news-featured-copy:first-child{grid-column:1/-1}.home-news-featured .home-news-image{margin:0}.home-news-featured .home-news-image img{aspect-ratio:4/3}.home-news-featured h3{font-size:20px;line-height:1.55}.home-news-featured .home-news-meta{gap:4px 10px;margin-bottom:8px;font-size:13px}.home-news-featured .home-news-summary{margin-top:10px;font-size:15px}#news .section-heading{margin-bottom:24px}@media (width<=767px){.home-news-featured{grid-template-columns:96px minmax(0,1fr);gap:16px}.home-news-featured h3{font-size:18px}.home-news-featured .home-news-summary{font-size:14px}}main[data-home] .section-footer .action-link{--action-accent:var(--link);font-size:18px}@media (width<=767px){.hero-cta.action-link{font-size:24px}}@media (width<=999px),(height<=679px){.hero-cta.action-link{margin-left:0;margin-right:auto}}
