/* Graduate Modal - ported from main theme (page-alumni.php) */
.graduate-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  z-index: 9999;
}
.graduate-modal .modal__inner {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 950px;
}
.graduate-modal .modal__inner .modal__inner--contents {
  position: absolute;
  max-width: 1090px;
  width: calc(100% - 130px);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  background-color: #fff;
  border-radius: 10px;
  overflow: visible;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: visible;
  padding: 50px;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block {
  position: relative;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dt .modal__img {
  position: relative;
  padding-top: 91.83%;
  overflow: hidden;
  z-index: 0;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dt .modal__img span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding-top: 0;
  display: none;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dt .modal__img span:first-child {
  display: block;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dt .img--slide {
  margin-top: 12px;
  text-align: center;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dt .img--slide ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dt .img--slide ul li {
  display: inline-block;
  width: 11px;
  height: 11px;
  margin: 0 4px;
  border: 2px solid #00c8de;
  background-color: #00c8de;
  border-radius: 50%;
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.7, 0, 0.3, 1);
  cursor: pointer;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dt .img--slide ul li:hover {
  background-color: #fff;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dt .img--slide ul li.selected {
  background-color: #fff;
  pointer-events: none;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dd {
  margin-bottom: 0;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dd > dl {
  border-bottom: 1px solid #d1d1d1;
  padding-bottom: 20px;
  margin-bottom: 15px;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dd > dl > dt {
  font-size: 16px;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dd > dl > dd {
  font-size: 13px;
}
.graduate-modal .modal__inner .modal__inner--contents .modal__main .block > dd > dl > dd strong {
  font-size: 15px;
  display: block;
  margin-bottom: 5px;
}
.graduate-modal .block > dd h1,
.graduate-modal .block > dd h2,
.graduate-modal .block > dd h3 {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.6;
  margin: 0 0 10px;
}
.graduate-modal .modal__main--people {
  margin-bottom: 0;
}
.graduate-modal .modal__main--people dl dt {
  font-size: 16px;
  font-weight: bold;
  color: #333;
}
.graduate-modal .modal__main--people dl dd.text--gray {
  font-size: 13px;
  color: #666;
  margin-top: 5px;
}
.graduate-modal .mb10 {
  margin-bottom: 10px;
}

/* Block left layout */
.graduate-modal .block.block--left::after {
  content: "";
  display: table;
  clear: both;
}
.graduate-modal .block.block--left > dt {
  width: calc(50% - 25px);
  margin-bottom: 0;
  float: left;
}
.graduate-modal .block.block--left > dd {
  width: 50%;
  float: right;
}

/* Navigation buttons */
.graduate-modal .btn--circle {
  position: absolute;
  width: 75px;
  height: 75px;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  border: 9px solid #fff;
  border-radius: 50%;
  background-color: #00c8de;
  cursor: pointer;
  z-index: 10;
  transition: 0.2s cubic-bezier(0.7, 0, 0.3, 1);
}
.graduate-modal .btn--circle:before,
.graduate-modal .btn--circle:after {
  content: " ";
  position: absolute;
  width: 7px;
  height: 7px;
  top: 40%;
  left: 21px;
  border: 2px solid;
  border-color: #fff #fff transparent transparent;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transition: 0.2s cubic-bezier(0.7, 0, 0.3, 1);
}
.graduate-modal .btn--circle:after {
  display: none;
}
.graduate-modal .btn--circle.disable {
  background-color: #ccf4f9;
  pointer-events: none;
}
.graduate-modal .btn--circle.btn--prev {
  left: 0;
}
.graduate-modal .btn--circle.btn--prev:before {
  left: 25px;
  border-color: transparent transparent #fff #fff;
}
.graduate-modal .btn--circle.btn--next {
  right: 0;
  left: auto;
  transform: translate(50%, -50%);
  -webkit-transform: translate(50%, -50%);
}
.graduate-modal .btn--circle.btn--next:before {
  left: 21px;
}
.graduate-modal .btn--circle.btn--close {
  top: 0;
  right: 0;
  left: auto;
  transform: translate(50%, -50%);
  -webkit-transform: translate(50%, -50%);
}
.graduate-modal .btn--circle.btn--close:before,
.graduate-modal .btn--circle.btn--close:after {
  display: block;
  width: 23px;
  height: 2px;
  top: 50% !important;
  left: 18px;
  border: none;
  background-color: #fff;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.graduate-modal .btn--circle.btn--close:after {
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
}
.graduate-modal .btn--circle.btn--close:hover:before,
.graduate-modal .btn--circle.btn--close:hover:after {
  transform: translateX(0) translateY(4px) rotate(0);
  -webkit-transform: translateX(0) translateY(4px) rotate(0);
}
.graduate-modal .btn--circle.btn--close:hover:before {
  transform: translateX(0) translateY(-4px) rotate(0);
  -webkit-transform: translateX(0) translateY(-4px) rotate(0);
}

/* Responsive */
@media (max-width: 768px) {
  .graduate-modal .modal__inner .modal__inner--contents {
    width: calc(100% - 60px);
  }
  .graduate-modal .modal__inner .modal__inner--contents .modal__main {
    padding: 25px;
  }
  .graduate-modal .block.block--left > dt {
    width: 100%;
    float: none;
    margin-bottom: 20px;
  }
  .graduate-modal .block.block--left > dd {
    width: 100%;
    float: none;
  }
  .graduate-modal .btn--circle {
    width: 50px;
    height: 50px;
    border-width: 6px;
  }
  .graduate-modal .btn--circle.btn--prev:before {
    left: 16px;
  }
  .graduate-modal .btn--circle.btn--next:before {
    left: 14px;
  }
  .graduate-modal .btn--circle.btn--close:before,
  .graduate-modal .btn--circle.btn--close:after {
    width: 16px;
    left: 11px;
  }
}
