:root{--ink:#1f2a3a;--green:#168a26;--green-dark:#0f5c1c;--green-bg:#edf6ec;--blue:#0a6fd6;--blue-dark:#0b4f9c;--ai:var(--blue);--moss:var(--green);--moss-bg:var(--green-bg);--paper:#faf8f3;--tint:#f3f0e8;--text:#2b2f36;--muted:#646a74;--line:#06c755;--tel:var(--blue);--border:#ddd8cc;--radius:6px;--mincho:var(--font-mincho), "Hiragino Mincho ProN", "Yu Mincho", serif;--gothic:var(--font-gothic), "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;--header-h:72px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 8px);-webkit-text-size-adjust:100%}body{font-family:var(--gothic);letter-spacing:.04em;color:var(--text);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.95}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3{margin:0;font-weight:700;line-height:1.5}p{margin:0 0 1em}ul,ol{margin:0;padding:0;list-style:none}svg{fill:currentColor;flex-shrink:0;width:1em;height:1em}.nw{display:inline-block}.skip{background:var(--ai);color:#fff;z-index:999;padding:8px 16px;position:absolute;top:0;left:-999px}.skip:focus{top:8px;left:8px}:focus-visible{outline:2px solid var(--ai);outline-offset:3px}.container{width:min(1080px,100% - 32px);margin-inline:auto}.container--narrow{width:min(800px,100% - 32px)}.btn{border-radius:var(--radius);letter-spacing:.06em;white-space:nowrap;justify-content:center;align-items:center;gap:.6em;padding:.85em 1.5em;font-weight:700;text-decoration:none;transition:opacity .2s;display:inline-flex}.btn:hover{opacity:.88}.btn svg{font-size:1.2em}.btn--tel{background:var(--tel);color:#fff}.btn--tel span{letter-spacing:.03em;flex-direction:column;font-size:1.35rem;line-height:1.25;display:flex}.btn--tel small{letter-spacing:.08em;font-size:.72rem;font-weight:500}.btn--line{background:var(--line);color:#fff}.btn--sm{padding:.5em 1em;font-size:.85rem}.header{z-index:100;height:var(--header-h);background:var(--paper);border-bottom:1px solid #0000;transition:border-color .3s;position:fixed;inset:0 0 auto}.header.is-scrolled{border-color:var(--border)}.header__inner{align-items:center;gap:24px;width:min(1200px,100% - 32px);height:100%;margin-inline:auto;display:flex}.brand{flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:flex}.brand img{width:auto;height:52px}@media (max-width:900px){.brand img{height:44px}}.nav{gap:2px;margin-left:auto;display:flex}.nav a{color:var(--ink);padding:.4em .7em;font-size:.88rem;text-decoration:none}.nav a:hover{color:var(--ai);text-underline-offset:6px;text-decoration:underline}.nav__cta-mobile{display:none}.header__actions{align-items:center;gap:14px;display:flex}.header__tel{color:var(--ink);align-items:center;gap:6px;text-decoration:none;display:flex}.header__tel svg{color:var(--tel);font-size:1.2rem}.header__tel span{letter-spacing:.03em;flex-direction:column;font-size:1.2rem;font-weight:700;line-height:1.1;display:flex}.header__tel small{color:var(--muted);font-size:.64rem;font-weight:400}.burger{border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;background:#fff;width:44px;height:44px;display:none;position:relative}.burger span{background:var(--ink);height:2px;transition:transform .3s,top .3s;position:absolute;left:11px;right:11px}.burger span:first-child{top:16px}.burger span:nth-child(2){top:25px}.burger[aria-expanded=true] span:first-child{top:20px;transform:rotate(45deg)}.burger[aria-expanded=true] span:nth-child(2){top:20px;transform:rotate(-45deg)}@media (max-width:1080px){.header__tel{display:none}}@media (max-width:900px){:root{--header-h:62px}.burger{display:block}.header__actions .btn--line{display:none}.header__actions{margin-left:auto}.nav{inset:var(--header-h) 0 auto;background:var(--paper);border-bottom:1px solid var(--border);flex-direction:column;gap:0;margin:0;padding:0 16px 20px;display:none;position:fixed}.nav.is-open{display:flex}.nav a{border-bottom:1px solid var(--border);padding:.95em .25em;font-size:1rem}.nav__cta-mobile{text-align:center;background:var(--tel);border-radius:var(--radius);margin-top:16px;font-weight:700;display:block;color:#fff!important;border:0!important}}.hero{padding:calc(var(--header-h) + 48px) 0 80px}.hero__grid{grid-template-columns:1fr 1.05fr;align-items:center;gap:56px;display:grid}.hero__place{color:var(--green);border-bottom:1px solid;margin-bottom:20px;padding-bottom:2px;font-size:.9rem;display:inline-block}.hero h1{font-family:var(--mincho);color:var(--ink);letter-spacing:.06em;font-size:clamp(1.8rem,3.6vw,2.9rem);line-height:1.6}.hero__lead{color:#444a54;margin:24px 0 32px}.hero__cta{flex-wrap:wrap;gap:12px;display:flex}.hero__hours{color:var(--muted);margin:16px 0 0;font-size:.85rem}.hero__photo{margin:0}.hero__photo img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);width:100%}.hero__photo figcaption{color:var(--muted);margin-top:10px;font-size:.82rem}@media (max-width:900px){.hero{padding:calc(var(--header-h) + 28px) 0 56px}.hero__grid{grid-template-columns:1fr;gap:32px}.hero__photo{order:-1}.hero__cta .btn{flex:240px}}.section{border-top:1px solid var(--border);padding:clamp(64px,9vw,104px) 0}.section--tint{background:var(--tint)}.section--green{background:var(--moss-bg)}.sec-head{margin-bottom:40px}.sec-head h2{font-family:var(--mincho);color:var(--ink);letter-spacing:.08em;border-left:4px solid var(--green);padding-left:18px;font-size:clamp(1.5rem,2.8vw,2rem);line-height:1.4}.sec-head p{max-width:720px;color:var(--muted);margin:18px 0 0}.sec-head--center{text-align:center}.note{color:var(--muted);margin:24px 0 0;font-size:.9rem}.services{grid-template-columns:repeat(2,1fr);gap:40px 32px;display:grid}.service__img{aspect-ratio:16/9;border-radius:var(--radius);margin-bottom:18px;position:relative;overflow:hidden}.service__img img{object-fit:cover}.service h3{font-family:var(--mincho);color:var(--ink);margin-bottom:8px;font-size:1.3rem}.service p{color:#4a505a;margin:0}@media (max-width:760px){.services{grid-template-columns:1fr}}.promises{grid-template-columns:repeat(2,1fr);gap:0 48px;display:grid}.promises li{border-bottom:1px solid var(--border);gap:20px;padding:28px 0;display:flex}.promises__no{font-family:var(--mincho);color:var(--ai);flex-shrink:0;width:1.4em;font-size:1.6rem;line-height:1.3}.promises h3{color:var(--ink);margin-bottom:6px;font-size:1.15rem}.promises p{color:#4a505a;margin:0;font-size:.95rem}@media (max-width:760px){.promises{grid-template-columns:1fr}}.items{grid-template-columns:1.4fr 1fr 1fr;gap:24px;display:grid}.items__col{border:1px solid var(--border);border-radius:var(--radius);background:#fff;padding:24px 26px}.items__col h3{color:var(--ai);border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:10px;font-size:1.1rem}.items__col ul{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:4px 16px;display:grid}.items__col li{padding-left:1em;font-size:.95rem;position:relative}.items__col li:before{content:"・";color:var(--muted);position:absolute;left:-.2em}@media (max-width:900px){.items{grid-template-columns:1fr}}.recycle{max-width:800px}.recycle__body p{color:#3f4a44}.recycle__quote{font-family:var(--mincho);margin:28px 0 0;font-size:1.12rem;line-height:2;color:var(--green-dark)!important}.flow{position:relative}.flow li{gap:22px;padding-bottom:32px;display:flex;position:relative}.flow li:not(:last-child):before{content:"";background:var(--border);width:1px;position:absolute;top:44px;bottom:4px;left:19px}.flow__no{border:1px solid var(--ai);width:40px;height:40px;color:var(--ai);background:var(--paper);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:grid}.flow h3{color:var(--ink);margin:4px 0;font-size:1.1rem}.flow p{color:#4a505a;margin:0;font-size:.95rem}.voices{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.voice{border:1px solid var(--border);border-radius:var(--radius);background:#fff;flex-direction:column;margin:0;padding:28px 26px;display:flex}.voice h3{font-family:var(--mincho);color:var(--ink);margin-bottom:12px;font-size:1.12rem}.voice blockquote{color:#4a505a;flex:1;margin:0 0 18px;font-size:.94rem}.voice figcaption{color:var(--muted);text-align:right;font-size:.85rem}.voice figcaption:before{content:"— "}@media (max-width:900px){.voices{grid-template-columns:1fr}}.trust{grid-template-columns:1.3fr 1fr;align-items:start;gap:56px;display:grid}.trust p{color:#4a505a}.trust__box{border:1px solid var(--border);border-radius:var(--radius);background:#fff;margin:0;padding:8px 28px}.trust__box div{border-bottom:1px dashed var(--border);gap:16px;padding:16px 0;display:flex}.trust__box div:last-child{border-bottom:0}.trust__box dt{width:5.5em;color:var(--muted);flex-shrink:0;padding-top:.1em;font-size:.9rem}.trust__box dd{color:var(--ink);margin:0;font-weight:700}@media (max-width:900px){.trust{grid-template-columns:1fr;gap:24px}}.sns{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.sns__card{border:1px solid var(--border);border-radius:var(--radius);background:#fff;justify-content:space-between;align-items:center;gap:24px;padding:28px 30px;display:flex}.sns__label{align-items:center;gap:.45em;margin-bottom:8px;font-size:.85rem;font-weight:700;display:flex}.sns__label svg{font-size:1.15em}.sns__label--ig{color:#c13584}.sns__label--line{color:#04a548}.sns__card h3{font-family:var(--mincho);color:var(--ink);margin-bottom:10px;font-size:1.35rem}.sns__card p{color:#4a505a;margin-bottom:12px;font-size:.94rem}.sns__link{color:var(--ai);text-underline-offset:4px;font-weight:700}.sns__qr{width:120px;height:120px;image-rendering:pixelated;flex-shrink:0}@media (max-width:900px){.sns{grid-template-columns:1fr}}@media (max-width:480px){.sns__card{flex-direction:column-reverse;align-items:flex-start}}.area{grid-template-columns:1fr 1.1fr;align-items:start;gap:48px;display:grid}.area__list{border-top:1px solid var(--border);margin:0}.area__list div{border-bottom:1px solid var(--border);grid-template-columns:7em 1fr;gap:12px;padding:16px 0;display:grid}.area__list dt{color:var(--ai);font-weight:700}.area__list dd{margin:0;font-size:.95rem}.area__map iframe{border:1px solid var(--border);border-radius:var(--radius);width:100%;height:380px;display:block}.area__map p{flex-wrap:wrap;gap:4px 16px;margin:10px 0 0;font-size:.9rem;display:flex}.area__map a{color:var(--ai);text-underline-offset:4px}@media (max-width:900px){.area{grid-template-columns:1fr;gap:32px}.area__map iframe{height:300px}}@media (max-width:480px){.area__list div{grid-template-columns:1fr;gap:2px}}.faq{border-top:1px solid var(--border)}.faq details{border-bottom:1px solid var(--border)}.faq summary{cursor:pointer;color:var(--ink);padding:20px 40px 20px 2.2em;font-weight:700;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:before{content:"Q.";color:var(--ai);font-family:var(--mincho);position:absolute;left:0}.faq summary:after{content:"+";color:var(--muted);font-size:1.4rem;font-weight:400;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.faq details[open] summary:after{content:"−"}.faq details p{color:#4a505a;margin:0;padding:0 8px 22px 2.2em;position:relative}.faq details p:before{content:"A.";color:var(--green);font-family:var(--mincho);font-weight:700;position:absolute;left:0}.company{grid-template-columns:260px 1fr;align-items:start;gap:48px;display:grid}.company__logo{width:200px;margin-top:16px}.company__table{border-top:1px solid var(--ink);background:#fff;margin:0}.company__table div{border-bottom:1px solid var(--border);grid-template-columns:140px 1fr;display:grid}.company__table dt{color:var(--ink);background:var(--tint);padding:16px 18px;font-size:.95rem;font-weight:700}.company__table dd{margin:0;padding:16px 20px}.company__table a{color:var(--ai);text-underline-offset:3px}@media (max-width:900px){.company{grid-template-columns:1fr;gap:0}.company__logo{display:none}}@media (max-width:560px){.company__table div{grid-template-columns:1fr}.company__table dt{padding:10px 14px}.company__table dd{padding:12px 14px 16px}}.contact{background:var(--blue-dark);color:#fff;text-align:center;padding:clamp(64px,9vw,96px) 0}.contact h2{font-family:var(--mincho);letter-spacing:.1em;margin-bottom:16px;font-size:clamp(1.5rem,2.8vw,2rem)}.contact p{color:#ffffffd9}.contact__tel{letter-spacing:.04em;align-items:center;gap:.3em;margin-top:12px;font-size:clamp(2rem,6vw,3rem);font-weight:700;text-decoration:none;display:inline-flex}.contact__tel svg{font-size:.8em}.contact__hours{margin:4px 0 28px;font-size:.9rem}.contact__other{border-top:1px solid #ffffff40;flex-wrap:wrap;justify-content:center;gap:12px 32px;padding-top:24px;display:flex}.contact__other li{align-items:baseline;gap:10px;display:flex}.contact__other span{border:1px solid #ffffff80;border-radius:3px;padding:0 .6em;font-size:.8rem}.contact__other a{text-underline-offset:4px;word-break:break-all;font-weight:700}.footer{color:#ffffffb3;background:#152219;padding:48px 0 0;font-size:.85rem}.footer__inner{grid-template-columns:1.4fr 1fr auto;align-items:start;gap:32px;padding-bottom:32px;display:grid}.footer p{margin:0}.footer__logo{border-radius:var(--radius);background:#fff;width:220px;margin-bottom:14px;padding:10px 14px}.footer__nav{grid-template-columns:repeat(2,auto);justify-content:start;gap:6px 24px;display:grid}.footer__nav a{text-decoration:none}.footer__nav a:hover{color:#fff;text-decoration:underline}.footer__sns{gap:10px;display:flex}.footer__sns a{color:#fff;border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.footer__sns svg{font-size:1.15rem}.footer__copy{text-align:center;color:#ffffff73;border-top:1px solid #ffffff1a;font-size:.75rem;padding:18px 16px!important}@media (max-width:900px){.footer__inner{grid-template-columns:1fr;gap:24px}}.fixbar{display:none}@media (max-width:760px){body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.fixbar{z-index:90;padding-bottom:env(safe-area-inset-bottom);background:#fff;grid-template-columns:1fr 1fr;display:grid;position:fixed;inset:auto 0 0}.fixbar a{color:#fff;justify-content:center;align-items:center;gap:.5em;height:56px;font-weight:700;text-decoration:none;display:flex}.fixbar svg{font-size:1.2rem}.fixbar__tel{background:var(--tel)}.fixbar__line{background:var(--line)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
