@charset "UTF-8";
:root{--ink:#17373e;--ink-dark:#12313a;--forest:#176761;--forest-dark:#0c524f;--mint:#e4f2ed;--cream:#f7f8f5;--paper:#ffffff;--body:#41565b;--muted:#708185;--line:#dae4e0;--gold:#e4b76e;--radius:18px;--shadow:0 16px 55px rgba(18,49,58,.08)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:#fff;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;font-size:15px;line-height:1.85;-webkit-font-smoothing:antialiased}
body.nav-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img,svg{display:block;max-width:100%}
:focus-visible{outline:3px solid #dca044;outline-offset:3px}
.container{width:min(100% - 64px,1180px);margin-inline:auto}
.skip-link{position:fixed;top:-100px;left:10px;background:#fff;color:#000;z-index:2000;padding:12px}.skip-link:focus{top:10px}
.site-header{height:91px;position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid #e5ece9;backdrop-filter:blur(14px)}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:12px;white-space:nowrap}
.brand-icon{width:45px;height:45px;background:var(--forest);border-radius:11px;position:relative;display:grid;place-items:center;overflow:hidden}
.brand-icon span{position:absolute;display:block;border:3px solid #fff;transform:rotate(45deg);height:13px;width:13px}
.brand-icon span:first-child{top:10px;left:11px}.brand-icon span:nth-child(2){top:20px;left:21px}.brand-icon span:nth-child(3){top:27px;left:8px}
.brand-text{display:flex;flex-direction:column;line-height:1.35;gap:3px}
.brand-text strong{font-weight:800;letter-spacing:.045em;font-size:20px}
.brand-text small{letter-spacing:.11em;font-size:10px;color:#738486;font-weight:600}
.global-nav{display:flex;gap:32px;align-items:center;font-size:13px;font-weight:700}
.global-nav>a:not(.nav-cta):hover,.footer-nav>a:hover{color:var(--forest)}
.global-nav .nav-cta{background:var(--forest);color:#fff;border-radius:5px;padding:13px 21px;transition:background .2s,transform .2s}
.global-nav .nav-cta:hover{background:var(--forest-dark);transform:translateY(-1px)}
.nav-cta span{margin-left:8px}.nav-toggle{display:none}
.hero{min-height:662px;position:relative;background:linear-gradient(120deg,#f3faf7 0%,#f6faf7 52%,#e9f5ef 100%);overflow:hidden}
.hero-grid{position:absolute;inset:0;opacity:.35;background-image:linear-gradient(to right,#dcece6 1px,transparent 1px),linear-gradient(to bottom,#dcece6 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to right,transparent 5%,black 100%)}
.hero-inner{min-height:637px;display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:24px;position:relative;z-index:1;padding-block:69px 78px}
.eyebrow{display:flex;gap:11px;align-items:center;font-size:11px;letter-spacing:.105em;font-weight:800;color:var(--forest);margin-bottom:27px}.eyebrow-line{width:27px;height:2px;background:var(--forest)}.eyebrow-dot{height:3px;width:3px;background:var(--forest);border-radius:50%}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(38px,4.3vw,59px);line-height:1.48;font-weight:850;letter-spacing:-.065em;margin-bottom:25px;color:var(--ink-dark)}
.hero-title-accent{color:var(--forest)}
.hero-lead{line-height:2;font-size:15px;color:#456067;margin-bottom:34px;font-weight:500}
.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.button{display:inline-flex;justify-content:center;align-items:center;gap:28px;border:0;font-weight:800;letter-spacing:.01em;line-height:1.45;transition:transform .2s,box-shadow .2s,background .2s;text-align:center}
.button:hover{transform:translateY(-2px)}.button-primary{background:var(--forest);color:#fff;padding:20px 26px;border-radius:5px;box-shadow:0 10px 28px rgba(23,103,97,.16)}.button-primary:hover{background:#0f5853;box-shadow:0 16px 35px rgba(23,103,97,.24)}
.button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.text-link{font-weight:750;font-size:13px;border-bottom:1px solid #6d9591;padding-bottom:5px}.text-link span{padding-left:6px;color:var(--forest)}
.hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:12px;color:#526b6c;margin-top:30px;font-weight:600}.meta-mark{display:inline-grid;place-items:center;width:19px;height:19px;background:#d4eae2;color:var(--forest);border-radius:50%;font-size:11px}.hero-meta-divider{width:1px;height:16px;background:#bbcfc8;margin-inline:11px}
.hero-art{height:464px;position:relative;display:flex;align-items:center;justify-content:center;transform:translateX(18px)}
.art-shadow{position:absolute;width:97%;height:86%;border-radius:56% 44% 53% 47%;background:#cce7dc;top:38px;right:0;transform:rotate(-13deg)}
.art-workbench{width:min(100%,490px);min-height:330px;background:rgba(255,255,255,.98);border-radius:17px;box-shadow:0 27px 70px rgba(18,73,73,.16);position:relative;z-index:2;padding:30px 33px;transform:rotate(-4deg);border:1px solid #ecf3f0}
.bench-upper{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e3ebe7;padding-bottom:20px}.diagram-title{font-size:11px;font-weight:800;color:#56706f}.diagram-line{display:flex;gap:5px}.diagram-line span{height:7px;width:7px;border-radius:50%;background:#cdded8}.diagram-line span:first-child{background:#69a89c}
.art-parts,.art-products{display:flex;justify-content:space-between;align-items:center;gap:9px;padding-inline:7px}.art-parts{margin-top:25px}.part{width:29%;height:70px;position:relative;display:flex;align-items:center;justify-content:center}.part-one{gap:5px}.part-one i{display:block;width:15px;height:43px;border-radius:7px;background:#aacdc2;border:3px solid #78a798}.part-one i:nth-child(2){height:32px;background:#e8eee8}.part-two span:first-child{height:42px;width:42px;background:#eed5a2;border:9px solid #dba658;border-radius:50%}.part-two span:nth-child(2){height:15px;width:13px;background:#a8ccc2;border-radius:3px;margin-left:-10px}.part-three span{display:block;width:18px;height:18px;border-radius:4px;background:#90bcb1;border:2px solid #659f91;transform:rotate(-15deg);margin-left:-5px}.part-three span:nth-child(2){transform:rotate(14deg);background:#d8e9e2}
.art-arrow{display:flex;justify-content:space-around;margin:9px 24px 12px}.art-arrow span{height:31px;width:1px;background:#91b7ac;position:relative}.art-arrow span:after{content:"";position:absolute;bottom:0;left:-4px;width:8px;height:8px;border-bottom:1px solid #91b7ac;border-right:1px solid #91b7ac;transform:rotate(45deg)}
.product-box{width:30%;height:86px;border:2px solid #7ea99b;background:linear-gradient(145deg,#eaf4ed,#d5e9de);border-radius:7px;position:relative;display:flex;align-items:center;justify-content:center;gap:4px;box-shadow:4px 5px 0 #c7dad1}.product-box span{position:absolute;left:6px;top:6px;font-size:7px;letter-spacing:.1em;color:#47756c;font-weight:800}.product-box i{width:18px;height:18px;background:#fff;border:3px solid #83ae9e;border-radius:4px}.product-box.second{background:#f9edcf;border-color:#d5ad68;box-shadow:4px 5px 0 #e5d2ad}.product-box.second i{border-color:#d1ae73;border-radius:50%}.product-box.third{background:#e5f0ed}.product-box.third i{border-radius:50%;width:27px;height:27px;border:3px solid #7da899}.product-box.third i:last-child{display:none}
.diagram-bottom{font-size:10px;color:#5a7770;margin-top:29px;border-top:1px solid #e5ece9;padding-top:15px;font-weight:700}.bottom-check{color:var(--forest);font-weight:900;margin-right:5px}
.art-label{position:absolute;z-index:3;background:#fff;box-shadow:0 8px 24px rgba(24,74,64,.12);font-size:10px;font-weight:800;letter-spacing:.12em;color:var(--forest);border-radius:4px}.art-label-top{top:8px;left:15px;padding:12px 18px;transform:rotate(-3deg)}.label-dot{display:inline-block;width:7px;height:7px;background:#d8ab64;border-radius:50%;margin-right:6px}.art-label-bottom{bottom:22px;right:-10px;padding:13px 16px;transform:rotate(3deg);color:#4b726a;font-size:9px}.art-label-bottom span{color:#d0a964;padding-inline:4px}.art-stamp{z-index:3;position:absolute;right:-14px;top:50px;width:126px;height:126px;border:1.5px solid rgba(24,103,94,.7);border-radius:50%;transform:rotate(17deg);display:flex;flex-direction:column;justify-content:center;text-align:center;font-size:12px;letter-spacing:.14em;font-weight:700;color:var(--forest);line-height:1.35;background:#eaf6edb5}.art-stamp strong{font-size:16px}.art-stamp span{font-size:7px;letter-spacing:.1em;margin-top:8px}
.hero-bottom-decoration{position:absolute;bottom:0;left:0;right:0;height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100% - 1180px)/2));font-size:9px;letter-spacing:.16em;color:#738b86;border-top:1px solid #dcebe5}
.section{padding-block:110px}.section-tight{padding-block:75px}.section-kicker{font-size:11px;font-weight:850;letter-spacing:.18em;color:var(--forest);margin-bottom:17px}.kicker-slash{padding-inline:5px;color:#bdc9c4}h2{font-size:clamp(29px,3vw,42px);line-height:1.55;letter-spacing:-.045em;font-weight:850;margin-bottom:0}
.pain-points{background:#fff}.pain-points .container{display:grid;grid-template-columns:.95fr 2.05fr;gap:44px;align-items:center}.pain-intro h2{font-size:27px}.pain-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.pain-item{padding:20px 15px 18px;min-height:140px;background:#f5f9f7;border:1px solid #edf2ef;border-radius:8px}.pain-mark{font-size:12px;font-weight:800;color:#72a297;letter-spacing:.1em}.pain-item p{font-size:13px;font-weight:750;line-height:1.8;margin:14px 0 0}
.services{background:#f8faf8}.section-header{display:flex;justify-content:space-between;align-items:end;gap:55px;margin-bottom:46px}.section-header-copy{margin:0 5px 6px 0;color:var(--body);font-size:14px;line-height:2;width:390px;max-width:41%}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.service-card{background:white;border:1px solid #e0eae6;border-radius:9px;min-height:317px;padding:28px 24px 24px;transition:transform .22s,box-shadow .22s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-card-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:33px}.service-number{font-size:10px;letter-spacing:.13em;color:#63978b;font-weight:900}.service-icon{width:55px;height:55px;background:#e7f2ec;border-radius:15px;display:grid;place-items:center;color:var(--forest)}.service-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.service-card h3{font-size:20px;margin:0 0 12px;font-weight:850;letter-spacing:-.03em}.service-card p{color:#516468;font-size:13px;line-height:2;min-height:88px;margin-bottom:14px}.service-keywords{display:flex;flex-wrap:wrap;gap:5px}.service-keywords span{font-size:10px;color:#62857d;background:#f0f6f2;padding:3px 9px;border-radius:3px;font-weight:700}.service-notice{text-align:center;margin:30px 0 0;color:#577b73;font-size:13px;font-weight:700}.service-notice span{font-size:18px;margin-right:4px}
.approach{background:var(--ink-dark);color:#fff;position:relative;overflow:hidden}.approach:before{content:"";position:absolute;width:600px;height:600px;border:1px solid #ffffff13;border-radius:50%;left:-180px;top:-270px;box-shadow:0 0 0 70px #ffffff06,0 0 0 140px #ffffff04}.approach-grid{display:grid;grid-template-columns:1fr 1.14fr;gap:85px;position:relative}.approach .section-kicker{color:#96cfbe}.approach-left h2{font-size:clamp(35px,3.2vw,45px)}.approach-left h2 span{color:#a5d8c8}.approach-left>p:not(.section-kicker){font-size:14px;color:#d1e0e0;line-height:2.2;margin:23px 0 28px;max-width:395px}.button-outline-light{border:1px solid #c4dad6;border-radius:4px;padding:15px 20px;color:#fff;font-size:13px}.button-outline-light:hover{background:#ffffff15}.approach-feature{border-top:1px solid #5a767a;display:grid;grid-template-columns:42px 1fr 20px;gap:18px;padding:26px 0 22px}.approach-feature:last-child{border-bottom:1px solid #5a767a}.feature-index{font-size:12px;color:#a9d4c9;font-weight:800}.approach-feature h3{font-size:19px;font-weight:800;margin:0 0 7px}.approach-feature p{font-size:13px;color:#c4d4d5;margin:0;line-height:1.9}.feature-arrow{color:#8fbcaf;font-size:19px}
.flow-section{background:#fff}.flow-list{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.flow-list li{background:#f7faf8;border:1px solid #e7eeeb;border-radius:8px;padding:22px 20px 25px;position:relative}.flow-list li:not(:last-child):after{content:"→";position:absolute;right:-16px;top:52px;color:var(--forest);font-size:19px;z-index:1;font-weight:600}.flow-num{font-size:12px;color:#56998c;font-weight:800;letter-spacing:.14em}.flow-symbol{display:grid;place-items:center;height:45px;width:45px;margin-top:24px;margin-bottom:19px;border-radius:50%;font-family:Arial,sans-serif;font-size:21px;font-weight:600;color:var(--forest);background:#e5f1e9}.flow-list h3{font-size:16px;font-weight:850;margin-bottom:11px}.flow-list p{font-size:12px;line-height:2;color:var(--body);margin:0}
.faq-section{background:#f8faf8}.faq-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px}.faq-lead{font-size:13px;color:var(--body);margin:17px 0 0}.faq-list{border-top:1px solid #cbdcd4}.faq-list details{border-bottom:1px solid #cbdcd4}.faq-list summary{cursor:pointer;list-style:none;padding:23px 36px 23px 0;font-size:14px;font-weight:750;position:relative;line-height:1.7}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:16px;color:var(--forest);margin-right:14px}.faq-list summary:after{content:"＋";position:absolute;right:5px;top:20px;font-size:18px;color:#67968c}.faq-list details[open] summary:after{content:"－"}.faq-list details p{padding:0 36px 24px 32px;color:#566f70;font-size:13px;margin:0}
.company-section{background:#fff}.company-grid{display:grid;grid-template-columns:1fr 1.07fr;gap:85px}.company-head>p:last-child{font-size:14px;color:var(--body);margin:22px 0 0;line-height:2}.company-info dl{margin:0;border-top:1px solid #cddbd6}.company-info dl>div{display:grid;grid-template-columns:115px 1fr;gap:16px;border-bottom:1px solid #dce6e2;padding:18px 5px;font-size:13px;line-height:1.85}.company-info dt{font-weight:750;color:#58736f}.company-info dd{margin:0;font-weight:700}
.contact-section{background:linear-gradient(160deg,#e8f4ed,#f0f8f4);padding-block:96px 110px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:78px;align-items:start}.contact-lead{position:sticky;top:125px}.contact-lead h2{font-size:clamp(32px,3.2vw,45px)}.contact-lead h2 span{color:var(--forest)}.contact-lead>p:not(.section-kicker){font-size:14px;line-height:2.1;color:#4e6967;margin:25px 0 35px}.contact-free{display:flex;gap:14px;align-items:center;border-top:1px solid #c6ddd1;border-bottom:1px solid #c6ddd1;padding:25px 0}.contact-free>span{display:grid;place-items:center;width:43px;height:43px;flex-shrink:0;color:#fff;border-radius:50%;background:var(--forest);font-weight:900}.contact-free strong,.contact-free small{display:block}.contact-free strong{font-size:15px}.contact-free small{font-size:11px;color:#607973;line-height:1.8;margin-top:5px}
.contact-form-wrap{background:#fff;padding:36px 40px 41px;border-radius:11px;box-shadow:var(--shadow)}.contact-form-wrap h3{font-size:23px;margin:0 0 8px}.form-intro{font-size:12px;color:#71817d;border-bottom:1px solid #e4ebe7;padding-bottom:23px;margin-bottom:22px}.form-field{margin-bottom:20px}.form-field label{display:flex;align-items:center;gap:10px;font-weight:800;font-size:12px;margin-bottom:9px}.required-mark,.optional-mark{display:inline-block;font-size:10px;font-weight:700;border-radius:2px;padding:1px 7px;line-height:1.6}.required-mark{color:#fff;background:#397d72}.optional-mark{color:#6c7f7a;background:#edf2ee}.form-field input,.form-field select,.form-field textarea{display:block;width:100%;background:#fbfcfb;border:1px solid #dbe5df;border-radius:4px;padding:13px 15px;font-size:13px;line-height:1.65;color:#243f43;min-height:49px;transition:border .2s,box-shadow .2s}.form-field textarea{resize:vertical;min-height:140px}.form-field input::placeholder,.form-field textarea::placeholder{color:#9baaa5}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:0;border-color:#428f7e;box-shadow:0 0 0 3px #d7e9df}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.privacy-agree{display:flex;gap:12px;align-items:start;cursor:pointer;font-size:12px;font-weight:650;line-height:1.8;margin:7px 0 23px}.privacy-agree input{width:19px;height:19px;accent-color:var(--forest);flex-shrink:0;margin-top:3px}.privacy-agree a{color:var(--forest);text-decoration:underline;text-underline-offset:3px}.privacy-agree .required-mark{margin-left:3px}.form-submit{width:100%;min-height:60px}.form-note{font-size:11px;color:#81908a;text-align:center;margin:14px 0 0}.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.site-footer{background:#17373e;color:#fff}.footer-main{padding-block:62px 47px;display:flex;justify-content:space-between;gap:50px}.footer-brand .brand-icon{background:#4a9685}.footer-brand .brand-text small{color:#a4bfba}.footer-main p{font-size:12px;color:#b7cecb;margin:19px 0 0}.footer-nav{display:flex;flex-wrap:wrap;gap:14px 24px;max-width:470px;justify-content:end;align-content:start;padding-top:12px;font-size:12px;font-weight:700}.footer-nav>a:hover{color:#ace0c8}.footer-bottom{border-top:1px solid #44636a;padding-block:19px 24px;display:flex;justify-content:space-between;gap:20px;color:#9cbbb8;font-size:11px}.mobile-contact-bar{display:none}
/* Inner pages */
.inner-hero{background:#eef6f1;padding:65px 0 66px}.inner-hero h1{font-size:clamp(32px,4vw,45px);margin:0}.inner-content{padding-block:73px 110px;max-width:910px}.inner-content h2{font-size:23px;margin:36px 0 14px}.inner-content h2:first-child{margin-top:0}.inner-content p,.inner-content li{color:var(--body);font-size:14px;line-height:2}.inner-content ul{padding-left:1.4rem}.inner-content .button{margin-top:16px}.message-panel{background:#f4f9f5;padding:28px;border:1px solid #d9e8df;border-radius:8px;margin:24px 0}.message-panel p{margin:0}.message-panel.error{background:#fff3f0;border-color:#edc7bd}.message-panel.error li{color:#753d36}.inner-content .back-link{display:inline-block;margin-top:20px;color:var(--forest);text-decoration:underline}
@media(max-width:1100px){.global-nav{gap:18px}.brand-text strong{font-size:18px}.hero-inner{grid-template-columns:1.04fr .96fr}.hero-art{transform:scale(.93) translateX(16px)}.service-card{padding:25px 18px}.service-grid{gap:12px}.service-card p{min-height:105px}.approach-grid{gap:55px}}
@media(max-width:900px){.container{width:min(100% - 40px,730px)}.site-header{height:76px}.nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:42px;height:42px;border:none;background:#eff5f1;border-radius:5px;position:relative;z-index:3}.nav-toggle span{width:22px;height:2px;background:var(--forest);margin-inline:auto;transition:transform .2s,opacity .2s}.nav-toggle[aria-expanded="true"] span:first-child{transform:translateY(8px) rotate(45deg)}.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded="true"] span:last-child{transform:translateY(-8px) rotate(-45deg)}.global-nav{display:none;position:fixed;top:76px;left:0;right:0;padding:22px 24px 30px;background:#fff;box-shadow:0 14px 18px #1e464022;flex-direction:column;align-items:stretch;gap:0}.global-nav.is-open{display:flex}.global-nav>a{padding:12px 5px;border-bottom:1px solid #e7eeea}.global-nav .nav-cta{margin-top:12px;text-align:center;border:0}.hero-inner{display:flex;flex-direction:column;align-items:stretch;padding-block:62px 68px;gap:18px}.hero-copy{position:relative;z-index:4}.hero-art{height:355px;width:min(100%,590px);align-self:center;transform:scale(.87)}.art-workbench{min-height:320px}.hero-bottom-decoration{padding-inline:20px}.pain-points .container{grid-template-columns:1fr;gap:26px}.pain-list{grid-template-columns:repeat(4,1fr)}.section{padding-block:82px}.section-tight{padding-block:65px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:300px;padding:25px}.service-card p{min-height:65px}.approach-grid,.company-grid,.contact-grid{grid-template-columns:1fr;gap:42px}.approach-left>p:not(.section-kicker){max-width:600px}.flow-list{grid-template-columns:repeat(3,1fr)}.flow-list li:nth-child(3):after{display:none}.faq-grid{grid-template-columns:1fr;gap:30px}.contact-lead{position:static}.contact-lead h2 br{display:none}.contact-lead h2 br:after{content:" "}.contact-lead>p:not(.section-kicker){margin:15px 0 25px}.company-head h2 br{display:none}.footer-main{flex-direction:column;gap:20px}.footer-nav{justify-content:start;padding:0;max-width:unset}}
@media(max-width:600px){html{scroll-padding-top:75px}.container{width:calc(100% - 36px)}body{font-size:14px}.site-header{height:70px}.brand-icon{height:39px;width:39px;border-radius:9px}.brand-icon span:first-child{top:8px;left:8px}.brand-icon span:nth-child(2){top:18px;left:18px}.brand-icon span:nth-child(3){top:24px;left:7px}.brand-text strong{font-size:17px}.brand-text small{font-size:8px}.global-nav{top:70px}.eyebrow{font-size:9px;letter-spacing:.08em;gap:8px;margin-bottom:22px}.eyebrow-line{width:18px}.hero-inner{padding-top:55px;padding-bottom:44px}.hero h1{font-size:clamp(35px,9.5vw,45px);letter-spacing:-.065em;line-height:1.52;margin-bottom:20px}.hero-lead{font-size:13px;line-height:2}.desktop-only{display:none}.hero-actions{gap:19px}.hero .button-primary{width:100%;justify-content:space-between;font-size:14px;padding:18px}.hero-meta{font-size:11px;gap:6px;margin-top:23px}.hero-meta-divider{margin-inline:3px}.hero-art{height:315px;transform:scale(.76);margin-top:-23px;margin-bottom:-24px;width:460px;max-width:130%;align-self:center}.art-workbench{min-width:410px}.art-stamp{right:-20px}.art-label-bottom{right:-20px}.hero-bottom-decoration{height:38px;font-size:8px}.hero-bottom-decoration span:first-child{display:none}.pain-points .container{gap:23px}.pain-intro h2{font-size:26px}.pain-list{grid-template-columns:1fr 1fr;gap:9px}.pain-item{min-height:108px;padding:13px}.pain-item p{margin-top:7px;font-size:12px}.section{padding-block:65px}.section-tight{padding-block:56px}.section-kicker{font-size:10px;letter-spacing:.13em;margin-bottom:12px}.section-header{display:block;margin-bottom:27px}.section-header-copy{max-width:100%;width:auto;margin:17px 0 0;font-size:13px}.services h2,.company-section h2{font-size:29px}.service-grid{grid-template-columns:1fr;gap:11px}.service-card{min-height:0;padding:23px}.service-card-top{margin-bottom:15px}.service-icon{height:48px;width:48px}.service-card h3{font-size:19px;margin-bottom:8px}.service-card p{min-height:0;font-size:13px;margin-bottom:14px}.service-notice{text-align:left;font-size:12px}.approach-grid{gap:35px}.approach-left h2{font-size:35px}.approach-feature{grid-template-columns:32px 1fr 13px;gap:8px;padding:20px 0}.approach-feature h3{font-size:17px}.approach-feature p{font-size:12px}.flow-list{grid-template-columns:1fr;gap:9px}.flow-list li{display:grid;grid-template-columns:46px 1fr;column-gap:14px;padding:19px 21px}.flow-list li:after{display:none!important}.flow-num{grid-row:1 / 3;align-self:center}.flow-symbol{display:none}.flow-list h3{margin:0 0 4px;font-size:15px}.flow-list p{font-size:12px}.faq-grid{gap:22px}.faq-lead{margin-top:10px}.faq-list summary{font-size:13px;padding-right:29px}.faq-list summary>span{margin-right:8px}.faq-list details p{padding-left:25px;font-size:12px}.company-grid{gap:30px}.company-info dl>div{grid-template-columns:90px 1fr;gap:10px;font-size:12px;padding:16px 0}.contact-section{padding-block:61px 79px}.contact-lead h2{font-size:34px}.contact-lead h2 br{display:block}.contact-lead h2 br:after{display:none}.contact-lead>p:not(.section-kicker){font-size:13px}.contact-form-wrap{padding:26px 20px}.contact-form-wrap h3{font-size:20px}.form-row{grid-template-columns:1fr;gap:0}.form-field{margin-bottom:17px}.form-field input,.form-field select,.form-field textarea{font-size:16px}.form-intro{font-size:11px}.footer-main{padding-block:45px 27px}.footer-brand .brand-text strong{font-size:18px}.footer-nav{font-size:11px;gap:12px 21px}.footer-bottom{display:block;font-size:10px;padding-block:16px 80px}.footer-bottom span{display:block;margin-bottom:7px}.footer-bottom span span{display:inline}.mobile-contact-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:90;height:62px;justify-content:center;align-items:center;gap:24px;color:#fff;background:#176761;font-size:14px;font-weight:800;box-shadow:0 -5px 20px #0001}.inner-hero{padding:45px 0}.inner-content{padding-block:45px 80px}.inner-content h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* 2026-11 改訂：実績・EC商材・お問い合わせ先 */
.hero h1{font-size:clamp(35px,3.66vw,52px);letter-spacing:-.055em}
.hero-lead{max-width:610px}
.service-grid-six{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-grid-six .service-card{min-height:295px;padding:30px}
.service-grid-six .service-card p{min-height:76px}
.service-glyph{font-size:30px;font-family:Arial,sans-serif;font-weight:500;line-height:1}
.service-card-commerce{background:linear-gradient(150deg,#e8f4ed 0%,#f7fbf8 100%);border-color:#caddd3}
.service-card-commerce .service-icon{background:#fff}
.experience-section{background:#fff}
.experience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.experience-item{position:relative;min-height:215px;padding:24px 22px;border:1px solid #e0e9e4;background:linear-gradient(140deg,#f8faf8,#f1f7f3);border-radius:9px;overflow:hidden}
.experience-num{font-size:11px;letter-spacing:.15em;color:#81aaa0;font-weight:900}
.experience-mark{position:absolute;right:18px;top:16px;font-size:43px;line-height:1.3;color:#b9d8ca;opacity:.85}
.experience-item h3{margin:43px 0 9px;font-size:19px;letter-spacing:-.035em}
.experience-item p{font-size:13px;line-height:1.85;color:#586c6d;margin-bottom:0}
.commerce-section{background:#f1f7f2;overflow:hidden}
.commerce-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:90px;align-items:center}
.commerce-art{height:415px;position:relative;background:radial-gradient(circle at 50% 48%,#d8ebdf,#d5e9dc 49%,#e8f2eb 50%,transparent 69%);border-radius:28px;isolation:isolate}
.commerce-art-eyebrow{position:absolute;left:28px;top:23px;font-size:9px;font-weight:800;letter-spacing:.14em;color:#5b887a}
.commerce-box{position:absolute;display:flex;flex-direction:column;justify-content:center;align-items:center;width:166px;height:165px;box-shadow:0 23px 35px #3565582c;border:1px solid #ffffff75;border-radius:16px;z-index:2}
.commerce-box span{position:absolute;top:15px;left:17px;font-size:11px;color:#678679;font-weight:900}.commerce-box b{font-size:27px;font-weight:900;letter-spacing:.03em}.commerce-box small{font-size:12px;font-weight:800;letter-spacing:.07em}
.commerce-box-back{top:82px;left:34px;background:#fff;transform:rotate(-10deg);color:#1f6c66}.commerce-box-front{top:124px;left:174px;background:#226f65;color:#fff;transform:rotate(9deg);z-index:4}.commerce-box-front span{color:#c3e0d4}.commerce-box-third{width:146px;height:130px;top:241px;left:98px;background:#e6b970;color:#3b4339;transform:rotate(-5deg);z-index:3}
.commerce-orbit{position:absolute;width:330px;height:330px;border:1px dashed #8bb8a4;border-radius:50%;inset:42px auto auto 56px}.commerce-orbit-two{width:266px;height:266px;inset:76px auto auto 89px}
.commerce-copy h2{margin-bottom:23px}.commerce-copy>p:not(.section-kicker){max-width:580px;color:var(--body);line-height:2.05;font-size:14px;margin-bottom:24px}.commerce-benefits{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 29px}.commerce-benefits span{background:#fff;color:#246e63;border:1px solid #cfe3d8;border-radius:3px;font-weight:800;padding:7px 12px;font-size:11px}
.individual-section{background:#e4f0eb;padding:46px 0;border-block:1px solid #cfdfd6}.individual-inner{display:flex;align-items:center;justify-content:space-between;gap:36px}.individual-inner .section-kicker{margin-bottom:6px}.individual-inner h2{font-size:26px}.individual-inner p:last-child{color:#526c69;font-size:13px;margin:9px 0 0}.button-outline-dark{border:1px solid #3e7c70;color:#1d5d56;padding:15px 21px;border-radius:5px;white-space:nowrap;font-size:13px}.button-outline-dark:hover{background:#d3e7df}
.company-info dd{overflow-wrap:anywhere}.company-info dd a{color:#196d61;text-decoration:underline;text-decoration-color:#96c4b4;text-underline-offset:4px}
.contact-methods{margin-top:25px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.contact-method{padding:17px 15px;border:1px solid #c5ddd0;border-radius:6px;background:#fff;display:flex;flex-direction:column;gap:4px;min-width:0}
.contact-method-label{font-size:10px;color:#658477;font-weight:800;letter-spacing:.04em}
.contact-method strong{font-size:clamp(15px,1.55vw,20px);white-space:nowrap;letter-spacing:-.025em;color:#155f58}
.contact-method-phone:hover,.contact-method-email:hover{border-color:#689c8b;background:#f8fdf9}
.contact-method-email{grid-column:1/-1}.contact-method-email strong{font-size:clamp(13px,1.6vw,18px);overflow-wrap:anywhere;white-space:normal}
.contact-hours{grid-column:1/-1;margin:5px 0 0;color:#5f7972;font-size:12px}
@media(max-width:1100px){.service-grid-six{grid-template-columns:repeat(3,minmax(0,1fr))}.service-grid-six .service-card{padding:24px}.service-grid-six .service-card p{min-height:106px}.commerce-grid{gap:43px}.commerce-art{transform:scale(.9);transform-origin:center}.experience-item{padding:20px 15px}}
@media(max-width:900px){.service-grid-six{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid-six .service-card{min-height:270px;padding:25px}.service-grid-six .service-card p{min-height:65px}.experience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.experience-item{min-height:195px}.commerce-grid{grid-template-columns:1fr;gap:18px}.commerce-art{width:min(100%,495px);margin:auto;transform:none;order:2}.commerce-copy{order:1}.commerce-copy>p:not(.section-kicker){max-width:690px}.individual-inner{align-items:flex-start;flex-direction:column;gap:19px}}
@media(max-width:600px){.hero h1{font-size:clamp(32px,8.9vw,43px);line-height:1.52}.service-grid-six{grid-template-columns:1fr}.service-grid-six .service-card{min-height:0;padding:23px}.service-grid-six .service-card p{min-height:0}.experience-grid{grid-template-columns:1fr 1fr;gap:10px}.experience-item{min-height:186px;padding:16px 13px}.experience-mark{font-size:32px;top:12px;right:9px}.experience-item h3{margin-top:38px;font-size:15px}.experience-item p{font-size:11px}.commerce-grid{gap:17px}.commerce-art{height:316px;width:100%;transform:scale(.83);transform-origin:center top;margin-bottom:-50px}.commerce-box-back{top:59px;left:-2px}.commerce-box-front{top:104px;left:130px}.commerce-box-third{top:212px;left:70px}.commerce-orbit{left:0;top:8px}.commerce-orbit-two{left:35px;top:45px}.commerce-art-eyebrow{top:0;left:15px}.commerce-copy h2{font-size:29px}.individual-section{padding:35px 0}.individual-inner h2{font-size:22px}.contact-methods{margin-top:22px}.contact-method{padding:14px 12px}.contact-method strong{font-size:16px}.contact-method-email strong{font-size:14px}.contact-hours{font-size:11px}}
