:root{--navy:#171b45;--rose:#b96a80;--paper:#f9f8f4;--line:#dcdcd9;--accent:#f0ed7d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;color:var(--navy);background:var(--paper);font-family:'Helvetica Neue','Noto Sans JP','Yu Gothic',Meiryo,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--rose);outline-offset:5px}p{font-size:15px;line-height:2}h1,h2,h3,p{margin-top:0}h2{font-size:clamp(28px,3.4vw,48px);line-height:1.65;letter-spacing:.035em}h3{font-size:24px;line-height:1.6}img{max-width:100%;display:block}i{font-style:normal}.proposal{min-height:39px;background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between;padding:0 4%;font-size:10px;letter-spacing:.14em}.proposal nav{display:flex;align-self:stretch}.proposal a{padding:11px 19px;letter-spacing:.04em;opacity:.7}.proposal a.active{background:#fff;color:var(--navy);opacity:1}.proposal small{color:#dc9caf;margin-left:8px}header{position:sticky;top:0;z-index:10;background:rgba(249,248,244,.97);border-bottom:1px solid var(--navy);padding:18px 4%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand img{width:40px;height:40px;object-fit:contain}.brand b{font-size:30px;letter-spacing:.03em;line-height:1}.brand b span{display:block;font-size:9px;letter-spacing:.07em;font-weight:400;margin-top:8px}.mainnav{display:flex;align-items:center;gap:29px;font-size:12px;font-weight:600}.mainnav a:hover{color:var(--rose)}.navcta{padding:14px 20px;border:1px solid var(--navy)}.menu{display:none}.hero{position:relative;overflow:hidden;min-height:710px;background:var(--navy);color:var(--paper);display:grid;grid-template-columns:56% 44%;padding:70px 6% 82px}.eyebrow{font-size:11px;letter-spacing:.2em;line-height:1.7}.hero-kicker{font-size:14px;letter-spacing:.2em;margin:33px 0 22px}.hero h1{font-size:clamp(44px,5.8vw,84px);line-height:1.5;letter-spacing:.05em;margin:0 0 22px;font-weight:800}.highlight{color:var(--accent)}.second{color:#eba8ba}.hero-description{font-size:14px;line-height:1.9}.button{border:1px solid var(--navy);padding:18px 24px;display:inline-flex;align-items:center;justify-content:space-between;gap:60px;font-size:13px;font-weight:600;cursor:pointer;background:var(--navy);color:white;transition:background .2s,transform .2s}.hero .button{background:var(--paper);color:var(--navy);margin-top:14px}.button:hover{background:var(--rose);color:#fff;transform:translateY(-2px)}.hero-art{color:var(--accent);position:relative;display:flex;align-items:center;transform:rotate(-12deg)}.hero-art svg{width:125%;max-width:none;overflow:visible;filter:drop-shadow(15px 18px 0 #b96a80)}.art-label{position:absolute;top:40px;left:15px;font-size:11px;letter-spacing:.2em;color:#fff;transform:rotate(12deg)}.art-bottom{position:absolute;bottom:10px;right:15px;font-size:12px;color:white;transform:rotate(12deg);letter-spacing:.15em}.hero-photo{display:none}.hero-footer{position:absolute;bottom:20px;left:6%;right:6%;border-top:1px solid #ffffff40;padding-top:18px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.15em}.section{padding:100px 7%;scroll-margin-top:20px}.section-label span{font-size:10px;letter-spacing:.17em}.section-label p{font-size:12px;margin-top:13px}.intro,.concerns,.approach,.process,.company{display:grid;grid-template-columns:29% 71%}.intro .lead{font-size:19px;margin-top:30px}.rose{color:var(--rose)}.belief{margin-top:40px;padding:25px 0;border-top:1px solid var(--line);display:flex;gap:30px}.belief span{font-size:10px;letter-spacing:.13em;padding-top:7px}.belief strong{font-size:20px;line-height:1.8}.concerns{background:#efeee8;padding-top:60px;padding-bottom:60px}.concern-list a{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid #c9c9c9;font-size:19px;transition:padding .2s}.concern-list a:first-child{border-top:1px solid #c9c9c9}.concern-list a:hover{padding-left:10px;color:var(--rose)}.section-heading{display:grid;grid-template-columns:29% 71%;margin-bottom:44px}.section-heading h2{margin:0}.section-heading h2>span{display:block}.service-row{border-top:1px solid var(--navy);padding:42px 0;display:grid;grid-template-columns:12% 73% 15%;gap:0}.service-no{font-family:Georgia,serif;font-size:40px}.service-row h3{margin:12px 0}.service-row .eyebrow{color:var(--rose)}.service-symbol{font-family:Georgia,serif;font-size:96px;text-align:right;color:var(--rose);line-height:1.2}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.tags span{font-size:11px;border:1px solid var(--line);padding:7px 11px;scroll-margin-top:160px}details{max-width:600px}summary{list-style:none;cursor:pointer;border-top:1px solid var(--line);padding:17px 0;font-size:12px;display:flex;justify-content:space-between}summary::-webkit-details-marker{display:none}details[open] summary i{transform:rotate(45deg)}details>p{font-size:13px}.approach{background:var(--navy);color:white}.approach .lead{font-size:16px}.steps{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:50px}.steps li{border-top:1px solid #a8a9b6;padding-top:20px}.steps span{font-size:12px;color:var(--rose)}.steps h3{font-size:16px;margin:18px 0 12px}.steps p{font-size:12px;line-height:1.9}.results .section-heading p{margin-top:24px}.big-number{display:block;font-family:Georgia,serif;font-size:65px;font-weight:400;line-height:1.5}.big-number span{font-family:inherit;font-size:19px;margin-left:8px}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.result-grid article{padding:34px 24px;border-right:1px solid var(--line)}.result-grid article:first-child{padding-left:0}.result-grid article:last-child{border:0}.result-grid p{font-size:12px}.result-grid strong{font-family:Georgia,serif;font-size:66px;font-weight:400;white-space:nowrap}.result-grid strong span{font-size:20px}.result-grid h3{font-size:16px;margin:12px 0}.note{font-size:10px;line-height:1.8;color:#6b6c75;margin-top:18px}.profile{background:#efeee8;display:grid;grid-template-columns:44% 48%;gap:8%}.profile-image{position:relative;align-self:start}.profile-image img{aspect-ratio:4/5;object-fit:cover;object-position:center}.profile-image>span{position:absolute;bottom:-24px;left:0;font-size:9px;letter-spacing:.18em}.profile h2{margin-top:30px}.profile p{font-size:13px}.signature{border-top:1px solid #ccc;padding-top:24px;margin-top:25px}.signature span,.signature small{display:block;font-size:10px;letter-spacing:.1em}.signature strong{display:block;font-size:28px;font-weight:500;margin:12px 0}.process h2{font-size:29px}.contact{position:relative;overflow:hidden;background:var(--navy);color:white}.contact h2{font-size:clamp(34px,4.2vw,60px);margin:27px 0}.contact .light{background:var(--paper);color:var(--navy);margin-top:20px}.contact-note{font-size:10px;color:#d6d6e0;margin-top:18px}.contact-art{font-family:Georgia,serif;font-size:440px;color:var(--rose);position:absolute;right:3%;top:-25px;opacity:.6;pointer-events:none}.contact>div{position:relative;z-index:1}.company{padding-top:70px;padding-bottom:70px}.company dl{margin:0}.company dl>div{display:grid;grid-template-columns:140px 1fr;padding:20px 0;border-bottom:1px solid var(--line);font-size:12px;line-height:1.8}.company dt{color:#737581}.company dd{margin:0}footer{border-top:1px solid var(--line);padding:35px 7%;display:flex;align-items:center;justify-content:space-between;gap:20px}footer p,footer small,footer>a:last-child{font-size:10px;margin:0}.wordmark{font-size:40px;letter-spacing:-.04em;font-family:Georgia,serif}.wordmark span{color:var(--rose);padding-left:8px}dialog{border:0;background:var(--paper);color:var(--navy);max-width:560px;width:calc(100% - 32px);padding:44px;box-shadow:0 30px 100px #0003}dialog::backdrop{background:#10122c99}dialog h2{font-size:25px}dialog p{font-size:12px}dialog label{display:block;font-size:12px;margin:20px 0}select,textarea{display:block;width:100%;margin-top:10px;padding:12px;background:white;border:1px solid #bbb;color:var(--navy);font-size:14px}textarea{resize:vertical}.close{position:absolute;right:18px;top:12px;border:0;background:transparent;font-size:28px;cursor:pointer;color:var(--navy)}
/* Editorial alternative */
body.editorial{--paper:#faf8f3;--rose:#aa6476;--line:#dedbd4}.editorial header{border-color:var(--line)}.editorial .hero{background:var(--paper);color:var(--navy);padding-top:75px;grid-template-columns:60% 40%;min-height:740px}.editorial .hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:500;font-size:clamp(44px,5.1vw,72px);line-height:1.55;letter-spacing:.07em}.editorial .highlight{color:var(--navy);position:relative}.editorial .highlight:after{content:'';position:absolute;height:4px;left:0;right:0;bottom:4px;background:#c38b9a70}.editorial .hero .eyebrow{color:var(--rose)}.editorial .hero-kicker{margin-top:29px;font-size:12px}.editorial .hero .button{background:var(--navy);color:white}.editorial .hero-art{display:none}.editorial .hero-photo{display:block;position:relative;padding:5px 0 10px 18px;align-self:center}.editorial .hero-photo:before{content:'';position:absolute;width:95%;height:88%;left:-10px;top:-25px;border:1px solid #c392a0;border-radius:48% 48% 0 0}.editorial .hero-photo img{position:relative;width:100%;height:430px;object-fit:cover;object-position:50% 50%;border-radius:46% 46% 0 0}.editorial .hero-photo>div{font-size:9px;letter-spacing:.17em;margin-top:20px;display:flex;justify-content:space-between;gap:10px}.editorial .hero-photo>div span{font-size:9px;letter-spacing:0}.editorial .hero-footer{border-color:var(--line)}.editorial h2,.editorial h3{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:500}.editorial .service-symbol{color:#bb93a0}.editorial .concerns,.editorial .profile{background:#f0eae5}.editorial .intro{border-top:1px solid var(--line)}
@media(min-width:1600px){main{max-width:1700px;margin:auto}}@media(max-width:1000px){.mainnav{gap:18px;font-size:11px}.brand b span{display:none}.hero{padding-left:6%;padding-right:6%;min-height:640px}.hero-art svg{width:115%}.section{padding:75px 6%}.service-row h3{font-size:21px}.result-grid strong{font-size:48px}.editorial .hero-photo img{height:360px}.hero-photo>div span{display:none!important}.steps{gap:16px}.profile{gap:6%;grid-template-columns:42% 52%}}@media(max-width:700px){html{scroll-padding-top:80px}.proposal{display:block;padding:0;text-align:center}.proposal>span{display:none}.proposal nav{justify-content:center}.proposal a{padding:12px 10px;font-size:10px;flex:1}.proposal small{font-size:8px;margin-left:4px}header{padding:13px 5%}.brand img{width:33px;height:33px}.brand b{font-size:27px}.menu{display:block;border:0;background:none;font-size:11px;color:var(--navy)}.mainnav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--navy);padding:25px;flex-direction:column;align-items:stretch}.mainnav.open{display:flex}.hero{min-height:780px;display:block;padding:40px 6% 75px}.hero .eyebrow{font-size:9px}.hero-kicker{font-size:11px;margin:24px 0 18px}.hero h1{font-size:clamp(39px,9.7vw,65px);line-height:1.5}.hero-description{font-size:12px}.hero .button{font-size:11px;padding:15px 19px}.hero-art{position:absolute;right:-30px;bottom:50px;width:65%;height:195px;opacity:.85}.hero-art svg{width:100%}.art-label{font-size:7px;top:10px;left:-40px}.art-bottom{display:none}.hero-footer{font-size:7px;bottom:15px}.hero-footer>span{max-width:45%;line-height:1.7}.hero-footer>a{align-self:center}.section{padding:60px 6%}.intro,.concerns,.approach,.process,.company,.section-heading{display:block}.section-label{margin-bottom:30px}.section-label p{margin-top:8px;font-size:11px}.intro .lead{font-size:16px}h2{font-size:29px}p{font-size:13px}p br{display:none}.hero p br{display:block}.belief{display:block}.belief strong{display:block;margin-top:16px;font-size:18px}.concern-list a{font-size:14px;padding:22px 0}.service-row{grid-template-columns:11% 89%;padding:30px 0}.service-no{font-size:24px}.service-row h3{font-size:19px}.service-row p{font-size:12px}.service-symbol{display:none}.tags span{font-size:10px}.steps{grid-template-columns:1fr;gap:16px;margin-top:28px}.steps li{display:grid;grid-template-columns:25px 1fr;column-gap:10px;padding-top:16px}.steps h3{margin:0 0 8px;font-size:16px}.steps p{grid-column:2;margin:0}.result-grid{grid-template-columns:1fr}.result-grid article,.result-grid article:first-child{padding:24px 0;border-right:0;border-bottom:1px solid var(--line)}.result-grid strong{font-size:60px}.result-grid article:last-child{border:0}.profile{display:flex;flex-direction:column;gap:55px}.profile-image{width:85%;margin:auto}.profile-image img{aspect-ratio:1/1.05}.profile h2{margin-top:0}.contact-art{font-size:280px;right:-50px;top:50px;opacity:.2}.company dl>div{grid-template-columns:95px 1fr;font-size:11px}footer{flex-wrap:wrap;padding:25px 6%}footer p{width:65%;font-size:9px}footer>a:last-child{margin-left:auto}dialog{padding:30px 24px}.editorial .hero{display:flex;flex-direction:column;padding-top:38px;gap:45px;min-height:1050px}.editorial .hero h1{font-size:clamp(38px,9.5vw,60px)}.editorial .hero-photo{width:77%;padding:0;margin-left:16%;margin-bottom:30px}.editorial .hero-photo img{height:310px}.editorial .hero-photo:before{left:-14px;top:-16px}.editorial .hero-photo>div{font-size:8px;margin-top:13px}.editorial .hero-kicker{margin-top:22px}.editorial .hero .button{margin-top:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
