@charset "utf-8";
/*===============================================
 *
 *	STAFF
 *
===============================================*/
.bnr_pest{
  max-width: 246px;
  margin-top: 20px;
}
.page_intro_contents{
  position: relative;
}
.page_intro_contents::after{
  content: '';
  position: absolute;
  bottom: -60px;
  left: 0;
  right: 0;
  background-color: #0081cc;
  z-index: -2;
  width: 100%;
  height: 235px;
}
.page_intro_box{
  max-width: 1120px;
  margin: 0 auto;
  width: 95%;
  position: relative;
}
.page_intro_box .photo{
  position: relative;
  max-width: 540px;
  border-radius: 10px;
  left: -50px;
  z-index: 10;
}
.txt_intro{
  background: #eff6fd;
  border: #a0d0ec 4px solid;
  border-radius: 4px;
  padding: 50px 70px 30px 50px;
  margin-top: 7%;
}
.txt_intro p:nth-of-type(2){
  margin-top: 1em;
}
@media only screen and (max-width: 1024px) {
  .txt_intro {
    padding: 30px 60px 20px 30px;
  }
  .page_intro_box .photo{
    max-width: 450px;
  }
}
@media only screen and (max-width: 960px) {
  .txt_intro {
    padding: 30px 60px 20px 30px;
  }
  .page_intro_box .photo{
    max-width: 350px;
  }
}
@media only screen and (max-width: 568px) {
  .page_intro_box {
    flex-direction: column;
    align-items: center;
    margin-bottom: 40px;
    width: 100%;
    overflow: hidden;
  }
  .txt_intro {
    padding: 40px 20px 20px 20px;
    margin-top: -7%;
    margin-right: 5%;
    border-left: none;
    border-radius: 0 10px 10px 0;
  }
  .page_intro_box .photo {
    left: unset;
    right: -8vw;
  }
  .page_intro_contents::after {
    bottom: -40px;
  }
}
/*===============================================
 *	スタッフ一覧
 ===============================================*/
.staff_list {
  gap: 60px 4.4%;
}
.staff_list li {
  width: 47.8%;
  position: relative;
}
.staff_list li .name {
  font-size: min(2.5vw, 30px);
  background: #004791;
  border-radius: 60px;
  padding: 5px 0 2px;
  margin: -1.35em auto .75em;
  position: relative;
  z-index: 10;
  width: 70%;
}
.staff_list li img {
  margin: 0 0 18px;
}
.catch_staff{
  color: #004791;
  font-size: 1.625rem;
  margin: 0 0 15px;
}
.txt_staff{
  padding: 0 30px;
}
@media only screen and (max-width: 960px) {
  .catch_staff{
    font-size: 1.312rem;
  }
}
@media only screen and (max-width: 568px) {
  .staff_list {
    gap: 25px 0;
  }
  .staff_list li {
    width: 100%;
  }
  .staff_list li .name {
    font-size: 5.3vw;
    margin: -1.75em auto .75em;
  }
  .catch_staff {
    font-size: 17px;
  }
  .txt_staff {
      padding: 0 20px;
  }
}
