:root{--green:#124f40;--green2:#0b3c32;--mint:#eef7f2;--orange:#e96920;--ink:#17201d;--line:#dce8e2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic",sans-serif;line-height:1.8;background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.top{background:var(--green2);color:#fff;text-align:center;padding:8px 12px;font-size:14px}header{height:74px;display:flex;align-items:center;justify-content:space-between;max-width:1180px;margin:auto;padding:0 24px}.logo{font-size:25px;font-weight:900;color:var(--green)}.header-tel{font-size:18px;font-weight:800;color:var(--green)}.hero{min-height:660px;background:linear-gradient(110deg,#f1f8f4 0 55%,#d9ece4 55%);display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center;padding:70px max(5vw,24px)}.hero-copy{max-width:680px;margin-left:auto}.eyebrow,.kicker{color:var(--green);font-weight:900;letter-spacing:.08em}.eyebrow{display:inline-block;background:#d9eee3;border-radius:30px;padding:7px 18px}.hero h1{font-size:clamp(38px,5vw,66px);line-height:1.28;margin:22px 0}.hero h1 em{color:var(--green);font-style:normal}.hero p{font-size:19px}.hero figure{margin:0;position:relative;max-width:620px}.hero figure img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:30px;box-shadow:0 22px 50px #0b38252f}.hero figcaption{position:absolute;right:12px;bottom:12px;background:#fff9;padding:3px 12px;border-radius:20px;font-size:12px}.hero-tags{display:flex;gap:10px;margin:26px 0}.hero-tags b{border:2px solid var(--green);border-radius:12px;padding:9px 14px;background:#fff}.buttons{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:58px;border-radius:14px;padding:12px 24px;font-weight:900;color:#fff;box-shadow:0 8px 20px #0001}.btn.line{background:#06bf58}.btn.tel{background:var(--orange)}.badges{display:flex;flex-wrap:wrap;gap:15px;margin-top:22px;font-weight:800;color:var(--green)}.section{padding:95px 24px}.section.pale{background:var(--mint)}.wrap{max-width:1120px;margin:auto}.kicker{margin:0 0 5px}.section h2,.contact h2{font-size:clamp(30px,4vw,48px);line-height:1.35;margin:0 0 40px;color:var(--green2)}.worry-grid,.reason-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.worry-grid div,.reason-grid div{background:#fff;border:1px solid var(--line);border-radius:15px;padding:19px;font-size:17px;font-weight:700}.worry-grid div:before{content:"✓";color:var(--orange);font-weight:900;margin-right:10px}.service{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;margin:70px 0 110px}.service.reverse img{order:2}.service img{width:100%;aspect-ratio:16/11;object-fit:cover;border-radius:24px;box-shadow:0 14px 36px #0c30251d}.service small{font-size:42px;font-weight:900;color:#c9dfd5}.service h3{font-size:35px;color:var(--green);margin:0 0 10px}.service ul{columns:2;padding-left:20px}.text-link{display:inline-block;margin-top:12px;color:#fff;background:var(--green);padding:11px 20px;border-radius:10px;font-weight:900}.notice,.image-note,.example-label{font-size:13px;background:#fff3df;border-left:4px solid var(--orange);padding:12px}.photo-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.photo-cards article,.case-grid article{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #0b32220f}.photo-cards img{width:100%;aspect-ratio:16/10;object-fit:cover}.photo-cards h3,.case-grid h3,.case-grid p{padding:0 20px}.photo-cards h3{padding-bottom:8px}.reason-grid b{display:block;color:var(--orange);font-size:25px}.cta{background:var(--green2);color:#fff;padding:62px max(6vw,24px);display:flex;align-items:center;justify-content:center;gap:70px}.cta h2{font-size:clamp(27px,4vw,43px);line-height:1.4;margin:0}.cta p{margin:12px 0 0}.case-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.case-grid img{width:100%;aspect-ratio:16/9;object-fit:cover}.price-promise{margin-top:30px;background:var(--green);color:#fff;border-radius:20px;padding:28px;text-align:center;font-size:clamp(21px,3vw,31px);font-weight:900}.lead{font-size:19px;max-width:850px}.flow{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;list-style:none;counter-reset:step;padding:0}.flow li{background:#fff;border-radius:15px;padding:22px;font-weight:800}.flow li:before{counter-increment:step;content:counter(step);display:block;color:var(--orange);font-size:28px}.voice{max-width:700px;background:var(--mint);border-radius:18px;padding:28px}.faq details{border-top:1px solid var(--line);padding:18px 4px}.faq summary{font-size:18px;font-weight:800;cursor:pointer}.owner{background:linear-gradient(120deg,#fff,#e9f5ef)}.contact{background:#f3f0e8;padding:90px 24px}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.contact-grid a{background:#fff;border-radius:14px;padding:22px;display:flex;flex-direction:column}.contact-grid b{font-size:22px;color:var(--green)}footer{background:#082f27;color:#fff;text-align:center;padding:40px 20px 110px}footer a{text-decoration:underline}.fixed{display:none}
@media(max-width:760px){body{padding-bottom:68px}.top{font-size:12px}header{height:62px;padding:0 16px}.logo{font-size:21px}.header-tel{font-size:0}.header-tel:after{content:"電話する";font-size:14px}.hero{display:block;padding:45px 20px 55px;background:var(--mint)}.hero-copy{margin:0}.hero h1{font-size:39px}.hero p{font-size:17px}.hero-tags{gap:6px}.hero-tags b{font-size:13px;padding:7px}.hero .buttons{display:grid}.hero figure{margin-top:35px}.hero figure img{aspect-ratio:16/11}.badges{font-size:13px}.section{padding:65px 18px}.section h2,.contact h2{margin-bottom:28px}.worry-grid,.reason-grid,.photo-cards,.case-grid,.contact-grid{grid-template-columns:1fr}.service,.service.reverse{display:flex;flex-direction:column;gap:24px;margin:50px 0 80px}.service.reverse img{order:0}.service h3{font-size:29px}.service ul{columns:1}.cta{display:block;padding:50px 20px}.cta .buttons{margin-top:24px;display:grid}.flow{grid-template-columns:1fr 1fr}.fixed{position:fixed;display:grid;grid-template-columns:1fr 1.2fr;left:0;right:0;bottom:0;z-index:20;height:68px;box-shadow:0 -5px 18px #0002}.fixed a{display:flex;align-items:center;justify-content:center;color:#fff;background:var(--orange);font-weight:900}.fixed a:last-child{background:#06bf58}}
