/*************** カスタム ***************/
.slider-for1 {
  width: 100%;
  position: relative;
  overflow: hidden;
  perspective: 1000px;
}

/* Swiper全体を正円に合わせる */

.slider-for1 .swiper-wrapper,
.slider-for1 .swiper-slide {
  width: 100%;
  height: 100%;
}

/* 回転時に裏面が透けるのを防ぐ */

.slider-for1 .swiper-slide {
  overflow: hidden;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transform-style: preserve-3d;
}

/* 写真 */

.slider-for1 .swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  border-radius: 0.9rem 0 0.9rem 0;
}
.therapist-box .photo .grade-icon {
  border-radius: 0 0 0.9rem 0.9rem;
}
.nav_follow {
  border: none;
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0.8) -16%,
    rgba(255, 255, 255, 0.7) 28%,
    rgba(255, 255, 255, 0.3) 65%,
    rgba(255, 255, 255, 0) 100%
  );
  height: 8rem;
  box-sizing: border-box;
}
.toggle span {
  border-bottom: solid 0.075rem #8f84c7;
}
.toggle {
  top: 18px;
  border: 1px solid #8f84c7;
  padding: 2rem;
  border-radius: 50%;
}
.toggle span {
  right: 12px;
  width: 32px;
}
.toggle span:nth-child(1) {
  top: 15px;
}

.toggle span:nth-child(2) {
  top: 23px;
}

.toggle span:nth-child(3) {
  top: 31px;
}
.toggle.active {
  border: none;
}
.toggle.active span:nth-child(1) {
  top: 26px;
  left: 9px;
}
.toggle.active span:nth-child(2) {
  top: 26px;
  right: 10px;
}
.toggle.active span:nth-child(3) {
  display: none;
}
.foot_navi {
  background: linear-gradient(315deg, #8f84c7 0%, #a5a9dc 50%, #b7dff2 100%);
  background: linear-gradient(
    135deg,
    #9fddf0 0%,

    #c9b5e8 50%,

    #b593cf 100%
  );
}
.f-hours {
  color: #4b4b4b;
  border-top: none;
  background: linear-gradient(
    135deg,
    #fff1b5 0%,
    #d8b45f 45%,
    #fff0a8 70%,
    #a97a27 100%
  );
}
.cont_titile {
  color: #76558f;
}
.cont_titile span {
  background: linear-gradient(
    135deg,
    #f8e8ae 0%,
    #c99f43 45%,
    #fff2bc 70%,
    #a77927 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.btn01 a {
  background: linear-gradient(
    135deg,
    #fff1b5 0%,
    #d8b45f 45%,
    #fff0a8 70%,
    #a97a27 100%
  );
  color: #4b4b4b;
  border-radius: 3rem;
}
.therapist-box .todays-time p {
  background: linear-gradient(
    135deg,
    #fff1b5 0%,
    #d8b45f 45%,
    #fff0a8 70%,
    #a97a27 100%
  );
  color: #4b4b4b;
}
.top_schedule,
.top_newface {
  background:
    radial-gradient(
      circle at 0% 25%,
      rgba(169, 139, 212, 0.32) 0%,
      rgba(169, 139, 212, 0.12) 30%,
      transparent 55%
    ),
    radial-gradient(
      circle at 100% 65%,
      rgba(159, 221, 240, 0.42) 0%,
      rgba(159, 221, 240, 0.14) 30%,
      transparent 55%
    ),
    linear-gradient(180deg, #ffffff 0%, #fbfaff 45%, #f7fbfd 75%, #ffffff 100%);
  position: relative;
  border-top: 2px solid;
  border-bottom: 2px solid;
  border-image: linear-gradient(34deg, #9e8139 -27%, #f9f1b5 50%, #9e8139 120%);
  border-image-slice: 1;
  box-sizing: border-box;
}
.top_schedule::before,
.top_newface::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(
      circle at 15% 20%,
      rgba(255, 255, 255, 0.9) 0 2px,
      transparent 3px
    ),
    radial-gradient(
      circle at 80% 35%,
      rgba(255, 255, 255, 0.8) 0 3px,
      transparent 4px
    ),
    radial-gradient(
      circle at 35% 75%,
      rgba(255, 255, 255, 0.75) 0 2px,
      transparent 3px
    );
  background-size: 180px 180px;
  opacity: 0.65;
}
.ranking-title {
  display: none;
}

@media screen and (min-width: 640px) {
  .bs-flex_box {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: nowrap;
    padding-bottom: 3rem;
  }
  .bs-flex_box section {
    width: 33%;
    padding: 0 1rem;
  }
}
