:root{--green:#166534;--mint:#F0FDF4;--paper:#FDFEFA;--ink:#174C2B;--muted:#5F7366;--lime:#D8F36A;--coral:#F3947E;--line:#D6E2D7;--font-heading:'Noto Sans JP','Hiragino Sans','Yu Gothic',sans-serif;--font-body:'Noto Sans JP','Hiragino Sans','Yu Gothic',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body)}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid currentColor;outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-heading)}.site{overflow:hidden}.site-header{height:112px;padding:0 5.6%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;font-size:32px;font-weight:800;letter-spacing:-1.8px}.brand-mark{width:19px;height:23px;border-radius:12px;background:var(--green);box-shadow:9px 0 0 var(--lime);transform:rotate(-20deg);margin-right:20px}nav{display:flex;align-items:center;gap:35px;font-size:12px;font-weight:600;letter-spacing:.04em}.nav-contact{border-bottom:1px solid var(--green);padding:12px 0}.hero{min-height:690px;height:calc(100vh - 112px);max-height:940px;display:flex;flex-direction:column;justify-content:center;position:relative;padding:50px 6% 135px}.hero-focus{text-align:center;margin-top:-12px}.eyebrow{font-size:10px;font-weight:700;line-height:1.6;letter-spacing:.17em}.hero .eyebrow{letter-spacing:.2em;margin-bottom:32px}.hero h1{font-size:clamp(48px,5.4vw,78px);font-weight:700;line-height:1.5;letter-spacing:.055em}.possibility{position:relative}.accent-dot{position:absolute;width:13px;height:13px;background:var(--coral);border-radius:50%;right:-7px;top:-9px}.hero-subtitle{font-size:13px;letter-spacing:.14em;margin-top:28px}.hero-baseline{position:absolute;left:5.6%;right:5.6%;bottom:37px;display:flex;align-items:flex-end;justify-content:space-between}.hero-baseline p{font-size:11px;line-height:1.9;letter-spacing:.06em}.hero-baseline>a{font-size:11px;display:flex;align-items:center;gap:22px}.hero-baseline>a span{font-size:21px}.hero-index{font-size:10px;letter-spacing:.12em;color:var(--muted)}.section-shell{padding:126px 9.2%}.services{border-top:1px solid var(--line)}.section-heading{position:relative}.section-heading h2{font-size:clamp(30px,3.2vw,44px);line-height:1.65;letter-spacing:.035em;margin-top:30px;font-weight:600}.section-intro{font-size:13px;line-height:2.2;position:absolute;right:0;bottom:8px;color:var(--muted)}.service-list{margin-top:68px}.service-row{display:grid;grid-template-columns:48px 1.05fr 1fr 50px;gap:24px;align-items:center;border-top:1px solid var(--line);padding:38px 0;min-height:156px}.service-row:last-child{border-bottom:1px solid var(--line)}.service-number{font-size:11px;align-self:start;padding-top:5px;letter-spacing:.06em}.service-name>p{font-size:9px;letter-spacing:.13em;margin-bottom:12px}.service-name h3{font-size:23px;font-weight:600;letter-spacing:.025em}.service-description{font-size:12px;line-height:2.1;max-width:330px;color:var(--muted)}.row-symbol{width:43px;height:43px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:25px}.lime{background:var(--lime)}.coral{background:#FAD9CD}.mint{background:#DEEFE2}.about{background:var(--mint);padding:112px 9.2% 120px}.about-inner{position:relative;display:grid;grid-template-columns:1fr 2fr;gap:35px}.about-inner>.eyebrow{padding-top:15px}.about-copy h2{font-size:clamp(30px,3vw,42px);font-weight:600;line-height:1.7;letter-spacing:.035em;margin-bottom:37px}.about-copy>p{font-size:13px;line-height:2.3;margin-top:23px}.about-copy .about-signature{border-left:3px solid var(--green);padding-left:18px;font-weight:600;margin-top:39px;letter-spacing:.08em}.relationship-art{position:absolute;left:0;bottom:5px;width:200px;text-align:center}.circle-drawing{position:relative;width:100%;aspect-ratio:1}.circle{position:absolute;top:25%;width:51%;height:51%;border:2px solid var(--green);border-radius:50%}.circle-one{left:13%}.circle-two{right:13%}.circle-center{position:absolute;left:45%;top:45%;width:10%;height:10%;background:var(--lime);border-radius:50%}.circle-spark{position:absolute;right:12%;top:23%;width:6%;height:6%;background:var(--coral);border-radius:50%}.relationship-art>span{font-size:8px;letter-spacing:.18em}.contact{background:var(--green);color:var(--mint);display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center;padding-top:103px;padding-bottom:105px}.contact .eyebrow{color:var(--lime)}.contact h2{font-size:clamp(31px,3.4vw,46px);font-weight:500;line-height:1.6;letter-spacing:.04em;margin-top:29px}.contact-copy{font-size:12px;line-height:2.2;margin-top:25px;color:#D1E6D6}.contact-invitation{border-top:1px solid #6E9B7D;border-bottom:1px solid #6E9B7D;padding:29px 0;font-size:24px;line-height:1.8;letter-spacing:.06em}.contact-link-en{display:block;font-size:8px;letter-spacing:.15em;margin-top:12px;color:var(--lime)}.sample-note{font-size:10px;line-height:1.8;color:#D1E6D6;margin-top:15px}.site-footer{padding:42px 5.6%;display:flex;align-items:center;gap:32px}.footer-brand{font-size:27px}.site-footer>p{font-size:10px;letter-spacing:.04em}.site-footer small{font-size:9px;margin-left:auto;letter-spacing:.06em;color:var(--muted)}.back-top{font-size:22px;margin-left:22px}@media(min-width:1500px){.section-shell,.about{padding-left:max(9.2%,calc((100vw - 1220px)/2));padding-right:max(9.2%,calc((100vw - 1220px)/2))}}@media(max-width:900px){.section-shell{padding:85px 7%}.section-intro{position:static;margin-top:25px}.service-row{grid-template-columns:28px 1fr 1fr 38px;gap:17px}.service-name h3{font-size:19px}.row-symbol{width:36px;height:36px}.about{padding:85px 7%}.about-inner{grid-template-columns:1fr 2fr;gap:20px}.relationship-art{width:155px}.contact{gap:36px}.contact-copy br{display:none}}@media(max-width:600px){.site-header{height:86px;padding:0 7%}.brand{font-size:28px}.brand-mark{width:15px;height:20px;margin-right:17px}nav{gap:0}nav>a:not(.nav-contact){display:none}.nav-contact{font-size:10px;padding:9px 0}.hero{height:calc(88vh - 86px);min-height:560px;max-height:740px;padding:25px 6% 120px}.hero .eyebrow{font-size:7px;letter-spacing:.13em;margin-bottom:30px}.hero h1{font-size:clamp(30px,8.5vw,50px);line-height:1.6;letter-spacing:.025em}.accent-dot{width:9px;height:9px;right:-4px;top:-8px}.hero-subtitle{font-size:10px;margin-top:24px;letter-spacing:.1em}.hero-baseline{left:7%;right:7%;bottom:27px}.hero-baseline p{font-size:9px}.hero-baseline>a{font-size:9px;gap:15px}.hero-index{display:none}.section-shell{padding:68px 7%}.eyebrow{font-size:9px}.section-heading h2{font-size:29px;margin-top:23px}.section-intro{font-size:11px;line-height:2.1;margin-top:22px}.section-intro br{display:none}.service-list{margin-top:39px}.service-row{grid-template-columns:25px 1fr 37px;gap:8px 12px;padding:27px 0;min-height:0}.service-number{grid-column:1;grid-row:1;font-size:10px}.service-name{grid-column:2;grid-row:1}.service-name>p{font-size:8px;margin-bottom:8px}.service-name h3{font-size:20px}.service-description{grid-column:2;grid-row:2;font-size:11px;max-width:none;line-height:2;margin-top:8px}.row-symbol{grid-column:3;grid-row:1;width:33px;height:33px;font-size:21px}.about{padding:65px 7% 58px}.about-inner{display:block}.about-inner>.eyebrow{padding:0;margin-bottom:28px}.about-copy h2{font-size:29px;margin-bottom:25px}.about-copy>p{font-size:12px;margin-top:20px;line-height:2.2}.about-copy .about-signature{font-size:12px;margin-top:30px}.relationship-art{position:static;width:130px;margin:34px 0 0 auto}.relationship-art>span{font-size:7px}.contact{display:block;padding-top:65px;padding-bottom:65px}.contact h2{font-size:32px;margin-top:22px}.contact-copy{font-size:11px;margin-top:20px}.contact-details{margin-top:35px}.contact-invitation{padding:23px 0;font-size:22px}.site-footer{padding:30px 7%;flex-wrap:wrap;gap:17px 20px}.footer-brand{font-size:25px}.site-footer>p{font-size:9px}.site-footer small{margin-left:0;flex-basis:75%;font-size:8px}.back-top{margin-left:auto;font-size:19px}}