:root{--maru:var(--font-maru), "Zen Maru Gothic", "Hiragino Maru Gothic ProN", sans-serif;--sans:var(--font-sans), "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;--cream:#fef2dc;--cream-soft:#fff9ec;--green:#6eb952;--green-deep:#4e9636;--green-pale:#eaf5e2;--yellow:#fef200;--yellow-soft:#fdf3c2;--orange:#f5b174;--orange-deep:#e08a3c;--pink:#ed7493;--pink-hnmzk:#d9699d;--purple:#9b7ec0;--ink:#43392c;--ink-soft:#6e624f;--white:#fff}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--white);letter-spacing:.02em;font-size:16px;line-height:1.9}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--green-deep);outline-offset:3px;border-radius:4px}.container{max-width:1060px;margin:0 auto;padding:0 20px}h1,h2,h3,.maru{font-family:var(--maru)}h1,h2,h3,.hero-catch,.ribbon,.worry-answer,.section-head .lead,.page-head p,.cta h2,.cta .cta-note{word-break:auto-phrase}.nb{display:inline-block}.reveal-init{opacity:0;transform:translateY(18px)}.reveal-init.is-visible{opacity:1;transition:opacity .7s,transform .7s cubic-bezier(.22,.8,.36,1);transform:none}@keyframes hero-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.hero-catch{animation:.7s 50ms both hero-in}.hero-logo{animation:.7s .3s both hero-in}.hero .ribbon{animation:.7s .55s both hero-in}.header{transition:box-shadow .25s}.header.scrolled{box-shadow:0 2px 14px #5a46331f}@media (prefers-reduced-motion:reduce){.hero-catch,.hero-logo,.hero .ribbon{animation:none}.reveal-init{opacity:1;transform:none}}.header{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffffff5;border-bottom:1px solid #f0e8d8;position:sticky;top:0}.header-inner{align-items:center;gap:28px;max-width:1180px;margin:0 auto;padding:10px 20px;display:flex}.brand{flex-shrink:0;align-items:center;gap:10px;display:flex}.brand img{width:auto;height:46px}.brand-text{font-family:var(--maru);line-height:1.3}.brand-text .small{color:var(--green-deep);letter-spacing:.1em;white-space:nowrap;font-size:11px;font-weight:700}.brand-text .name{color:var(--green);letter-spacing:.06em;white-space:nowrap;font-size:24px;font-weight:900}.nav{gap:4px;margin-left:auto;display:flex}.nav a{border-radius:999px;padding:8px 13px;font-size:14px;font-weight:500;transition:background .2s}.nav a:hover{background:var(--green-pale);color:var(--green-deep)}.nav a[aria-current]{background:var(--green-pale);color:var(--green-deep);font-weight:700}.tel-pill{background:var(--green);color:#fff;border-radius:14px;flex-direction:column;flex-shrink:0;align-items:center;padding:7px 18px 8px;line-height:1.25;transition:background .2s;display:flex}.tel-pill:hover{background:var(--green-deep)}.tel-pill .num{font-family:var(--maru);letter-spacing:.04em;font-size:20px;font-weight:900}.tel-pill .hours{opacity:.95;font-size:10px}.nav-toggle{cursor:pointer;width:44px;height:44px;color:var(--green-deep);background:0 0;border:none;border-radius:12px;justify-content:center;align-items:center;margin-left:auto;transition:background .2s;display:none}.nav-toggle:hover{background:var(--green-pale)}.nav-toggle svg{width:26px;height:26px}.mobile-menu{display:none}@media (max-width:900px){.nav{display:none}.nav-toggle{display:inline-flex}.header-inner{gap:14px}.tel-pill{margin-left:auto}.mobile-menu{background:#fff;border-bottom:1px solid #f0e8d8;padding:6px 20px 14px;display:block}.mobile-menu a{border-bottom:1px solid #f6efe0;padding:12px 8px;font-size:15px;font-weight:500;display:block}.mobile-menu a:last-child{border-bottom:none}.mobile-menu a[aria-current]{color:var(--green-deep);font-weight:700}}@media (min-width:901px){.mobile-menu{display:none}}@media (max-width:560px){.header-inner{gap:8px;padding:10px 14px}.brand{gap:8px}.brand img{height:34px}.brand-text .small{letter-spacing:0;white-space:nowrap;font-size:10px}.brand-text .name{letter-spacing:.02em;white-space:nowrap;font-size:20px}.tel-pill{padding:6px 12px 7px}.tel-pill .num{font-size:15px}.tel-pill .hours{font-size:9px}}@media (max-width:430px){.tel-pill{border-radius:10px;padding:8px 10px}.tel-pill .num{font-size:14px}.tel-pill .hours{display:none}}.hero{background:var(--white);position:relative}.hero-border{width:100%;height:auto}.hero-top{text-align:center;padding:30px 20px 0}.hero-catch{font-family:var(--maru);color:#5a4633;letter-spacing:.08em;font-size:clamp(20px,3.6vw,34px);font-weight:900}.hero-catch .em{color:var(--green-deep)}.hero-logo{width:min(480px,74vw);margin:18px auto 22px}.ribbon{background:var(--orange);color:#fff;font-family:var(--maru);letter-spacing:.1em;border-radius:4px;margin-bottom:34px;padding:9px 34px;font-size:clamp(14px,2vw,18px);font-weight:700;display:inline-block;position:relative}.ribbon:before,.ribbon:after{content:"";border:14px solid var(--orange-deep);z-index:-1;position:absolute;top:6px}.ribbon:before{border-left-color:#0000;left:-18px}.ribbon:after{border-right-color:#0000;right:-18px}.promises{background:var(--white);padding:6px 0 56px}.promise-grid{grid-template-columns:repeat(3,1fr);gap:28px;max-width:920px;margin:0 auto;padding:0 20px;display:grid}.promise{text-align:center;background:#fff;border:3px solid;border-radius:26px;padding:26px 18px 22px}.promise:first-child{border-color:var(--green)}.promise:nth-child(2){border-color:var(--pink)}.promise:nth-child(3){border-color:var(--orange)}.promise .icon{width:58px;height:58px;margin:0 auto 10px}.promise h3{letter-spacing:.06em;margin-bottom:8px;font-size:20px;font-weight:900}.promise:first-child h3{color:var(--green-deep)}.promise:nth-child(2) h3{color:var(--pink)}.promise:nth-child(3) h3{color:var(--orange-deep)}.promise p{color:var(--ink-soft);font-size:13.5px;line-height:1.8}@media (max-width:760px){.promise-grid{grid-template-columns:1fr;max-width:420px}}.section{padding:72px 0}.section-cream{background:var(--cream)}.section-head{text-align:center;margin-bottom:44px}.section-head .sprig{width:40px;margin:0 auto 6px}.section-head h2{letter-spacing:.08em;color:#5a4633;font-size:clamp(24px,3.4vw,32px);font-weight:900}.section-head h2 .green{color:var(--green-deep)}.section-head .lead{color:var(--ink-soft);margin-top:10px;font-size:15px}.wave-divider{width:100%;height:clamp(36px,6vw,72px);display:block}.page-head{background:var(--cream);text-align:center;padding:44px 20px 30px}.page-head img{width:44px;margin:0 auto 6px}.page-head h1{letter-spacing:.1em;color:#5a4633;font-size:clamp(24px,3.6vw,34px);font-weight:900}.page-head p{color:var(--ink-soft);margin-top:6px;font-size:14px}.page-wave{width:100%;height:clamp(30px,5vw,56px);display:block}.worries{grid-template-columns:1fr 1fr;gap:26px;margin-bottom:40px;display:grid}.worry-card{background:#fff;border-radius:22px;padding:26px 28px;box-shadow:0 3px #5a463314}.worry-card h3{color:#fff;border-radius:999px;margin-bottom:16px;padding:4px 22px;font-size:17px;font-weight:900;display:inline-block}.worry-card.self h3{background:var(--green)}.worry-card.family h3{background:var(--pink)}.worry-card ul{list-style:none}.worry-card li{align-items:baseline;gap:9px;padding:5px 0;font-size:15px;font-weight:500;display:flex}.worry-card li:before{content:"✓";color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:21px;height:21px;font-size:13px;font-weight:900;display:inline-flex;transform:translateY(3px)}.worry-card.self li:before{background:var(--green)}.worry-card.family li:before{background:var(--pink)}.worry-answer{text-align:center;font-family:var(--maru);letter-spacing:.06em;color:#5a4633;font-size:clamp(19px,2.8vw,26px);font-weight:900}.worry-answer .hl{color:var(--green-deep);background:linear-gradient(transparent 62%, var(--yellow) 62%);padding:0 2px}@media (max-width:760px){.worries{grid-template-columns:1fr}}.services{grid-template-columns:repeat(3,1fr);gap:26px;display:grid}.service-card{background:var(--cream-soft);border:2px solid #f1e5c8;border-radius:22px;padding:28px 26px}.service-card h3{text-align:center;color:var(--green-deep);letter-spacing:.1em;margin-bottom:6px;font-size:21px;font-weight:900}.service-card .en{text-align:center;color:var(--orange-deep);letter-spacing:.18em;margin-bottom:14px;font-size:11px;font-weight:700;display:block}.service-card ul{list-style:none}.service-card li{border-bottom:1px dashed #e8dbbc;padding:7px 0 7px 24px;font-size:14.5px;font-weight:500;position:relative}.service-card li:last-child{border-bottom:none}.service-card li:before{content:"";background:var(--yellow);border:2px solid var(--green);border-radius:50%;width:9px;height:9px;position:absolute;top:17px;left:4px}.careplan-note{background:var(--yellow-soft);text-align:center;border-radius:16px;margin-top:34px;padding:18px 26px;font-size:14.5px;font-weight:500}.careplan-note strong{color:var(--green-deep)}@media (max-width:860px){.services{grid-template-columns:1fr;max-width:460px;margin:0 auto}}.strengths{grid-template-columns:1fr 1fr;gap:24px;display:grid}.strength{background:#fff;border-radius:20px;gap:18px;padding:24px 26px;display:flex;box-shadow:0 3px #5a463314}.strength .badge{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:62px;height:62px;display:flex}.strength:first-child .badge{background:#fdebef}.strength:nth-child(2) .badge{background:#fdf0e2}.strength:nth-child(3) .badge{background:var(--green-pale)}.strength:nth-child(4) .badge{background:#f0eaf8}.strength .badge svg{width:32px;height:32px}.strength h3{letter-spacing:.04em;margin-bottom:4px;font-size:17.5px;font-weight:900}.strength:first-child h3{color:var(--pink)}.strength:nth-child(2) h3{color:var(--orange-deep)}.strength:nth-child(3) h3{color:var(--green-deep)}.strength:nth-child(4) h3{color:var(--purple)}.strength p{color:var(--ink-soft);font-size:14px;line-height:1.85}@media (max-width:760px){.strengths{grid-template-columns:1fr}}.steps{counter-reset:step;grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.steps.steps-3{grid-template-columns:repeat(3,1fr);max-width:720px;margin:0 auto}.step{border:2px solid var(--orange);text-align:center;background:#fff;border-radius:18px;padding:24px 20px;position:relative}.step:after{content:"▶";color:var(--orange);font-size:13px;position:absolute;top:50%;right:-17px;transform:translateY(-50%)}.step:last-child:after{content:none}.step .num{font-family:var(--maru);color:var(--orange-deep);font-size:26px;font-style:italic;font-weight:900}.step h3{color:#5a4633;margin:2px 0 8px;font-size:18px;font-weight:900}.step p{color:var(--ink-soft);text-align:left;font-size:13px;line-height:1.8}@media (max-width:860px){.steps{grid-template-columns:1fr 1fr}.step:after{content:none}}@media (max-width:520px){.steps{grid-template-columns:1fr}}.info-grid{grid-template-columns:5fr 6fr;align-items:start;gap:34px;display:grid}.info-table{border-collapse:collapse;background:#fff;border-radius:18px;width:100%;overflow:hidden}.info-table th,.info-table td{text-align:left;border-bottom:1px solid #f3ead5;padding:15px 18px;font-size:14.5px}.info-table th{background:var(--green-pale);width:34%;color:var(--green-deep);font-family:var(--maru);white-space:nowrap;font-weight:700}.info-table tr:last-child th,.info-table tr:last-child td{border-bottom:none}.info-table .tel-big{font-family:var(--maru);color:var(--green-deep);font-size:22px;font-weight:900}.access-img{background:#fff;border-radius:18px;overflow:hidden}.access-img iframe{border:0;width:100%;height:320px;display:block}.access-note{color:var(--ink-soft);margin-top:8px;font-size:12.5px}.doc-link{color:var(--green-deep);border-bottom:1px solid;margin-top:14px;font-size:13.5px;font-weight:700;display:inline-block}@media (max-width:860px){.info-grid{grid-template-columns:1fr}}.sister{background:#fdf3f7}.sister-card{background:#fff;border:2px solid #f2c9dc;border-radius:24px;align-items:center;gap:26px;max-width:760px;margin:0 auto;padding:30px 36px;display:flex}.sister-card img{flex-shrink:0;width:72px}.sister-card .small{color:#c25488;letter-spacing:.1em;font-size:12px;font-weight:700}.sister-card h3{color:#d9699d;letter-spacing:.06em;font-size:22px;font-weight:900}.sister-card p{color:var(--ink-soft);margin-top:6px;font-size:14px}.sister-card .link{color:#fff;font-family:var(--maru);background:#d9699d;border-radius:999px;flex-shrink:0;margin-left:auto;padding:12px 22px;font-size:14px;font-weight:700;transition:background .2s}.sister-card .link:hover{background:#c25488}@media (max-width:700px){.sister-card{text-align:center;flex-direction:column;gap:14px}.sister-card .link{margin-left:0}}.cta{background:var(--green);color:#fff;text-align:center}.cta h2{letter-spacing:.08em;font-size:clamp(22px,3vw,30px);font-weight:900}.cta .sub{opacity:.95;margin-top:8px;font-size:14.5px}.cta .tel{font-family:var(--maru);letter-spacing:.04em;color:#fff;margin:18px 0 2px;font-size:clamp(34px,6vw,52px);font-weight:900;line-height:1.2;display:inline-block}.cta .tel span{vertical-align:middle;margin-right:10px;font-size:.45em}.cta .hours{opacity:.9;font-size:13.5px}.cta .btn{background:var(--orange);color:#fff;font-family:var(--maru);letter-spacing:.08em;box-shadow:0 4px 0 var(--orange-deep);border-radius:999px;margin-top:26px;padding:16px 46px;font-size:17px;font-weight:900;transition:transform .15s,box-shadow .15s;display:inline-block}.cta .btn:hover{box-shadow:0 2px 0 var(--orange-deep);transform:translateY(2px)}.cta .note{opacity:.85;margin-top:22px;font-size:12.5px}.tel-first{text-align:center;background:var(--green-pale);border:2px solid var(--green);border-radius:22px;max-width:640px;margin:40px auto 0;padding:28px 24px}.tel-first h2{color:var(--green-deep);letter-spacing:.06em;font-size:18px;font-weight:900}.tel-first .tel{font-family:var(--maru);color:var(--green-deep);margin-top:4px;font-size:clamp(30px,5vw,42px);font-weight:900;line-height:1.3;display:inline-block}.tel-first p{color:var(--ink-soft);font-size:13px}.form-section{padding:44px 0 80px}.form-note{text-align:center;color:var(--ink-soft);margin-bottom:30px;font-size:14px}.form-card{background:var(--cream-soft);border:2px solid #f1e5c8;border-radius:24px;padding:40px 44px}.form-success{text-align:center}.form-success h2{color:var(--green-deep);letter-spacing:.06em;margin-bottom:10px;font-size:20px;font-weight:900}.form-success p{color:var(--ink);font-size:15px}.field{margin-bottom:24px}.field label{font-family:var(--maru);margin-bottom:7px;font-size:15px;font-weight:700;display:block}.req,.opt{color:#fff;vertical-align:2px;font-size:11px;font-weight:700;font-family:var(--sans);letter-spacing:.06em;border-radius:6px;margin-left:9px;padding:1px 9px;display:inline-block}.req{background:var(--pink)}.opt{background:#bdb29b}.field input[type=text],.field input[type=tel],.field input[type=email],.field select,.field textarea{width:100%;font-family:var(--sans);color:var(--ink);background:#fff;border:2px solid #e5d8b8;border-radius:12px;padding:13px 16px;font-size:16px;transition:border-color .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);outline:none}.field textarea{resize:vertical;min-height:150px}.field .hint{color:var(--ink-soft);margin-top:5px;font-size:12.5px}.radio-row{flex-wrap:wrap;gap:10px;display:flex}.radio-row label{font-family:var(--sans);cursor:pointer;background:#fff;border:2px solid #e5d8b8;border-radius:999px;align-items:center;gap:7px;margin-bottom:0;padding:9px 18px;font-size:14.5px;font-weight:500;display:flex}.radio-row label:has(input:checked){border-color:var(--green);background:var(--green-pale);color:var(--green-deep);font-weight:700}.radio-row input{accent-color:var(--green-deep)}.consent{text-align:center;margin:28px 0 20px;font-size:14px}.consent a{color:var(--green-deep);border-bottom:1px solid;font-weight:700}.consent input{accent-color:var(--green-deep);margin-right:8px;transform:scale(1.25)}.consent label{align-items:center;display:inline-flex}.submit-row{text-align:center}.submit-btn{font-family:var(--maru);letter-spacing:.1em;color:#fff;background:var(--green);cursor:pointer;box-shadow:0 4px 0 var(--green-deep);border:none;border-radius:999px;padding:17px 70px;font-size:18px;font-weight:900;transition:transform .15s,box-shadow .15s}.submit-btn:hover{box-shadow:0 2px 0 var(--green-deep);transform:translateY(2px)}.submit-btn:disabled{opacity:.6;cursor:default}.reply-note{text-align:center;color:var(--ink-soft);margin-top:18px;font-size:13px}@media (max-width:640px){.form-card{padding:28px 22px}}.voices{padding:44px 0 30px}.voice-grid{grid-template-columns:1fr 1fr;gap:26px;display:grid}.voice-card{background:var(--cream-soft);border:2px solid #f1e5c8;border-radius:22px;flex-direction:column;gap:12px;padding:28px 30px;display:flex}.voice-card .chip{color:#fff;letter-spacing:.06em;border-radius:999px;align-self:flex-start;padding:3px 14px;font-size:12px;font-weight:700}.chip-emergency{background:var(--pink)}.chip-daily{background:var(--green)}.chip-team{background:var(--orange-deep)}.voice-card blockquote{font-family:var(--maru);color:#5a4633;quotes:none;font-size:16.5px;font-weight:700;line-height:1.9}.voice-card blockquote:before{content:"“";color:var(--green);vertical-align:-10px;margin-right:2px;font-size:30px;line-height:0}.voice-card blockquote:after{content:"”";color:var(--green);vertical-align:-14px;margin-left:2px;font-size:30px;line-height:0}.voice-card .episode{color:var(--ink-soft);font-size:13.5px}.voice-card .who{color:var(--ink-soft);text-align:right;font-size:12.5px;font-weight:700}.voices-more{text-align:center;margin-top:30px}.voices-more .btn{background:var(--green);color:#fff;font-family:var(--maru);letter-spacing:.08em;box-shadow:0 4px 0 var(--green-deep);border-radius:999px;padding:13px 36px;font-size:15px;font-weight:900;transition:transform .15s,box-shadow .15s;display:inline-block}.voices-more .btn:hover{box-shadow:0 2px 0 var(--green-deep);transform:translateY(2px)}@media (max-width:760px){.voice-grid{grid-template-columns:1fr}}.team-note{background:#fdf3f7;border:2px solid #f2c9dc;border-radius:22px;align-items:center;gap:20px;max-width:760px;margin:40px auto 0;padding:26px 30px;display:flex}.team-note img{flex-shrink:0;width:56px}.team-note p{color:var(--ink-soft);font-size:14px}.team-note strong{color:var(--pink-hnmzk)}@media (max-width:640px){.team-note{text-align:center;flex-direction:column}}.message{text-align:center;padding:48px 0 20px}.message h2{color:var(--green-deep);letter-spacing:.08em;margin-bottom:16px;font-size:clamp(20px,3vw,27px);font-weight:900}.message p{max-width:640px;margin:0 auto;font-size:15px}.values{flex-wrap:wrap;justify-content:center;gap:12px;margin:26px 0 10px;display:flex}.values span{background:var(--green-pale);color:var(--green-deep);font-family:var(--maru);border-radius:999px;padding:8px 20px;font-size:14.5px;font-weight:700}.job-table{border-collapse:collapse;background:#fff;border-radius:18px;width:100%;overflow:hidden;box-shadow:0 3px #5a463314}.job-table th,.job-table td{text-align:left;vertical-align:top;border-bottom:1px solid #f3ead5;padding:16px 20px;font-size:14.5px}.job-table th{background:var(--green-pale);width:26%;color:var(--green-deep);font-family:var(--maru);white-space:nowrap;font-weight:700}.job-table tr:last-child th,.job-table tr:last-child td{border-bottom:none}.env-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.env-card{text-align:center;background:#fff;border-radius:18px;padding:26px 24px;box-shadow:0 3px #5a463314}.env-card .emoji{margin-bottom:10px;font-size:34px;line-height:1}.env-card h3{color:var(--green-deep);margin-bottom:6px;font-size:16.5px;font-weight:900}.env-card p{color:var(--ink-soft);font-size:13px;line-height:1.8}@media (max-width:760px){.env-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}}.legal{padding:44px 0 80px}.legal .inner{max-width:780px;margin:0 auto}.legal h2{color:#5a4633;letter-spacing:.04em;margin:30px 0 10px;font-size:18px;font-weight:900}.legal h2:first-child{margin-top:0}.legal p{font-size:14.5px;line-height:1.95}.legal ul{margin:10px 0 10px 1.4em}.legal li{margin-bottom:4px;font-size:14.5px;line-height:1.9}.legal address{margin-top:6px;font-style:normal;line-height:1.9}.legal .updated{color:var(--ink-soft);margin-top:34px;font-size:13px}.footer{color:#f5eddd;background:#5a4633;padding:36px 0 30px;font-size:13px}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;max-width:1060px;margin:0 auto;padding:0 20px;display:flex}.footer .fbrand{font-family:var(--maru);font-size:16px;font-weight:700}.footer .addr{opacity:.85;line-height:1.7}.footer .copy{text-align:center;opacity:.6;width:100%;margin-top:14px;font-size:11.5px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
