@charset "UTF-8";

/*---------- header ----------*/

/*---------- main ----------*/
.fl_recruit_merit {
  padding: 10rem 0 30rem;
  position: relative;
}

.fl_info_contents {
  padding: 20rem 0 0;
}
.daily_schedule {
  display: flex;
}
.schedule_heading {
  width: 30rem;
}
.schedule_info {
  width: calc(95% - 30rem);
  margin-left: 5%;
}
.timeline {
  padding: 4rem;
  background-color: #f0f5fe;
  border-radius: 1rem;
}
.timeline > li {
  overflow: hidden;
  margin: 0;
  position: relative;
  padding-left: 1rem;
  display: flex;
}
.timeline_date {
  width: 110px;
  border-left: 1px #4889fd solid;
  padding-left: 30px;
  font-weight: bold;
}
.timeline_box {
  width: calc(100% - 11rem);
  margin-bottom: 2rem;
}
.timeline > li:before {
  content: '';
  width: 12px;
  height: 12px;
  background: #4889fd;
  position: absolute;
  left: 5px;
  top: 12px;
  border-radius: 100%;
}
.timeline_box .title {
  font-weight: bold;
}

.merit_box h2 {
  text-align: center;
  margin-bottom: 5rem;
}
.merit_box .title_box {
  display: flex;
  font-weight: bold;
  align-items: center;
  padding: 0 0 1rem;
  border-bottom: dotted 1px;
  margin-bottom: 1rem;
}
.merit_box .title_box .title_img {
  width: 13rem;
  height: 8rem;
  background-size: cover;
  background-position: center;
  margin-right: 2rem;
}
.merit_box .title_box .title_01 {
  background-image: url(../images/recruit_01.jpg);
}
.merit_box .title_box .title_02 {
  background-image: url(../images/recruit_02.jpg);
}
.merit_box .title_box .title_03 {
  background-image: url(../images/recruit_03.jpg);
}
.merit_box .title_box .title_04 {
  background-image: url(../images/recruit_04.jpg);
}
.merit_box .title_box .title_05 {
  background-image: url(../images/recruit_05.jpg);
}
.merit_box .col3 {
  display: flex;
  /* align-items: center; */
  flex-wrap: wrap;
  justify-content: space-between;
}
.merit_box .md_col3 {
  width: 30%;
  margin-bottom: 3rem;
}
.merit_box .col3::after {
  display: block;
  content: '';
  width: 30%;
}

.employee_outline {
  margin-top: 10rem;
}
.employee_outline h2 {
  margin: 0 auto 5rem;
  text-align: center;
}
.employee_outline_list {
  border-top: solid 1px #ccc;
  border-left: solid 1px #ccc;
  border-right: solid 1px #ccc;
}
.employee_outline_list dl {
  display: flex;
  border-bottom: solid 1px #ccc;
}
.employee_outline_list dt {
  display: flex;
  align-items: center;
  font-weight: bold;
  width: 15rem;
  background-color: #ddd;
  padding: 1rem;
  font-size: 1.4rem;
}
.employee_outline_list dd {
  width: calc(100% - 15rem);
  word-break: break-all;
  padding: 1rem;
  font-size: 1.4rem;
  letter-spacing: normal;
  line-height: normal;
}
.mb3 {
  margin-bottom: 3rem;
}
.employee_outline .normal_btn {
  margin-top: 7rem;
}

.education_box {
  margin-top: 7rem;
}
.education_box h3 {
  text-align: center;
  margin-bottom: 3rem;
}
.education_box .col2 {
  display: flex;
  /* align-items: center; */
  flex-wrap: wrap;
  justify-content: space-between;
}
.education_box .md_col2 {
  width: 48%;
  margin-bottom: 3rem;
  padding: 4rem;
  border: solid 2px #4889fd;
}
.education_box .title_box {
  margin-bottom: 1rem;
}
.education_box .title_icon {
  position: absolute;
  color: #fff;
  background-color: #4889fd;
  font-weight: bold;
  width: 12rem;
  text-align: center;
  left: -4rem;
  top: -3rem;
}
.education_box .title {
  margin-top: 4rem;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
}

/*---------- footer ----------*/

/*==========================================================================
■ PC版のみ
==========================================================================*/
@media screen and (min-width: 769px) {
  /*---------- header ----------*/

  /*---------- main ----------*/
  .employee_outline_list {
    width: 50%;
    min-width: 700px;
    margin: 0 auto;
  }

  /*---------- footer ----------*/
}
/*==========================================================================
■ Tab版
==========================================================================*/
@media screen and (min-width: 769px) and (max-width: 1024px) {
  /*---------- header ----------*/

  /*---------- main ----------*/

  /*---------- footer ----------*/
}
/*==========================================================================
■ SP版
==========================================================================*/
@media screen and (max-width: 768.98px) {
  /*---------- header ----------*/

  /*---------- main ----------*/
  .fl_recruit_merit {
    padding: 10rem 0 20rem;
  }
  .merit_box h2 {
    margin-bottom: 3rem;
  }

  .fl_info_contents {
    padding: 15rem 0 0;
  }
  .daily_schedule,
  .timeline > li {
    flex-wrap: wrap;
  }
  .schedule_heading {
    width: 100%;
    margin-bottom: 3rem;
    text-align: center;
  }
  .schedule_info {
    width: 100%;
    margin: 0;
  }
  .timeline {
    padding: 2rem;
  }
  .timeline_date {
    width: 100%;
  }
  .timeline_box {
    width: 100%;
    border-left: 1px #4889fd solid;
    padding: 0 0 3rem 3rem;
  }
  .timeline_box {
    margin-bottom: 0;
  }
  .timeline_box .title {
    margin-bottom: 1rem;
  }

  .merit_box .md_col3:last-of-type {
    margin-bottom: 0;
  }
  .merit_box .md_col3 {
    width: 100%;
  }

  .employee_outline_list dt {
    width: 10rem;
  }
  .employee_outline_list dd {
    width: calc(100% - 10rem);
  }

  .education_box .md_col2 {
    width: 100%;
    padding: 2rem;
  }
  .education_box .md_col2:last-of-type {
    margin-bottom: 0;
  }
  .education_box .title_icon {
    left: -2rem;
    top: -4rem;
  }

  /*---------- footer ----------*/
}

/*---------- レイアウト微調整 ----------*/
@media screen and (max-width: 900px) {
  .fl_education_point .md_left {
    width: 100%;
    margin: 0 0 3rem;
  }
  .fl_education_point .md_right {
    max-width: 38rem;
    width: 80%;
  }
}
