/* -----------------------
  .doctor
----------------------- */
.doctor {
  background: url(../img/doctor_bg.jpg) repeat left top / 100% auto;
  padding-bottom: min(26.54vw, 207px);
  position: relative;
}

.doctor .photo {
  position: absolute;
  z-index: 3;
}
.doctor .name-box {
  display: grid;
  grid-template-columns: min(3.46vw, 27px) min(30.26vw, 236px) 1fr min(30.26vw, 236px) min(3.46vw, 27px);
  grid-template-rows: min(28.97vw, 226px) min(25vw, 195px);
  margin-bottom: min(23.21vw, 181px);
}

.doctor .name-txt-block {
  transition: all 0.4s 0s ease;
}
.doctor .name-txt-block-01 {
  grid-area: 1 / 4 / 3 / 6;
  transition-delay: .5s;
}
.doctor .name-txt-block-02 {
  grid-area: 1 / 1 / 3 / 3;
  transition-delay: .75s;
}

.doctor .name-txt {
  display: block;
}
.doctor .name-txt-05 {
  grid-area: 1 / 5 / 3 / 6;
  transition-delay: 1s;
}
.doctor .name-txt-06 {
  grid-area: 1 / 1 / 3 / 2;
  transition-delay: 1.25s;
}

.doctor .expert {
  position: relative;
  z-index: 4;
}
.doctor .expert .ttl-txt {
  background: #a27b50;
  display: inline-block;
  transition: all 1.2s 0s ease;
  transition-delay: .25s;
  clip-path: inset(0 100% 0 0);
}
.doctor .expert .ttl-txt.trigger.move {
  clip-path: inset(0);
}
.doctor .expert .ttl-txt + .ttl-txt {
  margin-top: min(3.46vw, 27px);
}
.doctor .expert .ttl-txt-01 {
  width: min(49.23vw, 384px);
}
.doctor .expert .ttl-txt-02 {
  width: min(51.79vw, 404px);
}
.doctor .expert .count-box {
  position: relative;
}
.doctor .expert .jisseki {
  color: #de7165;
  font-size: min(24.36vw, 190px);
  text-align: right;
  line-height: 1;
  position: absolute;
  bottom: min(6.79vw, 53px);
  right: min(15.64vw, 122px);  
}

.doctor .profile .inner {
  position: relative;
}
.doctor .profile .inner::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: min(50vw, 390px);
  background: 
    linear-gradient(to left, #a27b50, #a27b50) no-repeat left top, /* 上左 */
    linear-gradient(to bottom, #a27b50, #a27b50) no-repeat left top, /* 左 */
    linear-gradient(to right, #a27b50, #a27b50) no-repeat left bottom, /* 下 */
    linear-gradient(to top, #a27b50, #a27b50) no-repeat right bottom, /* 右 */
    linear-gradient(to left, #a27b50, #a27b50) no-repeat right top; /* 上右 */

  background-size:
    min(31.92vw, 249px) min(0.26vw, 2px),
    0 0,
    0 0,
    0 0,
    0 0;
  clip-path: inset(0 0 0 50%);
}
.doctor .profile.trigger.move .inner::before {
  animation: square_line 1.3s ease-in-out forwards;
}
@keyframes square_line {
  0% {
    background-size:
      min(31.92vw, 249px) min(0.26vw, 2px),
      0 0,
      0 0,
      0 0,
      0 0;
    clip-path: inset(0 0 0 50%);
  }
  15% {
    background-size:
      min(31.92vw, 249px) min(0.26vw, 2px),
      min(0.26vw, 2px) 0,
      0 0,
      0 0,
      0 0;
    clip-path: inset(0);
  }
  30% {
    background-size:
      min(31.92vw, 249px) min(0.26vw, 2px),
      min(0.26vw, 2px) 100%,
      0 min(0.26vw, 2px),
      0 0,
      0 0;
    clip-path: inset(0);
  }
  60% {
    background-size:
      min(31.92vw, 249px) min(0.26vw, 2px),
      min(0.26vw, 2px) 100%,
      100% min(0.26vw, 2px),
      min(0.26vw, 2px) 0,
      0 0;
    clip-path: inset(0);
  }
  75% {
    background-size:
      min(31.92vw, 249px) min(0.26vw, 2px),
      min(0.26vw, 2px) 100%,
      100% min(0.26vw, 2px),
      min(0.26vw, 2px) 100%,
      0 min(0.26vw, 2px);
    clip-path: inset(0);
  }
  100% {
    background-size:
      min(31.92vw, 249px) min(0.26vw, 2px),
      min(0.26vw, 2px) 100%,
      100% min(0.26vw, 2px),
      min(0.26vw, 2px) 100%,
      min(31.92vw, 249px) min(0.26vw, 2px);
    clip-path: inset(0);
  }
}

.doctor .media {
  margin-top: min(11.03vw, 86px);
}
.doctor .media .slider .slick-dots {
  bottom: max(-9.23vw, -72px);
}
.doctor .media .slider .slick-dots li {
  width: min(6.79vw, 53px);
  height: min(0.77vw, 6px);
  border-radius: 1em;
  background-color: #fff;
  margin: 0 min(1.15vw, 9px);
}
.doctor .media .slider .slick-dots li.slick-active {
  background: #a27b50;
}
.doctor .media .slider .slide-item {
  margin: 0 min(2.44vw, 19px);
}
