*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:#183333;background:#fff;font:16px/1.85 -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif}a{color:inherit}header{height:90px;max-width:1360px;margin:auto;padding:0 6%;display:flex;justify-content:space-between;align-items:center}.logo{text-decoration:none;font-size:27px;font-weight:850;letter-spacing:.09em}.logo span{font-size:12px;display:block;letter-spacing:.1em;font-weight:500}nav{display:flex;align-items:center;gap:30px;font-size:14px}nav a{text-decoration:none}.nav-contact{background:#183333;color:white;padding:10px 23px;border-radius:4px}.hero{max-width:1360px;padding:75px 6% 85px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.eyebrow{font-size:14px;font-weight:700;letter-spacing:.09em;color:#47716c;margin:0 0 18px}h1{font-size:clamp(40px,4.4vw,64px);line-height:1.42;letter-spacing:.025em;margin:0 0 25px;font-weight:800}h2{font-size:clamp(29px,3vw,42px);line-height:1.55;letter-spacing:.02em;margin:0 0 25px}h3{font-size:21px;line-height:1.5;margin:16px 0}p{margin:0 0 20px}.lead{color:#496260;font-size:17px}.button{display:inline-flex;gap:40px;justify-content:space-between;align-items:center;background:#183333;color:#fff;padding:16px 25px;border-radius:4px;text-decoration:none;font-size:16px}.button:hover,.nav-contact:hover{background:#315b56}.text-link{display:block;margin-top:18px;font-size:14px;text-underline-offset:5px}.hero-side{background:#edf4f2;border-radius:12px;padding:30px 34px;transform:rotate(1deg)}.hero-side>div{transform:rotate(-1deg)}.mini-label{font-weight:600;font-size:14px}.memo,.report{padding:20px 26px;border-radius:5px;background:#fff;box-shadow:0 5px 20px #18333308}.memo{border-left:3px solid #81a99b}.memo>span,.report>span{font-size:13px;color:#55766e}.memo p{font-size:16px;line-height:1.65;margin:9px 0 0}.report h3{font-size:14px;color:#42665f;margin:10px 0 4px}.report p{font-size:14px;margin:0;line-height:1.75}.transform{font-size:13px;color:#486c62;text-align:center;padding:14px}.small{font-size:13px;color:#607670;line-height:1.8}.hero-side>.small{margin:14px 0 0;text-align:center}.section{padding:85px max(6%,calc((100vw - 1195px)/2));border-top:1px solid #e5eeeb}.section-heading{margin-bottom:40px}.section-heading>p:last-child{color:#5c726e}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.services article{border:1px solid #dae5e0;border-radius:6px;padding:28px;display:flex;flex-direction:column;align-items:flex-start}.services p{color:#57706a;flex:1}.number{font-size:32px;font-weight:500;color:#8aa69c}.status{font-size:12px;background:#e5f0e9;color:#356349;padding:4px 9px}.neutral{background:#f0f3f2;color:#63756f}.example{display:grid;grid-template-columns:.85fr 1.2fr;gap:6%;background:#f3f7f5;align-items:center}.example-copy>p:not(.eyebrow){color:#536e65}.steps{list-style:none;padding:0;margin:25px 0;display:flex;flex-wrap:wrap;gap:8px;font-size:13px}.steps li{padding:5px 10px;border:1px solid #bbd0c6;border-radius:4px}.video-wrap{background:white;border:1px solid #d1dfd7;border-radius:7px;overflow:hidden}.video-wrap video{display:block;width:100%;height:auto}.video-wrap>p{font-size:12px;padding:10px 18px;margin:0;border-top:1px solid #e5eeeb;color:#6a7e74}.approach{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.approach article{border-top:2px solid #92afa0;padding-top:22px}.approach span{font-size:13px;color:#5c7c69}.approach h3{font-size:18px}.approach p{font-size:15px;color:#5c726a}.about{display:grid;grid-template-columns:1fr 1fr;gap:8%}.about>div>p:not(.eyebrow){color:#546d63}dl{display:grid;grid-template-columns:100px 1fr;border-top:1px solid #d9e5de;font-size:14px;margin-top:30px}dt,dd{margin:0;padding:12px 0;border-bottom:1px solid #d9e5de}dt{color:#6f8278}.contact{background:#173b34;color:#fff;text-align:center;padding:80px 24px}.contact .eyebrow{color:#b1d4bf}.contact p{color:#d1e2d8}.contact .button{background:#fff;color:#214235}.contact .small{margin-top:23px;color:#afc8b8}.contact-pending{font-size:15px;padding:15px;border:1px solid #648475;max-width:440px;margin:auto}footer{display:flex;align-items:center;justify-content:space-between;padding:30px 6%}footer p{font-size:12px;color:#698173;margin:0}a:focus-visible,video:focus-visible{outline:3px solid #bd8640;outline-offset:5px}@media(max-width:850px){nav a:not(.nav-contact){display:none}.hero{grid-template-columns:1fr;padding-top:40px;gap:40px}.hero-side{max-width:560px;width:100%;justify-self:center}.services{grid-template-columns:1fr}.example,.about{grid-template-columns:1fr;gap:30px}.approach{grid-template-columns:1fr 1fr}.section{padding:55px 6%}}@media(max-width:480px){h1{font-size:38px}.hero-side{padding:22px}.approach{grid-template-columns:1fr}.contact h2{font-size:26px}.nav-contact{padding:8px 14px}.section-heading br{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-side,.hero-side>div{transform:none}}

.hero{grid-template-columns:1.35fr 1fr;gap:5%}h1{font-size:clamp(32px,3.5vw,51px)}.two-services{grid-template-columns:1fr 1fr}.services ul{padding-left:1.2em;font-size:14px;color:#496260;margin:0 0 28px}.service-link{font-size:15px;text-underline-offset:5px;font-weight:600}.service-note{font-size:13px;color:#607670;margin:24px 0 0}dd{overflow-wrap:anywhere}@media(max-width:850px){.hero,.two-services{grid-template-columns:1fr}h1{font-size:clamp(29px,5vw,43px)}}@media(max-width:480px){.logo span{font-size:9px}.logo{font-size:24px}nav{gap:0}.nav-contact{font-size:12px}.hero{padding-top:32px}h1{font-size:29px}.lead{font-size:15px}.button{font-size:14px;gap:20px}}

.demo-benefit{font-size:clamp(23px,2.3vw,32px);line-height:1.5;margin:0 0 12px}.demo-benefit-copy{font-size:15px;color:#496260;margin-bottom:24px}.hero-side .mini-label{margin-bottom:12px}

.contact-form{max-width:660px;margin:36px auto;text-align:left;position:relative}.contact-form label{display:block;font-size:15px;font-weight:600;margin-bottom:22px}.contact-form label>span{font-size:12px;margin-left:8px;background:#d9ece2;color:#173b34;padding:3px 6px;border-radius:3px}.contact-form label>span.optional{background:transparent;color:#d1e2d8}.contact-form input:not([type=checkbox]),.contact-form textarea{display:block;width:100%;margin-top:8px;padding:12px 14px;border:1px solid #afc8b8;border-radius:5px;background:white;color:#183333;font:16px/1.6 inherit;font-family:inherit;font-size:16px}.contact-form textarea{resize:vertical;min-height:150px}.contact-form small{font-size:13px;color:#d1e2d8;font-weight:400}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form .privacy-note{font-size:14px;line-height:1.8;margin:0 0 18px}.contact-form .consent{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:14px}.consent input{width:18px;height:18px;flex-shrink:0;margin-top:4px;accent-color:#b1d4bf}.contact-form button{border:0;cursor:pointer;font-family:inherit}.contact-form button:disabled{opacity:.6;cursor:wait}.contact-form :focus-visible{outline:3px solid #e8bb70;outline-offset:4px}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#form-status{margin:18px 0 0;font-size:15px}#form-status:empty{display:none}#form-status[data-state=error]{border-left:3px solid #ffb8a8;padding:12px;background:#24473f;color:#fff}.email-alternative{font-size:14px;overflow-wrap:anywhere}.email-alternative a{text-underline-offset:4px}@media(max-width:600px){.form-grid{grid-template-columns:1fr;gap:0}.contact-form button{width:100%}}

[hidden]{display:none!important}.contact-success{max-width:660px;margin:36px auto;padding:40px 28px;background:#fff;color:#173b34;border-radius:12px;border:2px solid #b1d4bf;box-shadow:0 12px 32px #09231d33}.success-mark{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;margin:0 auto 20px;background:#d9ece2;color:#173b34;font-size:34px;font-weight:700}.contact-success h3{font-size:clamp(24px,4vw,32px);margin:0 0 18px}.contact .contact-success p{color:#496260;font-size:16px}.contact-success .success-next{padding:20px 12px;background:#edf4f2;border-radius:6px;line-height:1.9}.contact-success strong{color:#173b34;overflow-wrap:anywhere}.contact .contact-success .success-note{font-size:14px}.success-reset{background:transparent;border:0;color:#173b34;font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:5px;cursor:pointer;padding:10px}.contact-success:focus-visible,.success-reset:focus-visible{outline:3px solid #e8bb70;outline-offset:4px}@media(max-width:480px){.contact-success{padding:28px 18px}}
