@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@500;600;700&family=Noto+Sans+JP:wght@400;500;600;700&display=swap";:root{--teal: #176b6b;--teal-dark: #0b4f50;--sage: #8faf9d;--gold: #d6a84b;--ivory: #f7f5ef;--ink: #173c3c;--white: #fff;--line: #d7ded8;--max: 1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--ivory);font-family:Noto Sans JP,sans-serif;line-height:1.9;letter-spacing:.035em}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}.container{width:min(calc(100% - 48px),var(--max));margin:auto}.narrow{max-width:860px}.section{padding:120px 0}.eyebrow{margin:0 0 18px;color:var(--teal);font-family:DM Sans,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.22em}.eyebrow:before{content:"";display:inline-block;width:28px;height:1px;margin:0 12px 4px 0;background:var(--gold)}.eyebrow.light{color:#dbe9e2}.section-title{margin:0;font-size:clamp(2rem,4vw,3.8rem);font-weight:600;line-height:1.4;letter-spacing:.04em}.section-title.light{color:#fff}.body-copy p{margin:0 0 24px}.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;background:#f7f5eff0;border-bottom:1px solid rgba(23,107,107,.13);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,4vw)}.brand img{width:180px;height:66px;object-fit:contain}.global-nav{display:flex;align-items:stretch;height:100%;gap:36px}.global-nav a{display:flex;flex-direction:column;justify-content:center;font-size:.82rem;font-weight:600;position:relative}.global-nav a span{font-family:DM Sans;font-size:.58rem;color:var(--sage);letter-spacing:.14em}.global-nav a[aria-current=page]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background:var(--gold)}.global-nav .nav-contact{margin-right:-4vw;padding:0 42px;background:var(--teal);color:#fff}.global-nav .nav-contact span{color:#cbe0d5}.menu-button{display:none}.hero{min-height:840px;height:100vh;max-height:980px;padding:92px 0 0;display:grid;grid-template-columns:50% 50%;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:350px;height:350px;border:1px solid rgba(143,175,157,.35);border-radius:50%;left:-170px;top:220px}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding-left:max(48px,calc((100vw - var(--max)) / 2));position:relative;z-index:2}.hero-kicker{font:700 .72rem DM Sans;letter-spacing:.3em;color:var(--gold);margin:0 0 24px}.hero h1{font-size:clamp(2.5rem,4.7vw,5rem);line-height:1.38;letter-spacing:.03em;margin:0;font-weight:600}.hero h1 span{color:var(--teal)}.hero-lead{border-left:2px solid var(--gold);padding-left:18px;margin:32px 0;font-size:1.05rem}.hero-actions{display:flex;gap:28px;align-items:center}.button{display:inline-flex;min-width:220px;min-height:60px;padding:14px 24px;align-items:center;justify-content:space-between;background:var(--teal);color:#fff;font-weight:600;transition:.25s}.button:hover{background:var(--teal-dark);transform:translateY(-2px)}.button span{font-size:1.3rem}.text-link{font-weight:600;border-bottom:1px solid}.hero-visual{position:relative;margin:32px 32px 32px 0;overflow:hidden;border-radius:180px 0 0;background:var(--sage)}.hero-photo{position:absolute;inset:0;background:linear-gradient(130deg,#176b6b14,#0b4f502e),url(/img/hero-office.png) center/cover}.hero-visual:after{content:"";position:absolute;inset:auto 0 0 auto;width:42%;height:28%;background:var(--gold);opacity:.88;clip-path:polygon(100% 0,0 100%,100% 100%)}.float-note{position:absolute;z-index:2;left:-1px;bottom:8%;width:220px;padding:24px;background:#f7f5eff5;box-shadow:0 20px 50px #123b3b26}.float-note b{display:block;font:700 .65rem DM Sans;letter-spacing:.2em;color:var(--teal);margin-bottom:12px}.float-note span{display:inline-block;font-size:.75rem}.float-note i{display:inline-block;width:18px;height:1px;margin:0 5px 4px;background:var(--gold)}.hero-number{position:absolute;right:28px;top:20px;color:#fffc;font:600 5rem DM Sans}.scroll{position:absolute;left:24px;bottom:24px;writing-mode:vertical-rl;font:600 .55rem DM Sans;letter-spacing:.2em}.scroll span{display:inline-block;height:55px;width:1px;background:var(--teal);margin-top:10px}.intro{background:#fff}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.body-copy{font-size:1rem}.arrow-link{display:inline-flex;gap:70px;margin-top:20px;color:var(--teal);font-weight:700;border-bottom:1px solid var(--sage);padding-bottom:8px}.service-preview{background:var(--ivory)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:60px}.section-head>p{max-width:410px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:var(--line)}.service-card{position:relative;background:#fff;padding:34px 28px 30px;min-height:360px;transition:.3s}.service-card:hover{transform:translateY(-8px);z-index:2;box-shadow:0 20px 45px #104d4d21}.service-card.featured{background:var(--teal);color:#fff}.service-no{font:600 .75rem DM Sans;color:var(--gold)}.service-icon{height:90px;width:90px;margin:22px 0;display:grid;place-items:center;border:1px solid var(--sage);border-radius:50%;font-size:.75rem}.service-card h3{font-size:1.1rem;line-height:1.55}.service-card p{font-size:.84rem;line-height:1.85}.service-card>b{position:absolute;right:24px;bottom:22px;color:var(--gold)}.center{text-align:center;margin-top:55px}.button-outline{background:transparent;border:1px solid var(--teal);color:var(--teal)}.approach{padding:0;min-height:680px;display:grid;grid-template-columns:1fr 1fr;background:var(--teal-dark);color:#fff}.approach-photo{min-height:600px;background:linear-gradient(#176b6b2e,#0b4f5040),url(/img/team-workflow.png) center/cover}.approach-copy{padding:90px max(45px,calc((100vw - var(--max)) / 2)) 90px 7vw}.approach-copy h2{font-size:clamp(1.8rem,3.2vw,3rem);line-height:1.5}.approach-copy>p{color:#dbe9e2}.three-points{display:flex;gap:18px;margin:38px 0}.three-points span{font-size:.75rem;border-top:1px solid var(--sage);padding-top:10px}.three-points b{display:block;font:600 1rem DM Sans;color:var(--gold)}.arrow-link.light{color:#fff}.flow{background:#fff}.flow-list{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:55px 0 0;counter-reset:item}.flow-list li{padding:28px;border-left:1px solid var(--line);position:relative}.flow-list li:last-child{border-right:1px solid var(--line)}.flow-list b{font:600 2.4rem DM Sans;color:var(--sage)}.flow-list h3{font-size:1rem}.flow-list p{font-size:.8rem}.site-footer{background:#092f30;color:#fff}.footer-cta{text-align:center;padding:100px 24px;background:linear-gradient(115deg,#0b4f50f5,#176b6bde),url(/img/contact-space.png) center/cover}.footer-cta h2{font-size:clamp(2rem,4vw,3.4rem);margin:10px 0}.button-gold{background:var(--gold);color:#183e3d;margin-top:22px}.footer-main{max-width:var(--max);margin:auto;padding:70px 24px;display:flex;justify-content:space-between}.footer-brand img{width:220px;filter:brightness(0) invert(1);margin-bottom:22px}.footer-brand p{font-size:.75rem;color:#a9c3b8}.footer-nav{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 60px;font-size:.8rem}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:20px max(24px,calc((100vw - var(--max)) / 2));display:flex;justify-content:space-between;font-size:.67rem;color:#9cb6ab}.page-hero{margin-top:92px;min-height:470px;background:var(--teal);color:#fff;position:relative;overflow:hidden;display:flex;align-items:center}.page-hero:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.18);border-radius:50%;right:9%;top:-240px}.page-hero h1{font-size:clamp(2.5rem,5vw,4.8rem);margin:0 0 25px;letter-spacing:.08em}.page-hero p:last-of-type{font-size:1.15rem}.page-hero .eyebrow{color:#dbe9e2}.page-hero-mark{position:absolute;right:8%;bottom:-90px;font:600 24rem DM Sans;line-height:1;color:#ffffff0f}.split-story{display:grid;grid-template-columns:42% 1fr;gap:8vw}.portrait-photo{min-height:700px;border-radius:0 140px 0 0;background:url(/img/organized-office.png) center/cover}.split-story p{margin:0 0 25px}.concept{background:var(--teal-dark);color:#fff;text-align:center}.concept h2{font-size:clamp(2rem,4vw,3.6rem);line-height:1.5}.concept p{color:#dbe9e2;text-align:left}.concept blockquote{margin:45px 0;padding:30px;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);font-size:1.15rem;line-height:2.2}.style-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:55px}.style-grid article{padding:38px;background:#fff;border-top:4px solid var(--teal)}.style-grid article>b{font:600 2.5rem DM Sans;color:var(--sage)}.style-grid h3{color:var(--teal);font-family:DM Sans;letter-spacing:.06em}.style-grid h4{font-size:1.15rem}.style-grid p{font-size:.87rem}.company{background:#fff}.company-list{margin:50px 0 0}.company-list div{display:grid;grid-template-columns:220px 1fr;padding:25px 0;border-bottom:1px solid var(--line)}.company-list dt{font-weight:600;color:var(--teal)}.service-detail-list{display:grid;gap:55px}.service-detail{background:#fff}.service-detail header{display:grid;grid-template-columns:80px 1fr auto;gap:24px;align-items:center;padding:30px 40px;border-bottom:1px solid var(--line)}.service-detail header>span{font:600 3rem DM Sans;color:var(--sage)}.service-detail header p{font:600 .65rem DM Sans;color:var(--teal);letter-spacing:.18em;margin:0}.service-detail h2{margin:4px 0;font-size:1.6rem}.service-detail header strong{font:600 2rem DM Sans;color:var(--teal)}.service-detail header small{font:500 .7rem Noto Sans JP;display:block;text-align:right}.detail-body{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:40px}.task-box{background:var(--ivory);padding:26px}.task-box h3{font-size:.9rem;color:var(--teal);margin:0 0 12px}.task-box ul{margin:0;padding-left:1.2em;font-size:.85rem}.plans{background:var(--teal-dark)}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:50px}.plan-grid article{position:relative;padding:40px 34px;background:#fff}.plan-grid article>p:first-of-type{font:700 .65rem DM Sans;color:var(--sage);letter-spacing:.2em}.plan-grid h3{font-size:1.1rem}.plan-grid strong{display:block;color:var(--teal);font:600 2.3rem DM Sans;margin:25px 0}.plan-grid strong small{font:500 .75rem Noto Sans JP}.plan-grid article>p:last-child{font-size:.85rem}.plan-grid .recommended{border-top:6px solid var(--gold);transform:translateY(-12px)}.recommended>span{position:absolute;right:0;top:0;background:var(--gold);padding:4px 12px;font:700 .6rem DM Sans}.price-note{color:#bcd1c8;font-size:.75rem}.faq-wrap{max-width:920px}.faq-intro{text-align:center;margin:0 0 55px}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line);background:#fff}.faq-item button{width:100%;border:0;background:none;text-align:left;padding:28px 30px;display:grid;grid-template-columns:45px 1fr 30px;align-items:center;cursor:pointer;color:var(--ink);font-weight:600}.faq-item button span{font:600 1.5rem DM Sans;color:var(--teal)}.faq-item button i{font-style:normal;font-size:1.4rem;transition:.25s}.faq-item>div{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s}.faq-item>div p{overflow:hidden;margin:0;padding:0 75px;background:#eff4f0}.faq-item.is-open>div{grid-template-rows:1fr}.faq-item.is-open>div p{padding-top:25px;padding-bottom:25px}.faq-item.is-open button i{transform:rotate(45deg)}.contact-grid{display:grid;grid-template-columns:36% 1fr;gap:9vw;align-items:start}.contact-grid aside{position:sticky;top:130px}.contact-grid aside h2{font-size:1.65rem;line-height:1.6}.phone-box{margin-top:40px;padding:25px;border-left:4px solid var(--gold);background:#fff}.phone-box small,.phone-box span{display:block}.phone-box a{font:600 1.7rem DM Sans;color:var(--teal)}.phone-box span{font-size:.7rem}.contact-form{padding:48px;background:#fff}.contact-form label{display:block;margin-bottom:28px;font-size:.88rem;font-weight:600}.contact-form label>span,.required-note span,.privacy-check b{font-size:.62rem;background:var(--gold);color:#fff;padding:2px 7px;margin-left:7px}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:8px;padding:14px;border:1px solid #c9d3cd;background:#fbfcfa;border-radius:0}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:2px solid var(--sage);border-color:var(--teal)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.privacy-check{display:flex!important;gap:10px;align-items:center}.privacy-check input{width:20px;height:20px;accent-color:var(--teal)}.privacy-check span{background:none!important;color:inherit!important;font-size:.82rem!important;margin:0!important;padding:0!important}.privacy-check a{text-decoration:underline;color:var(--teal)}.submit-button{border:0;width:100%;justify-content:center;cursor:pointer}.submit-button:disabled{opacity:.6}.form-status{margin-top:16px;padding:0;font-size:.86rem}.form-status.is-error,.form-status.is-success{padding:16px}.form-status.is-error{background:#fff0ec;color:#a23d29}.form-status.is-success{background:#edf7f1;color:#176b50}.privacy{background:#edf1ed}.privacy p:last-child{font-size:.85rem}[data-reveal]{opacity:0;transform:translateY(30px);transition:opacity .7s,transform .7s}[data-reveal].is-visible{opacity:1;transform:none}@media(max-width:900px){.header-inner{height:74px;padding:0 20px}.brand img{width:145px;height:54px}.menu-button{display:flex;position:relative;z-index:3;width:52px;height:52px;border:0;background:var(--teal);padding:13px;flex-direction:column;gap:5px;color:#fff}.menu-button span{height:1px;background:#fff;width:100%}.menu-button b{font:600 .5rem DM Sans}.global-nav{position:fixed;inset:0;display:flex;height:100vh;background:var(--teal-dark);flex-direction:column;justify-content:center;gap:0;padding:70px 40px;transform:translate(100%);transition:.35s;color:#fff}.global-nav.is-open{transform:none}.global-nav a,.global-nav .nav-contact{padding:18px 0;margin:0;background:none;border-bottom:1px solid rgba(255,255,255,.15);font-size:1rem}.hero{padding-top:74px;grid-template-columns:1fr;grid-template-rows:55% 45%;height:auto;min-height:900px}.hero-copy{padding:50px 24px 30px}.hero-visual{margin:0 0 0 24px;border-radius:80px 0 0}.hero h1{font-size:clamp(2rem,9vw,3.5rem)}.float-note{width:200px}.scroll{display:none}.section{padding:80px 0}.container{width:min(calc(100% - 40px),var(--max))}.intro-grid,.split-story,.approach,.contact-grid{grid-template-columns:1fr;gap:50px}.service-grid,.style-grid,.plan-grid{grid-template-columns:1fr 1fr}.approach-copy{padding:65px 24px}.section-head{display:block}.section-head>p{margin-top:25px}.flow-list{grid-template-columns:1fr 1fr}.page-hero{margin-top:74px;min-height:360px}.portrait-photo{min-height:420px}.contact-grid aside{position:static}.contact-form{padding:30px}.service-detail header{grid-template-columns:60px 1fr}.service-detail header strong{grid-column:2}.detail-body{grid-template-columns:1fr}.footer-main{gap:40px}}@media(max-width:600px){body{font-size:.9rem}.section{padding:65px 0}.service-grid,.style-grid,.plan-grid,.flow-list{grid-template-columns:1fr}.service-card{min-height:280px}.service-icon{height:68px;width:68px}.approach-photo{min-height:380px}.three-points{flex-direction:column}.flow-list li,.flow-list li:last-child{border-right:0;border-left:0;border-top:1px solid var(--line)}.company-list div{grid-template-columns:1fr;gap:8px}.service-detail header{padding:24px 20px}.service-detail header>span{font-size:2rem}.detail-body{padding:25px 20px}.plan-grid .recommended{transform:none}.faq-item button{padding:22px 16px;grid-template-columns:36px 1fr 24px}.faq-item.is-open>div p{padding:22px 52px}.field-row{grid-template-columns:1fr}.footer-main{display:block}.footer-nav{margin-top:40px;grid-template-columns:1fr 1fr;gap:12px}.footer-bottom{display:block}.footer-bottom a{display:block;margin-top:8px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}[data-reveal]{opacity:1;transform:none}}
