.tsukimono-shindan.tks-app{margin:0 auto}
.tsukimono-shindan.tks-app.tks-app *{margin:0;padding:0;border:0;background:none;box-shadow:none;text-indent:0;letter-spacing:normal;float:none;line-height:inherit}
.tsukimono-shindan.tks-app.tks-app :where(h1,h2,p,dl,dt,dd,div,span,small,a,button,img)::before,.tsukimono-shindan.tks-app.tks-app :where(h1,h2,p,dl,dt,dd,div,span,small,a,button,img)::after{content:none;display:none}
.tsukimono-shindan.tks-app.tks-app img{max-width:100%}

/* 中身は .tsukimono-shindan.tks-app の箱の中に閉じる（HP のページに包んだとき、外の CSS とぶつからないように） */
.tsukimono-shindan.tks-app{--navy:#1d3b5c;--ink:#1f2d3a;--sub:#4f5d6a;--line:#dfe3e8;--paper:#faf8f3;--accent:#c85a17;--accent-bg:#fdf1e7;
  font-family:"Hiragino Sans","Noto Sans JP",system-ui,sans-serif;color:var(--ink);background:var(--paper);
  max-width:560px;margin:0 auto;padding:28px 16px 24px;box-sizing:border-box;line-height:1.7;font-size:18px;border-radius:16px;
  /* 結果や選び直しで上に戻るとき、サイトの上に張りつく欄（高さ 46px）の下に一行目が入らないよう、少し下で止める */
  scroll-margin-top:64px}
.tsukimono-shindan.tks-app *{box-sizing:border-box}
.tsukimono-shindan.tks-app [hidden]{display:none !important}
.tsukimono-shindan.tks-app [tabindex="-1"]:focus{outline:none} /* 読み上げの位置を移すための focus なので、枠は出さない */
.tsukimono-shindan.tks-app .title,.tsukimono-shindan.tks-app h2,.tsukimono-shindan.tks-app p{margin:0}
.tsukimono-shindan.tks-app .scene{display:flex;flex-direction:column;gap:20px}
.tsukimono-shindan.tks-app .kicker{font-size:16px;color:var(--sub);letter-spacing:.04em}
.tsukimono-shindan.tks-app .title{font-size:28px;line-height:1.4;color:var(--navy);font-weight:800}
.tsukimono-shindan.tks-app .lead{font-size:18px}
.tsukimono-shindan.tks-app .row{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}
.tsukimono-shindan.tks-app .row img{width:calc((100% - 24px) / 7);max-width:70px;height:auto}
.tsukimono-shindan.tks-app .btn{display:block;width:100%;min-height:60px;padding:14px 18px;border-radius:14px;border:2px solid var(--navy);
  background:var(--navy);color:#fff;font:inherit;font-weight:700;font-size:19px;cursor:pointer;text-align:center;text-decoration:none;line-height:1.5}
.tsukimono-shindan.tks-app .btn.sub{background:#fff;color:var(--navy)}
.tsukimono-shindan.tks-app .btn:focus-visible,.tsukimono-shindan.tks-app .choice:focus-visible,.tsukimono-shindan.tks-app .back:focus-visible,.tsukimono-shindan.tks-app a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.tsukimono-shindan.tks-app .note{font-size:16px;color:var(--sub)}
/* 問い */
.tsukimono-shindan.tks-app .top{display:flex;align-items:center;justify-content:space-between;min-height:48px}
.tsukimono-shindan.tks-app .back{min-height:48px;min-width:88px;padding:8px 12px;border:none;background:none;color:var(--navy);font:inherit;font-size:16px;font-weight:700;cursor:pointer;text-align:left}
.tsukimono-shindan.tks-app .count{font-size:16px;color:var(--sub);font-weight:700}
.tsukimono-shindan.tks-app .bar{height:8px;border-radius:4px;background:var(--line);overflow:hidden}
.tsukimono-shindan.tks-app .bar i{display:block;height:100%;background:var(--accent);transition:width .25s}
.tsukimono-shindan.tks-app .ask{font-size:17px;color:var(--sub);font-weight:700}
.tsukimono-shindan.tks-app .q{font-size:23px;line-height:1.5;font-weight:800;color:var(--navy);min-height:3em}
.tsukimono-shindan.tks-app .choices{display:flex;flex-direction:column;gap:14px}
.tsukimono-shindan.tks-app .choice{display:block;width:100%;min-height:76px;padding:16px 18px;border-radius:14px;border:2px solid var(--line);background:#fff;
  color:var(--ink);font:inherit;font-size:19px;font-weight:700;text-align:left;cursor:pointer;line-height:1.5}
@media (hover:hover){.tsukimono-shindan.tks-app .choice:hover{border-color:var(--navy)}}
.tsukimono-shindan.tks-app .choice.picked{border-color:var(--accent);background:var(--accent-bg)}
/* 結果 */
.tsukimono-shindan.tks-app .res-head{text-align:center;font-size:16px;color:var(--sub);font-weight:700}
.tsukimono-shindan.tks-app .res-img,.tsukimono-shindan.tks-app .in-img{display:block;width:72%;max-width:300px;height:auto;margin:0 auto}
.tsukimono-shindan.tks-app .res-name,.tsukimono-shindan.tks-app .in-name{text-align:center;font-size:34px;font-weight:800;color:var(--navy);line-height:1.3}
.tsukimono-shindan.tks-app .res-mono,.tsukimono-shindan.tks-app .in-mono{text-align:center;font-size:17px;color:var(--sub)}
.tsukimono-shindan.tks-app dl{margin:0;display:flex;flex-direction:column;gap:14px}
.tsukimono-shindan.tks-app dt{font-size:17px;color:var(--sub);font-weight:700}
.tsukimono-shindan.tks-app dd{margin:2px 0 0;font-size:18px}
.tsukimono-shindan.tks-app .acts{display:flex;flex-direction:column;gap:12px}
.tsukimono-shindan.tks-app .next-head{border-top:1px solid var(--line);padding-top:18px;margin-bottom:0;font-size:16px;color:var(--sub);font-weight:700;text-align:center}
.tsukimono-shindan.tks-app .quiet{border-top:1px solid var(--line);padding-top:18px;font-size:16px;color:var(--sub)}
.tsukimono-shindan.tks-app .quiet a{color:var(--navy);font-weight:700;text-decoration:underline}
.tsukimono-shindan.tks-app .kids{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.tsukimono-shindan.tks-app .kid{width:calc((100% - 24px) / 4);display:flex;flex-direction:column;align-items:center;gap:2px;min-height:48px;padding:6px 2px 8px;border-radius:12px;border:2px solid var(--line);background:#fff;
  color:var(--ink);font:inherit;font-size:15px;font-weight:700;cursor:pointer;line-height:1.3}
.tsukimono-shindan.tks-app .kid img{width:100%;max-width:80px;height:auto}
.tsukimono-shindan.tks-app .kid[aria-pressed=true]{border-color:var(--accent);background:var(--accent-bg)}
.tsukimono-shindan.tks-app .kid:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.tsukimono-shindan.tks-app .note a{color:var(--navy);font-weight:700;text-decoration:underline}
.tsukimono-shindan.tks-app .credit{text-align:center;font-size:13px;color:var(--sub);margin-top:8px}
.tsukimono-shindan.tks-app .preview{display:block;width:100%;height:auto;border-radius:10px;border:1px solid var(--line)}
.tsukimono-shindan.tks-app .toast{font-size:16px;color:var(--sub);text-align:center;min-height:1.7em}
@media (prefers-reduced-motion:reduce){.tsukimono-shindan.tks-app .bar i{transition:none}}
