:root{--paper:#f6f3ed;--ink:#29251f;--muted:#766d63;--accent:#344a55;--service-red:#9a4f3b;--signal:var(--service-red);--mist:#c7cdce;--line:#d4d4cf;--white:#fbfaf7;--soft-block:#d8c6ab;--digital:#2f4653;--cross-border:var(--service-red);--blocks:#d8c6ab;--concept-item-size:clamp(23px, 2.1vw, 38px);--concept-body-size:clamp(15px, 1.15vw, 19px);--concept-detail-gap:clamp(48px, 5.5vw, 80px);--nav-height:80px;--gutter:clamp(20px, 3vw, 48px);--sans-jp:"Noto Sans JP Variable", "Noto Sans JP", "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--sans-en:"Helvetica Neue", Helvetica, Arial, sans-serif;--display-en:"Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;--mono:"IBM Plex Mono", "SFMono-Regular", Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{background:var(--paper);color:var(--ink);font-family:var(--sans-jp);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.7}html.hero-loading:not(.hero-client-entry) .corporate-header,html.hero-loading .hero{visibility:hidden}button,a{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}img{object-fit:cover;width:100%;height:100%;display:block}h1,h2,h3,p,figure,dl,dd{margin:0}.skip-link{z-index:100;background:var(--ink);color:var(--white);padding:12px 18px;position:fixed;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}:focus-visible{outline-offset:5px;outline:2px solid}.hero{min-height:100svh;padding-top:var(--nav-height);background:var(--paper);grid-template-columns:minmax(0,62fr) minmax(320px,38fr);display:grid;overflow:hidden}.hero__type{padding:3vw var(--gutter) 5vw;align-items:center;display:flex;position:relative}.hero h1{font-family:var(--display-en);letter-spacing:-.04em;white-space:nowrap;font-size:clamp(86px,12.1vw,226px);font-weight:900;line-height:.78}.hero__line{clip-path:inset(0 -.12em 0 0);display:block;overflow:visible}.hero__line>span{display:block}.hero__location{bottom:28px;left:var(--gutter);font-family:var(--mono);letter-spacing:.08em;font-size:10px;line-height:1.5;position:absolute}.hero__media{min-height:calc(100svh - var(--nav-height));background:var(--paper);padding:clamp(20px,2.5vw,38px) clamp(20px,2.5vw,38px) clamp(150px,18vh,190px);position:relative;overflow:hidden}.hero__media img{object-position:69% center;filter:saturate(.7)contrast(1.02)}.hero__media:after{display:none}.hero figcaption{z-index:1;background:var(--ink);min-height:clamp(150px,18vh,190px);color:var(--white);letter-spacing:-.01em;align-items:center;padding:28px clamp(26px,3vw,48px);font-size:clamp(18px,1.55vw,26px);font-weight:700;line-height:1.55;display:flex;position:absolute;bottom:0;left:12%;right:0}.hero figcaption span{display:block}html.hero-motion:not(.hero-client-entry) .corporate-header{opacity:0;transform:translateY(-10px)}html.hero-motion .hero__line>span{transform:translateY(108%)}html.hero-motion .hero__location{opacity:0;transform:translateY(10px)}html.hero-motion .hero__media img{clip-path:inset(0 100% 0 0)}html.hero-motion .hero figcaption{transform:translateY(100%)}html.hero-motion .hero figcaption span{opacity:0;transform:translateY(14px)}html.hero-motion .corporate-header,html.hero-motion .hero__line>span,html.hero-motion .hero__location,html.hero-motion .hero__media img,html.hero-motion .hero figcaption,html.hero-motion .hero figcaption span{will-change:transform, opacity}html.hero-settled .corporate-header,html.hero-settled .hero__line>span,html.hero-settled .hero__location,html.hero-settled .hero__media img,html.hero-settled .hero figcaption,html.hero-settled .hero figcaption span{will-change:auto}html.hero-ready:not(.hero-client-entry) .corporate-header{opacity:1;transition:opacity .36s ease-out,transform .46s cubic-bezier(.22,1,.36,1);transform:translateY(0)}html.hero-ready .hero__line>span{transition:transform .76s cubic-bezier(.16,1,.3,1);transform:translateY(0)}html.hero-ready .hero__line:nth-child(2)>span{transition-delay:.11s}html.hero-ready .hero__location{opacity:1;transition:opacity .42s ease-out .52s,transform .52s cubic-bezier(.22,1,.36,1) .52s;transform:translateY(0)}html.hero-ready .hero__media img{clip-path:inset(0);transition:clip-path .82s cubic-bezier(.16,1,.3,1) .16s}html.hero-ready .hero figcaption{transition:transform .68s cubic-bezier(.16,1,.3,1) .42s;transform:translateY(0)}html.hero-ready .hero figcaption span{opacity:1;transition:opacity .36s ease-out .76s,transform .5s cubic-bezier(.22,1,.36,1) .76s;transform:translateY(0)}.brand-idea{background:var(--soft-block);min-height:240svh;position:relative}.brand-idea__frame{min-height:100svh;padding:clamp(96px, 10vw, 160px) var(--gutter);background:var(--soft-block);grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:24px;display:grid;position:sticky;top:0}.brand-idea__headline{grid-column:1/span 7;align-self:start}.brand-idea h2{letter-spacing:-.02em;scroll-margin-top:calc(var(--nav-height) + 40px);font-size:clamp(50px,6.4vw,112px);font-weight:900;line-height:1.04}.brand-idea__copy{max-width:32em;font-size:var(--concept-body-size);grid-column:9/span 4;align-self:end;padding-bottom:5vh;font-weight:600;line-height:1.9}.brand-idea__copy>*+*{margin-top:var(--concept-detail-gap)}.idea-list{font-size:var(--concept-item-size);letter-spacing:-.015em;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 28px;margin:0;padding:0;font-weight:800;line-height:1.55;list-style:none;display:grid}.realities{background:#d2d2cd;min-height:240svh}.realities__frame{min-height:100svh;padding:clamp(90px, 9vw, 145px) var(--gutter);background:#d2d2cd;grid-template-columns:minmax(0,1fr);align-content:center;justify-items:center;gap:clamp(70px,8vw,120px);display:grid;position:sticky;top:0}.realities h2{letter-spacing:-.02em;scroll-margin-top:calc(var(--nav-height) + 40px);text-align:center;white-space:nowrap;grid-column:1;font-size:clamp(48px,5.8vw,102px);font-weight:900;line-height:1.08}.realities__content{text-align:center;grid-column:1;width:100%}.realities ul{font-size:var(--concept-item-size);letter-spacing:-.015em;grid-template-columns:repeat(6,auto);justify-content:center;gap:clamp(20px,3.5vw,60px);margin:0;padding:0;font-weight:800;line-height:1.5;list-style:none;display:grid}.realities__content p{margin-top:var(--concept-detail-gap);font-size:var(--concept-body-size);font-weight:600;line-height:1.9}.motion-ready [data-reveal-section] [data-reveal-headline],.motion-ready [data-reveal-section] [data-reveal-item],.motion-ready [data-reveal-section] [data-reveal-copy]{--reveal-progress:0;opacity:var(--reveal-progress);transform:translate3d(0, calc((1 - var(--reveal-progress)) * 34px), 0)}.motion-ready [data-reveal-section].is-reveal-active :is([data-reveal-headline],[data-reveal-item],[data-reveal-copy]){will-change:transform, opacity}.statement-sequence{background:#191b1b;min-height:240svh}.statement{height:100svh;min-height:100svh;padding:clamp(95px, 10vw, 170px) var(--gutter);color:var(--white);background:#191b1b;align-items:center;display:flex;position:sticky;top:0}.statement__lines{width:100%}.statement__lines p{--statement-line-progress:0;letter-spacing:-.02em;font-size:clamp(55px,8vw,142px);font-weight:900;line-height:.95}.statement__lines p:not(.statement__culmination){color:#fbfaf7b8}.statement__lines p:nth-child(2n){padding-left:12vw}.statement__lines .statement__culmination{color:var(--white);letter-spacing:-.035em;white-space:nowrap;margin-top:.35em;font-size:clamp(62px,8.8vw,156px)}.motion-ready .statement__lines p{opacity:var(--statement-line-progress);transform:translate3d(0, calc((1 - var(--statement-line-progress)) * 46px), 0);will-change:transform, opacity}.motion-ready .statement__lines .statement__culmination{transform:translate3d(0, calc((1 - var(--statement-line-progress)) * 54px), 0) scale(calc(.96 + (var(--statement-line-progress) * .04)));transform-origin:0}.statement-endcard{background:#090a0a;min-height:220svh}.statement-endcard__frame{min-height:100svh;padding:19svh var(--gutter) 11svh;background:#090a0a;justify-content:center;align-items:center;display:flex;position:sticky;top:0}.statement-endcard__frame p{color:var(--signal);font-family:var(--display-en);letter-spacing:-.04em;text-align:center;white-space:nowrap;font-size:clamp(58px,8.6vw,152px);font-weight:900;line-height:.9}.business{background:#eee9e0;padding:0}.business__header{padding:clamp(110px, 10vw, 170px) var(--gutter) clamp(70px, 8vw, 125px)}.business__header h2,.company h2,.contact h2{font-family:var(--display-en);letter-spacing:-.04em;font-size:clamp(70px,10.2vw,184px);font-weight:900;line-height:.8}.business__list{border:0}.business-row{--business-action-background:var(--white);--business-action-foreground:var(--ink);--business-grayscale:1;--business-saturation:.7;--business-contrast:1.05;--business-image-scale:1;min-height:clamp(430px,42vw,650px);padding:clamp(52px, 5vw, 82px) var(--gutter);grid-template-columns:4.2fr 2.8fr 5fr;gap:clamp(20px,3vw,52px);transition:color .24s,background-color .24s;display:grid;position:relative;overflow:hidden}.business-row:before{display:none}.business-row:hover,.business-row:focus-within{outline-offset:-6px}.business-row--digital{background:var(--digital);color:var(--white)}.business-row--cross-border{background:var(--cross-border);color:var(--white)}.business-row--blocks{--business-action-background:var(--ink);--business-action-foreground:var(--white);background:var(--blocks);color:var(--ink)}.business-row__name{grid-template-columns:clamp(40px,4vw,68px) 1fr;align-content:start;display:grid}.business-row__name>span{font-family:var(--mono);padding-top:.6em;font-size:12px}.business-row h3{font-family:var(--display-en);letter-spacing:-.04em;font-size:clamp(48px,5.7vw,102px);font-weight:900;line-height:.86}.business-row__image{background:#ffffff24;align-self:start;height:clamp(310px,28vw,440px);min-height:0;overflow:hidden}.business-row__image img{filter:grayscale()contrast(1.05);transition:filter .3s,transform .5s cubic-bezier(.16,1,.3,1)}@media (width>=768px){.business-row:hover .business-row__image img,.business-row:focus-within .business-row__image img{filter:grayscale(0)saturate(1.05)contrast();transform:scale(1.045)}}.business-row--blocks .business-row__image img{object-position:55% center}.business-row__detail{flex-direction:column;min-height:100%;display:flex;position:relative}.business-row__words{font-family:var(--display-en);letter-spacing:-.025em;flex-direction:column;font-size:clamp(26px,2.8vw,48px);font-weight:800;line-height:.95;display:flex}.business-row__words span{white-space:nowrap}.business-row__description{white-space:nowrap;max-width:none;margin-top:auto;padding:36px 50px 0 0;font-size:clamp(13px,1vw,16px);font-weight:700;line-height:1.7}.business-row__arrow{z-index:1;background:var(--business-action-background);min-height:48px;color:var(--business-action-foreground);font-family:var(--sans-en);align-self:flex-start;align-items:center;gap:26px;margin-top:24px;padding:0 16px;font-size:22px;font-weight:300;text-decoration:none;display:inline-flex;position:relative}.business-row__arrow-label{font-family:var(--mono);letter-spacing:.08em;font-size:10px;font-weight:600;display:block}@media (width>=768px) and (prefers-reduced-motion:no-preference){.business-row__name,.business-row__detail,.business-row__arrow{transition:transform .48s cubic-bezier(.16,1,.3,1)}@media (hover:hover) and (pointer:fine){.business-row:hover .business-row__name{transform:translate(12px)}.business-row:hover .business-row__detail{transform:translate(-12px)}.business-row:hover .business-row__arrow{transform:translate(12px,-6px)}}.business-row:focus-within .business-row__name{transform:translate(12px)}.business-row:focus-within .business-row__detail{transform:translate(-12px)}.business-row:focus-within .business-row__arrow{transform:translate(12px,-6px)}}.osaka{background:var(--ink);height:62svh;min-height:460px;color:var(--white);margin-top:clamp(75px,8vw,125px);position:relative;overflow:hidden}.osaka:after{content:"";background:linear-gradient(90deg,#29251f7a,#0000 55%);position:absolute;inset:0}.osaka img{filter:saturate(.65)contrast(1.05)}.osaka__title{z-index:1;top:clamp(32px,5vw,80px);left:var(--gutter);font-family:var(--display-en);letter-spacing:-.04em;font-size:clamp(70px,11vw,194px);font-weight:900;line-height:.76;position:absolute}.osaka__title span{display:block}.osaka>p{z-index:1;right:var(--gutter);font-size:clamp(14px,1.15vw,17px);font-weight:700;line-height:1.7;position:absolute;bottom:40px}.company{padding:clamp(90px, 9vw, 145px) var(--gutter);background:var(--paper);grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;display:grid;position:relative;overflow:hidden}.company:before{content:"";background:var(--soft-block);width:36%;position:absolute;inset:0 auto 0 0}.company>*{z-index:1;position:relative}.company__heading{grid-column:1/-1;margin-bottom:clamp(42px,5vw,70px)}.company__content{grid-area:2/6/auto/span 7}.company__content h3{font-family:var(--display-en);letter-spacing:-.02em;font-size:clamp(28px,3vw,50px);font-weight:800}.company__profile{gap:5px;margin-top:clamp(35px,4vw,55px);display:grid}.company__profile>div{background:#eee9e0;grid-template-columns:minmax(110px,1fr) 3fr;gap:24px;padding:21px 24px;display:grid}.company__profile dt{font-family:var(--mono);font-size:11px;font-weight:600}.company__profile dd{font-size:14px;font-weight:500}.company__image{aspect-ratio:4/5;grid-area:2/1/auto/span 4;place-self:end start;width:min(100%,480px);margin-top:clamp(-140px,-10vw,-80px);overflow:hidden}.company__image img{object-position:76% center;filter:grayscale()}@media (width>=1440px){.company__image{aspect-ratio:4/3;align-self:start;width:min(100%,560px);margin-top:0}.company__image img{object-position:68% center}}.contact{min-height:78svh;padding:clamp(90px, 10vw, 160px) var(--gutter);background:var(--accent);color:var(--white)}.contact__intro{grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:24px;display:grid}.contact h2{grid-column:1/span 7}.contact__content{flex-direction:column;grid-column:9/span 4;align-items:flex-start;max-width:400px;display:flex}.contact__content>p:first-child{letter-spacing:-.015em;font-size:clamp(23px,2.2vw,37px);font-weight:800;line-height:1.5}.contact__content>p:nth-child(2){margin-top:28px;font-size:15px;font-weight:600;line-height:1.8}.contact__toggle{background:var(--white);width:fit-content;min-width:220px;min-height:62px;color:var(--ink);letter-spacing:.01em;cursor:pointer;border:0;justify-content:center;align-items:center;gap:22px;margin-top:38px;padding:12px 24px;font-size:15px;font-weight:800;list-style:none;transition:background-color .18s,color .18s,transform .18s;display:flex}.contact__toggle:hover,.contact__toggle:focus-visible{background:var(--ink);color:var(--white)}.contact__toggle:active{transform:translateY(1px)}.contact__toggle-mark{font-size:24px;font-weight:400;line-height:1;transition:transform .42s cubic-bezier(.16,1,.3,1)}.contact__toggle[aria-expanded=true] .contact__toggle-mark{transform:rotate(45deg)}.contact__form-panel{visibility:hidden;grid-template-rows:0fr;margin-top:0;transition:grid-template-rows .52s cubic-bezier(.16,1,.3,1),visibility 0s linear .52s;display:grid}.contact__form-panel.is-open{visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .52s cubic-bezier(.16,1,.3,1),visibility}.contact__form-reveal{min-height:0;transition:transform .52s cubic-bezier(.16,1,.3,1);overflow:hidden;transform:translateY(-12px)}.contact__form-panel.is-open .contact__form-reveal{transform:translateY(0)}.contact__form{--color-paper:#f6f3ed;--color-warm:#ded8cf;--color-surface:#fbfaf7;--color-ink:#29251f;--color-text:#514c46;--color-line:transparent;--color-accent:#344a55;--portal-font-body:var(--sans-jp);--portal-form-gap:24px;--portal-form-column-gap:20px;--portal-form-label-gap:9px;--portal-form-control-height:52px;--portal-form-textarea-height:176px;--portal-form-control-padding-x:16px;--portal-form-control-radius:0;--portal-form-control-background:var(--color-warm);--portal-form-control-border:transparent;--portal-form-control-foreground:var(--color-ink);--portal-form-focus:var(--color-accent);--portal-form-error:#a13f34;background:var(--paper);max-width:980px;color:var(--ink);margin:clamp(52px,6vw,84px) 0 0 auto;padding:clamp(34px,4vw,60px)}.contact__form .portal-form__control:hover{background:#d5cfc6}.contact__form .button{background:var(--accent);min-height:54px;color:var(--white);border:0;border-radius:0;justify-content:center;align-items:center;padding:12px 34px;font-weight:700;display:inline-flex}.contact__form .button:hover,.contact__form .button:focus-visible{background:var(--ink)}@media (width<=1100px){:root{--nav-height:70px}.hero{grid-template-columns:minmax(0,58fr) minmax(280px,42fr)}.hero h1{font-size:clamp(70px,11vw,120px)}.business-row{grid-template-columns:5fr 3fr}.business-row__detail{grid-column:1/-1;grid-template-columns:1fr 2fr auto;gap:28px;min-height:auto;display:grid}.business-row__description{white-space:normal;margin-top:0;padding:0}.business-row__arrow{align-self:start;margin-top:0}}@media (width<=767px){:root{--gutter:20px;--concept-item-size:23px;--concept-body-size:15px;--concept-detail-gap:48px}.hero{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;min-height:100svh}.hero__type{flex-direction:column;align-items:flex-start;min-height:auto;padding-top:clamp(52px,14vw,72px);padding-bottom:clamp(36px,10vw,48px)}.hero h1{white-space:normal;font-size:clamp(64px,20vw,102px);line-height:.8}.hero__location{margin-top:clamp(28px,7vw,38px);position:static}.hero__media{min-height:0;padding:20px 20px clamp(118px,15vh,142px)}.hero__media img{object-position:68% center}.hero figcaption{min-height:clamp(118px,15vh,142px);padding:22px 26px;font-size:clamp(17px,4.8vw,21px)}.brand-idea{min-height:210svh}.brand-idea__frame{grid-template-columns:1fr;align-items:start;gap:70px;padding-top:110px;padding-bottom:120px}.brand-idea__headline,.brand-idea__copy{grid-column:auto;padding-bottom:0}.brand-idea h2{font-size:clamp(43px,13vw,66px)}.brand-idea__copy{margin-left:15vw}.idea-list{gap:6px 18px}.realities{min-height:210svh}.realities__frame{grid-template-columns:minmax(0,1fr);gap:80px;padding-top:110px;padding-bottom:120px}.realities h2,.realities__content{grid-column:auto;padding-bottom:0}.realities h2{white-space:normal;font-size:clamp(40px,11.2vw,58px)}.realities__content{width:100%;margin:0}.realities ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px}.realities__content p{margin-top:var(--concept-detail-gap)}.statement-sequence{min-height:210svh}.statement{align-items:center;height:100svh;min-height:100svh;padding-top:90px;padding-bottom:90px}.statement__lines p{font-size:clamp(49px,15vw,78px);line-height:1.05}.statement__lines p:nth-child(2n){padding-left:0}.statement__lines .statement__culmination{letter-spacing:-.03em;margin-top:.5em;font-size:clamp(49px,15vw,78px)}.statement-endcard{min-height:200svh;padding:0}.statement-endcard__frame{padding-top:21svh;padding-bottom:13svh}.statement-endcard__frame p{white-space:normal;font-size:clamp(39px,11.8vw,62px);line-height:1.05}.business{padding-top:100px}.business__header{padding-bottom:80px}.business__header h2,.company h2,.contact h2{letter-spacing:-.04em;font-size:clamp(54px,17vw,90px)}.business-row{min-height:auto;padding:54px var(--gutter);grid-template-columns:1fr;gap:40px}.business-row h3{font-size:clamp(56px,17vw,84px)}.business-row__image{aspect-ratio:4/3;height:auto;min-height:0}.business-row__image img{filter:grayscale(var(--business-grayscale)) saturate(var(--business-saturation)) contrast(var(--business-contrast));transform:scale(var(--business-image-scale));transition:none}.business-row__detail{grid-column:auto;grid-template-columns:1fr auto;gap:30px}.business-row__words{font-size:31px}.business-row__description{grid-area:2/1/auto/-1}.business-row__arrow{grid-area:3/1/auto/-1;justify-self:start;margin-top:0}.osaka{height:62svh;min-height:460px;margin-top:70px}.osaka img{object-position:61% center}.osaka__title{font-size:clamp(70px,21vw,110px)}.osaka>p{left:var(--gutter)}.company{grid-template-columns:minmax(0,1fr);padding-top:90px;padding-bottom:90px}.company:before{width:100%;height:34%;inset:0 0 auto}.company__heading,.company__content,.company__image{grid-area:auto;min-width:0}.company__heading{margin-bottom:25px}.company__content h3{font-size:30px}.company__profile>div{grid-template-columns:90px 1fr;gap:18px}.company__image{width:58%;margin:50px 0 0 auto}.contact{min-height:78svh}.contact__intro{grid-template-columns:1fr;gap:70px}.contact h2,.contact__content{grid-column:auto}.contact__toggle{width:100%}.contact__form{margin-top:20px;padding:28px 20px 34px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html.hero-motion .corporate-header,html.hero-motion .hero__line>span,html.hero-motion .hero__location,html.hero-motion .hero figcaption,html.hero-motion .hero figcaption span,.motion-ready [data-reveal-section] [data-reveal-headline],.motion-ready [data-reveal-section] [data-reveal-item],.motion-ready [data-reveal-section] [data-reveal-copy],.motion-ready .statement-endcard p{opacity:1;transform:none}html.hero-motion .hero__media img{clip-path:none}.brand-idea,.realities,.statement-endcard{min-height:auto}.brand-idea__frame,.realities__frame,.statement-endcard__frame{position:relative}.statement-sequence{min-height:auto}.statement{height:auto;min-height:90svh;position:relative}.motion-ready .statement__lines p,.motion-ready .statement__lines .statement__culmination{opacity:1;transform:none}}
