*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP",Arial,sans-serif;color:#18352a;background:#f6f8f4;line-height:1.7}.container{width:min(1100px,92%);margin:auto}.site-header{background:#fff;border-bottom:1px solid #e4e9e2;position:sticky;top:0;z-index:10}.nav{height:68px;display:flex;align-items:center;justify-content:space-between}.logo{font-size:28px;font-weight:900;color:#173d2d;text-decoration:none;letter-spacing:-1px}.logo span{color:#e87924}.nav nav{display:flex;gap:24px}.nav nav a{color:#315044;text-decoration:none}.hero{padding:75px 0;background:linear-gradient(135deg,#e9f4e8,#fff)}.hero h1{font-size:clamp(34px,6vw,62px);line-height:1.15;margin:0 0 16px}.hero p{font-size:18px;color:#5a6b62}.searchbox,.card,.panel{background:#fff;border:1px solid #e2e8e0;border-radius:18px;padding:24px;box-shadow:0 8px 30px rgba(20,50,30,.05)}.searchbox{margin-top:30px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.section{padding:55px 0}.card h3{margin-top:0}.thumb{height:190px;background:#dce9d9;border-radius:13px;margin:-2px -2px 18px;display:flex;align-items:center;justify-content:center;color:#55705e}.btn{display:inline-block;background:#173d2d;color:#fff!important;padding:11px 20px;border-radius:10px;text-decoration:none;border:0;cursor:pointer;font-size:15px}.btn.orange{background:#e87924}.btn.light{background:#edf3ed;color:#173d2d!important}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{margin-bottom:16px}.field label{display:block;font-weight:700;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:12px;border:1px solid #ccd7cc;border-radius:9px;font-size:16px;background:#fff}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{padding:12px;border-bottom:1px solid #e5ebe5;text-align:left}.price{font-size:24px;font-weight:800}.notice{padding:14px;border-radius:10px;background:#edf7ea}.error{padding:14px;border-radius:10px;background:#fff0ed;color:#9b3324}footer{padding:35px 0;background:#173d2d;color:#fff;margin-top:60px}@media(max-width:760px){.grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.nav nav{gap:10px;font-size:13px}.hero{padding:50px 0}}
