/* お試し版デモの「体験 → その先へ」の導線 */
.fn-hero{padding-bottom:28px}
.fn-catch{font-size:22px;font-weight:700;color:var(--ink);margin:14px 0 18px}
.fn-steps{display:flex;gap:10px;list-style:none;margin:0 0 14px;padding:0;flex-wrap:wrap;counter-reset:none}
.fn-steps li a{display:flex;align-items:center;gap:8px;padding:8px 14px 8px 8px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);text-decoration:none;font-weight:700;font-size:14px}
.fn-steps li a b{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--paper);color:var(--mute);font-size:13px}
.fn-steps li.now a{border-color:var(--red)}
.fn-steps li.now a b{background:var(--red);color:#fff}
.fn-steps li.ok a b{background:#1b6a31;color:#fff}
.fn-steps li.ok a b::after{content:"✓"}
.fn-steps li.ok a b{font-size:0}
.fn-steps li.ok a b::after{font-size:13px}
.fn-sec{padding-top:40px;padding-bottom:40px}
.fn-sec.alt{background:var(--paper)}
.fn-h{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.fn-h h2{margin:0;font-size:24px}
.fn-no{font-size:12px;font-weight:700;letter-spacing:.1em;color:#fff;background:var(--red);border-radius:4px;padding:4px 10px}
.fn-done{font-weight:700;color:#1b6a31;background:#e6f4ea;border-radius:999px;padding:4px 12px;font-size:14px}
.fn-lockrow td{background:#f4f4f2!important;color:var(--mute)}
.fn-lockmsg{margin-top:14px;border:2px dashed var(--line);border-radius:10px;padding:14px 16px;background:#fff;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.fn-lockmsg b{color:var(--ink)}
.fn-lockmsg a{margin-left:auto}
.fn-qv .qv-phones{grid-template-columns:repeat(4,1fr)}
.fn-result{font-size:20px;font-weight:800;color:#1b6a31;margin:10px 0 0}
.fn-wall{background:#141414;color:#f2f2f2;padding:64px 0}
.fn-wall h2{color:#fff;font-size:34px;margin:4px 0 10px}
.fn-wall .lead{color:#d8d8d8;max-width:46em}
.fn-wall .star-inline{color:#ff6b7f}
.fn-kicker{color:#ff8a99;font-weight:700;letter-spacing:.08em;margin:0}
.fn-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
.fn-card{position:relative;display:flex;flex-direction:column;background:#1f1f1f;border:1px solid #333;border-radius:12px;padding:14px 16px 16px;color:#eee;text-decoration:none;transition:transform .2s ease,border-color .2s ease}
.fn-card:hover{transform:translateY(-3px);border-color:#ff6b7f}
.fn-card h3{font-size:16px;margin:12px 0 6px;color:#fff;line-height:1.5}
.fn-card p{font-size:13px;line-height:1.8;color:#cfcfcf;margin:0 0 12px}
.fn-go{margin-top:auto;font-weight:700;color:#ff8a99;font-size:14px}
.fn-lock{position:absolute;top:14px;right:16px;font-size:18px;background:#000c;border-radius:50%;width:34px;height:34px;display:grid;place-items:center}
.fn-shot{height:118px;border-radius:8px;background:#fafafa;position:relative;overflow:hidden;filter:blur(2.4px) saturate(.9);opacity:.9}
.fn-shot i{position:absolute;display:block;border-radius:4px;background:#ddd}
.fn-shot i:nth-child(1){left:8%;top:12%;width:42%;height:10%;background:#c8102e}
.fn-shot i:nth-child(2){left:8%;top:30%;width:84%;height:8%}
.fn-shot i:nth-child(3){left:8%;top:44%;width:70%;height:8%}
.fn-shot i:nth-child(4){left:8%;top:58%;width:78%;height:8%}
.fn-shot i:nth-child(5){left:8%;top:72%;width:60%;height:8%;background:#cfe6d4}
.fn-shot i:nth-child(6){right:8%;top:12%;width:18%;height:22%;background:#1f3f99;border-radius:50%}
.art-vote i:nth-child(n+2){width:16%!important;height:44%!important;top:34%!important;border-radius:6px;border:3px solid #333;background:#e6f4ea}
.art-vote i:nth-child(2){left:8%}.art-vote i:nth-child(3){left:28%}.art-vote i:nth-child(4){left:48%}.art-vote i:nth-child(5){left:68%;background:#fbecef}
.art-vote i:nth-child(6){display:none}
.art-portal i:nth-child(6){border-radius:4px;width:30%;height:70%;top:12%;background:#e9eefc}
.art-sticker i:nth-child(n+2){width:20%!important;height:36%!important;border-radius:4px;background:repeating-linear-gradient(45deg,#111 0 3px,#fff 3px 6px)}
.art-sticker i:nth-child(2){left:8%;top:14%}.art-sticker i:nth-child(3){left:32%;top:14%}.art-sticker i:nth-child(4){left:56%;top:14%}.art-sticker i:nth-child(5){left:8%;top:56%}.art-sticker i:nth-child(6){left:32%;top:56%;right:auto}
.art-mark::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-30deg,transparent 0 22px,#c8102e33 22px 26px)}
.art-flow i:nth-child(n+2){height:12%!important;border-radius:999px}
.fn-sub{color:#fff;font-size:18px;margin:36px 0 12px}
.fn-minis{display:flex;flex-wrap:wrap;gap:8px}
.fn-mini{display:inline-flex;gap:6px;align-items:center;border:1px solid #3a3a3a;border-radius:999px;padding:8px 14px;color:#ddd;text-decoration:none;font-size:13px}
.fn-mini:hover{border-color:#ff6b7f;color:#fff}
.fn-apply{margin-top:40px;background:#fff;color:var(--ink);border-radius:14px;padding:26px 28px;display:grid;grid-template-columns:1.2fr 1fr;gap:20px;align-items:center}
.fn-apply h3{margin:0 0 10px;font-size:22px}
.fn-safe{margin:0;padding-left:1.2em;color:var(--mute);font-size:14px;line-height:1.9}
.fn-apply-btns{display:flex;flex-direction:column;gap:10px}
.fn-apply-btns .btn{text-align:center}
.fn-wall .demo-cta .btn.ghost{color:#fff;border-color:#666}
.fn-bar{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:60;display:flex;align-items:center;gap:14px;background:#141414;color:#fff;border-radius:999px;padding:10px 10px 10px 18px;box-shadow:0 12px 30px #0004;font-size:14px;max-width:calc(100vw - 24px)}
.fn-bar[hidden]{display:none}
.fn-bar-t{font-weight:700;white-space:nowrap}
.fn-bar-go{color:#ff8a99;font-weight:700;text-decoration:none;white-space:nowrap}
.fn-bar-x{border:0;background:#333;color:#fff;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:16px;line-height:1}
.fn-vid{display:flex;gap:14px;align-items:center;margin-bottom:16px;flex-wrap:wrap}
.fn-vid button{border:0;padding:0;background:none;cursor:zoom-in;border-radius:10px;overflow:hidden;box-shadow:0 10px 24px #0002;line-height:0}
.fn-vid video{width:260px;height:auto;display:block}
.fn-vid p{margin:0;font-size:14px;color:var(--mute);max-width:28em}
.fn-vid p b{color:var(--ink)}
.fn-zoom{position:fixed;inset:0;z-index:80;background:#000d;display:grid;place-items:center;padding:20px}
.fn-zoom[hidden]{display:none}
.fn-zoom video{max-width:min(1100px,100%);max-height:86vh;border-radius:10px}
.fn-zoom button{position:absolute;top:16px;right:16px;border:0;background:#fff;border-radius:50%;width:40px;height:40px;font-size:20px;cursor:pointer}
@media(max-width:900px){.fn-cards{grid-template-columns:1fr 1fr}.fn-apply{grid-template-columns:1fr}}
@media(max-width:600px){.fn-cards{grid-template-columns:1fr}.fn-catch{font-size:18px}.fn-wall h2{font-size:26px}.fn-bar{left:12px;right:12px;transform:none;bottom:10px;border-radius:12px;justify-content:space-between}.fn-bar-t{font-size:13px}.fn-vid video{width:100%}.fn-qv .qv-phones{grid-template-columns:repeat(4,1fr)}.fn-lockmsg a{margin-left:0;width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.fn-card{transition:none}}
.fn-apply.pulse{animation:fnp 1.2s ease}
@keyframes fnp{0%,100%{box-shadow:0 0 0 0 #ff6b7f00}40%{box-shadow:0 0 0 8px #ff6b7f88}}
