:root{--bg:#f5f7fa;--card:#fff;--ink:#17202c;--sub:#536072;--line:#dce2ea;--accent:#1d63d8;--accent-ink:#fff;--soft:#eaf1fd;--ok:#0d7a47;--warn:#a34b00;--res:#f0f6ff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#11161d;--card:#1a212b;--ink:#e8edf4;--sub:#a3afbf;--line:#2c3644;--accent:#5b9bff;--accent-ink:#0b1220;--soft:#1f2c40;--ok:#4cc38a;--warn:#ffb067;--res:#182436}}
:root[data-theme="dark"]{--bg:#11161d;--card:#1a212b;--ink:#e8edf4;--sub:#a3afbf;--line:#2c3644;--accent:#5b9bff;--accent-ink:#0b1220;--soft:#1f2c40;--ok:#4cc38a;--warn:#ffb067;--res:#182436}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.75 "Hiragino Sans","Yu Gothic UI","Noto Sans JP",Meiryo,sans-serif}
a{color:var(--accent)}
.wrap{max-width:860px;margin:0 auto;padding:0 16px}
.top{background:var(--card);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:56px}
.logo{font-weight:800;font-size:19px;color:var(--ink);text-decoration:none;letter-spacing:.02em}
.logo span{color:var(--accent)}
.top nav a{font-size:14px;color:var(--sub);text-decoration:none;margin-left:14px}
h1{font-size:26px;line-height:1.45;margin:26px 0 6px}
h2{font-size:20px;margin:34px 0 10px}
h3{font-size:17px;margin:20px 0 6px}
.lead{color:var(--sub);margin:0 0 18px}
.crumb{font-size:13px;color:var(--sub);margin-top:14px}
.crumb a{color:var(--sub)}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px}
.badge{display:inline-block;font-size:12px;background:var(--soft);color:var(--accent);border-radius:20px;padding:2px 10px;margin-bottom:10px}
label{display:block;font-size:14px;font-weight:700;margin:14px 0 4px}
label small{font-weight:400;color:var(--sub)}
input[type=text],input[type=number],input[type=date],input[type=email],select,textarea{width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:10px 12px}
textarea{min-height:160px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}
.row{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
@media(max-width:560px){.row{grid-template-columns:1fr}}
.check{display:flex;gap:8px;align-items:center;font-weight:400;margin-top:12px}
.check input{width:18px;height:18px}
.btn{display:inline-block;background:var(--accent);color:var(--accent-ink);border:0;border-radius:8px;padding:11px 20px;font:inherit;font-weight:700;cursor:pointer;margin:16px 8px 0 0;text-decoration:none}
.btn.sub{background:var(--soft);color:var(--accent)}
.result{background:var(--res);border:1px solid var(--line);border-radius:10px;padding:16px;margin-top:18px}
.big{font-size:30px;font-weight:800;line-height:1.3}
.big.ok{color:var(--ok)}.big.ng{color:var(--warn)}
table{width:100%;border-collapse:collapse;font-size:15px}
th,td{border-bottom:1px solid var(--line);padding:8px 6px;text-align:left}
td.n,th.n{text-align:right;font-variant-numeric:tabular-nums}
.scroll{overflow-x:auto}
.note{font-size:13px;color:var(--sub)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.tool{display:block;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;text-decoration:none;color:var(--ink)}
.tool:hover{border-color:var(--accent)}
.tool b{display:block;font-size:16px}
.tool span{font-size:13px;color:var(--sub)}
.search{margin:6px 0 4px}
.related{display:flex;flex-wrap:wrap;gap:8px}
.related a{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:4px 12px;font-size:14px;text-decoration:none}
.faq dt{font-weight:700;margin-top:14px}
.faq dd{margin:4px 0 0;color:var(--sub)}
.privacy{font-size:13px;color:var(--ok);margin-top:10px}
footer{margin-top:50px;padding:24px 0 40px;border-top:1px solid var(--line);font-size:13px;color:var(--sub)}
footer a{color:var(--sub);margin-right:14px}
.credit{font-size:11px;color:#777;text-align:right;margin-top:24px}
@media print{.top,footer,.noprint,.crumb,h1,.lead,.badge,h2,.faq,.related,.privacy{display:none!important}body{background:#fff;color:#000}.card{border:0;padding:0}}
.alert{border-radius:8px;padding:10px 14px;margin-bottom:12px;background:var(--soft);font-size:15px}
.alert.ng{background:#fde8e4;color:#8a1f0e}.alert.ok{background:#e3f4ea;color:#0b5e37}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .alert.ng{background:#3a1d18;color:#ffb4a6}:root:not([data-theme="light"]) .alert.ok{background:#16301f;color:#8fe0b0}}
.ng{color:var(--warn)}
.next{margin-top:14px}.next:empty{display:none}.next b{display:block;margin-top:6px}.next .btn{margin-top:8px}
.pro{margin-top:18px;border:2px solid var(--accent);border-radius:12px;padding:16px 18px;background:var(--card)}
.pro p{margin:6px 0 0}
.who{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin:-6px 0 14px;font-size:14px}
.who b{font-size:13px;color:var(--sub)}.who span{color:var(--ok)}
.howlink{display:inline-block;font-size:14px;margin:0 0 10px;text-decoration:none}
.how{display:grid;grid-template-columns:240px 1fr;gap:18px;align-items:start}
@media(max-width:560px){.how{grid-template-columns:1fr}}
.demo{margin:0}.demo video{width:100%;max-width:260px;border:1px solid var(--line);border-radius:12px;background:#fff;display:block}
.demo figcaption{font-size:12px;color:var(--sub);margin-top:4px}
ol.steps3{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;gap:10px}
ol.steps3 li{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 14px 12px 52px;position:relative}
ol.steps3 li::before{counter-increment:s;content:counter(s);position:absolute;left:14px;top:11px;width:26px;height:26px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-weight:700;text-align:center;line-height:26px}
.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:0 10px}
@media(max-width:560px){.row3{grid-template-columns:1fr 1fr}.row3>div:first-child{grid-column:1/-1}}
.badge.fresh{background:var(--bg);color:var(--sub);border:1px solid var(--line)}
details.adv{margin-top:16px;border-top:1px solid var(--line);padding-top:10px}
details.adv summary,details.break summary{cursor:pointer;color:var(--accent);font-weight:700;font-size:14px}
details.break{margin-top:10px}
.keys{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.keys div{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:8px 10px}
.keys span{display:block;font-size:12px;color:var(--sub)}.keys b{font-size:18px}
.catch{margin:22px 0 -14px;font-size:14px;font-weight:700;color:var(--accent);letter-spacing:.04em}
/* ===== 売れる配置（PCとスマホ） ===== */
.wrap{max-width:1080px}
.top{position:sticky;top:0;z-index:20;backdrop-filter:saturate(1.4) blur(6px)}
.logo{font-size:20px}
/* トップ：PCは左に問いと約束、右に3秒診断（Z型の視線で、読んだらすぐ手が動く位置） */
.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center;padding:28px 0 8px}
.hero h1{font-size:34px;margin-top:10px}
.hero .catch{margin:0}
.hero-r{box-shadow:0 10px 30px rgba(20,40,80,.10)}
.trust{list-style:none;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px 16px;font-size:14px;color:var(--ok);font-weight:700}
@media(max-width:860px){.hero{grid-template-columns:1fr;gap:16px;padding-top:8px}.hero h1{font-size:26px}}
/* 棚 */
.shelf,.starter{margin-top:40px}
.shelf-h{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:12px}
.shelf-h h2{margin:0;font-size:22px}.shelf-h p{margin:0;color:var(--sub);font-size:14px}
.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.g3{grid-template-columns:repeat(3,1fr)}
@media(max-width:860px){.g3{grid-template-columns:1fr}.grid{grid-template-columns:1fr}}
.tool{display:flex;gap:14px;align-items:center;padding:16px 16px;transition:transform .12s,box-shadow .12s,border-color .12s}
a.tool:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(20,40,80,.10)}
.tool .ic,.tool .num{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--soft);color:var(--accent);font-style:normal}
.tool .num{background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:18px}
.tool .tt{flex:1;min-width:0}.tool .tt b{font-size:16px}.tool .tt span{display:block;font-size:13px;color:var(--sub);margin-top:2px}
.tool .tt em{display:inline-block;font-style:normal;font-size:11.5px;color:var(--ok);font-weight:700;margin-top:4px}
.tool .go{flex:none;color:var(--accent);font-weight:800;font-size:18px}
.starter .tool{border:2px solid var(--accent)}
.finder{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:44px}
.finder h2{margin:0}.finder .search{max-width:360px;margin:0}
/* 価値を渡した後の有料版の帯 */
.pro-band{margin-top:44px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;border-radius:14px;background:var(--soft);border:1px solid var(--line)}
.pro-band p{margin:4px 0 0;color:var(--sub);font-size:14px}.pro-band .btn{margin:0;flex:none}
@media(max-width:860px){.pro-band{flex-direction:column;align-items:flex-start}}
.feats .tool{align-items:flex-start}
/* ツールページ：PCは道具（主役）＋右に固定の使い方・有料版。スマホは縦に並ぶ */
.tool-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start}
.tool-side{position:sticky;top:76px;display:grid;gap:14px;margin-top:26px}
.side-box{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px}
.side-h{display:block;margin-bottom:10px}
.tool-side .demo video{max-width:100%}.tool-side .demo{margin-bottom:12px}
.tool-side .pro{margin-top:0}
.tool-side ol.steps3 li{padding:10px 12px 10px 46px;font-size:14px}.tool-side ol.steps3 li::before{left:12px;top:9px}
@media(max-width:860px){.tool-layout{grid-template-columns:1fr;gap:0}.tool-side{position:static;margin-top:18px}}
@media print{.tool-side{display:none}}
.shelf-row{display:grid;grid-template-columns:repeat(3,1fr);gap:0 12px}
.shelf.mini .grid{grid-template-columns:1fr}.shelf.mini .shelf-h{display:block}.shelf.mini .shelf-h p{margin-top:4px}
@media(max-width:860px){.shelf-row{grid-template-columns:1fr}}
#qo .btn{display:block;text-align:center;margin:12px 0 0}
@media(min-width:861px){.howlink{display:none}}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0;align-items:stretch}
@media(max-width:860px){.plans{grid-template-columns:1fr}}
.plan{position:relative;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 20px}
.plan.hot{border:2px solid var(--accent);box-shadow:0 10px 30px rgba(20,40,80,.12)}
@media(min-width:861px){.plan.hot{transform:translateY(-8px)}}
.plan h3{margin:4px 0}.plan .price{font-size:28px;font-weight:800}
.plan ul{padding-left:18px;margin:12px 0 0}.plan li{margin:4px 0;font-size:14px}
.ptag{position:absolute;top:-12px;left:18px;background:var(--accent);color:var(--accent-ink);font-size:12px;font-weight:700;border-radius:20px;padding:2px 10px}
.plan:not(.hot) .ptag{background:var(--soft);color:var(--accent)}
.top nav a{white-space:nowrap}
@media(max-width:420px){.top nav a{margin-left:10px;font-size:13px}}
/* ===== ファーストビュー（映像で価値を見せる） ===== */
.bleed{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.hero2{background:radial-gradient(900px 420px at 85% 10%,#dce8ff 0,transparent 60%),radial-gradient(600px 300px at 0% 100%,#e9f7f0 0,transparent 60%),linear-gradient(180deg,#f4f8ff,var(--bg));border-bottom:1px solid var(--line)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .hero2{background:radial-gradient(900px 420px at 85% 10%,#1b2d4d 0,transparent 60%),linear-gradient(180deg,#141c28,var(--bg))}}
.hero2-in{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding:56px 16px 52px}
.pill{display:inline-block;background:var(--card);border:1px solid #bcd0f5;color:var(--accent);font-weight:700;font-size:13px;border-radius:999px;padding:5px 14px}
.hero2 h1{font-size:46px;line-height:1.22;font-weight:800;letter-spacing:-.01em;margin:16px 0 14px}
.grad{background:linear-gradient(90deg,#1d63d8,#7b3fe4);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero2 .lead{font-size:17px;max-width:520px;color:var(--sub)}
br.sp{display:none}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.btn.big{padding:15px 28px;font-size:17px;border-radius:12px;margin:0;box-shadow:0 8px 20px rgba(29,99,216,.25)}
.btn.ghost{background:transparent;color:var(--accent);border:2px solid var(--accent);box-shadow:none}
.hero2 .trust{color:var(--sub);font-weight:400;font-size:13px;margin-top:18px}
.hero2 .trust li::before{content:"✓ ";color:var(--ok);font-weight:800}
.hero2-r{position:relative;display:flex;justify-content:center}
.phone{width:270px;border:10px solid #0f172a;border-radius:38px;overflow:hidden;background:#fff;box-shadow:0 30px 60px rgba(15,30,60,.25),0 0 0 1px rgba(255,255,255,.4) inset}
.phone video{display:block;width:100%}
.float{position:absolute;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:8px 14px;font-weight:700;font-size:13px;box-shadow:0 10px 24px rgba(15,30,60,.12)}
.float::before{content:"✓ ";color:var(--ok)}
.f1{left:0;top:18%}.f2{right:0;bottom:16%}
@media(max-width:860px){.hero2-in{grid-template-columns:1fr;gap:28px;padding:30px 16px 36px}.hero2 h1{font-size:32px}br.sp{display:inline}
 .phone{width:210px;border-width:8px;border-radius:30px}.f1{left:2%;top:10%}.f2{right:2%;bottom:10%}.btn.big{flex:1;text-align:center;padding:14px 16px}}
/* 3秒診断 */
.step{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.12em;color:var(--accent);background:var(--soft);border-radius:6px;padding:3px 10px}
.qcheck{margin-top:52px}
.check-h{text-align:center;margin-bottom:18px}.check-h h2{font-size:28px;margin:10px 0 4px}.check-h p{color:var(--sub);margin:0}
.check-box{display:grid;grid-template-columns:300px 1fr;gap:28px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 14px 34px rgba(20,40,80,.08)}
.check-in input{font-size:22px;font-weight:700}
.bars{display:grid;gap:8px}
.bar{display:grid;grid-template-columns:100px 1fr 90px;gap:10px;align-items:center;font-size:14px}
.bt{background:var(--bg);border-radius:6px;height:20px;overflow:hidden}.bt i{display:block;height:100%;border-radius:6px;background:#9db9ea}
.bt i.best{background:var(--accent)}.bt i.neg{background:#e57b6b}.bar b{text-align:right;font-variant-numeric:tabular-nums}
.gap{margin:14px 0 0}
#qo .btn{display:inline-block;margin-top:12px}
@media(max-width:860px){.check-box{grid-template-columns:1fr;padding:18px}.check-h h2{font-size:24px}.bar{grid-template-columns:78px 1fr 76px;font-size:13px}}
/* 入口3つ：実際の画面写真つき */
.starter .shelf-h{display:block;text-align:center}.starter .shelf-h h2{margin-top:10px}
.shots{display:grid;gap:16px}
a.shot.tool{display:block;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:16px}
.shot-img{position:relative;height:190px;overflow:hidden;background:var(--soft);border-bottom:1px solid var(--line)}
.shot-img img{width:100%;height:100%;object-fit:cover;object-position:top}
.shot-img .num{position:absolute;left:12px;top:12px;width:34px;height:34px;border-radius:10px;font-size:16px;box-shadow:0 4px 12px rgba(0,0,0,.2)}
.shot-b{padding:14px 16px 16px}.shot-b b{display:block;font-size:17px}.shot-b span{display:block;font-size:13px;color:var(--sub);margin-top:4px}
.shot-b em{display:inline-block;font-style:normal;font-weight:800;color:var(--accent);margin-top:10px}
@media(max-width:860px){.shots{grid-template-columns:1fr}.shot-img{height:150px}}
/* ===== 5社の型に合わせた全体構成 ===== */
.mc{font-size:13px;font-weight:700;color:var(--sub);margin:22px 0 -12px}
.malls{display:flex;flex-wrap:wrap;gap:8px 22px;align-items:center;justify-content:center;padding:18px 0;color:var(--sub);font-size:14px;border-bottom:1px solid var(--line)}
.malls span{font-size:12px;letter-spacing:.08em;margin-right:6px}.malls b{color:var(--ink);opacity:.75;font-weight:800;font-size:15px}
.sec-h{text-align:center;margin-bottom:18px}.sec-h h2{font-size:28px;margin:10px 0 6px}.sec-h p{color:var(--sub);margin:0}
.tools-sec,.who-sec,.custom-sec,.faq-sec{margin-top:72px}
.tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:18px}
.tab{font:inherit;font-size:14px;font-weight:700;border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:8px 16px;cursor:pointer}
.tab.on{background:var(--ink);color:var(--card);border-color:var(--ink)}
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.tile{display:flex;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;text-decoration:none;color:var(--ink);transition:transform .12s,box-shadow .12s}
.tile:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(20,40,80,.10)}
.tile .ic{flex:none;width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--soft);color:var(--accent)}
.tile b{font-size:15px}.tile small{display:block;color:var(--sub);font-size:12.5px;margin-top:2px}
.tile .new{font-style:normal;font-size:11px;font-weight:800;color:#fff;background:#e5484d;border-radius:6px;padding:1px 6px;margin-left:6px;vertical-align:2px}
@media(max-width:860px){.tgrid{grid-template-columns:1fr 1fr}.tile{flex-direction:column;align-items:flex-start;padding:14px}.tile small{display:none}.sec-h h2{font-size:22px}}
.promise{margin-top:72px;background:linear-gradient(180deg,var(--soft),var(--bg));padding:56px 0}
.prom{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.prom>div{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px}
.prom i{font-style:normal;font-size:28px}.prom b{display:block;font-size:17px;margin:10px 0 6px}.prom p{margin:0;color:var(--sub);font-size:14px}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.persona .pc{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px}
.persona b{font-size:16px}.persona p{color:var(--sub);font-size:13.5px;margin:6px 0 10px}
.persona a{display:block;font-size:14px;font-weight:700;text-decoration:none;padding:4px 0}
@media(max-width:860px){.prom,.g4{grid-template-columns:1fr}}
.pro-band{margin-top:72px}.pro-band b{display:block;font-size:19px;margin-top:8px}
.custom-in{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:center;background:#0f1b33;color:#e8eefb;border-radius:20px;padding:40px}
.custom-in h2{color:#fff;font-size:28px;margin:12px 0 10px}.custom-in p{color:#b9c6e0}
.custom-in .step{background:rgba(255,255,255,.12);color:#cfe0ff}
.ticks{list-style:none;padding:0;margin:14px 0 22px}.ticks li{margin:6px 0}.ticks li::before{content:"✓ ";color:#6fe3a6;font-weight:800}
.custom-in ol.steps3 li{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);color:#e8eefb}
@media(max-width:860px){.custom-in{grid-template-columns:1fr;padding:26px}.custom-in h2{font-size:22px}}
.maker{margin-top:56px;display:flex;gap:18px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:24px}
.avatar{flex:none;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-weight:800}
.maker p{margin:6px 0;color:var(--sub);font-size:14px}
.qa{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin:10px auto;max-width:760px}
.qa summary{font-weight:700;cursor:pointer}.qa p{margin:10px 0 0;color:var(--sub)}
.final{margin-top:72px;background:linear-gradient(135deg,#1d63d8,#5b3fd8);color:#fff;padding:56px 0;text-align:center}
.final h2{color:#fff;font-size:28px;margin:0}.final .mc{color:#dbe6ff;margin:18px 0 10px}
.btn.inv{background:#fff;color:#1d63d8;box-shadow:0 10px 24px rgba(0,0,0,.18)}
@media(max-width:860px){.final h2{font-size:22px}}
.formula{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.formula p{margin:6px 0}
.custom-mini{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:36px;padding:18px 20px;border-radius:14px;background:#0f1b33;color:#fff;text-decoration:none}
.custom-mini span{color:#9fc0ff;font-weight:700}
footer{margin-top:0}
/* ===== 配色の作り直し：濃淡のリズム＋行動はオレンジに統一 ===== */
:root{--cta:#ff6b1a;--cta-ink:#fff;--navy:#0b1630;--navy2:#16255a}
.btn{background:var(--cta);color:var(--cta-ink);box-shadow:0 6px 16px rgba(255,107,26,.28)}
.btn:hover{filter:brightness(1.06)}
.btn.sub{background:var(--soft);color:var(--accent);box-shadow:none}
.btn.big{box-shadow:0 10px 24px rgba(255,107,26,.35)}
.textlink{color:#cfe0ff;font-weight:700;text-decoration:none;align-self:center;border-bottom:1px solid rgba(207,224,255,.5)}
/* ロゴ */
.logo{display:inline-flex;align-items:center;gap:8px;font-weight:800}
.logo span{background:linear-gradient(90deg,#06b6d4,#7c3aed);-webkit-background-clip:text;background-clip:text;color:transparent}
/* ファーストビュー：濃紺＋光 */
.hero2{background:radial-gradient(700px 380px at 82% 18%,rgba(124,58,237,.45) 0,transparent 60%),radial-gradient(600px 360px at 8% 95%,rgba(6,182,212,.30) 0,transparent 60%),linear-gradient(160deg,var(--navy),var(--navy2));color:#fff;border-bottom:0}
.hero2 h1{color:#fff}.hero2 .lead{color:#c3cfea}.hero2 .lead b{color:#fff}
.grad{background:linear-gradient(90deg,#38bdf8,#a78bfa)}
.hero2 .pill{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.25);color:#e0e9ff}
.hero2 .mc{color:#a9b8da}.hero2 .trust{color:#a9b8da}.hero2 .trust li::before{color:#6fe3a6}
.phone{border-color:#020617;box-shadow:0 30px 70px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.12)}
.float{background:#fff;color:#0f172a;border:0}
.f1{top:2%}
.malls{background:var(--navy);color:#9fb0d6;border:0;padding:0}
.malls-in{display:flex;gap:8px 26px;align-items:center;justify-content:center;flex-wrap:wrap;padding:16px}
.malls b{color:#e6edff;opacity:.85}
@media(max-width:860px){.malls-in{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;gap:20px;scrollbar-width:none}.malls-in::-webkit-scrollbar{display:none}.malls b,.malls span{white-space:nowrap;font-size:13px}}
/* セクションごとの背景 */
.qcheck{padding-top:8px}
.check-box{border:0;box-shadow:0 18px 44px rgba(15,30,70,.12)}
.bt i{background:#93b4f0}.bt i.best{background:linear-gradient(90deg,#1d63d8,#7c3aed)}
.tools-sec{background:#eaf1ff;padding:56px 0 64px;margin-top:64px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .tools-sec{background:#152036}}
.tab.on{background:var(--navy);border-color:var(--navy);color:#fff}
.tile{border:0;box-shadow:0 4px 14px rgba(15,30,70,.07)}
.tile .ic{background:linear-gradient(135deg,#dbeafe,#ede9fe);color:#4338ca}
@media(max-width:860px){.tile small{display:block;font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}
.promise{background:linear-gradient(135deg,#1d4ed8,#6d28d9);margin-top:0;padding:64px 0}
.promise .sec-h h2{color:#fff}
.prom>div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#fff;backdrop-filter:blur(4px)}
.prom p{color:#dbe4ff}.pi{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:rgba(255,255,255,.16);color:#fff}
.persona .pc{border:0;box-shadow:0 4px 14px rgba(15,30,70,.07);border-top:4px solid #7c3aed}
.persona .pc:nth-child(2){border-top-color:#06b6d4}.persona .pc:nth-child(3){border-top-color:#f59e0b}.persona .pc:nth-child(4){border-top-color:#1d63d8}
.pro-band{background:linear-gradient(135deg,#fff7ed,#ffedd5);border:1px solid #fed7aa}
.pro-band .step{background:#fff;color:#c2410c}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .pro-band{background:#2a1d10;border-color:#5a3412}}
.custom-in{background:radial-gradient(500px 260px at 90% 0,rgba(124,58,237,.35),transparent 60%),var(--navy)}
.maker{border:0;box-shadow:0 4px 14px rgba(15,30,70,.07)}
.avatar{background:linear-gradient(135deg,#06b6d4,#7c3aed);color:#fff}
.final{background:radial-gradient(600px 300px at 80% 0,rgba(124,58,237,.6),transparent 60%),linear-gradient(135deg,var(--navy),#1d3a8a)}
.btn.inv{background:var(--cta);color:#fff}
/* ツールページ：上部に色の帯で「製品の画面」らしく */
.tool-main h1{background:linear-gradient(90deg,var(--ink),#4338ca);-webkit-background-clip:text;background-clip:text;color:transparent}
.tool-main .card{border:0;box-shadow:0 14px 36px rgba(15,30,70,.10)}
/* スマホでは右側の動画を出さない（本物のツールと二重に見えるため） */
@media(max-width:860px){.tool-side .demo{display:none}.tool-side .side-box .side-h::after{content:""}}
/* 比較表 */
td.n,th.n{white-space:nowrap}
#out table{font-size:14px}@media(max-width:560px){#out table{font-size:13px}}
.rowlink{font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}
.topbadge{display:inline-block;font-size:11px;font-weight:800;color:#fff;background:var(--ok);border-radius:6px;padding:0 6px;vertical-align:1px}
footer a,.maker a{text-decoration:none}
.grad{background:linear-gradient(90deg,#38bdf8,#a78bfa);-webkit-background-clip:text;background-clip:text;color:transparent}
.logo{gap:0}.logo .mark{margin-right:8px}
.cmp td,.cmp th{text-align:center}.cmp td:first-child{text-align:left}.law th{width:30%;vertical-align:top;white-space:nowrap}@media(max-width:560px){.law th{white-space:normal}}
.f2{bottom:-5%;right:-2%}
@media(max-width:860px){.f2{bottom:-4%}.malls-in{-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}}
/* CSV一括利益チェック */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}
.kpis div{background:var(--bg);border-radius:10px;padding:10px 12px}.kpis span{display:block;font-size:12px;color:var(--sub)}.kpis b{font-size:22px}
.kpis .bad{background:#fde8e4}.kpis .bad b{color:#b42318}
@media(max-width:560px){.kpis{grid-template-columns:1fr 1fr}}
tr.blur td{filter:blur(5px);user-select:none}
.wall{margin-top:-60px;position:relative;text-align:center;background:linear-gradient(180deg,transparent,var(--card) 34%);padding:70px 16px 12px}
.wall b{font-size:19px}.wall .btn{margin:10px 0 4px}
.paidbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:6px 0 10px}.paidbar .check{margin:0}.paidbar .btn{margin:0}
.lic{margin-top:18px;border-top:1px dashed var(--line);padding-top:10px}
.btn.buy{display:block;text-align:center;margin:16px 0 0}
.pb-btns{display:flex;gap:14px;align-items:center;flex:none}.textlink2{font-weight:700;text-decoration:none}
