*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--y:#ffe566;--b:#6ecbf5;--r:#ff8a80;--g:#81c784;--p:#ce93d8;--font:'Fredoka','Noto Sans JP',sans-serif}
body{font-family:var(--font);background:linear-gradient(135deg,var(--y) 0%,var(--b) 50%,var(--p) 100%);min-height:100vh;color:#333}
img{width:100%;display:block;object-fit:cover;border-radius:12px}
a{color:#1565c0}
.zig-head{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;flex-wrap:wrap;gap:.5rem}
.zig-head h1{font-size:1.3rem}
.zig-head nav{display:flex;gap:1rem}
.zig-head nav a{text-decoration:none;color:#333;font-weight:600}
.zig-hero{padding:2rem 1.5rem 1rem}
.zig-hero h2{font-size:clamp(2rem,6vw,3rem);line-height:1.1}
.zig-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;padding:1rem 1.5rem 3rem}
.zig-card{background:#fff;border-radius:16px;padding:1rem;box-shadow:6px 6px 0 rgba(0,0,0,.15);transition:transform .2s}
.zig-card:hover{transform:rotate(0deg)!important}
.zig-card h3{font-size:.95rem;margin:.5rem 0}
.zig-card span{font-weight:700;color:#e65100}
.zig-card button{margin-top:.5rem;width:100%;border:none;background:var(--r);color:#fff;padding:.5rem;border-radius:8px;cursor:pointer;font-family:inherit;font-weight:600}
.c1{grid-column:span 2;transform:rotate(-3deg)}.c2{grid-column:span 2;transform:rotate(2deg);margin-top:2rem}
.c3{grid-column:span 2;transform:rotate(-1deg)}.c4{grid-column:span 3;transform:rotate(3deg)}.c5{grid-column:span 3;transform:rotate(-2deg);margin-top:-1rem}
.safety-band{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:2rem 1.5rem;background:#fff;margin:0 1rem 2rem;border-radius:20px}
.legal-kids{margin:0 1rem 2rem;padding:1.5rem;background:rgba(255,255,255,.9);border-radius:12px;font-size:.88rem}
.legal-kids h3{margin-bottom:.5rem;color:#e65100}
.pop{position:fixed;top:1rem;right:1rem;background:#fff;border:3px solid var(--r);padding:1rem;border-radius:12px;transform:translateX(150%);transition:transform .3s;font-weight:600}
.pop.show{transform:translateX(0)}
@media(max-width:768px){
  .zig-grid{grid-template-columns:1fr 1fr}
  .zig-card{grid-column:span 1!important;transform:none!important;margin-top:0!important}
  .safety-band{grid-template-columns:1fr}
}
