.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-7649 .elementor-element.elementor-element-2d18788{--spacer-size:30px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-7649 .elementor-element.elementor-element-612bc00{--spacer-size:50px;}.elementor-7649 .elementor-element.elementor-element-446d6a9 > .elementor-widget-container{margin:20px 0px -10px 0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-7649 .elementor-element.elementor-element-5b9ce83 .elementor-button{background-color:#20A4C9;font-size:22px;font-weight:600;text-transform:uppercase;fill:var( --e-global-color-d35cacd );color:var( --e-global-color-d35cacd );}.elementor-7649 .elementor-element.elementor-element-5b9ce83 .elementor-button:hover, .elementor-7649 .elementor-element.elementor-element-5b9ce83 .elementor-button:focus{background-color:#030202A3;}.elementor-7649 .elementor-element.elementor-element-5b9ce83 .elementor-button-content-wrapper{flex-direction:row;}.elementor-7649 .elementor-element.elementor-element-4b69950 .elementor-button:hover, .elementor-7649 .elementor-element.elementor-element-4b69950 .elementor-button:focus{background-color:#030202A3;}.elementor-7649 .elementor-element.elementor-element-4b69950 .elementor-button-content-wrapper{flex-direction:row;}.elementor-7649 .elementor-element.elementor-element-4b69950 .elementor-button{font-size:22px;font-weight:600;text-transform:uppercase;fill:var( --e-global-color-d35cacd );color:var( --e-global-color-d35cacd );}.elementor-7649 .elementor-element.elementor-element-c579765{--spacer-size:50px;}.elementor-widget .tippy-tooltip .tippy-content{text-align:center;}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}}/* Start custom CSS for html, class: .elementor-element-59dae32 *//* PC表：列幅を揃える */
.pc-only .schedule-table-pc {
  table-layout: fixed;
  width: 100%;
}

/* 左の午前・午後列 */
.pc-only .schedule-table-pc .time-label {
  width: 70px;
}

/* 診療科列 */
.pc-only .schedule-table-pc .dept-label {
  width: 90px;
}

/* ヘッダー側の左空白＋診療科 */
.pc-only .schedule-table-pc thead th:first-child {
  width: 70px;
}

.pc-only .schedule-table-pc thead th:nth-child(2) {
  width: 90px;
}

/* 月〜土を均等幅にする */
.pc-only .schedule-table-pc thead th:nth-child(n+3),
.pc-only .schedule-table-pc tbody td:not(.time-label):not(.dept-label) {
  width: calc((100% - 160px) / 6);
}

/* セルの高さを揃える */
.pc-only .schedule-table-pc tbody td {
  height: 64px;
  padding: 12px 8px;
  box-sizing: border-box;
}

/* 午前・午後の大きなセルを中央揃え */
.pc-only .schedule-table-pc .time-label,
.pc-only .schedule-table-pc .dept-label {
  vertical-align: middle;
}

/* 文字が多いセルでも列幅を崩さない */
.pc-only .schedule-table-pc td,
.pc-only .schedule-table-pc th {
  word-break: keep-all;
  overflow-wrap: break-word;
}
/* ===============================
   左列の色（午前・午後）
=============================== */
.pc-only .schedule-table-pc .time-label {
  background: linear-gradient(180deg, #e6f4f8, #d7edf3) !important;
  color: #1a3a5c;
  font-weight: 700;
}

/* ===============================
   診療科列の色
=============================== */
.pc-only .schedule-table-pc .dept-label {
  background: #f1f8fb !important;
  color: #1a3a5c;
  font-weight: 600;
}

/* ===============================
   午前・午後の区切り線
=============================== */
.pc-only .schedule-table-pc .time-divider td {
  border-top: 3px solid #bfe7ef !important;
}

/* ===============================
   他の背景に上書きされる対策
=============================== */
.pc-only .schedule-table-pc td {
  background: inherit;
}
/* ===============================
   常勤医（青表示）
=============================== */
.pc-only .schedule-table-pc .dr-resident {
  color: #0057ff !important;
  font-weight: 700;
}

/* 非常勤（通常色） */
.pc-only .schedule-table-pc .dr-visiting {
  color: #555;
}

/* 注釈 */
.pc-only .schedule-table-pc .dr-note {
  color: #666;
  font-size: 12px;
}/* End custom CSS */