@charset "UTF-8";
.komaki-grass-entry{display:flex;align-items:center;justify-content:space-between;gap:10px 20px;margin-top:16px;padding:14px 18px;background:#edf4e9;border:1px solid var(--green);border-left:4px solid var(--green)}.komaki-grass-entry-copy{min-width:0}.komaki-grass-entry h3{margin:0;color:var(--green);font-family:inherit;font-size:18px;font-weight:700;line-height:1.5;letter-spacing:0}.komaki-grass-entry p{margin:4px 0 0;color:var(--ink);font-size:14px;font-weight:400;line-height:1.65}.komaki-grass-entry a{flex-shrink:0;color:var(--green);font-size:14px;font-weight:700;line-height:1.6;text-decoration:underline;text-underline-offset:4px;padding:10px 0}.komaki-grass-entry a:hover{opacity:.75}.komaki-grass-entry a:focus-visible{outline:2px solid var(--green);outline-offset:4px}@media(max-width:760px){.komaki-grass-entry{align-items:stretch;flex-direction:column;gap:4px;margin-top:12px;padding:12px 14px}.komaki-grass-entry h3{font-size:17px}.komaki-grass-entry a{align-self:flex-start;max-width:100%;padding:8px 0;min-height:44px}}
:root{--green:#123e32;--deep:#0b2c23;--lime:#d9ee9e;--ink:#183a30;--muted:#63736b;--line:#dce5df;--white:#fff;--soft:#f3f6f2}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:#fff;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;line-height:1.8;font-size:16px}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #92be43;outline-offset:6px}header{height:104px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;background:#fff;position:relative;z-index:20;border-bottom:1px solid var(--line)}.brand{display:flex;gap:14px;align-items:center;flex-shrink:0}.brand-mark{width:54px;height:54px;border:2px solid currentColor;border-radius:50%;display:grid;place-items:center;font-family:serif;font-size:32px;line-height:1}.brand strong{display:block;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:32px;letter-spacing:.2em;line-height:1.3}.brand small{font-size:10px;letter-spacing:.18em;display:block}header nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.nav-contact{background:var(--green);color:white;padding:15px 24px;border-radius:3px}.nav-contact span{margin-left:12px}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}.skip{position:absolute;top:-100px;left:15px;background:white;z-index:100;padding:10px}.skip:focus{top:10px}.hero{display:grid;grid-template-columns:49% 51%;min-height:675px;background:var(--green);color:white;position:relative}.hero-copy{padding:72px 6% 38px 10.2%;position:relative;z-index:1}.eyebrow{font-size:13px;letter-spacing:.15em;font-weight:600;margin:0 0 26px}.hero .eyebrow{color:var(--lime)}h1,h2{font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-weight:500;line-height:1.6;margin:0;letter-spacing:.04em}h1{font-size:clamp(36px,4vw,61px);line-height:1.55;white-space:nowrap}h1 span{color:var(--lime)}.hero-intro{line-height:2.1;font-size:16px;margin:24px 0 29px;color:#e4ece7}.button{min-height:58px;padding:15px 27px;display:inline-flex;align-items:center;justify-content:space-between;gap:40px;border-radius:3px;font-weight:600;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.light{background:var(--lime);color:var(--deep);min-width:275px}.button span{font-size:23px;line-height:1}.hero-note{font-size:12px;color:#d2dfd6;margin-top:12px}.scroll{display:inline-flex;gap:26px;font-size:12px;margin-top:36px;letter-spacing:.06em}.hero-visual{position:relative;overflow:hidden;min-height:650px}.hero-visual img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:65% center}.hero-visual:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#09251b80);pointer-events:none}.photo-caption{position:absolute;bottom:42px;left:35px;font-family:serif;font-size:24px;letter-spacing:.15em;z-index:1}.image-note{position:absolute;bottom:12px;right:16px;z-index:1;font-size:12px;color:white;text-shadow:0 1px 4px #000}.service-strip{display:flex;align-items:center;justify-content:space-around;padding:25px 6%;border-bottom:1px solid var(--line);font-size:16px;letter-spacing:.08em}.service-strip i{width:4px;height:4px;background:#819a76;border-radius:50%}.section{padding:100px 7%;scroll-margin-top:0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:45px}h2{font-size:clamp(28px,3vw,40px)}.green{color:#588442}.section-heading p:last-child{font-size:15px;color:var(--muted);line-height:2}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{padding:25px 25px 24px;background:var(--soft);border-top:3px solid #b6ce96}.card-top{display:flex;justify-content:space-between;align-items:center;color:#6a8868;font-size:14px}.service-symbol{font-size:34px;color:var(--green);height:55px}.service-card h3{font-size:19px;margin:28px 0 13px;letter-spacing:.01em}.service-card p{font-size:14px;color:#58695f;line-height:2;margin-bottom:26px}.tags{font-size:12px;border-top:1px solid #d7e0d3;padding-top:18px;color:#61735e;line-height:1.8}.about{background:var(--green);color:white;display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:85px;padding-bottom:85px}.about .eyebrow{color:var(--lime)}.experience{display:flex;align-items:center;gap:22px;margin-top:38px}.experience strong{font-family:Georgia,serif;font-weight:400;line-height:1;font-size:112px;color:var(--lime)}.experience span{font-size:15px;line-height:2}.about-copy>p{font-size:15px;line-height:2.25;color:#e0e9e2;margin:0 0 23px}.values{margin-top:28px}.values>div{display:flex;align-items:center;gap:25px;border-top:1px solid #47665a;padding:16px 0}.values span{color:#b3c998;font-family:Georgia,serif}.values h3{font-weight:500;font-size:16px;margin:0}.price-layout{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.price-main{padding:40px 45px;background:var(--soft)}.price-main>p:first-child{margin:0;font-size:20px;font-weight:600}.price{display:flex;align-items:baseline;gap:15px;margin:5px 0}.price strong{font-size:70px;font-family:Georgia,serif;font-weight:400;letter-spacing:-.03em}.price span{font-size:21px}.price small,.disposal small{font-size:13px}.price-detail{color:var(--muted);font-size:14px}.disposal{display:flex;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:22px;margin-top:22px;font-size:14px}.disposal b{font-weight:500}.price-other{padding:40px 45px}.price-other h3{font-size:23px;font-weight:500;margin:0 0 20px;line-height:1.7}.price-other p{font-size:15px;color:var(--muted);line-height:2.1}.text-link{display:flex;justify-content:space-between;border-bottom:1px solid var(--ink);padding:16px 0;margin-top:20px;font-size:15px;font-weight:600}.fineprint{font-size:12px;color:#67746c;margin-top:20px}.flow{padding-top:0;display:grid;grid-template-columns:1fr 1.3fr;gap:70px}.flow h2{font-size:33px}.flow ol{list-style:none;padding:0;margin:0}.flow li{display:flex;gap:27px;padding:25px 0;border-top:1px solid var(--line)}.flow li>span{font-family:Georgia,serif;color:#75945c;font-size:25px}.flow h3{margin:0 0 10px;font-size:18px;font-weight:600}.flow li p{font-size:14px;line-height:2;color:var(--muted);margin:0}.area{padding-top:60px;padding-bottom:60px;background:var(--soft);display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.area h2{font-size:30px}.prefectures{display:flex;gap:35px;font-family:serif;font-size:35px;letter-spacing:.1em}.area p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:20px}.contact{background:var(--deep);color:#fff;text-align:center;padding-top:82px;padding-bottom:68px}.contact .eyebrow{color:var(--lime)}.contact h2{font-size:43px}.contact>p:not(.eyebrow){color:#d6e2db;font-size:15px;line-height:2}.contact-actions{display:flex;justify-content:center;gap:18px;margin:30px 0}.contact-actions .button{min-width:300px}.line{background:var(--lime);color:var(--deep)}.outline{border:1px solid #93aa99;color:#fff}.hours{margin-top:30px!important}.hours span{display:block;font-size:12px;color:#aabbaf}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:42px 5%}footer .brand strong{font-size:28px}footer .brand-mark{width:48px;height:48px;font-size:28px}footer p{font-size:12px;margin:0 0 4px}footer a:not(.brand){font-size:14px}footer>small{font-size:12px;color:var(--muted)}.mobile-cta{display:none}nav a:hover,.text-link:hover{opacity:.75}
@media(min-width:1550px){.hero-copy{padding-top:100px;padding-bottom:60px}.hero{min-height:770px}.hero-intro{font-size:18px}.hero-visual{min-height:770px}}
@media(max-width:1100px){header nav{gap:18px;font-size:12px}.nav-contact{padding:12px 16px}header{padding:0 4%;height:90px}.hero-copy{padding-top:55px}.hero{min-height:615px}.hero-visual{min-height:615px}.service-grid{grid-template-columns:repeat(2,1fr)}.section{padding:75px 6%}.flow{padding-top:0;gap:30px}.section-heading{align-items:start}.section-heading p:last-child{font-size:14px}.about{gap:6%}.price-main,.price-other{padding:30px}.contact h2{font-size:38px}.photo-caption{font-size:20px;left:22px}footer{flex-wrap:wrap}.scroll{margin-top:23px}}
@media(max-width:760px){html{scroll-padding-top:78px}header{height:78px;padding:0 6%;position:sticky;top:0}.brand-mark{width:43px;height:43px;font-size:26px}.brand{gap:10px}.brand strong{font-size:27px}.brand small{font-size:9px}header nav{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:46px;height:46px;border:1px solid var(--line);background:#fff;border-radius:50%;align-items:center}.menu-toggle span{display:block;width:18px;height:1px;background:var(--green)}.mobile-nav{position:fixed;top:78px;left:0;right:0;z-index:30;background:#fff;padding:15px 6% 25px;box-shadow:0 12px 20px #123e3214}.mobile-nav a{display:block;padding:14px;border-bottom:1px solid var(--line);font-size:15px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:40px 7% 30px;order:1}.hero-visual{min-height:0;height:300px;order:0}.hero-visual img{object-position:60% 48%}.hero-visual:after{inset:0;background:linear-gradient(transparent 65%,#123e32)}.photo-caption{display:none}.image-note{bottom:20px;font-size:10px}.hero .eyebrow{font-size:11px;letter-spacing:.06em;margin-bottom:16px}h1{font-size:clamp(31px,7.6vw,49px);line-height:1.6}.hero-intro{font-size:14px;margin:19px 0 22px;line-height:2}.hero .button{width:100%;font-size:16px}.hero-note{font-size:11px;text-align:center}.scroll{display:none}.service-strip{padding:20px 5%;gap:10px;flex-wrap:wrap;font-size:12px;letter-spacing:0}.service-strip i{width:3px;height:3px}.section{padding:58px 7%}.section-heading{display:block;margin-bottom:30px}.eyebrow{font-size:12px;margin-bottom:16px}h2{font-size:28px;line-height:1.7}.section-heading p:last-child{font-size:14px;margin-top:20px}.service-grid{gap:12px}.service-card{padding:18px 16px}.service-card h3{font-size:17px;margin-top:15px}.service-card p{font-size:14px;line-height:1.9;margin-bottom:16px}.service-symbol{font-size:28px;height:40px}.tags{font-size:12px;padding-top:14px}.about{display:block}.experience{margin:24px 0 35px;gap:20px}.experience strong{font-size:92px}.experience span{font-size:14px}.about-copy>p{font-size:14px}.values h3{font-size:15px}.price-layout{display:block}.price-main,.price-other{padding:27px 24px}.price strong{font-size:62px}.price-other h3{font-size:21px}.fineprint{line-height:1.9}.flow{display:block;padding-top:0}.flow h2{font-size:28px}.flow ol{margin-top:25px}.flow li{gap:22px}.area{display:block}.area h2{font-size:27px}.prefectures{margin-top:30px;font-size:32px;gap:30px}.area p:not(.eyebrow){font-size:14px}.contact h2{font-size:29px}.contact-actions{flex-direction:column;gap:12px}.contact-actions .button{min-width:0;width:100%;font-size:15px}.contact>p:not(.eyebrow){font-size:14px}.hours span{font-size:12px}footer{display:block;padding:35px 7% 95px}footer>div{margin:20px 0}footer .brand strong{font-size:27px}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:25;background:white;box-shadow:0 -3px 20px #0001;padding:9px 12px calc(9px + env(safe-area-inset-bottom));gap:8px}.mobile-cta a{padding:11px 8px;border-radius:3px;text-align:center;font-size:14px;font-weight:600;flex:1;border:1px solid var(--green)}.mobile-cta a:first-child{background:var(--green);color:white;flex:1.3}}
@media(max-width:370px){.service-grid{grid-template-columns:1fr}.hero-visual{height:240px}.service-strip{font-size:11px}.hero .eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Original brand and bright grass-cutting scene */
.brand-logo{position:relative;display:block;width:222px;height:71px;overflow:hidden;mix-blend-mode:multiply}.brand-logo img{position:absolute;width:1086.8px!important;max-width:none!important;height:auto;left:-57.2px;top:-13px}.hero{display:block;min-height:690px;background:#eef5e9;color:var(--green)}.hero-copy{padding:80px 5% 65px 0;margin-left:47%;width:53%;z-index:2}.hero-visual{position:absolute;inset:0;min-height:0;z-index:0}.hero-visual img{object-position:center center}.hero-visual:after{inset:0;background:linear-gradient(90deg,transparent 25%,rgba(248,252,245,.6) 45%,rgba(248,252,245,.92) 65%,rgba(248,252,245,.82))}.hero .eyebrow{color:#225336}.hero h1{font-size:clamp(36px,3.8vw,59px)}.hero h1 span{color:#225336}.hero-intro{color:#214936}.hero .light{background:var(--green);color:#fff}.hero-note{color:#3e634e}.hero .scroll{color:var(--green)}.photo-caption{display:none}.hero .image-note{color:#24472f;text-shadow:0 1px 3px #fff}.hero .scroll{margin-top:25px}
@media(min-width:1550px){.hero{min-height:760px}.hero-copy{padding-top:110px}.hero-visual{min-height:0}}
@media(max-width:1100px){.hero{min-height:630px}.hero-copy{padding-top:65px}.brand-logo{width:205px;height:66px}.brand-logo img{width:1003.2px!important;left:-52.8px;top:-12px}header nav{gap:15px}.hero-visual{min-height:0}}
@media(max-width:760px){.brand-logo{width:183px;height:59px}.brand-logo img{width:902.88px!important;left:-47.52px;top:-10.8px}.hero{display:flex;min-height:0}.hero-visual{position:relative;inset:auto;height:315px;min-height:0;width:100%;order:0}.hero-visual img{object-position:16% center}.hero-visual:after{background:linear-gradient(transparent 85%,#eef5e9)}.hero-copy{margin-left:0;width:100%;padding:28px 7% 30px;order:1}.hero h1{font-size:clamp(31px,7.6vw,49px)}.hero .eyebrow{font-size:10px}.hero-intro{font-size:14px}.hero .image-note{bottom:16px}.hero-note{font-size:11px}}

.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-actions .button{min-width:0;gap:20px;padding:15px 23px;font-size:15px}.phone-button{border:1px solid var(--green);background:#fffffff0;color:var(--green)}.contact-actions{flex-wrap:wrap}.contact-actions .button{min-width:250px}.contact-number{margin:20px 0 0!important}.contact-number a{font-family:Georgia,serif;font-size:30px;letter-spacing:.06em}.contact .hours{margin-top:8px!important}@media(max-width:760px){.hero-actions .button{width:100%;justify-content:space-between}.contact-actions .button{min-width:0}}

/* Inline estimate: scoped to the new section. */
.estimate-wrap{padding:0 7% 85px}.estimate{border:1px solid var(--line);border-radius:3px;overflow:hidden}.estimate-entry{display:flex;background:var(--green);color:white;cursor:pointer;list-style:none;padding:23px 30px;font-size:21px;gap:16px}.estimate-entry::-webkit-details-marker{display:none}.estimate-entry:hover{transform:none;background:var(--deep)}.estimate[open]>.estimate-entry>.estimate-entry-icon{transform:rotate(45deg)}.estimate-body{padding:32px;background:var(--soft)}.estimate-body h2{font-size:25px}.estimate-body [hidden]{display:none!important}.estimate-choices{border:0;padding:0;margin:24px 0;display:flex;flex-wrap:wrap;gap:12px}.estimate-choices legend{font-size:15px;margin-bottom:10px;font-weight:600}.estimate-choices label{display:flex;align-items:center;gap:8px;padding:14px 18px;border:1px solid var(--line);background:white;border-radius:3px;cursor:pointer}.estimate-choices label:has(input:checked){border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.estimate-choices input{width:19px;height:19px;accent-color:var(--green);flex-shrink:0}.estimate-area{display:flex;gap:12px;max-width:460px}.estimate-area>div:first-child{flex:1;min-width:0}.estimate-area label{display:block;margin-bottom:7px;font-size:15px;font-weight:600}.estimate-area input,.estimate-area select{font:inherit;font-size:18px;color:var(--ink);background:white;border:1px solid #81958a;border-radius:3px;padding:12px;width:100%;min-height:52px}.estimate-area select{min-width:85px}.estimate input:focus-visible,.estimate select:focus-visible,.estimate summary:focus-visible{outline:3px solid #92be43;outline-offset:3px}.estimate-help{font-size:13px;color:var(--muted);line-height:1.9}.estimate-error{color:#9b302a;font-size:14px}.estimate-result{background:white;padding:26px;border:1px solid var(--line)}.estimate-result>p:first-child{margin-top:0;font-weight:600}.estimate-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;margin:8px 0}.estimate-price strong{font-family:Georgia,serif;font-size:48px;line-height:1.3}.estimate-tax{margin-top:5px}.estimate-line{margin-top:14px;max-width:100%;gap:20px}.estimate-line span{flex-shrink:0}#estimate-disposal-note{border-top:1px solid var(--line);padding-top:18px;font-size:14px}#estimate-home{max-width:780px;line-height:2}
@media(max-width:760px){.estimate-wrap{padding:0 7% 50px}.estimate-entry{font-size:18px;padding:20px}.estimate-body{padding:22px 16px}.estimate-body h2{font-size:21px}.estimate-choices{flex-direction:column}.estimate-choices label{font-size:15px;padding:14px 12px}.estimate-result{padding:20px 15px}.estimate-price strong{font-size:40px}.estimate-line{width:100%;font-size:15px;padding:16px;gap:12px}.estimate-help{font-size:13px}}

.estimate-entry-copy{display:block;min-width:0}.estimate-entry-copy strong{display:block;font-size:inherit;font-weight:600}.estimate-entry-copy .estimate-entry-subtitle{display:block;font-size:15px;line-height:1.8;margin-top:4px}.estimate-entry-copy small{display:block;font-size:13px;line-height:1.9;font-weight:400;margin-top:8px}.estimate-entry>.estimate-entry-icon{flex-shrink:0}

/* Compact service photographs; existing card spacing and copy retained. */
.service-photo{margin:0 0 16px;position:relative}.service-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;max-height:150px;object-fit:contain;border-radius:2px}.service-photo figcaption{position:absolute;right:5px;bottom:5px;padding:1px 5px;border-radius:2px;background:#fffE;color:#526358;font-size:10px;line-height:1.5}@media(max-width:760px){.service-photo{margin-bottom:12px}.service-photo img{max-height:120px}}


/* ===== 追加：「その『困った』、なに？」 ===== */
.hero-no-break{white-space:nowrap}
.problem-guide{background:#fff}
.problem-guide .problem-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:45px}
.problem-guide .problem-heading-copy{max-width:620px}
.problem-guide .problem-heading-note{max-width:420px;margin:0;color:var(--muted);font-size:15px;line-height:2}
.problem-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.problem-card{display:block;padding:25px 25px 24px;background:var(--soft);border-top:3px solid #b6ce96;color:inherit;text-decoration:none;cursor:pointer;position:relative;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.problem-card:hover,.problem-card:focus-visible{transform:translateY(-2px);box-shadow:0 10px 26px rgba(18,62,50,.10);background:#f1f5f0}
.problem-card:focus-visible{outline:2px solid #6a8868;outline-offset:3px}
.problem-card .problem-no{display:block;color:#6a8868;font-size:14px;margin-bottom:18px}
.problem-card h3{margin:0 0 15px;font-size:19px;line-height:1.7;font-weight:600}
.problem-card ul{margin:0;padding-left:1.2em;color:#58695f;font-size:14px;line-height:2}
.problem-card p{margin:0;color:#58695f;font-size:14px;line-height:2}
.problem-card-note{margin-top:18px;padding-top:15px;border-top:1px solid #d7e0d3;color:#67746c;font-size:12px;line-height:1.9}
.problem-other{margin-top:22px;padding:30px 34px;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:32px}
.problem-other-copy h3{margin:0 0 6px;font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-size:24px;font-weight:500;letter-spacing:.03em}
.problem-other-copy p{margin:0;color:#dce8e1;font-size:14px;line-height:1.9}
.problem-actions{display:flex;gap:12px;flex-wrap:wrap;flex-shrink:0}
.problem-actions .button{min-height:54px;padding:13px 21px;gap:24px;font-size:14px}
.problem-actions .problem-line{background:var(--lime);color:var(--deep)}
.problem-actions .problem-phone{border:1px solid #a9bdb2;color:#fff;background:transparent}

/* ===== 6つの「困った」共通ステップ式相談 ===== */
.nagomi-flow{display:none;position:fixed;inset:0;z-index:99999;background:rgba(17,45,37,.58);padding:18px;overflow-y:auto;-webkit-overflow-scrolling:touch}
.nagomi-flow.is-open{display:block}
.nagomi-flow-panel{width:min(780px,100%);margin:22px auto;background:#fff;color:var(--ink);border-radius:10px;box-shadow:0 26px 72px rgba(0,0,0,.24);overflow:hidden}
.nagomi-flow-top{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px;border-bottom:1px solid var(--line);background:#f8faf8}
.nagomi-flow-title{margin:0;color:var(--green);font-size:17px;font-weight:700}
.nagomi-flow-close{flex:0 0 auto;width:44px;height:44px;border:1px solid #cbd8d1;border-radius:50%;background:#fff;color:var(--green);font-size:24px;line-height:1;cursor:pointer}
.nagomi-flow-body{padding:27px 26px 30px}
.nagomi-flow-intro{margin:0 0 22px;padding:16px 18px;background:#f2f6f3;border-left:3px solid #86a276;color:#40574e;line-height:1.9}
.nagomi-flow-progress{display:flex;gap:7px;margin:0 0 28px}
.nagomi-flow-progress span{flex:1;height:5px;border-radius:999px;background:#dfe8e3}
.nagomi-flow-progress span.is-active{background:var(--green)}
.nagomi-flow-step-kicker{margin:0 0 7px;color:#6f836f;font-size:12px;letter-spacing:.1em;font-weight:700}
.nagomi-flow-question{margin:0 0 20px;color:var(--green);font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;font-size:clamp(25px,4vw,34px);font-weight:500;line-height:1.45}
.nagomi-flow-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.nagomi-flow-option{min-height:62px;padding:15px 16px;border:1px solid #cfdcd5;border-radius:6px;background:#fff;color:#2a493f;text-align:left;font:inherit;font-weight:700;cursor:pointer;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}
.nagomi-flow-option:hover,.nagomi-flow-option:focus-visible{border-color:var(--green);background:#f2f6f3;outline:none}
.nagomi-flow-option.is-selected{border-color:var(--green);background:#eaf1ed;box-shadow:inset 0 0 0 1px var(--green)}
.nagomi-flow-extra{display:none;margin-top:17px;padding:17px;background:#f7f9f7;border:1px solid var(--line);border-radius:6px}
.nagomi-flow-extra.is-visible{display:block}
.nagomi-flow-extra label{display:block;margin-bottom:8px;color:var(--green);font-size:14px;font-weight:700}
.nagomi-flow-extra input{width:100%;min-height:52px;padding:12px 14px;border:1px solid #cbd8d1;border-radius:5px;background:#fff;color:var(--ink);font-size:16px}
.nagomi-flow-nav{display:flex;justify-content:space-between;gap:12px;margin-top:25px}
.nagomi-flow-nav button{min-height:54px;padding:12px 22px;border-radius:5px;border:1px solid var(--green);font:inherit;font-weight:700;cursor:pointer}
.nagomi-flow-back{background:#fff;color:var(--green)}
.nagomi-flow-next{margin-left:auto;background:var(--green);color:#fff}
.nagomi-flow-next[disabled]{opacity:.38;cursor:not-allowed}
.nagomi-flow-summary{padding:19px 20px;background:#f5f8f6;border:1px solid var(--line);border-radius:7px}
.nagomi-flow-summary h4{margin:0 0 12px;color:var(--green);font-size:19px}
.nagomi-flow-summary-list{margin:0;padding:0;list-style:none}
.nagomi-flow-summary-list li{display:grid;grid-template-columns:minmax(120px,.7fr) 1.3fr;gap:14px;padding:10px 0;border-bottom:1px solid #dce6e0}
.nagomi-flow-summary-list li:last-child{border-bottom:0}
.nagomi-flow-summary-q{color:#708077;font-size:13px}
.nagomi-flow-summary-a{color:#354e44;font-weight:700}
.nagomi-flow-final-note{margin:18px 0 0;padding:15px 17px;border-left:3px solid #86a276;background:#f8faf8;color:#4f6259;font-size:14px;line-height:1.9}
.nagomi-flow-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.nagomi-flow-actions a{min-height:58px;padding:14px 16px;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:5px;text-decoration:none;font-weight:700}
.nagomi-flow-photo{background:var(--lime);color:var(--deep)}
.nagomi-flow-consult{background:var(--green);color:#fff}
.nagomi-flow-restart{display:block;margin:19px auto 0;border:0;background:transparent;color:#5f7469;text-decoration:underline;cursor:pointer;font:inherit}
.nagomi-carryover{margin:0 0 30px;padding:22px;background:#f5f8f6;border:1px solid var(--line);border-left:4px solid #86a276}
.nagomi-carryover h3{margin:0 0 8px;color:var(--green);font-size:20px}
.nagomi-carryover p{margin:0 0 14px;color:#5b6c63;font-size:14px}
.nagomi-carryover ul{margin:0;padding-left:1.2em;color:#40574e}
.nagomi-carryover li+li{margin-top:4px}
.nagomi-carryover-copy{margin-top:15px;min-height:44px;padding:9px 14px;border:1px solid var(--green);border-radius:4px;background:#fff;color:var(--green);font:inherit;font-weight:700;cursor:pointer}
body.nagomi-flow-open{overflow:hidden}
@media(max-width:1100px){.problem-grid{grid-template-columns:repeat(2,1fr)}.problem-guide .problem-heading{align-items:start}.problem-guide .problem-heading-note{font-size:14px}.problem-other{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.problem-guide .problem-heading{display:block;margin-bottom:30px}.problem-guide .problem-heading-note{margin-top:20px;font-size:14px}.problem-grid{grid-template-columns:1fr;gap:12px}.problem-card{padding:20px 18px}.problem-card h3{font-size:17px}.problem-card ul,.problem-card p{font-size:14px;line-height:1.9}.problem-other{padding:24px 20px;gap:20px}.problem-other-copy h3{font-size:21px}.problem-actions{width:100%}.problem-actions .button{width:100%;justify-content:space-between}}
@media(max-width:640px){.nagomi-flow{padding:0}.nagomi-flow-panel{width:100%;min-height:100dvh;margin:0;border-radius:0}.nagomi-flow-top{padding:13px 15px}.nagomi-flow-body{padding:21px 16px 27px}.nagomi-flow-options{grid-template-columns:1fr}.nagomi-flow-option{min-height:58px;font-size:16px;padding:14px 15px}.nagomi-flow-nav{position:sticky;bottom:0;z-index:2;padding:14px 0 4px;background:linear-gradient(to top,#fff 78%,rgba(255,255,255,0))}.nagomi-flow-nav button{min-height:56px;flex:1}.nagomi-flow-summary-list li{grid-template-columns:1fr;gap:2px}.nagomi-flow-actions{grid-template-columns:1fr}.nagomi-flow-actions a{min-height:60px}}

/* 6枚の「困った」カード：押せることが自然に伝わる見せ方 */
.problem-card{
  position:relative;
  padding-bottom:22px;
}
.problem-card::after{
  content:"詳しく見る  →";
  display:block;
  margin-top:18px;
  padding-top:12px;
  border-top:1px solid #d8e2dc;
  color:var(--green);
  font-size:13px;
  font-weight:700;
  letter-spacing:.02em;
  text-align:right;
}
.problem-card::before{
  content:"›";
  position:absolute;
  top:18px;
  right:18px;
  width:30px;
  height:30px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--green);
  color:#fff;
  font-size:22px;
  line-height:1;
  box-shadow:0 4px 12px rgba(18,62,50,.16);
}
.problem-card:hover::before,
.problem-card:focus-visible::before{
  transform:translateX(2px);
}
@media(max-width:760px){
  .problem-card::after{
    content:"タップして詳しく見る  →";
    font-size:14px;
  }
  .problem-card::before{
    width:34px;
    height:34px;
    top:16px;
    right:16px;
  }
}
