/*****************************************************************************
CSS only for academy member
*****************************************************************************/

img {
  max-width: 100%;
  height: auto;
}
.Page__title > span {
  display: block;
}

.Container {
  max-width: 976px;
  margin: 0 auto;
}
@media screen and (max-width: 976px) {
  .Container {
    margin: 0 20px;
  }
}

/* SecTitle
-----------------------------------------*/
.SecTitle {
  font-size: 20px;
  color: #fff;
  background-color: #0666ff;
  border-radius: 4px;
  padding: 8px 16px;
  margin-bottom: 39px;
}
@media screen and (max-width: 767px) {
  .SecTitle {
    font-size: 16px;
    margin-bottom: 24px;
  }
}
.SecTitle > span {
  position: relative;
  display: inline-block;
  padding-left: 16px;
}
.SecTitle > span::before {
  content: '';
  display:inline-block;
  background-color: #fff;
  width: 5px;
  height: 67%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  position: absolute;
}
@media screen and (max-width: 767px) {
  .SecTitle > span::before {
    width: 4px;
  }
}

/* Member
-----------------------------------------*/
.Member {
  padding-top: 100px;
}
@media screen and (max-width: 767px) {
  .Member {
    padding-top: 70px;
  }
}
.Member + .Member {
  padding-top: 136px;
}
@media screen and (max-width: 767px) {
  .Member + .Member {
    padding-top: 95px;
  }
}
.Member__sec + .Member__sec {
  margin-top: 115px;
}
@media screen and (max-width: 767px) {
  .Member__sec + .Member__sec {
    margin-top: 80px;
  }
}
.Member__mainImg {
  padding-bottom: 36px;
}
.Member__category {
  margin: 48px 0 20px;
  font-size: 18px;
  font-weight: 700;
}

/* MemberList
-----------------------------------------*/
.MemberList {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 37px 19px;
}
@media screen and (max-width: 976px) {
  .MemberList {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .MemberList {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 19px;
  }
}
.MemberList__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 9px 0;
}
@media screen and (max-width: 767px) {
  .MemberList__item {
    gap: 7px 0;
  }
}
.MemberList__head {
  grid-row: 2;
  display: flex;
  flex-direction: column-reverse;
  margin-top: 7px;
}
@media screen and (max-width: 767px) {
  .MemberList__head {
    margin-top: 0;
  }
}
.MemberList__name {
  font-size: 16px;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .MemberList__name {
    font-size: 14px;
  }
}
.MemberList__position {
  font-size: 12px;
  font-weight: 700;
}
.MemberList__detail {
  grid-row: 3;
  font-size: 13px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .MemberList__detail {
    font-size: 12px;
  }
}
.MemberList__img {
  grid-row: 1;
}
/* Announce
-----------------------------------------*/
.Announce {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  padding: 16px;
}