:root{--bg:#fff9fa;--panel:#fff;--ink:#352631;--muted:#786874;--line:#f1dce5;--accent:#ef4f87;--accent-soft:#fff0f5;--accent-deep:#c72f66;--max:1160px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 100% 0,#ffe7f0 0,transparent 28rem),var(--bg);color:var(--ink);font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;line-height:1.7}header,.wrap{max-width:var(--max);margin:auto;padding-left:1rem;padding-right:1rem}header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;padding-bottom:1rem}.brand{display:flex;align-items:center;gap:.55rem;color:var(--ink);text-decoration:none}.brand-mark{display:flex;align-items:end;justify-content:center;gap:3px;width:2.35rem;height:2.35rem;padding:.42rem;border-radius:.75rem;background:linear-gradient(135deg,#ff7cac,#ed3f7b);box-shadow:0 5px 12px #ef4f8750}.brand-mark i{display:block;width:4px;border-radius:99px;background:#fff}.brand-mark i:nth-child(1){height:8px}.brand-mark i:nth-child(2){height:15px}.brand-mark i:nth-child(3){height:11px}.brand-text{font-size:1.4rem;font-weight:900;letter-spacing:-.08em;line-height:1}.brand-text b{color:var(--accent-deep);letter-spacing:-.1em}.brand-text small{display:block;font-size:.4rem;font-weight:800;letter-spacing:.13em;color:var(--muted);margin:.18rem 0 0 .08rem}nav{display:flex;gap:1rem;flex-wrap:wrap}nav a{color:var(--muted);text-decoration:none;font-weight:700}nav a:hover{color:var(--accent-deep)}.wrap{padding-top:1rem;padding-bottom:4rem}.hero{padding:4rem 0;max-width:780px}.eyebrow,.why{color:var(--accent-deep);font-weight:800;letter-spacing:.1em;font-size:.78rem}.hero h1{font-size:clamp(2.7rem,8vw,5.2rem);line-height:1.04;letter-spacing:-.05em;margin:.4rem 0 1rem}.hero p,.lead{color:var(--muted);max-width:68ch}.hero form,.search{display:flex;gap:.6rem;align-items:end;margin-top:2rem}.hero label{display:grid;gap:.35rem;flex:1;color:var(--muted);font-size:.88rem}input,button{font:inherit;padding:.75rem;border-radius:.55rem}input{border:1px solid var(--line);background:#fff;color:var(--ink);width:100%;box-shadow:0 3px 10px #62223b0c}button,.cta{background:linear-gradient(135deg,#f75f96,#e8427d);border:0;color:#fff;font-weight:800;text-decoration:none;cursor:pointer;box-shadow:0 5px 12px #ef4f873a}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.tiles a,.card{border:1px solid var(--line);background:var(--panel);border-radius:.9rem;box-shadow:0 6px 20px #62223b0a}.tiles a{padding:1.2rem;color:var(--ink);text-decoration:none}.tiles a:hover{transform:translateY(-2px);border-color:#f7adc8}.tiles span{display:block;color:var(--muted);font-size:.88rem;margin-top:.25rem}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.seed{max-width:570px}.card{display:grid;grid-template-columns:120px 1fr;gap:1rem;padding:1rem}.card img{width:120px;height:172px;object-fit:cover;background:#f6e8ed;border-radius:.45rem}.card h3{font-size:1rem;line-height:1.45;margin:0}.card dl{display:flex;gap:.3rem 1rem;flex-wrap:wrap;margin:.65rem 0;font-size:.82rem}.card dl div{display:flex;gap:.3rem}.card dt{color:var(--muted)}.card dd{margin:0}.buttons{display:flex;gap:.5rem;flex-wrap:wrap;margin:.8rem 0 0}.buttons a{padding:.48rem .7rem;border-radius:.45rem;font-size:.86rem}.outline{border:1px solid #f39ab9;color:var(--accent-deep);text-decoration:none;background:var(--accent-soft)}.tabs{margin-bottom:1.5rem;border-bottom:1px solid var(--line);padding-bottom:.6rem}.tabs a{padding:.4rem .6rem}.crumb{color:var(--muted);font-size:.88rem}footer{border-top:1px solid var(--line);color:var(--muted);padding:2rem max(1rem,calc((100% - var(--max))/2));font-size:.85rem;background:#fff}footer a{color:var(--accent-deep)}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:#fff;color:#111;padding:.5rem}@media(max-width:700px){header{align-items:flex-start;flex-direction:column}.hero{padding:2rem 0}.hero form,.search{flex-direction:column;align-items:stretch}.tiles,.cards{grid-template-columns:1fr}.card{grid-template-columns:88px 1fr}.card img{width:88px;height:126px}}
