@charset "utf-8";

.pv_visual{
  background: url(../img/page_visual.png) no-repeat center/cover;
}

.job_intro{
  padding: 50px 0;
}
.ji_inner{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
.ji_txt{
  max-width: 560px;
  width: 100%;
  h2{
    font-size: 2.4rem;
    font-weight: bold;
    position: relative;
    padding-left: 30px;
    &::before{
      content: url(../../../common/img/blue_cir.svg);
      position: absolute;
      left: 0;
      top: 4px;
    }
  }
  p{
    margin-top: 38px;
    line-height: 2;
  }
}

.description{
  background: url(../img/desc_bg.png)no-repeat center/cover;
  padding: 105px 0;
}
.desc_inner{
  max-width: 1200px;
  width: 100%;
  margin: auto;
}
.desc_flex{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 76px;
  margin-top: 40px;
}
.dl_box{
  max-width: 522px;
  width: 100%;
}
.dl_title{
  display: flex;
  align-items: center;
  gap: 20px;
  & h3{
    font-size: 2.4rem;
  }
}
.dl_number{
  font-size: 8.0rem;
  color: #ACB4C5;
  font-family: "Montserrat";
  font-weight: 700;
  white-space: nowrap;
}
.desc_list{
  line-height: 2;
  padding-top: 30px;
  border-top: 3px solid #FFF;
  & li{
    font-weight: 500;
  }
}

.skill{
  padding: 80px 0;
}
.skill_inner{
  max-width: 1160px;
  width: 100%;
  margin: auto;
}
.sill_list{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 53px;
  margin-top: 50px;
}
.sl_box {
  max-width: 250px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  & h3{
    text-align: center;
    font-size: 2.4rem;
    line-height: 1.6;
  }
  & p{
    letter-spacing: 0.64px;
    line-height: 2;
    font-weight: 500;
  }
}

.people{
  background: url(../img/peo_bg.png) no-repeat center/cover;
  padding: 55px 0 68px 0;
}
.people_inner{
  max-width: 870px;
  width: 100%;
  margin: auto;
}
.peo_intro{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 19px;
  margin-top: 38px;
  & p{
    max-width: 277px;
    width: 100%;
    min-height: 284px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-weight: bold;
    font-size: 2.0rem;
    background: url(../img/peo_bg01.png) no-repeat center;
    &:nth-child(2){
      background: url(../img/peo_bg02.png) no-repeat center;
    }
    &:nth-child(3){
      background: url(../img/peo_bg03.png) no-repeat center;
    }
    &:nth-child(4){
      background: url(../img/peo_bg04.png) no-repeat center;
    }
    &:nth-child(5){
      background: url(../img/peo_bg05.png) no-repeat center;
    }
  }
}

.inter{
  padding: 70px 0;
  background: var(--base-color);
}
.int_inner{
  max-width: 1120px;
  width: 100%;
  margin: auto;
}
.inter_list{
  display: flex;
  flex-wrap: wrap;
  gap: 80px 40px;
  justify-content: center;
  margin-top: 50px;
}
.inter_box{
  display: flex;
  flex-direction: column;
  max-width: 340px;
  width: 100%;
  color: #333333;
}
.work_name{
  margin-top: 30px;
  font-weight: bold;
}
.work_name span{
  font-size: 1.8rem;
}
.stuff_name{
  font-family: "Montserrat";
}
.stuff_name .sn_maga{
  font-size: 2.4rem;
  font-weight: bold;
}

@media screen and (max-width: 767px){
  .job_intro {
    padding: 30px 0;
  }
  .ji_txt {
    margin-top: 38px;
  }
  .ji_inner{
    flex-direction: column-reverse;
    padding: 0 5%;
  }

  .description {
    padding: 50px 0;
  }
  .desc_inner{
    padding: 0 5%;
  }
  .desc_flex {
    gap: 30px;
  }
  .dl_title{
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
  }
  .dl_number{
    font-size: 4.8rem;
  }
  .desc_list {
    margin-top: 23px;
  }

  .skill {
    padding: 50px 0;
  }
  .skill_inner{
    padding: 0 5%;
  }
  .sill_list{
    gap: 45px;
  }
  .sl_box{
    max-width: 100%;
  }

  .people_inner{
    padding: 0 5%;
  }

  .inter{
    padding: 50px 0;
  }
  .int_inner{
    padding: 0 5%;
  }
  .inter_list {
    gap: 20px;
  }
}