@charset "UTF-8";

/* 見出しクリック可能（アコーディオン） */
:where([id^="aform-"]) dl.acc-target > dt {
  cursor: pointer;
  user-select: none;
  position: relative;
  padding-right: 1.5em; /* 矢印領域 */
}
:where([id^="aform-"]) dl[aria-expanded="true"] > dt { font-weight: 600; }

/* 右端インジケーター（閉: ▶ / 開: ▼） */
:where([id^="aform-"]) dl.acc-target > dt::after {
  content: "▶";
  position: absolute;
  right: .4em;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.95em;
  line-height: 1;
  opacity: 0.75;
  transition: opacity 120ms ease;
}
:where([id^="aform-"]) dl[aria-expanded="true"].acc-target > dt::after {
  content: "▼";
  opacity: 1;
}

/* 企業別プログラムのグループ化表示 */
:where([id^="aform-"]) .yt-group{ list-style:none; margin:.75em 0; }
:where([id^="aform-"]) .yt-group-title{ font-weight:600; margin:.25em 0; }
:where([id^="aform-"]) .yt-group-list{ list-style:none; margin:.25em 0 0 1.25em; padding:0; }
:where([id^="aform-"]) .yt-group-list > li{ margin:.35em 0; }

/* 少し右にオフセット（見出しと区別） */
:where([id^="aform-"]) .yt-group{
  margin-left: clamp(8px, 3vw, 16px);
}
:where([id^="aform-"]) .yt-group-list{
  margin-left: 1.5rem;
}
@media (max-width: 480px){
  :where([id^="aform-"]) .yt-group{ margin-left: 10px; }
  :where([id^="aform-"]) .yt-group-list{ margin-left: 1.25rem; }
}

/* インラインエラー（プログラム未選択） */
.yt-inline-error{
  color:#d33; font-size:0.92em; margin: .25rem 0 .25rem 0;
}
.yt-inline-error[hidden]{ display:none; }

/* スクロール位置（固定ヘッダー等がある場合） */
:where([id^="aform-"]) dl.acc-target { scroll-margin-top: 88px; }
