:root{--green:#22d05e;--green-bright:#2ae66c;--green-deep:#16a34a;--beige:#f6e6d6;--blond:#d8b27a;--black:#000;--white:#fff;--bg:#faf7f1;--ink:#111;--ink-dim:#6b6b66;--border:#e7e2d8;--card:#fff;--radius:20px;--font-display:"M PLUS Rounded 1c", "Hiragino Maru Gothic ProN", "Noto Sans JP", sans-serif;--font-body:"Noto Sans JP", -apple-system, BlinkMacSystemFont, "Hiragino Sans", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}body:after{content:"";pointer-events:none;z-index:9999;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit}.wrap{max-width:1080px;margin:0 auto;padding:0 24px}.nav{justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.logo{font-family:var(--font-display);letter-spacing:-.01em;color:var(--black);font-size:24px;font-weight:900}.logo span{color:var(--green-deep)}.nav .tagline-top{color:var(--ink-dim);font-size:13px;font-weight:500}.nav-right{align-items:center;gap:14px;display:flex}.credits{color:var(--green-deep);border:1px solid var(--green);background:#22d05e1a;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:700}.navlink{color:var(--ink);font-size:14px;font-weight:600;text-decoration:none}.navlink:hover{color:var(--green-deep)}.navlink.as-btn{cursor:pointer;background:0 0;border:none;font-family:inherit}.hero{text-align:center;color:var(--white);background:radial-gradient(120% 90% at 85% 0%, #d8b27a8c 0%, #d8b27a00 55%), linear-gradient(150deg, var(--green-bright) 0%, var(--green) 42%, var(--green-deep) 100%);border-radius:28px;margin:12px 0 0;padding:76px 28px 88px;position:relative;overflow:hidden}.hero:before{content:"";z-index:0;opacity:.18;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.hero>*{z-index:1;position:relative}.badge{color:var(--white);background:#0000002e;border:1px solid #ffffff59;border-radius:999px;margin-bottom:26px;padding:7px 16px;font-size:13px;font-weight:700;display:inline-block}.hero h1{font-family:var(--font-display);letter-spacing:-.02em;font-size:clamp(34px,6.2vw,60px);font-weight:900;line-height:1.16}.hero h1 .grad{background:linear-gradient(90deg, var(--white) 0%, var(--beige) 60%, var(--blond) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero p.sub{color:#ffffffeb;max-width:600px;margin:22px auto 0;font-size:17px;font-weight:500;line-height:1.8}.panel{background:var(--card);border:1.5px solid var(--black);border-radius:var(--radius);z-index:2;max-width:760px;margin:-48px auto 0;padding:28px;position:relative;box-shadow:0 18px 50px #22d05e29}.tabs{gap:8px;margin-bottom:18px;display:flex}.tab{text-align:center;border:1.5px solid var(--border);color:var(--ink-dim);cursor:pointer;font-size:14px;font-weight:700;font-family:var(--font-body);background:0 0;border-radius:12px;flex:1;padding:11px}.tab.active{color:var(--green-deep);border-color:var(--green);background:#22d05e1a}.field{flex-wrap:wrap;gap:10px;display:flex}input[type=text],input[type=url],input[type=email],textarea{background:var(--bg);border:1.5px solid var(--border);min-width:0;color:var(--ink);border-radius:12px;flex:1;padding:14px 16px;font-family:inherit;font-size:15px}textarea{resize:vertical;width:100%;min-height:110px}input::placeholder,textarea::placeholder{color:#b3aea2}input:focus,input[type=email]:focus,textarea:focus{border-color:var(--green);background:var(--white);outline:none}.row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex}.select{background:var(--bg);border:1.5px solid var(--border);color:var(--ink);border-radius:10px;padding:10px 12px;font-family:inherit;font-size:14px}.btn{background:linear-gradient(135deg, var(--green-bright), var(--green-deep));color:var(--white);font-size:15px;font-weight:800;font-family:var(--font-display);cursor:pointer;white-space:nowrap;border:none;border-radius:12px;padding:14px 24px;transition:transform .1s,box-shadow .2s,opacity .2s;box-shadow:0 6px 18px #22d05e52}.btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px #22d05e66}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn.ghost{border:1.5px solid var(--black);color:var(--black);box-shadow:none;background:0 0}.btn.ghost:hover{box-shadow:none;background:#0000000a}.hint{color:var(--ink-dim);margin-top:12px;font-size:13px}.error{color:#c0392b;background:#c0392b12;border:1px solid #c0392b40;border-radius:10px;margin-top:14px;padding:12px 14px;font-size:14px}.analysis{max-width:920px;margin:48px auto 0}.analysis h2{font-family:var(--font-display);margin-bottom:6px;font-size:24px;font-weight:900}.meta{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:18px 0 8px;display:grid}.meta .cell{background:var(--card);border:1.5px solid var(--border);border-radius:14px;padding:14px 16px}.meta .cell .k{color:var(--green-deep);margin-bottom:6px;font-size:12px;font-weight:700}.meta .cell .v{font-size:14px;line-height:1.6}.brand{background:var(--card);border:1.5px solid var(--border);border-radius:14px;margin-top:14px;padding:16px 18px}.brand-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.brand-head .k{color:var(--green-deep);font-size:13px;font-weight:700}.toggle{color:var(--ink-dim);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.toggle input{accent-color:var(--green);width:16px;height:16px}.brand-tone{margin:10px 0;font-size:14px;line-height:1.6}.brand-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.swatches{gap:6px;display:flex}.sw{border:1px solid #0000001a;border-radius:7px;width:26px;height:26px}.refimg{color:var(--ink-dim);align-items:center;gap:8px;font-size:12px;display:flex}.refimg img{object-fit:cover;border:1px solid var(--border);border-radius:8px;width:56px;height:56px}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px;max-width:1080px;margin:28px auto 90px;display:grid}.card{background:var(--card);border:1.5px solid var(--black);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.card .imgbox{aspect-ratio:1;background:linear-gradient(150deg,#eafaef,#f6e6d6);justify-content:center;align-items:center;display:flex;position:relative}.card .imgbox img{object-fit:cover;width:100%;height:100%}.card .body{padding:18px}.tagline{color:var(--white);background:var(--green);border-radius:999px;margin-bottom:12px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-block}.card h3{font-family:var(--font-display);margin-bottom:4px;font-size:17px;font-weight:800}.card .copy{color:var(--ink-dim);margin-bottom:14px;font-size:13px;line-height:1.6}.lbl{color:var(--ink-dim);font-size:13px;font-weight:600}.spec{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.chip{color:var(--ink-dim);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:3px 9px;font-size:11px}.card .actions{gap:8px;display:flex}.card .actions .btn{flex:1;padding:11px;font-size:13px}.spinner{border:3px solid #0000001f;border-top-color:var(--green);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}.imgbox .loading{color:var(--green-deep);flex-direction:column;align-items:center;gap:10px;font-size:13px;font-weight:600;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.section-title{font-family:var(--font-display);text-align:center;margin:60px 0 4px;font-size:26px;font-weight:900}.section-sub{text-align:center;color:var(--ink-dim);font-size:15px}.legal{max-width:760px;padding-top:30px;padding-bottom:80px;line-height:1.85}.legal h1{font-family:var(--font-display);margin-bottom:8px;font-size:26px;font-weight:900}.legal h2{font-family:var(--font-display);margin:26px 0 8px;font-size:17px;font-weight:800}.legal p,.legal li{color:#333;font-size:14px}.legal ul{margin:8px 0;padding-left:20px}.legal li{margin:4px 0}.legal-date{color:var(--ink-dim);margin-bottom:20px;font-size:13px}.legal-foot{margin-top:32px;font-weight:700}.legal-table{border-collapse:collapse;width:100%;margin-top:18px}.legal-table th,.legal-table td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:12px 14px;font-size:14px}.legal-table th{background:var(--bg);width:34%;color:var(--ink);font-weight:700}.footer{border-top:1px solid var(--border);text-align:center;color:var(--ink-dim);margin-top:64px;padding:40px 24px 72px;font-size:13px}.footer a{margin:0 10px;text-decoration:none}.footer a:hover{color:var(--green-deep)}.plans{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;max-width:1000px;margin:32px auto 0;display:grid}.plan{background:var(--card);border:1.5px solid var(--border);border-radius:var(--radius);flex-direction:column;padding:24px 20px;display:flex;position:relative}.plan.popular{border-color:var(--green);box-shadow:0 12px 32px #22d05e2e}.plan .pop{background:var(--green);color:#fff;border-radius:999px;padding:3px 12px;font-size:11px;font-weight:700;position:absolute;top:-11px;left:20px}.plan h3{font-family:var(--font-display);font-size:20px;font-weight:900}.plan .price{font-family:var(--font-display);margin:8px 0 2px;font-size:30px;font-weight:900}.plan .price span{color:var(--ink-dim);font-size:14px;font-weight:600}.plan .credits-line{color:var(--green-deep);font-size:13px;font-weight:700}.plan .plan-note{color:var(--ink-dim);margin:8px 0 14px;font-size:13px}.plan ul{flex:1;margin:0 0 18px;padding:0;list-style:none}.plan ul li{border-top:1px solid var(--border);padding:6px 0 6px 22px;font-size:13px;position:relative}.plan ul li:before{content:"✓";color:var(--green);font-weight:800;position:absolute;left:2px}
