:root{--green:#00a985;--deep:#007f69;--pale:#effffb;--line:#a9e8dc;--ink:#263837}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#effffb,#fff);color:var(--ink);font-family:"Noto Sans JP","Yu Gothic",sans-serif;line-height:1.9}.site-header{background:#fff;border-bottom:3px solid var(--green)}.header-inner,.content,.footer-inner{max-width:1000px;margin:auto;padding:18px 28px}.brand{display:flex;align-items:center;gap:12px;color:var(--green);font-size:28px;font-weight:900;text-decoration:none}.brand img{width:44px;height:44px;object-fit:contain}.nav{display:flex;gap:22px;flex-wrap:wrap;margin-top:12px}.nav a{color:var(--deep);font-size:14px;text-decoration:none}.hero{position:relative;overflow:hidden;padding:52px 28px 44px;background:radial-gradient(circle at 83% 24%,#c7fff2,transparent 22%),linear-gradient(125deg,#fff,#e5fff8)}.hero-inner{max-width:1000px;margin:auto}.hero h1{display:inline-block;margin:0;padding:12px 30px;border-radius:999px;background:linear-gradient(135deg,#18bc9a,#008d72);box-shadow:0 6px 0 #007b64;color:#fff;font-size:clamp(25px,4vw,42px);letter-spacing:.05em}.hero p{margin:22px 0 0;font-weight:700}.hero img{position:absolute;right:6%;bottom:-28px;width:170px;opacity:.95}.content{padding-top:42px;padding-bottom:58px}.panel{margin:18px 0;padding:28px;border:2px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 24px #2da88d12}.panel h2{margin:0 0 16px;color:var(--deep);font-size:23px;border-left:6px solid #ffc436;padding-left:12px}.panel h3{color:var(--green);font-size:18px;margin:26px 0 8px}.panel p{margin:10px 0}.panel ul{padding-left:1.4em}.info{width:100%;border-collapse:collapse}.info th,.info td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.info th{width:34%;background:#f1fffb;color:var(--deep)}.site-footer{background:linear-gradient(135deg,#00aa87,#00836d);color:#fff}.footer-links{display:flex;flex-wrap:wrap;gap:8px 18px;padding:0;list-style:none}.footer-links a{color:#fff;text-decoration:none;font-size:14px}.site-footer small{opacity:.9}@media(max-width:600px){.header-inner,.content,.footer-inner{padding-left:16px;padding-right:16px}.hero{padding:36px 16px 64px}.hero h1{font-size:24px;padding:10px 18px}.hero img{right:-25px;width:132px}.panel{padding:20px 16px;border-radius:14px}.info th{width:40%}.nav{gap:8px 15px}}
