@charset "UTF-8";

/* ===================================
【202609 TOP改修】ここから
=================================== */

.ly_topFvBnr {
  width: 100%;
  padding-top: min(2.43vw, 35px);
  padding-bottom: min(3.33vw, 48px);
  padding-inline: min(10.97vw, 158px);
}

.bl_topFvBnr_list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: min(2.08vw, 30px);
  list-style: none;
}

/* 1200px以上はスライダーにせず4列グリッド */
@media screen and (width >= 1200px) {
  .bl_topFvBnr_slider.splide {
    visibility: visible;
  }

  .bl_topFvBnr_slider .splide__track {
    overflow: visible;
  }

  /* Splide破棄後に is-initialized が残ると
     splide.min.css の .splide.is-initialized:not(.is-active) .splide__list { display:block }
     が効いて縦並びになるため、同じ詳細度で打ち消す */
  .bl_topFvBnr_slider.is-initialized .splide__list.bl_topFvBnr_list {
    display: grid;
  }
}

.el_topFvBnr_link {
  display: block;
  transition: opacity 0.3s ease;
}

.el_topFvBnr_link img {
  display: block;
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

@media (hover: hover) {
  .el_topFvBnr_link:hover {
    opacity: 0.7;
  }
}

/* 1199px以下はスライダー（768〜1199px: 2枚表示 / SP: 前後見切れ） */
@media screen and (width <= 1199px) {
  /* gap は flex にも効くため、PC用の指定を打ち消す（スライド位置がずれる） */
  .bl_topFvBnr_list {
    display: flex;
    gap: 0;
  }
}

@media screen and (width <= 767px) {
  .ly_topFvBnr {
    padding-block: min(6.4vw, 24px);
    padding-inline: 0;
  }
}

.ly_topFullfaceBnr {
  display: block;
  margin-inline: min(10.97vw, 158px);
  margin-bottom: min(1.39vw, 20px);
  transition: opacity 0.3s ease;
}

.ly_topFullfaceBnr img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

@media (hover: hover) {
  .ly_topFullfaceBnr:hover {
    opacity: 0.7;
  }
}

@media screen and (width <= 767px) {
  .ly_topFullfaceBnr {
    margin-inline: min(2.67vw, 10px);
    margin-bottom: min(5.33vw, 20px);
  }
}

.bl_topSliderArrows {
  display: none;
}

@media screen and (width <= 1199px) {
  .bl_topSliderArrows {
    display: block;
  }

  .bl_topSliderArrows .splide__arrow {
    width: 20px;
    height: 20px;
    background: #82705A;
    border-radius: 50%;
    opacity: 1;
  }

  .bl_topSliderArrows .splide__arrow i {
    font-size: 9px;
    color: #fff;
    line-height: 1;
  }

  .bl_topSliderArrows .splide__arrow:disabled {
    opacity: 0.4;
  }

  /* 768〜1199px: バナーの外側（.ly_topFvBnr の左右余白）に置く */
  .bl_topSliderArrows .splide__arrow--prev {
    left: -30px;
  }

  .bl_topSliderArrows .splide__arrow--next {
    right: -30px;
  }
}

@media screen and (width <= 767px) {
  /* 見切れている前後のバナーの上に重ねる */
  .bl_topSliderArrows .splide__arrow--prev {
    left: min(2.67vw, 10px);
  }

  .bl_topSliderArrows .splide__arrow--next {
    right: min(2.67vw, 10px);
  }
}

.pg_top .ly_doctorContainer {
  grid-template-columns: min(23.33vw, 336px) min(41.67vw, 600px);
  gap: min(8.54vw, 123px);
}

.pg_top .ly_topDoctorSection {
  background-color: transparent;
}

@media screen and (width >= 768px) {
  .pg_top .ly_topDoctorSection {
    padding-top: min(6.25vw, 90px);
    padding-bottom: min(5.56vw, 80px);
  }
}

@media screen and (width <= 767px) {
  .pg_top .ly_doctorContainer {
    grid-template-columns: min(40vw, 150px) 1fr;
    grid-template-areas:
      "ttl  ttl"
      "img  info"
      "sns  sns"
      "btn  btn";
    column-gap: min(4.8vw, 18px);
    row-gap: min(5.33vw, 20px);
    align-items: start;
  }

  .pg_top .ly_doctorContainer .bl_doctorContainerSpttl {
    grid-area: ttl;
  }

  .pg_top .bl_topDoctorSection_img {
    grid-area: img;
  }

  .pg_top .bl_doctorContainer_profile,
  .pg_top .bl_doctorContainer_profileContents {
    display: contents;
  }

  .pg_top .bl_doctorProfile_info {
    grid-area: info;
  }

  .pg_top .bl_doctorProfile_snslist {
    grid-area: sns;
  }

  .pg_top .bl_doctorContainer_profileContents > .bl_commonTxtBtn {
    grid-area: btn;
    justify-self: center;
  }

  .pg_top .bl_doctorContainer_profile .bl_doctorProfile_info .bl_doctorProfile_info_degree,
  .pg_top .bl_doctorContainer_profile .bl_doctorProfile_info .bl_doctorProfile_info_degree .el_doctorProfile_info_degree_txt,
  .pg_top .bl_doctorContainer_profile .bl_doctorProfile_info .bl_doctorProfile_info_name,
  .pg_top .bl_doctorContainer_profile .bl_doctorProfile_info .bl_doctorProfile_info_name .el_doctorProfile_info_name_job {
    text-align: left;
  }

  .pg_top .bl_doctorContainer_profile .bl_doctorProfile_info .bl_doctorProfile_info_name .el_doctorProfile_info_name_ja {
    font-size: min(7.47vw, 28px);
  }

  .pg_top .bl_doctorContainer_profile .bl_doctorProfile_info .bl_doctorProfile_info_name .el_doctorProfile_info_name_en {
    font-size: min(3.2vw, 12px);
    white-space: nowrap;
  }
}

/* ===================================
【202609 TOP改修】ここまで
=================================== */