/* トップページ専用：実体験ピックアップ記事カルーセル */
.pickup-section{margin-top:38px}
.pickup-heading{margin-bottom:14px}
.pickup-heading .kicker{margin:0 0 4px}
.pickup-heading h2{margin:0;font-size:clamp(1.5rem,3vw,1.9rem);line-height:1.5}
.pickup-heading p:last-child{margin:6px 0 0;color:var(--muted)}

.pickup-carousel{
  position:relative;
  overflow:hidden;
  border:1px solid #b9d9dd;
  border-radius:18px;
  background:rgba(255,255,255,.96);
  box-shadow:var(--shadow)
}
.pickup-viewport{position:relative;min-height:430px}
.pickup-slide{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(230px,.8fr);
  gap:clamp(20px,4vw,42px);
  align-items:center;
  padding:clamp(22px,4.5vw,46px);
  visibility:hidden;
  opacity:0;
  transform:translateY(6px);
  transition:opacity .55s ease,transform .55s ease,visibility .55s
}
.pickup-slide.is-active{
  position:relative;
  visibility:visible;
  opacity:1;
  transform:translateY(0)
}
.pickup-slide[data-theme="overlap"]{
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(235,245,238,.94))
}
.pickup-slide[data-theme="adhd"]{
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(232,244,251,.94))
}
.pickup-slide[data-theme="depression"]{
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(241,236,248,.93))
}
.pickup-category{
  display:inline-block;
  margin-bottom:10px;
  padding:3px 10px;
  border:1px solid rgba(38,123,135,.18);
  border-radius:999px;
  background:rgba(255,255,255,.78);
  color:var(--accent-dark);
  font-size:.82rem;
  font-weight:800
}
.pickup-slide h3{
  margin:0;
  max-width:680px;
  font-size:clamp(1.55rem,3.6vw,2.35rem);
  line-height:1.45
}
.pickup-summary{margin:16px 0 0;font-size:1.04rem}
.pickup-quote{
  margin:18px 0 0;
  padding:13px 16px;
  border-left:4px solid var(--accent);
  border-radius:0 10px 10px 0;
  background:rgba(255,255,255,.78);
  font-weight:680
}
.pickup-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.pickup-actions .button{margin:0}
.pickup-highlight{
  padding:20px;
  border:1px solid rgba(216,227,231,.94);
  border-radius:15px;
  background:rgba(255,255,255,.8)
}
.pickup-highlight h4{margin:0 0 9px;font-size:1.03rem}
.pickup-highlight ul{margin:0;padding-left:1.25rem}
.pickup-highlight li{margin:.45em 0}
.pickup-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}
.pickup-tags span{
  padding:3px 9px;
  border-radius:999px;
  background:var(--soft);
  color:var(--accent-dark);
  font-size:.8rem;
  font-weight:750
}
.pickup-controls{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:13px;
  align-items:center;
  padding:12px 16px;
  border-top:1px solid var(--line);
  background:rgba(255,255,255,.97)
}
.pickup-control-group{display:flex;gap:8px}
.pickup-control{
  display:inline-grid;
  place-items:center;
  min-width:44px;
  min-height:44px;
  padding:0 12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--text);
  font:inherit;
  font-weight:700;
  cursor:pointer
}
.pickup-control:hover{border-color:var(--accent)}
.pickup-control:focus-visible,.pickup-dot:focus-visible{
  outline:3px solid rgba(38,123,135,.28);
  outline-offset:2px
}
.pickup-pause{min-width:108px;font-size:.9rem}
.pickup-dots{display:flex;justify-content:center;gap:9px}
.pickup-dot{
  width:12px;
  height:12px;
  padding:0;
  border:1px solid var(--accent);
  border-radius:50%;
  background:#fff;
  cursor:pointer
}
.pickup-dot[aria-current="true"]{
  background:var(--accent);
  box-shadow:0 0 0 4px rgba(38,123,135,.12)
}

@media(max-width:720px){
  .pickup-viewport{min-height:680px}
  .pickup-slide{
    grid-template-columns:1fr;
    gap:18px;
    padding:23px 18px
  }
  .pickup-highlight{padding:16px}
  .pickup-actions{flex-direction:column}
  .pickup-actions .button{width:100%}
  .pickup-controls{grid-template-columns:1fr}
  .pickup-dots{order:-1}
  .pickup-control-group{justify-content:center}
  .pickup-pause{flex:1}
}

@media(prefers-reduced-motion:reduce){
  .pickup-slide{transition:none}
}

@media print{
  .pickup-controls{display:none!important}
  .pickup-slide{display:none!important}
  .pickup-slide.is-active{display:grid!important;position:relative!important;visibility:visible!important;opacity:1!important}
}

.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
