html {
  scroll-padding-top: 10rem;
  scroll-behavior:smooth;
}

.header_padding {
  padding-bottom: 8rem;
}

.anchor {
  display: block;
  padding-top: 10rem;
  margin-top: 10rem;
}

body.page-template-page-day-service {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

main {
  position: relative;
  padding-top: 12.6rem;
  padding-bottom: 3rem;
  background-image:url(../img/bg/bg_short2x.png);
  background-repeat:no-repeat;
  background-size:cover;
}

.page-template-page-day-service main {
  flex: 1;
}

.footer {
  background-color: #F9C1DD;
}

.footer img {
  display: block;
}

.footer div {
  display: none;
}

.header_padding {
  padding-bottom: 0rem;
}

.pc_only {
  display: block;
}

.sp_only {
  display: none;
}

.bg_top {
  position: absolute;
  top: 0rem;
  left: 0rem;
  z-index: -1;
  height: auto;
}

.bg_middle {
  position: absolute;
  bottom:0rem;
  left: 0rem;
  z-index: -1;
}

.bg_sp {
  position: absolute;
  top: 0rem;
  left: 0rem;
  z-index: -1;
  object-fit: cover;
  height: 100%;
  width: 100%;
}

/* Page Header */
.day-service__header .pc_only {
  display: flex;
  align-items: center;
}

.day-service__title {
  font: 2.8rem / 4rem "Zen Maru Gothic";
  font-weight: 500;
  margin-top: 0.4rem;
  margin-bottom: 1.2rem;
  margin-left: 9rem;
  position: relative;
}

.day-service__title::before {
  background-color: #FAD670;
  display: inline-block;
  height: 4rem;
  width: 1rem;
  content: '';
  position: absolute;
  top: -0.1rem;
  left: -1.5rem;
}

/* Main Content */
.day-service__main-content {
  display: flex;
}

.day-service__main-visual {
  width: 83.6rem;
  height: 47rem;
  box-shadow: 0.6rem 0.6rem 0rem #FAD670;
  border-radius: 2rem;
  margin-bottom: 10rem;
  margin-left: 6.8rem;
  margin-top: 2rem;
}

.day-service__main-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 2rem;
}

/* Sidebar */
.sidebar {
  width: 27.9rem;
  height: auto;
  /* Adjusted for flexible content */
  font: 1.6rem/2.4rem "Zen Maru Gothic";
  font-weight: 500;
  border: 0.1rem solid #000;
  border-radius: 1rem;
  background: #FFFFFF;
  position: fixed;
  top: 25.8rem;
  right: 7rem;
  padding: 1.4rem 2.1rem;
}

.sidebar__list {
  margin: 0;
  padding: 0;
  list-style: none;
  margin-bottom: 2rem;
}

.sidebar__item {
  margin-bottom: 1rem;
}

.sidebar__item a {
  text-decoration: none;
  color: inherit;
}

.sidebar__button {
  background: #F7F1DC;
  color: #000000;
  padding: 1.45rem;
  border-radius: 1rem;
  cursor: pointer;
  display: flex;
  text-decoration: none;
  align-items: center;
  justify-content: space-between;
}

.sidebar__button--facility {
  margin-top: 1rem;
}

.sidebar__button-text {
  /* No specific styles needed if it's just text */
}

.sidebar__icon {
  width: 2rem;
  height: 2rem;
  border: 0.1rem solid #000;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  /* Centering arrow */
  background: #FAD670;
}

/* Triangle (▶) */
.sidebar__icon-arrow {
  width: 0;
  height: 0;
  border-top: 0.5rem solid transparent;
  border-bottom: 0.5rem solid transparent;
  border-left: 0.8rem solid #FFFFFF;
  /* Removed rotation and strange margin */
}

/* Body container */
.day-service__body {
  width: 83.6rem;
  height: auto;
  border: 0.1rem solid #000;
  border-radius: 1rem;
  margin-left: 7rem;
  margin-top: -0.8rem;
  background-color: #FFFFFF;
  padding: 6rem 3rem 6rem 3rem;
}

/* About Section */
.about-section {
  margin-bottom: 5rem;
}

.about-section__title {
  margin-bottom: 1.2rem;
  font: 2.5rem/3.6rem "Zen Maru Gothic";
  font-weight: 500;
  margin-left: 1.5rem;
  position: relative;
}

.about-section__title::before {
  background-color: #FAD670;
  display: inline-block;
  height: 4rem;
  width: 1rem;
  content: '';
  position: absolute;
  top: -0.3rem;
  left: -1.5rem;
}

.about-section__content {
  /* No specific styles needed */
}

.about-section__text-block {
  /* No specific styles needed */
}

.about-section__interview-title,
.intro-section__title {
  font: 2rem/2.9rem "Noto Sans JP";
  font-weight: 500;
  margin-top: 3.2rem;
  margin-left: 4rem;
  position: relative;
}

.about-section__interview-title::before,
.intro-section__title::before {
  background-color: #FAD670;
  display: inline-block;
  height: 0.4rem;
  width: 3rem;
  content: '';
  position: absolute;
  top: 1.2rem;
  left: -4rem;
}

.about-section__image {
  width: 71.6rem;
  height: 47.7rem;
  margin: 1.4rem auto 0 auto;
  /* top, right, bottom, left */
}

/* Intro Section */
.intro-section {
  margin-bottom: 10rem;
}

.intro-section__text {
  font: 1.5rem/3rem "Noto Sans JP";
  text-align: left;
  margin-top: 1.1rem;
  letter-spacing: 0.075rem;
  margin-left: 4rem;
}

.intro-section__image {
  width: 55rem;
  height: 30.9rem;
  margin: 1.2rem auto 0 auto;
  /* top, right, bottom, left */
}

/* News Section */
.news {
  margin-top: 10.2rem;
}

.news__heading {
  font: 2.5rem/3.6rem "Zen Maru Gothic";
  font-weight: 500;
  margin-left: 1.5rem;
  position: relative;
}

.news__heading::before {
  background-color: #FAD670;
  display: inline-block;
  height: 4rem;
  width: 1rem;
  content: '';
  position: absolute;
  top: -0.3rem;
  left: -1.5rem;
}

.news__list {
  display: flex;
  gap: 2rem;
  margin-left: 3rem;
  margin-right: 3rem;
  margin-top: 3.2rem;
  justify-content: center;
  list-style: none;
  padding: 0;
}

.news__item {
  width: 23.5rem;
}

.news__link {
  text-decoration: none;
  color: inherit;
  display: block;
}

.news__thumbnail {
  width: 100%;
  height: 14rem;
  display: block;
  border: #FAD670 solid 0.1rem;
}

.news__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.news__meta {
  /* 必要であればスタイルを追加 */
}

.news__date {
  font-size: 1.5rem;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  line-height: calc(30 / 15);
  letter-spacing: calc(0.75em / 15);
}

.news__title {
  font-size: 1.5rem;
  font-weight: 500;
  font-family: "Zen Maru Gothic", sans-serif;
  line-height: calc(30 / 15);
  letter-spacing: calc(0.75em / 15);
}

.news__button-wrapper {
  text-align: center;
  margin-top: 2rem;
}

.news__button {
  padding: 0.1rem 1rem;
  background: #FAD670;
  border-radius: 1.6rem;
  color: #000000;
  font: 1.5rem/3rem "Zen Maru Gothic";
  font-weight: 500;
  border: none;
  letter-spacing: 0.075rem;
  text-decoration: none;
  display: inline-block;
}

/* Policy Section */
.policy-section {
  margin-top: 10.2rem;
}

.policy-section__title {
  font: 2.5rem/3.6rem "Zen Maru Gothic";
  font-weight: 500;
  margin-bottom: 3.2rem;
  margin-left: 1.4rem;
  position: relative;
}

.policy-section__title::before {
  background-color: #FAD670;
  display: inline-block;
  height: 4rem;
  width: 1rem;
  content: '';
  position: absolute;
  top: -0.1rem;
  left: -1.5rem;
}

.policy-section__list {
  margin-left: 4rem;
}

.policy-section__item {
  font: 1.5rem/3rem "Noto Sans JP";
  letter-spacing: 0.075rem;
  text-align: left;
}

/* Facility Summary Section */
.facility-summary {
  margin-top: 10.2rem;
}

.facility-summary__title {
  font: 2.5rem/3.6rem "Zen Maru Gothic";
  font-weight: 500;
  margin-bottom: 3.2rem;
  margin-left: 1.4rem;
  position: relative;
}

.facility-summary__title::before {
  background-color: #FAD670;
  display: inline-block;
  height: 4rem;
  width: 1rem;
  content: '';
  position: absolute;
  top: -0.1rem;
  left: -1.5rem;
}

/* 既存の .facility-summary__list-wrapper は削除 (HTMLから削除済みなので) */

.about_facility {
  /* 変更 */
  width: 74.6rem;
  flex-wrap: wrap;
  margin-left: 4rem;
  margin-bottom: 7rem;
  font-size: 1.6rem;
  font-weight: 400;
  font-family: "Noto Sans JP", sans-serif;
  display: flex;
  /* flexクラスがHTMLに付いているため */
}

.facility_dt {
  /* 変更 */
  width: 18%;
  padding-top: 1.8rem;
  padding-bottom: 1.5rem;
  position: relative;
}

.facility_dt::after {
  /* 変更 */
  content: "";
  display: inline-block;
  position: absolute;
  background-color: #707070;
  width: 74.6rem;
  height: 0.1rem;
  top: 0rem;
  left: -1rem;
}

.facility_dt:first-child::after {
  /* 変更 */
  display: none;
}

.facility_dd {
  /* 変更 */
  width: 82%;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  line-height: calc(30 / 16);
  letter-spacing: calc(0.8em / 16);
}


/* Business Summary Section */
.business-summary {
  margin-top: 10.2rem;
  margin-bottom: 6rem;
}

.business-summary__title {
  font: 2.5rem/3.6rem "Zen Maru Gothic";
  font-weight: 500;
  margin-bottom: 3.2rem;
  margin-left: 1.4rem;
  position: relative;
}

.business-summary__title::before {
  background-color: #FAD670;
  display: inline-block;
  height: 4rem;
  width: 1rem;
  content: '';
  position: absolute;
  top: -0.1rem;
  left: -1.5rem;
}

.business-summary__content {
  /* No specific styles needed */
}

.business-summary__text {
  font: 1.6rem/3rem "Noto Sans JP";
  letter-spacing: 0.073rem;
}

/* ===============================================
SP
=============================================== */
@media screen and (max-width: 699.98px) {
  main {
    padding-top: 0;
    padding-bottom: 10rem;
  }

  .pc_only {
    display: none;
  }

  .sp_only {
    display: block;
  }

  .bg_top {
    top: -4rem;
  }

  .bg_middle {
    bottom: -24.4rem;
  }

  .header_padding {
    padding-bottom: 0rem;
  }

  .day-service__title {
    font-size: 2rem;
    line-height: 3rem;
    font-weight: 500;
    font-family: "Zen Maru Gothic", sans-serif;
    color: #000000;
    background-color: #FAD670;
    text-align: center;
    width: fit-content;
    padding: 1rem 2rem;
    margin: 3rem auto 3rem;
    border-radius: 1rem;
  }

  .day-service__title::before {
    display: none;
  }

  .day-service__main-content {
    display: flex;
    flex-direction: column;
  }

  .day-service__main-visual {
    order: 1;
    width: 35.5rem;
    height: 18rem;
    margin: 5rem auto 0rem;
    box-shadow: 0.3rem 0.3rem 0rem #FAD670;
  }

  .day-service__main-visual img {
    border-radius: 1rem;
  }

  .day-service__main-content .day-service__header.sp_only {
    order: 2;
  }

  .day-service__main-content .sp_only:last-of-type {
    /* アコーディオンのラッパー */
    order: 3;
  }

  .day-service__body {
    width: 33.5rem;
    margin: 0rem auto 0 auto;
    padding: 3rem 1.5rem;
  }

  .about-section,
  .intro-section,
  .news,
  .policy-section,
  /* .facility-summary, */
  /* 既存の facility-summary セクションは削除 */
  .business-summary {
    margin-bottom: 7rem;
  }

  .about-section__title,
  .news__heading,
  .policy-section__title,
  /* .facility-summary__title, */
  /* 既存の facility-summary__title は削除 */
  .business-summary__title {
    font-size: 2rem;
    margin-left: 1rem;
  }

  .about-section__title::before,
  .news__heading::before,
  .policy-section__title::before,
  /* .facility-summary__title::before, */
  /* 既存の facility-summary__title::before は削除 */
  .business-summary__title::before {
    width: 0.5rem;
    height: 3rem;
    top: -0.1rem;
    left: -1rem;
    background-color: #FAD670;
  }

  .about-section__interview-title,
  .intro-section__title {
    font-size: 1.6rem;
    line-height: 2rem;
    margin-left: 3.3rem;
    margin-top: 0rem;
  }

  .about-section__interview-title::before,
  .intro-section__title::before {
    width: 2rem;
    height: 0.3rem;
    left: -3rem;
    top: 0.8rem;
    background-color: #FAD670;
  }

  .about-section__image {
    width: 28.9rem;
    height: auto;
  }

  .intro-section__text {
    font-size: 1.4rem;
    margin-left: 0rem;
    margin-bottom: 5rem;
    width: 28.9rem;
    margin: 1.5rem auto 5rem auto;
  }

  .intro-section__image {
    width: 28.9rem;
    height: auto;
    margin-top: -3rem;
  }

  .news {
    margin-top: 0rem;
  }

  .news__list {
    flex-direction: column;
    align-items: center;
    margin-left: 0;
    margin-right: 0;
  }

  .news__item {
    width: 90%;
  }

  .policy-section__list {
    margin-left: 0;
  }

  .policy-section__item {
    font-size: 1.4rem;
  }


  .business-summary__text {
    font-size: 1.4rem;
  }

  /* New Accordion CSS */
  .nav {
    display: none;
  }

  .nav_text {
    font-size: 1.6rem;
    margin-bottom: 1rem;
    display: block;
    color: #333;
    text-decoration: none;
  }

  .nav_text_aut1,
  .nav_text_aut2,
  .nav_text_aut3 {
    display: block;
    font-size: 1.6rem;
    width: 29rem;
    height: 5.4rem;
    margin-bottom: 1rem;
    padding: 1.5rem 2rem;
    background-color: #F7F1DC;
    border-radius: 1rem;
    color: #333;
    text-decoration: none;
    position: relative;
  }

  .nav_text_aut2,
  .nav_text_aut3 {
    width: 20rem;
  }

  .nav_wrap {
    padding: 1rem 2rem;
    font-family: "Zen Maru Gothic";
    width: 33.5rem;
    border-radius: 1rem;
    border: 0.1rem solid #000000;
    margin: 0 auto 1rem;
    background-color: white;
  }

  .nav_wrap nav {
    display: none;
    font-weight: 500;
  }

  .nav_open {
    font-size: 1.6rem;
    font-weight: 600;
    position: relative;
    transition: 0.7s;
    cursor: pointer;
    padding-right: 4rem;
    /* アイコンスペース確保 */
  }

  .nav_open.active {
    margin-bottom: 2rem;
  }

  /* 円の背景 */
  .nav_open::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 1.2rem;
    width: 2.5rem;
    height: 2.5rem;
    margin-top: -1.25rem;
    border-radius: 50%;
    background-color: #FAD670;
    transition: all 0.3s;
    z-index: 1;
  }

  /* アイコンのコンテナ */
  .nav_icon {
    position: absolute;
    top: 50%;
    right: 1.2rem;
    width: 2.5rem;
    height: 2.5rem;
    transform: translateY(-50%);
    z-index: 2;
  }

  /* 横棒 */
  .nav_icon::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1.6rem;
    height: 0.2rem;
    background-color: #000;
    transform: translate(-50%, -50%);
  }

  /* 縦棒 */
  .nav_icon::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0.2rem;
    height: 1.6rem;
    background-color: #000;
    transform: translate(-50%, -50%) rotate(0deg);
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
  }

  /* active時の縦棒アニメーション */
  .nav_open.active .nav_icon::after {
    transform: translate(-50%, -50%) rotate(-90deg);
    opacity: 0;
  }

  .nav_arrow,
  .nav_arrow2 {
    width: 2rem;
    height: 2rem;
    position: absolute;
    top: 50%;
    right: 1.5rem;
    transform: translateY(-50%);
    display: inline-block;
  }

  .nav_arrow::before,
  .nav_arrow2::before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 2rem;
    height: 2rem;
    background-color: #FAD670;
    border: #000000 solid 0.1rem;
    border-radius: 50%;
    top: 0;
    left: 0;
  }

  .nav_arrow::after,
  .nav_arrow2::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 0.7rem;
    height: 1rem;
    background-color: #FFFFFF;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    top: 50%;
    left: 50%;
    transform: translate(-40%, -50%);
  }

  /* Facility Summary Section for SP */
  .facility_title {
    /* 変更 */
    font-size: 1.6rem;
    line-height: 2rem;
    margin-left: 3.3rem;
    margin-top: 0rem;
    margin-bottom: 0rem;
    /* 不要なマージンをリセット */
  }

  .facility_title::before {
    /* 変更 */
    width: 2rem;
    height: 0.3rem;
    left: -3rem;
    top: 0.8rem;
    background-color: #FAD670;
  }

  .about_facility {
    /* 変更 */
    width: 28.9rem;
    /* SPに合わせて調整 */
    flex-direction: column;
    /* これを追加 */
    margin-left: 2.5rem;
    /* 既存の SP スタイルから移動 */
    margin-bottom: 5rem;
    /* 既存の SP スタイルから移動 */
    font-size: 1.4rem;
    /* 調整 */
  }

  .facility_dt {
    /* 変更 */
    width: 100%;
    padding-top: 0rem;
    padding-bottom: 0rem;
    position: relative;
    padding-top: 1rem;
    font-weight: bold;
    /* fureai.css の SP スタイルを参考に */
  }

  .facility_dt::after {
    /* 変更 */
    width: 26.9rem;
    /* SPに合わせて調整 (33.5rem - (2*1rem padding) - (2*1rem margin-left/right of all_fureai_wrapper)) */
    top: 0.5rem;
    left: -1rem;
  }

  .facility_dd {
    /* 変更 */
    width: 85%;
    /* 調整 */
    padding-top: 0rem;
    padding-bottom: 0rem;
    line-height: calc(30 / 15);
    letter-spacing: calc(0.8em / 15);
    margin-left: 1.5rem;
    /* fureai.css の SP スタイルを参考に */
  }
}