/* 開院後フロントページと共通部分 */
.section_front_top {
  padding: 0;
  height: 70vh;
  position: relative;
}
.top_img {
  height: 100%;
  object-fit: cover;
  object-position: center center;
  position: absolute;
}
.section_front_news .section_inner,
.section_front_schedule .section_inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}
.clinic_schedule {
  width: 100%;
  text-align: center;
}
.clinic_schedule tr {
  border-bottom: 1px solid var(--accent-color);
}
.clinic_schedule td,
.clinic_schedule th {
  padding: 1rem .5rem;
}
.am_schedule .head_hour,
.pm_schedule .head_hour {
  font-size: .8rem;
}
.mark_open:before,
.mark_close:before {
  content:'●';
  color: var(--accent-color);
}
.mark_close:before  {
  content:'-';
}
.front_close_day {
  margin-top: 4rem;
}
@media (min-width: 1024px) {
  .section_front_top {
    height: calc(90vh - 96px);
    overflow: hidden;
  }
  .top_img {
    height: 100%;
    width: 100%;
  }
  .section_front_news .section_inner,
  .section_front_schedule .section_inner {
    grid-template-columns: 3fr 7fr;
    gap: 3rem;
  }
  .am_schedule .head_hour,
  .pm_schedule .head_hour {
    font-size: 1rem;
  }
}

.section a:hover {
  color: var(--accent-color);
}


/* ティザーページ専用部分 */
.front-page_tease #body_wrapper {
  padding-top: 0px;
}
.section_front_top {
  height: auto;
  text-align: center;
}
.front_top_inner {
  position: relative;
}
.top_img {
  object-fit: contain;
  position: inherit;
}
.top_catch {
  position: inherit;
  font-size: 2.5rem;
  color: #c1905c;
  /* font-family: "Klee One"; */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  padding-top: 2rem;
}
.catch {
  font-size: 2.5rem;
}
.top_lead p {
  font-size: 1.5rem;
}
.front_top_type {}
@media (min-width: 1024px) {
  .front_top_inner {
    height: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2rem;
  }
  .top_img {
    width: auto;
  }
  .top_catch {
    grid-template-rows: 7fr 3fr;
    padding-top: 0;
    font-size: 3rem;
    gap: 1rem;
  }
  .front_top_type {
    max-width: 1000px;
  }
}

.section_overview {
  text-align: center;
  color: var(--text-head-color);
  p {
    font-size: 1.5rem;
  }
}

.entry-list .entry {
  display: block;
}
.tease_news {
  summary {
    display: grid;
    grid-template-columns: 1fr;
    gap: .5rem;
    align-items: center;
    position: relative;
    cursor: pointer;
  }
  summary:hover {
    color: var(--accent-color);
  }
  summary::-webkit-details-marker {
    display: none;
  }
  summary::after {
    content: "";
    transition: transform 0.3s ease;
    border-bottom: solid 2px var(--accent-color);
    border-left: solid 2px var(--accent-color);
    transform: rotate(-45deg);
    position: absolute;
    top: calc(50% - .45rem);
    right: 4px;
    width: .5rem;
    height: .5rem;
  }
  &[open] summary::after {
    top: calc(50% - .2rem);
    transform: rotate(-225deg);
  }
  .tease_news_body {
    margin-top: 1rem;
    padding: 1rem;
    background: var(--white);
    border: 1px solid var(--border-color);  
    max-height:0;
    opacity:0;
    overflow:hidden;
    transition:
      max-height .45s ease,
      opacity .25s ease;
  }
  &[open] .tease_news_body{
    max-height:1000px;
    opacity:1;
  }
  .tease_news_body p:not(:last-child) {
    padding-bottom: .5rem;
  }
  .tease_news_body a {
    border-bottom: 1px solid var(--accent-color);
  }
}
@media (min-width: 1024px) {
  .tease_news summary {
    grid-template-columns: 8rem 1fr;
    gap: 2rem;
  }
}

.section_front_message {
  .section_sub_title {
    color: var(--text-head-sub-color);
    margin: 1.5rem 0 1rem;
  }
  .director_name {
    font-size: 2rem;
    padding-left: 1rem;
    color: var(--text-color);
  }
  pre.wp-block-code {
    padding: 0;
  }
}

.section_about table {
  width: 100%;
}

.section_access .grid3 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  padding-bottom: 3rem;
}
@media (min-width: 1024px) {
  .section_access .grid3 {
    grid-template-columns: repeat(3,1fr);
  }
}

@media (min-width: 1024px) {
  .section.tease_last_child {
    padding-bottom: 5rem;
  }
}

.footer_sns {
  padding: .5rem 0 1rem;
}