:root{--ink:#191919;--paper:#fbfaf7;--orange:#f45124;--line:#deddd7;--muted:#65645f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;color:var(--ink);background:var(--paper);font-family:'Helvetica Neue',Arial,'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3,h4,h5{margin:0}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}.wrap{width:min(1180px,calc(100% - 112px));margin:auto}.section{padding:130px 0}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;line-height:1.7}.eyebrow span{color:var(--orange);margin-right:20px}h1,h2,h3,h4,h5{font-weight:700}h2{font-size:clamp(36px,4.3vw,60px);line-height:1.55;letter-spacing:.015em}.section-head h2{margin-top:28px}p{line-height:1.95}.skip{position:fixed;top:-80px;left:20px;padding:15px;background:white;z-index:100}.skip:focus{top:10px}.header{position:absolute;top:24px;left:28px;right:28px;min-height:88px;display:flex;align-items:center;justify-content:space-between;padding:10px 28px;background:#fff;border-radius:8px;z-index:20}.brand{width:136px;height:64px;display:flex;align-items:center}.brand img{width:118px;height:70px;object-fit:contain}.header nav{display:flex;align-items:center;gap:34px;font-size:12px;font-weight:700}.header nav a{padding:12px 0}.header .nav-contact{padding:17px 20px;background:var(--ink);color:white}.nav-contact span{margin-left:28px}.menu{display:none}.hero{min-height:850px;position:relative;overflow:hidden;padding:205px 6% 95px;isolation:isolate}.hero-copy{width:58%;position:relative;z-index:2}.hero .eyebrow{color:var(--orange)}h1{font-size:clamp(48px,5.35vw,82px);line-height:1.48;letter-spacing:-.045em;margin:26px 0 26px}h1 em{font-style:normal;color:var(--orange)}.hero-description{font-size:16px;font-weight:600;line-height:2.15}.round-link{display:inline-flex;align-items:center;gap:24px;font-size:13px;font-weight:700;margin-top:35px}.round-link b{display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;width:54px;height:54px;font-size:22px;font-weight:400;transition:background .2s,color .2s}.round-link:hover b{background:var(--ink);color:white}.hero-photo{position:absolute;right:0;top:160px;width:43%;height:580px;z-index:0}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:52% center;border-radius:100px 0 0 0}.hero-photo figcaption{position:absolute;bottom:18px;right:24px;color:white;font-size:10px;letter-spacing:.15em;text-shadow:0 1px 5px #222}.hero-bottom{position:absolute;bottom:36px;left:6%;right:4%;display:flex;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:.1em}.hero-line{position:absolute;width:210px;height:28px;background:var(--orange);transform:rotate(-38deg);right:35%;bottom:115px;z-index:1}.intro{background:white}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-top:75px}.large-copy{font-size:28px;line-height:1.9;font-weight:700}.body-copy p+p{margin-top:22px}.body-copy p{font-size:15px}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;font-size:13px;font-weight:700;padding:18px 0 12px;border-bottom:1px solid var(--ink);margin-top:20px;transition:color .2s}.text-link:hover{color:var(--orange)}.statement{overflow:hidden;white-space:nowrap;font-size:clamp(70px,13vw,210px);font-weight:800;letter-spacing:-.065em;line-height:1.3;padding:38px 0 50px;margin-left:-8px;color:var(--orange);border-bottom:1px solid var(--line)}.statement span{color:var(--ink)}.split-head{display:flex;align-items:flex-end;justify-content:space-between;gap:50px}.split-head>p{font-size:15px;line-height:2.1;padding-bottom:12px}.service-index{display:flex;flex-wrap:wrap;gap:12px 32px;margin:64px 0 30px;padding:22px 0;border-top:1px solid var(--line);font-size:11px;font-weight:700}.service-index a:hover{color:var(--orange)}.service{display:grid;grid-template-columns:31% 1fr;gap:45px;padding:58px 0 64px;border-top:1px solid var(--ink);scroll-margin-top:30px}.service-id>span{font-size:65px;line-height:1;letter-spacing:-.065em;font-weight:500;color:var(--orange)}.service-id p{font-size:10px;font-weight:700;letter-spacing:.08em;margin-top:21px;max-width:210px}.service-main h3{font-size:32px;line-height:1.5;margin-bottom:24px}.service-main h4{font-size:18px;line-height:1.7;margin-bottom:13px}.service-main>p{font-size:14px;max-width:670px}.service-detail{margin-top:22px;border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.service-detail summary,.roles summary{display:flex;align-items:center;justify-content:space-between;padding:18px 0;font-size:12px;font-weight:700;gap:20px}.service-detail summary span,.roles summary span{font-size:20px;font-weight:400;transition:transform .2s}details[open]>summary>span:last-child{transform:rotate(45deg)}.service-detail ul{list-style:none;padding:0 0 22px;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-detail h5{font-size:13px;line-height:1.7;margin-bottom:8px}.service-detail li p{font-size:12px;color:var(--muted)}.approach{background:var(--ink);color:var(--paper)}.approach .section-head{display:grid;grid-template-columns:31% 1fr;gap:45px}.approach .section-head h2{margin:0}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:56px;margin-top:76px}.approach-grid article{border-top:1px solid #50504c;padding-top:24px}.approach-grid article>span{font-size:12px;color:var(--orange)}.approach-grid h3{font-size:21px;line-height:1.6;margin:26px 0 20px}.approach-grid p{font-size:13px;color:#c9c8c2}.regional{background:white}.regional-copy{max-width:550px;margin:48px 0 50px auto;font-size:14px}.partners{display:grid;grid-template-columns:1fr 1fr;gap:70px}.partners article{border-top:1px solid var(--line);padding-top:25px}.partners article>span{font-size:10px;letter-spacing:.1em;color:var(--muted)}.partners img{width:240px;height:125px;object-fit:contain;object-position:left center;margin:30px 0}.partners h3{font-size:20px}.partners p{font-size:13px;margin-top:14px}.recruit{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;background:#eeece5}.recruit figure{min-height:760px}.recruit figure img{width:100%;height:100%;object-fit:cover;object-position:center}.recruit-copy{padding:80px clamp(35px,5vw,90px)}.recruit h2{font-size:clamp(34px,3.3vw,48px);margin:22px 0 25px}.recruit-copy>p:not(.eyebrow):not(.small){font-size:14px}.roles{margin-top:25px}.roles details{border-bottom:1px solid #cfcdc6}.roles summary{font-size:14px}.roles details p{font-size:13px;padding:0 0 20px}.small{font-size:11px;margin-top:15px;color:var(--muted)}.company-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.company-note{font-size:19px;font-weight:600;margin-top:35px}.company dl{margin:0}.company dl>div{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:25px 0;border-top:1px solid var(--line);font-size:14px;line-height:2}.company dl>div:last-child{border-bottom:1px solid var(--line)}dt{font-size:12px;color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}.representative{padding:0 0 100px}.representative summary{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:40px;padding:30px 0}.representative h2{font-size:28px}.representative .plus{margin-left:auto;font-size:28px}.letter{max-width:780px;margin:65px auto 0}.letter h3{font-size:25px;margin-bottom:30px}.letter p{font-size:15px;margin-top:24px}.signature{text-align:right}.signature strong{display:block;margin-top:10px;font-size:21px}.contact{background:var(--orange);color:var(--ink)}.contact .eyebrow{letter-spacing:-.055em;font-size:clamp(70px,13vw,175px);font-weight:700;line-height:1;margin-bottom:45px}.contact h2{font-size:clamp(48px,5.5vw,76px);line-height:1.45}.contact-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-top:44px}.contact-bottom>p{font-size:14px}.contact-link{display:flex;align-items:center;gap:55px;border-bottom:1px solid var(--ink);padding-bottom:22px;font-size:20px;font-weight:700}.contact-link small{display:block;font-size:13px;font-weight:400;margin-top:13px}.contact-link b{font-size:44px;font-weight:400}footer{background:white;padding:58px 0 24px}.footer-top{display:flex;align-items:center;gap:40px}.footer-top img{width:125px;height:80px;object-fit:contain}.footer-top p{font-size:13px;font-weight:600}.back-top{margin-left:auto;font-size:10px;letter-spacing:.1em}footer nav{display:flex;gap:30px;flex-wrap:wrap;margin-top:40px;font-size:11px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:45px;padding-top:22px}.footer-bottom small{font-size:10px;color:var(--muted)}
@media(min-width:1600px){.hero{max-width:1800px;margin:auto}.hero-photo{width:46%}}
@media(max-width:1050px){.wrap{width:calc(100% - 72px)}.header nav{gap:22px}.header{left:18px;right:18px;padding:8px 22px}.hero{padding-top:200px;min-height:800px}.hero-photo{height:520px;top:180px;width:42%}h1{font-size:5.5vw}.intro-grid{gap:60px}.service{grid-template-columns:25% 1fr;gap:30px}.service-main h3{font-size:29px}.approach-grid{gap:30px}.recruit-copy{padding:60px 35px}.company-grid{gap:45px}.contact-link{gap:25px}.hero-line{right:32%;bottom:100px}}
@media(max-width:760px){html{scroll-padding-top:30px}.wrap{width:calc(100% - 44px)}.section{padding:80px 0}.header{top:14px;left:14px;right:14px;min-height:70px;padding:0 20px}.brand{height:66px;width:110px}.brand img{width:104px;height:63px}.menu{display:flex;flex-direction:column;gap:7px;background:none;border:0;width:42px;height:42px;justify-content:center;align-items:center}.menu span{width:25px;height:1px;background:var(--ink)}.header nav{display:none;position:absolute;top:calc(100% - 1px);left:0;right:0;background:white;padding:20px 24px 28px;border-radius:0 0 8px 8px}.header nav.open{display:flex;align-items:stretch;flex-direction:column;gap:9px;box-shadow:0 20px 25px #00000012}.header nav a{padding:14px 0}.header .nav-contact{padding:16px}.menu[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.hero{padding:134px 22px 65px;min-height:0}.hero-copy{width:100%}.hero .eyebrow{font-size:10px}h1{font-size:clamp(36px,9.4vw,65px);letter-spacing:-.055em;line-height:1.5;margin:23px 0}.hero-description{font-size:13px;line-height:2}.round-link{font-size:12px;gap:22px;margin-top:24px}.round-link b{width:45px;height:45px}.hero-photo{position:relative;top:auto;right:auto;width:calc(100% + 22px);height:320px;margin-top:36px}.hero-photo img{border-radius:60px 0 0 0;object-position:center}.hero-bottom{left:22px;right:22px;bottom:22px;font-size:8px}.hero-line{width:125px;height:17px;right:10px;bottom:63px;transform:rotate(-38deg)}h2{font-size:32px;line-height:1.6}.section-head h2{margin-top:23px}.eyebrow{font-size:10px}.intro-grid{grid-template-columns:1fr;gap:28px;margin-top:38px}.large-copy{font-size:23px}.body-copy p{font-size:13px}.statement{font-size:70px;padding:22px 0 30px}.split-head{display:block}.split-head>p{font-size:13px;margin-top:25px;padding:0}.service-index{display:grid;grid-template-columns:1fr 1fr;gap:19px 12px;margin-top:40px;font-size:10px;line-height:1.5}.service{grid-template-columns:1fr;gap:22px;padding:35px 0 42px}.service-id{display:flex;align-items:center;gap:20px}.service-id>span{font-size:37px}.service-id p{margin:0;font-size:8px;max-width:none}.service-main h3{font-size:25px;margin-bottom:20px}.service-main h4{font-size:16px}.service-main>p{font-size:13px}.service-detail ul{grid-template-columns:1fr;gap:22px}.service-detail li{padding-top:12px;border-top:1px solid var(--line)}.text-link{font-size:12px;line-height:1.6}.approach .section-head{display:block}.approach .section-head h2{margin-top:25px}.approach-grid{grid-template-columns:1fr;gap:35px;margin-top:45px}.approach-grid h3{font-size:20px;margin:15px 0}.regional-copy{margin:30px 0;font-size:13px}.partners{grid-template-columns:1fr;gap:40px}.partners img{height:90px;width:200px;margin:22px 0}.partners h3{font-size:18px}.recruit{grid-template-columns:1fr}.recruit figure{height:340px;min-height:0}.recruit figure img{object-position:center 40%}.recruit-copy{padding:55px 22px 65px}.recruit h2{font-size:33px}.company-grid{grid-template-columns:1fr;gap:40px}.company-note{font-size:17px;margin-top:20px}.company dl>div{grid-template-columns:75px 1fr;gap:15px;font-size:13px;padding:21px 0}.representative{padding-bottom:70px}.representative summary{gap:20px;padding:24px 0}.representative h2{font-size:23px}.representative .plus{font-size:22px}.letter{margin-top:35px}.letter h3{font-size:22px}.letter p{font-size:13px}.contact .eyebrow{font-size:17vw;margin-bottom:30px}.contact h2{font-size:43px}.contact-bottom{display:block;margin-top:30px}.contact-bottom>p{font-size:12px}.contact-link{justify-content:space-between;font-size:18px;margin-top:35px;padding-bottom:18px}.contact-link small{font-size:12px}footer{padding-top:35px}.footer-top{gap:15px;flex-wrap:wrap}.footer-top img{width:95px;height:65px}.footer-top p{font-size:10px}.back-top{font-size:8px}footer nav{gap:20px 25px;font-size:10px;margin-top:30px}.footer-bottom{margin-top:30px}.footer-bottom small{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.partners img{width:280px;height:68px;object-fit:contain;object-position:left center;margin:42px 0}.partners img[alt="HiroshimAI"],.partners img[alt="AIchiAI"]{object-fit:cover;object-position:center}
@media(max-width:760px){.partners img{width:250px;height:60px;margin:30px 0}}

.partner-logo{width:280px;height:68px;margin:42px 0;overflow:hidden}.partners .partner-logo img{width:100%;height:100%;margin:0;object-fit:cover;object-position:center}.partner-logo img[alt="AIchiAI"]{transform:scale(1.2)}@media(max-width:760px){.partner-logo{width:250px;height:60px;margin:30px 0}}

.about-promises{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:65px}.about-promises>div{border-top:2px solid var(--orange);padding-top:23px}.about-promises span{font-size:10px;letter-spacing:.1em;color:var(--orange);font-weight:700}.about-promises h3{font-size:23px;margin:18px 0 12px}.about-promises p{font-size:13px;color:var(--muted)}
.representative{padding-bottom:0}.representative>.wrap{width:100%}.representative> .wrap>details>summary{width:min(1180px,calc(100% - 112px));margin:auto}.letter{max-width:none;margin:0}.message-cover{margin-top:40px;min-height:450px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(20,21,23,.88),rgba(20,21,23,.57)),url('/moment-work.jpg') center 52%/cover;color:white;padding:70px max(56px,calc((100vw - 1180px)/2))}.message-cover .eyebrow{color:#ffa68b;font-size:11px;margin:0 0 26px}.message-cover h3{font-size:clamp(30px,4vw,54px);line-height:1.65;margin:0 0 30px}.message-cover p{font-size:13px;margin:0;line-height:1.9}.message-chapter{padding:80px 0;background:white}.message-chapter:nth-child(odd){background:#f2f0e9}.message-chapter-inner{width:min(1100px,calc(100% - 112px));margin:auto;display:grid;grid-template-columns:260px 1fr;gap:75px}.message-chapter header{position:sticky;top:40px;align-self:start}.message-chapter header span{font-size:66px;line-height:1;color:var(--orange);letter-spacing:-.06em;font-weight:500}.message-chapter h4{font-size:23px;line-height:1.7;margin:22px 0}.chapter-body{max-width:700px}.chapter-body p{font-size:15px;line-height:2.1;margin:0 0 26px}.chapter-body p:last-child{margin-bottom:0}.chapter-body .message-emphasis{font-size:21px;font-weight:700;border-left:3px solid var(--orange);padding:12px 0 12px 24px;margin:35px 0;line-height:1.9}.chapter-6{background:var(--ink)!important;color:var(--paper)}.chapter-6 header span{color:#ff865f}.chapter-6 .signature{border-top:1px solid #4b4b48;padding-top:30px;margin-top:42px}.chapter-6 .signature strong{display:inline-block;margin:8px 0 0 8px}.chapter-6 .message-emphasis{color:#ffb49d}
@media(max-width:1050px){.message-chapter-inner{gap:40px;grid-template-columns:220px 1fr}}
@media(max-width:760px){.about-promises{grid-template-columns:1fr;gap:30px;margin-top:40px}.about-promises h3{font-size:20px}.about-promises p{font-size:12px}.representative>.wrap>details>summary{width:calc(100% - 44px)}.message-cover{margin-top:24px;min-height:360px;padding:48px 22px}.message-cover h3{font-size:30px;line-height:1.7}.message-cover p{font-size:12px}.message-chapter{padding:48px 0}.message-chapter-inner{width:calc(100% - 44px);display:block}.message-chapter header{position:static;display:flex;align-items:center;gap:22px;border-bottom:1px solid #d9d7d0;padding-bottom:22px;margin-bottom:30px}.message-chapter header span{font-size:42px}.message-chapter h4{font-size:18px;margin:0;line-height:1.6}.chapter-body p{font-size:14px;line-height:2.05;margin-bottom:25px}.chapter-body .message-emphasis{font-size:18px;padding-left:18px;margin:30px 0}.chapter-6 header{border-color:#4b4b48}}
/* Keep primary navigation available while reading every section. */
.header{position:fixed;box-shadow:0 4px 24px #0000000d}html{scroll-padding-top:140px}.message-chapter header{top:140px}
@media(max-width:760px){html{scroll-padding-top:104px}.header nav.open{max-height:calc(100dvh - 110px);overflow-y:auto}.message-chapter header{position:static}}

@media(max-width:760px){.hero-line{display:none}}
.statement{margin-left:0;padding:38px 22px 50px;text-align:center;font-size:clamp(24px,9.5vw,152px);letter-spacing:-.055em;overflow:visible;line-height:1.3}
@media(max-width:760px){.statement{font-size:9.2vw;padding:26px 16px 32px}}
