@charset "UTF-8";

/* PCページ専用：schedule
 * このファイルを直接編集します。追加の上書き用CSSは作成しません。
 * ページ範囲は :where() で限定し、既存の詳細度を保持しています。
 */

/* Melody uses the same emphasis as its canonical top pricing note. */
:where(html[data-pc-page="schedule"][data-public-shop="melody"]) .schedule-price-section {
  --pc-rank-note-weight: 700;
}

/* The existing free-course component sits between the regular price and course selector. */
:where(html[data-pc-page="schedule"]) .schedule-price-section > .system-free-section {
  margin-top: 16px;
  padding: 12px 0 18px;
}

:where(html[data-pc-page="schedule"]) .schedule-list-section {
  padding: 14px 15px 18px !important;
  overflow: hidden;
}

:where(html[data-pc-page="schedule"]) .schedule-list-head {
  margin-bottom: 10px !important;
}

:where(html[data-pc-page="schedule"]) .schedule-date-title {
  font-size: 22px !important;
}

:where(html[data-pc-page="schedule"]) .schedule-date-title .w.sun {
  color: var(--ui-pc-heading-text-variant-13) !important;
}

:where(html[data-pc-page="schedule"]) .schedule-date-title .w.sat {
  color: var(--ui-pc-heading-text-variant-18) !important;
}

:where(html[data-pc-page="schedule"]) .schedule-day-tabs {
  display: grid;
  grid-template-columns: repeat(7,minmax(0,1fr));
  gap: 2px;
  width: 100%;
  margin: 0 0 12px;
  padding: 0;
  border: 1px solid var(--ui-pc-navigation-border-variant-21);
  background: var(--ui-pc-navigation-bg-variant-17);
  list-style: none;
}

:where(html[data-pc-page="schedule"]) .schedule-day-tabs li {
  min-width: 0;
  margin: 0;
  padding: 0;
  background: var(--ui-pc-navigation-bg-variant-8);
}

:where(html[data-pc-page="schedule"]) .schedule-day-tabs a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 46px;
  padding: 0 2px;
  color: var(--ui-pc-navigation-text-variant-13);
  background: var(--ui-pc-navigation-bg-variant-8);
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  transition: background-color .15s ease,color .15s ease;
  box-sizing: border-box;
}

/* Move the date and weekday together; the 46px link box does not move. */
:where(html[data-pc-page="schedule"]) .schedule-day-label {
  position: relative;
  top: 1px;
}

:where(html[data-pc-page="schedule"]) .schedule-day-tabs a:hover {
  background: var(--ui-pc-tone-schedule-schedule-day-tabs-a-hover-background-1665e, var(--ui-pc-navigation-bg-variant-7));
  color: var(--ui-pc-navigation-text-variant-14);
}

:where(html[data-pc-page="schedule"]) .schedule-day-tabs li.is-active a {
  background: var(--ui-pc-navigation-bg-variant-18);
  color: var(--ui-pc-navigation-text-variant-4);
}

/* Month/day numbers and parentheses keep the existing link colour. */
:where(html[data-pc-page="schedule"]) .schedule-day-tabs .w.sun {
  color: var(--ui-pc-tone-schedule-schedule-day-tabs-w-sun-color-36722, var(--pc-day-sunday, #c52f40));
}

:where(html[data-pc-page="schedule"]) .schedule-day-tabs .w.sat {
  color: var(--ui-pc-tone-schedule-schedule-day-tabs-w-sat-color-4023f, var(--pc-day-saturday, #245dcc));
}

:where(html[data-pc-page="schedule"]) .schedule-day-tabs li.is-active {
  --pc-day-sunday: var(--ui-pc-navigation-pc-day-sunday);
  --pc-day-saturday: var(--ui-pc-navigation-pc-day-saturday);
}

:where(html[data-pc-page="schedule"]) .schedule-empty {
  grid-column: 1/-1;
  width: 100%;
  margin: 0 !important;
}

:where(html[data-pc-page="schedule"]) .schedule-day-tabs {
  margin-bottom: 32px !important;
}

:where(html[data-pc-page="schedule"]) .schedule-price-section {
  margin-top: 20px !important;
}

:where(html[data-pc-page="schedule"]) .schedule-price-section .pc-price-table {
  --pc-price-empty-background: var(--ui-pc-price-pc-price-empty-background);
  --pc-price-day-background: var(--ui-pc-price-pc-price-day-background);
  --pc-price-night-background: var(--ui-pc-price-pc-price-night-background);
  --pc-price-head-foreground: var(--ui-pc-price-pc-price-head-foreground);
  --pc-price-course-background: var(--ui-pc-price-pc-price-course-background);
  --pc-price-course-foreground: var(--ui-pc-price-pc-price-course-foreground);
}

:where(html[data-pc-page="schedule"]) .schedule-course-only-grid {
  margin-top: 20px !important;
}

/* PC_MARKUP_STYLES */

