.elementor-652 .elementor-element.elementor-element-5a06b20f{--display:flex;--overlay-opacity:0.5;--padding-top:80px;--padding-bottom:080px;--padding-left:0px;--padding-right:0px;}.elementor-652 .elementor-element.elementor-element-5a06b20f::before, .elementor-652 .elementor-element.elementor-element-5a06b20f > .elementor-background-video-container::before, .elementor-652 .elementor-element.elementor-element-5a06b20f > .e-con-inner > .elementor-background-video-container::before, .elementor-652 .elementor-element.elementor-element-5a06b20f > .elementor-background-slideshow::before, .elementor-652 .elementor-element.elementor-element-5a06b20f > .e-con-inner > .elementor-background-slideshow::before, .elementor-652 .elementor-element.elementor-element-5a06b20f > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-652 .elementor-element.elementor-element-a8cba82{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 040px;--row-gap:0px;--column-gap:040px;border-style:none;--border-style:none;}.elementor-652 .elementor-element.elementor-element-a8cba82:not(.elementor-motion-effects-element-type-background), .elementor-652 .elementor-element.elementor-element-a8cba82 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-652 .elementor-element.elementor-element-632e6aa2{--display:flex;}.elementor-652 .elementor-element.elementor-element-7841bb49{margin:0em 0em calc(var(--kit-widget-spacing, 0px) + 1em) 0em;}.elementor-652 .elementor-element.elementor-element-7841bb49 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:24px;font-weight:600;color:var( --e-global-color-primary );}.elementor-652 .elementor-element.elementor-global-542{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -20px) 0px;}.elementor-652 .elementor-element.elementor-element-4d373fdc{--display:flex;}.elementor-652 .elementor-element.elementor-element-6bbca977{margin:0em 0em calc(var(--kit-widget-spacing, 0px) + 1em) 0em;}.elementor-652 .elementor-element.elementor-element-6bbca977 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:24px;font-weight:600;color:var( --e-global-color-primary );}.elementor-652 .elementor-element.elementor-element-5ae0ae01{--grid-row-gap:1.5em;--grid-column-gap:10px;}.elementor-652 .elementor-element.elementor-element-5ae0ae01 .elementor-post__meta-data span + span:before{content:"/";}.elementor-652 .elementor-element.elementor-element-5ae0ae01 .elementor-post__title, .elementor-652 .elementor-element.elementor-element-5ae0ae01 .elementor-post__title a{color:var( --e-global-color-secondary );font-family:"Roboto", Sans-serif;font-weight:600;text-decoration:none;}.elementor-652 .elementor-element.elementor-element-5ae0ae01 .elementor-post__meta-data{margin-bottom:0.5em;}.elementor-652 .elementor-element.elementor-element-5e06371{--display:flex;--overlay-opacity:0.5;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-652 .elementor-element.elementor-element-5e06371::before, .elementor-652 .elementor-element.elementor-element-5e06371 > .elementor-background-video-container::before, .elementor-652 .elementor-element.elementor-element-5e06371 > .e-con-inner > .elementor-background-video-container::before, .elementor-652 .elementor-element.elementor-element-5e06371 > .elementor-background-slideshow::before, .elementor-652 .elementor-element.elementor-element-5e06371 > .e-con-inner > .elementor-background-slideshow::before, .elementor-652 .elementor-element.elementor-element-5e06371 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-652 .elementor-element.elementor-element-0d4bd4f{margin:0em 0em calc(var(--kit-widget-spacing, 0px) + 1em) 0em;}.elementor-652 .elementor-element.elementor-element-0d4bd4f .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:24px;font-weight:600;color:var( --e-global-color-primary );}.elementor-652 .elementor-element.elementor-element-6b0e8f8{--grid-row-gap:35px;--grid-column-gap:30px;}.elementor-652 .elementor-element.elementor-element-6b0e8f8 .elementor-post__meta-data span + span:before{content:"///";}@media(max-width:767px){.elementor-652 .elementor-element.elementor-element-5a06b20f{--content-width:100%;--padding-top:020px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-652 .elementor-element.elementor-element-a8cba82{--width:100%;--padding-top:0em;--padding-bottom:0em;--padding-left:0em;--padding-right:0em;}.elementor-652 .elementor-element.elementor-element-632e6aa2{--margin-top:0px;--margin-bottom:050px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-652 .elementor-element.elementor-element-7841bb49{margin:0em 0em calc(var(--kit-widget-spacing, 0px) + 0em) 0em;}.elementor-652 .elementor-element.elementor-element-6bbca977{margin:0em 0em calc(var(--kit-widget-spacing, 0px) + 0em) 0em;}.elementor-652 .elementor-element.elementor-element-5ae0ae01{--grid-row-gap:0.8em;}.elementor-652 .elementor-element.elementor-element-0d4bd4f{margin:0em 0em calc(var(--kit-widget-spacing, 0px) + 0em) 0em;}}/* Start custom CSS for global, class: .elementor-global-542 *//* =====================================================
   既存CSS（変更なし）
===================================================== */
.clinic-schedule {
  border-collapse: collapse;
  width: 100%;
  text-align: center;
  font-family: Arial, sans-serif;
  border: 1px solid #ccc;
}
.clinic-schedule th,
.clinic-schedule td {
  padding: 8px;
  border: 1px solid #ccc;
}
.time-header,
.department-header,
.weekday-header,
.saturday-header,
.day-header {
  background-color: #f0f0f0;
}
/* PC時は横書き（デフォルト） */
.time-cell {
  background-color: #f9f9f9;
  writing-mode: horizontal-tb;
  text-orientation: unset;
  white-space: nowrap;
}
.department-cell {
  text-align: left;
}
.schedule-cell {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .clinic-schedule {
    font-size: 12px;
  }
  .clinic-schedule th,
  .clinic-schedule td {
    padding: 4px;
    min-width: 30px;
  }
  .department-cell {
    font-size: 10px;
    min-width: 80px;
  }
}
@media screen and (max-width: 480px) {
  .clinic-schedule {
    font-size: 10px;
  }
  .clinic-schedule th,
  .clinic-schedule td {
    padding: 2px;
    min-width: 25px;
  }
  .department-cell {
    font-size: 9px;
    min-width: 70px;
    line-height: 1.2;
  }
  /* 480px以下のみ縦書き → この既存コードは削除またはそのまま残す */
  .time-cell {
    font-size: 9px;
    writing-mode: horizontal-tb; /* 元々ここでも横書きに戻していたので変更不要 */
    text-orientation: unset;
  }
}

/* =====================================================
   ここから追記分（スマホ用カード表示）
===================================================== */

/* PCではカードを非表示 */
@media screen and (min-width: 769px) {
  .clinic-cards {
    display: none;
  }
}

/* スマホではテーブルを非表示にしてカードを表示 */
@media screen and (max-width: 768px) {
  .clinic-schedule {
    display: none;
  }

  .clinic-cards {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .clinic-card {
    border: 1px solid #ccc;
    border-radius: 8px;
    overflow: hidden;
    font-family: Arial, sans-serif;
  }

  .clinic-card__header {
    background-color: #f0f0f0;
    padding: 8px 12px;
    font-weight: bold;
    font-size: 15px;
    border-bottom: 1px solid #ccc;
  }

  .clinic-card__time-block {
    padding: 10px 12px;
    border-bottom: 1px solid #eee;
  }
  .clinic-card__time-block:last-child {
    border-bottom: none;
  }

  .clinic-card__time-label {
    font-size: 12px;
    color: #666;
    margin-bottom: 8px;
  }
  .clinic-card__time-label span {
    background: #f9f9f9;
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 2px 8px;
    font-size: 12px;
    color: #333;
  }

  .clinic-card__days {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 4px;
    text-align: center;
  }

  .clinic-card__day {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
  }

  .clinic-card__day-name {
    font-size: 11px;
    color: #888;
  }

  .clinic-card__day-value {
    font-size: 16px;
    font-weight: bold;
    line-height: 1;
  }

  .clinic-card__day-value.open   { color: #2a7ae2; }
  .clinic-card__day-value.maybe  { color: #e07b00; }
  .clinic-card__day-value.closed { color: #bbb;    }
}/* End custom CSS */