:root{--ink:#090b0e;--paper:#f4f4f1;--white:#fff;--blue:#2578ff;--line:rgba(10,12,15,.16);--muted:#686b70;--serif:"Shippori Mincho",serif;--sans:"DM Sans","Noto Sans JP",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.skip{position:fixed;top:-5rem;left:1rem;background:#fff;padding:.75rem 1rem;z-index:100}.skip:focus{top:1rem}.site-header{height:92px;padding:0 4.5vw;position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;color:#fff;border-bottom:1px solid rgba(255,255,255,.2)}.brand img{width:91px;height:auto}.desktop-nav{display:flex;gap:2.5rem;font-size:.82rem;letter-spacing:.06em}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;bottom:-.45rem;width:0;height:1px;background:#fff;transition:.25s}.desktop-nav a:hover:after{width:100%}.header-actions{display:flex;align-items:center;gap:1.5rem}.lang{border:1px solid rgba(255,255,255,.5);width:42px;height:42px;display:grid;place-items:center;font-size:.78rem;border-radius:50%;transition:.2s}.lang:hover{background:#fff;color:#000}.menu-button{display:none;background:none;border:0;width:42px;height:42px;padding:10px}.menu-button span{display:block;width:22px;height:1px;background:#fff;margin:6px auto}.mobile-menu{position:absolute;z-index:9;top:92px;left:0;right:0;background:rgba(9,11,14,.97);color:#fff;padding:1rem 5vw 2rem}.mobile-menu a{display:block;border-bottom:1px solid #333;padding:.8rem 0}.hero{height:min(900px,100svh);min-height:680px;background:#07101d;color:#fff;position:relative;overflow:hidden;display:flex;align-items:center}.hero-visual{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,7,14,.9) 0%,rgba(3,7,14,.25) 55%,rgba(3,7,14,.65) 100%),url(world.jpg) center/cover no-repeat;filter:saturate(.85)}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 62% 52%,rgba(37,120,255,.1),transparent 35%),linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.5))}.mesh{position:absolute;inset:0;z-index:1;opacity:.7}.mesh:before,.mesh:after{content:"";position:absolute;background:rgba(255,255,255,.12)}.mesh:before{width:1px;height:100%;left:50%}.mesh:after{height:1px;width:100%;top:55%}.mesh i{position:absolute;width:7px;height:7px;border:1px solid #6ca2ff;border-radius:50%;box-shadow:0 0 12px #2578ff}.mesh i:nth-child(1){left:24%;top:36%}.mesh i:nth-child(2){left:50%;top:55%}.mesh i:nth-child(3){left:71%;top:28%}.mesh i:nth-child(4){left:80%;top:70%}.mesh i:nth-child(5){left:59%;top:79%}.hero-content{position:relative;z-index:2;margin-left:10vw;margin-top:70px}.eyebrow,.section-label{font-size:.72rem;letter-spacing:.18em;font-weight:600}.eyebrow{color:#8db5ff;margin:0 0 1.7rem}.hero h1{font-family:var(--serif);font-size:clamp(3.2rem,7vw,7rem);font-weight:500;line-height:1.22;letter-spacing:-.04em;margin:0}.hero h1 em{font-style:normal;color:#7eaaff}.hero-copy{border-left:1px solid rgba(255,255,255,.7);padding-left:1.4rem;margin:2rem 0;font-size:1rem}.text-link{display:inline-flex;align-items:center;gap:2rem;font-size:.76rem;letter-spacing:.14em;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:.5rem}.text-link span{font-size:1.1rem}.hero-index{position:absolute;z-index:2;right:4.5vw;bottom:3.5rem;display:flex;align-items:center;gap:1rem}.hero-index b{font-size:1rem}.hero-index span{width:70px;height:1px;background:rgba(255,255,255,.5)}.hero-index small{font-size:.58rem;letter-spacing:.14em;line-height:1.5;color:#bbb}.section{padding:9rem 8vw}.section-label{display:flex;gap:1rem;align-items:center;color:#525760;margin-bottom:4rem}.section-label span{color:var(--blue)}.statement-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw;align-items:start}.statement h2,.section-head h2,.company h2{font-family:var(--serif);font-size:clamp(2.6rem,5.5vw,5.5rem);font-weight:500;line-height:1.25;letter-spacing:-.04em;margin:0}.statement-grid .lead{font-family:var(--serif);font-size:clamp(1.3rem,2vw,2rem);line-height:1.8;margin:0 0 2rem}.statement-grid div>p:last-child{color:var(--muted);max-width:44rem}.statement blockquote{margin:8rem 0 0;padding:4.5rem 4vw;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--serif)}.statement blockquote p{font-size:clamp(1.35rem,2.2vw,2.2rem);line-height:2;margin:0}.statement blockquote footer{font-family:var(--sans);font-size:.78rem;letter-spacing:.1em;color:var(--muted);margin-top:2rem}.business{background:#0a0c0f;color:#fff}.business .section-label{color:#aaa}.section-head{display:grid;grid-template-columns:.65fr 1.25fr .7fr;gap:4vw;align-items:end}.section-head .section-label{grid-column:1/-1;margin-bottom:2rem}.section-head p{color:#a3a6ab;margin:0}.business-list{margin-top:6rem;border-top:1px solid #303338}.business-list article{position:relative;display:grid;grid-template-columns:.25fr .9fr 1.3fr auto;gap:3vw;align-items:center;padding:3rem 0;border-bottom:1px solid #303338;transition:.25s}.business-list article:hover{padding-left:1rem;background:linear-gradient(90deg,rgba(37,120,255,.12),transparent)}.business-number{color:#5b6068;font-size:.75rem}.business-title small{color:#7399d9;font-size:.65rem;letter-spacing:.13em}.business-title h3{font-family:var(--serif);font-weight:500;font-size:1.6rem;margin:.25rem 0}.business-list p{color:#a6a9ae;margin:0;max-width:42rem}.arrow{font-size:1.5rem;color:#7eaaff}.approach{padding-top:0;display:grid;grid-template-columns:1.05fr .95fr;gap:0;background:#0a0c0f;color:#fff}.approach-image{min-height:680px;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.45)),url(together.jpg) center/cover no-repeat}.approach-copy{padding:8rem 6vw;display:flex;flex-direction:column;justify-content:center}.approach-copy .section-label{color:#aaa;margin-bottom:3rem}.big-copy{font-family:var(--serif);font-size:clamp(2rem,4vw,4.3rem);line-height:1.5;margin:0 0 2rem}.big-copy strong{font-weight:500;color:#7eaaff}.approach-copy>p:last-child{color:#a6a9ae;max-width:34rem}.company{background:#e9eaeb}.company-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.company-grid>div>p{color:var(--muted);margin-top:2rem}.company dl{margin:0}.company dl div{display:grid;grid-template-columns:10rem 1fr;border-top:1px solid var(--line);padding:1.5rem 0}.company dl div:last-child{border-bottom:1px solid var(--line)}.company dt{font-size:.78rem;color:var(--muted)}.company dd{margin:0}.contact{padding:8rem 8vw;background:var(--blue);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}.contact .section-label{margin-bottom:3rem;color:#dce8ff}.contact .section-label span{color:#fff}.contact h2{font-family:var(--serif);font-size:clamp(2.8rem,6vw,6rem);font-weight:500;line-height:1.25;letter-spacing:-.04em;margin:0}.contact p{color:#d8e6ff}.contact-button{border-top:1px solid rgba(255,255,255,.6);border-bottom:1px solid rgba(255,255,255,.6);padding:2rem 0;display:grid;grid-template-columns:1fr auto;align-items:center}.contact-button span{font-size:.68rem;letter-spacing:.15em}.contact-button strong{font-size:clamp(1.5rem,3vw,2.8rem);font-weight:500;grid-row:2}.contact-button i{font-size:1.8rem;font-style:normal;grid-column:2;grid-row:1/3;transition:.2s}.contact-button:hover i{transform:translate(.4rem,-.4rem)}.site-footer{background:#080a0d;color:#fff;padding:4rem 5vw;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:3rem}.site-footer img{width:110px}.site-footer p{margin:0;color:#91959c;font-size:.75rem}.copyright{text-align:right}@media(max-width:850px){.site-header{height:76px}.desktop-nav{display:none}.menu-button{display:block}.brand img{width:74px}.mobile-menu{top:76px}.hero{min-height:720px}.hero-content{margin-left:6vw;margin-right:6vw}.hero-index{display:none}.section{padding:6rem 6vw}.section-label{margin-bottom:2.5rem}.statement-grid,.company-grid,.contact{grid-template-columns:1fr;gap:3rem}.statement blockquote{margin-top:5rem;padding:3rem 0}.statement blockquote br{display:none}.section-head{grid-template-columns:1fr}.business-list{margin-top:4rem}.business-list article{grid-template-columns:2.5rem 1fr auto;gap:1rem}.business-list article p{grid-column:2/4}.approach{grid-template-columns:1fr;padding-left:0;padding-right:0}.approach-image{min-height:480px}.approach-copy{padding:5rem 6vw}.contact{padding:6rem 6vw}.site-footer{grid-template-columns:1fr;gap:2rem}.copyright{text-align:left}}@media(max-width:520px){body{font-size:15px}.hero{min-height:650px}.hero-content{margin-top:50px}.hero h1{font-size:2.8rem}.hero-copy{font-size:.9rem}.section{padding:5rem 6vw}.business-list article{padding:2rem 0}.business-title h3{font-size:1.25rem}.business-list p{font-size:.88rem}.arrow{font-size:1.2rem}.approach-image{min-height:350px}.company dl div{grid-template-columns:6rem 1fr;gap:1rem}.contact-button{margin-top:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.news{padding-top:6rem;padding-bottom:6rem;background:#fff}.news .section-label{margin-bottom:1.5rem}.news h2{font-family:var(--serif);font-size:clamp(2rem,4vw,3.8rem);font-weight:500;line-height:1.3;margin:0 0 2.5rem}.news-list{border-top:1px solid var(--line)}.news-list article{display:grid;grid-template-columns:10rem 1fr;gap:2rem;padding:1.5rem 0;border-bottom:1px solid var(--line);align-items:center}.news-list time{font-size:.78rem;letter-spacing:.08em;color:var(--muted)}.news-list p{margin:0}.card-overlay{position:absolute;inset:0;z-index:2}.card-overlay:focus-visible{outline:2px solid #7eaaff;outline-offset:-4px}.business-list article:has(.card-overlay){cursor:pointer}.contact-button strong{overflow-wrap:anywhere}@media(max-width:520px){.news{padding-top:4rem;padding-bottom:4rem}.news-list article{grid-template-columns:1fr;gap:.3rem}.contact-button strong{font-size:1.2rem}}
.motion-ready .site-header{opacity:0;transform:translateY(-24px)}.motion-start .site-header{opacity:1;transform:none;transition:opacity .8s ease .1s,transform .8s cubic-bezier(.22,1,.36,1) .1s}.motion-ready .hero .eyebrow,.motion-ready .hero h1,.motion-ready .hero-copy,.motion-ready .hero .text-link,.motion-ready .hero-index{opacity:0;transform:translateY(42px)}.motion-ready .hero h1{clip-path:inset(0 0 100% 0)}.motion-start .hero .eyebrow,.motion-start .hero h1,.motion-start .hero-copy,.motion-start .hero .text-link,.motion-start .hero-index{opacity:1;transform:none;transition:opacity .9s ease,transform 1s cubic-bezier(.22,1,.36,1),clip-path 1.1s cubic-bezier(.22,1,.36,1)}.motion-start .hero .eyebrow{transition-delay:.25s}.motion-start .hero h1{clip-path:inset(0 0 0 0);transition-delay:.42s}.motion-start .hero-copy{transition-delay:.72s}.motion-start .hero .text-link{transition-delay:.92s}.motion-start .hero-index{transition-delay:1.08s}.motion-start .hero-visual{animation:hero-drift 13s cubic-bezier(.2,.7,.2,1) both}.motion-start .mesh i{animation:mesh-pulse 3.4s ease-in-out infinite}.motion-start .mesh i:nth-child(2){animation-delay:.5s}.motion-start .mesh i:nth-child(3){animation-delay:1s}.motion-start .mesh i:nth-child(4){animation-delay:1.5s}.motion-start .mesh i:nth-child(5){animation-delay:2s}.reveal-item{opacity:0;transform:translateY(38px);transition:opacity .8s ease var(--reveal-delay,0ms),transform .9s cubic-bezier(.22,1,.36,1) var(--reveal-delay,0ms),padding .25s ease,background .25s ease}.reveal-item.is-visible{opacity:1;transform:none}.approach-image.reveal-item{transform:scale(.96);transform-origin:center}.approach-image.reveal-item.is-visible{transform:scale(1)}.business-list article.reveal-item:nth-child(even){transform:translateY(38px) translateX(18px)}.business-list article.reveal-item:nth-child(even).is-visible{transform:none}.text-link span,.arrow{display:inline-block;transition:transform .3s ease}.text-link:hover span,.business-list article:hover .arrow{transform:translate(.35rem,-.35rem)}@keyframes hero-drift{0%{transform:scale(1.08)}100%{transform:scale(1)}}@keyframes mesh-pulse{0%,100%{opacity:.45;transform:scale(.85);box-shadow:0 0 7px #2578ff}50%{opacity:1;transform:scale(1.35);box-shadow:0 0 22px #2578ff}}@media(prefers-reduced-motion:reduce){.motion-ready .site-header,.motion-ready .hero .eyebrow,.motion-ready .hero h1,.motion-ready .hero-copy,.motion-ready .hero .text-link,.motion-ready .hero-index,.reveal-item{opacity:1!important;transform:none!important;clip-path:none!important;animation:none!important}.motion-start .hero-visual,.motion-start .mesh i{animation:none!important}}
.company dd a{text-decoration:underline;text-underline-offset:.25em}.company dd a:hover,.company dd a:focus-visible{color:var(--blue)}

.contact-button span{font-size:clamp(1.4rem,2.5vw,2.5rem);font-weight:600;letter-spacing:.06em;line-height:1.3}.contact-button i{grid-row:1}
