/* ─── タイマー画像エリア ─── */
.js-timer-img {
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 12px;
}
.js-timer-img img {
  width: 100%;
  max-width: 480px;
  border-radius: 4px;
  display: block;
  margin: 0 auto;
  background: #c8d8e8;
  min-height: 120px;
}
.js-img-overlay {
  position: absolute;
  inset: 0;
  background: #eef1f6;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #5a667a;
  font-size: .16rem;
  font-weight: 400;
  min-height: 120px;
  outline: 2px dashed #b9c4d6;
  outline-offset: -2px;
}

/* ─── 数字暗記エリア ─── */
.js-num-wrap {
  position: relative;
  margin-bottom: 12px;
}
.js-number-display {
  font-size: .28rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-align: center;
  padding: 16px 0;
  display: none;
}
.js-num-overlay {
  background: #eef1f6;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #5a667a;
  font-size: .16rem;
  font-weight: 400;
  min-height: 60px;
  padding: 12px;
  outline: 2px dashed #b9c4d6;
  outline-offset: -2px;
}

/* ─── もう一度見るリンク（初期非表示） ─── */
.js-btn-retry {
  display: none;
}

/* ─── 完了メッセージ（初期非表示） ─── */
.js-after-timer {
  display: none;
}

/* ─── 体験①：「赤いものの正解」を開くまで「次の問題」以下を非表示 ─── */
.js-q2-wrap {
  display: none;
}

/* ─── アコーディオン答え用スタイル ─── */
.kn-accordion > .js-answer-trigger {
  background-color: #ff6e0c;
  color: #fff;
  border-top-color: #ff6e0c;
  border-bottom-color: #ff6e0c;
}
.kn-accordion > .js-answer-trigger:before {
  border-color: #fff;
}
.kn-accordion > .js-answer-trigger.-active {
  background-color: #d45a00;
  color: #fff;
}
.kn-accordion > .js-answer-trigger.-active + .js-answer-target {
  background-color: #fff1e8;
}
.kn-accordion > .js-answer-target img {
  width: 100%;
  max-width: 460px;
  border-radius: 4px;
  display: block;
  margin: 12px auto 0;
}
/* ─── STEPワーク（処理水準理論） ─── */
.js-step-hidden {
  display: none;
}
.js-step1-wrap {
  position: relative;
  text-align: center;
  margin-bottom: 8px;
}
.js-step1-word {
  font-size: .28rem;
  font-weight: 700;
  letter-spacing: .05em;
  padding: 24px 0;
  display: none;
}
.js-step1-meaning {
  font-size: .16rem;
  color: #555;
  margin-top: 6px;
}
.js-step1-overlay {
  background: #eef1f6;
  border-radius: 4px;
  color: #5a667a;
  font-size: .16rem;
  font-weight: 400;
  padding: 24px;
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  outline: 2px dashed #b9c4d6;
  outline-offset: -2px;
}
.js-step1-overlay.hidden {
  display: none;
}
.kn-txt.js-step-lead {
  font-size: .18rem;
  font-weight: 700;
}
/* STEPワーク内アコーディオンの初期状態（開閉はJSがstyle属性で制御） */
.kn-accordion > .js-answer-target.js-step-target {
  max-height: 0;
  overflow: hidden;
  padding: 0 16px;
}

/* ─── 「もう一度見る」リンクのアイコン（文字色に追従） ─── */
.kn-link.js-link-restart::before {
  content: "";
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  margin-right: .25em;
  vertical-align: -.25em;
  background-color: currentColor;
  -webkit-mask: url(/exam/tips/methodology/images/restart.svg) no-repeat center / contain;
  mask: url(/exam/tips/methodology/images/restart.svg) no-repeat center / contain;
}
