@charset "utf-8";
.second_hdr {
  border-bottom: none;
  margin-bottom: 0;
}
.recruit_second_hdr {
  padding: 185px 20px 0;
  box-sizing: border-box;
  position: relative;
}
.recruit_second_hdr::before {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 390px;
  z-index: 0;
}
.recruit_second_hdr.fresh::before {
  background-image: url("../images/fresh_hdr_bg_pc.jpg");
  background-position: top center;
  background-size: cover;
}
.recruit_second_hdr.career::before {
  background-image: url("../images/career_hdr_bg_pc.jpg");
  background-position: top center;
  background-size: contain;
}
.recruit_second_hdr.partner::before {
  background-image: url("../images/partner_hdr_bg_pc.jpg");
}
.recruit_second_hdr_caption {
  max-width: 960px;
  margin: 0 auto 40px;
  box-sizing: border-box;
  padding: 60px 70px;
  background: #F5F5F5;
  position: relative;
  z-index: 5;
}
.recruit_second_hdr_caption_catch, .recruit_second_hdr_caption h1 {
  color: #384C57;
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
}
.recruit_second_hdr_caption p.recruit_second_hdr_caption_catch {
  font-size: 30px;
  line-height: 1.6;
  margin-bottom: 40px;
}
.recruit_second_hdr_caption h1 {
  font-family: 'Poppins', 'Noto Sans JP', sans-serif;
  font-size: 56px;
}
.recruit_second_hdr_caption p {
  line-height: 2.0;
  margin-bottom: 70px;
}
.recruit_top_hdr {
  padding-top: 175px;
  margin-left: calc(calc(100vw - 960px) * 0.5);
  position: relative;
  margin-bottom: 50px;
}
.recruit_top_hdr::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("../images/recruit_top_hdr_bg_pc.jpg") no-repeat 0 0;
  background-size: cover;
}
.recruit_top_hdr_caption {
  width: 750px;
  background: #F5F5F5;
  box-sizing: border-box;
  padding: 60px;
  position: relative;
  z-index: 10;
}
.recruit_top_hdr_caption p {
  line-height: 1.8;
  margin: 0 0 1em;
}
.recruit_top_feature {
  max-width: 600px;
  position: relative;
  margin: 400px auto 450px;
  background: #F5F5F5;
  box-sizing: border-box;
  padding: 85px 65px;
}
.recruit_top_feature .companytop_flex_caption_en {
  position: absolute;
  left: 250px;
  top: -88px;
}
.feature-02 .companytop_flex_caption_en {
  left: 40px;
  top: -88px;
}
.feature-02 .companytop_flex_caption_en::after {
  left: -210px;
}
.feature-03 .companytop_flex_caption_en {
  left: 250px;
  top: -68px;
}
.recruit_top_feature.feature-01 {
  margin-top: 350px;
}
.recruit_top_feature.feature-03 {
  margin-bottom: 500px;
}
.recruit_top_feature::before, .recruit_top_feature::after {
  content: '';
  display: block;
  position: absolute;
  width: 580px;
  height: 385px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  z-index: -1;
}
.recruit_top_feature::before {
  left: -390px;
  top: -195px;
}
.recruit_top_feature::after {
  right: -390px;
  bpttom: -160px;
}
.recruit_top_feature_no {
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 14px;
  color: #384c57;
  margin: 0 0 5px;
}
.recruit_top_feature h3 {
  font-weight: 700;
  font-size: 24px;
  color: #384c57;
  margin-bottom: 40px;
}
.recruit_top_feature h3 + p {
  line-height: 1.8;
}
.recruit_top_feature p.caption_txt {
  line-height: 1.8;
  margin: 1em 0 0;
}
/* ====================== */
.entry_hdr {
  padding-top: 175px;
  margin-left: calc(calc(100vw - 960px) * 0.5);
  position: relative;
  margin-bottom: 50px;
}
.entry_hdr_caption {
  max-width: 750px;
  background: #F5F5F5;
  box-sizing: border-box;
  padding: 65px 40px 50px 130px;
  position: relative;
  z-index: 10;
}
.entry_hdr_catch {
  font-size: 30px;
  font-weight: 700;
  color: #384C57;
  margin-bottom: 35px;
}
@media(max-width: 960px) {
  .entry_hdr {
    margin-left: 0;
  }
  .entry_hdr_caption {
    padding-left: 40px;
  }
}
.entry_hdr_caption p {
  line-height: 1.8;
}
.entry_hdr_caption a {
  color: #F69602;
  text-decoration: underline;
}
.entry_hdr::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 285px;
  background: blue;
}
.entry_hdr.fresh::before {
  background: url("../images/recruit_entry_fresh_hdr_bg_pc.jpg") no-repeat 0 0;
  background-size: cover;
}
.entry_hdr.career::before {
  background: url("../images/recruit_entry_career_hdr_bg_pc.jpg") no-repeat 0 0;
  background-size: cover;
}
.recruit_top_catch {
  max-width: 960px;
  margin: 0 auto 40px;
  padding: 0 20px;
}
.recruit_top_catch p {
  font-weight: 700;
  font-size: 30px;
  text-align: left;
  color: #384c57;
  line-height: 1.6;
  margin-left: 35px;
  position: relative;
}
.recruit_top_catch p::before {
  content: '';
  display: block;
  position: absolute;
  top: 24px;
  left: -35px;
  width: 20px;
  height: 2px;
  background: #384c57;
}
.essential_wrap {
  max-width: 700px;
  margin: 0 auto 100px;
  padding: 0 20px;
}
.essential_wrap table {
  width: 100%;
  border-top: 1px solid #B2C1C9;
}
.essential_wrap th, .essential_wrap td {
  padding: 30px;
  text-align: left;
  vertical-align: top;
  border-bottom: 1px solid #B2C1C9;
  line-height: 1.8;
}
.essential_wrap th {
  font-weight: 500;
  white-space: nowrap;
  color: #384C57;
}
.fresh_footer_tile {
  background: url("../images/fresh_footer_bg_pc.jpg") no-repeat center center;
  background-size: cover;
  min-height: 400px;
  margin: 0 0 90px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.fresh_footer_tile_inner {
  margin: 0 auto;
  width: 960px;
  padding: 0 20px;
}
.fresh_footer_tile h5 {
  font-family: 'Poppins', sans-serif;
  font-size: 68px;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  margin-bottom: 20px;
  z-index: 1;
}
.top_recruit_tile_jp {
  color: #fff;
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 40px;
}
@media(min-width: 1500px) {
  .fresh_footer_tile {
    height: 20vw;
  }
}
/* ========= partner ======== */
.partner_tile_flex {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 20px 100px;
  display: flex;
  justify-content: space-between;
}
.partner_tile {
  background: #fff;
  box-sizing: border-box;
  width: 306px;
  padding: 50px 30px;
}
@media(max-width: 1200px) {
  .partner_tile {
    width: calc(33.3% - 15px);
  }
}
.partner_tileNo {
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: #BCCCD5;
  margin: 0 0 15px;
  padding-left: 27px;
  position: relative;
}
.partner_tileNo::after {
  content: '';
  display: block;
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 20px;
  height: 1px;
  background: #BCCCD5;
}
.partner_tile h5 {
  font-weight: 700;
  font-size: 17px;
  color: #384C57;
  margin: 0 0 15px;
}
.partner_tile p {
  line-height: 1.8;
}
.partner_tile ul {
  list-style: none;
  margin: 0 0 0 1em;
}
.partner_tile li {
  position: relative;
  line-height: 1.6;
  margin-bottom: 5px;
  list-style: none;
}
.partner_tile li::after {
  content: '・';
  display: block;
  position: absolute;
  top: 0;
  left: -1em;
}
.partner_tile_entry {
  max-width: 1360px;
  margin: 0 auto 150px;
  background: url("../images/partner_entry_bg_pc.jpg") no-repeat center center;
  background-size: cover;
  height: 350px;
  display: flex;
  align-items: center;
}
.partner_tile_entry_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-left: 140px;
  color: #fff;
  width: 740px;
}
.partner_tile_entry_left h5 {
  font-family: 'Poppins', 'Noto Sans JP', sans-serif;
  font-size: 70px;
  font-weight: 700;
  margin-bottom: 25px;
  line-height: 1;
}
.partner_tile_entry_left p {
  font-size: 20px;
  font-weight: 500;
}
.partner_tile_entry_right {}
.partner_tile_entry_right a {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #B6BFC8;
  color: #fff;
  width: 260px;
  height: 60px;
  text-decoration: none;
  font-family: 'Poppins', 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 15px;
  border-radius: 40px;
  position: relative;
  transition: background 0.3s;
}
.partner_tile_entry_right a span {
  display: inline-block;
  position: relative;
}
.partner_tile_entry_right span::after {
  content: '';
  display: block;
  width: 15px;
  height: 14px;
  background: url(../images/contact_btn_icon.png) no-repeat 0 0;
  background-size: 15px;
  position: absolute;
  top: calc(50% - 7px);
  left: -40px;
}
@media (hover: hover) {
  .partner_tile_entry_right a:hover {
    background: #F69602;
    color: #fff;
  }
}
@media(min-width: 1361px) {
  .partner_tile_entry {
    transform: translateX(200px);
  }
}
/* ==== */
.career_tile_flex {
  display: flex;
  flex-wrap: wrap;
  max-width: 1000px;
  margin: 0 auto 120px;
  padding: 0 20px;
}
.career_tile {
  width: 300px;
  min-height: 120px;
  background: #fff;
  margin: 0 12px 24px;
  cursor: pointer;
  border-radius: 8px;
  overflow: hidden
}
.career_tile h5 a {
  text-decoration: none;
  color: #1e1e1e;
}
.career_tile_hdr {
  display: flex;
  margin-bottom: 20px;
}
.career_tile_hdr div {
  color: #fff;
  min-width: 25%;
  height: 22px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #384C57;
  font-weight: 500;
  font-size: 12px;
  padding: 0 5px;
}
.career_entry_hdr_type li {
  height: 22px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #384C57;
  font-weight: 500;
  font-size: 12px;
  color: #fff;
  padding: 0 10px;
}
.career_entry_hdr_type li span, .career_tile_hdr div span {
  transform: translateY(-1px)
}
.career_tile_hdr div.type2, .career_entry_hdr_type li.type2 {
  background: #026EB7;
}
.career_tile_hdr div.type3, .career_entry_hdr_type li.type3 {
  background: #BCCCD5;
}
.career_tile_hdr div.type4, .career_entry_hdr_type li.type4 {
  background: #F69602;
}
.career_tile_caption {
  padding: 0 40px 30px 20px;
  position: relative;
}
.career_tile_caption::after {
  content: '';
  display: block;
  width: 9px;
  height: 9px;
  border-top: 1px solid #272727;
  border-right: 1px solid #272727;
  transform: rotate(45deg);
  position: absolute;
  right: 20px;
  top: calc(50% - 3px);
}
.career_tile_caption h5 {
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 15px;
}
.career_tile_caption h5 + p {
  font-size: 13px;
  line-height: 1.6;
}
.career_footer_nav {
  display: flex;
  justify-content: space-between;
  max-width: 1060px;
  margin: 0 auto 100px;
  padding: 0 20px;
}
.career_footer_nav.upper {
  max-width: 570px;
}
.career_footer_nav .footer_tile_caption {
  width: calc(25% - 20px);
  margin: 0;
}
.career_footer_nav.upper .footer_tile_caption {
  width: calc(50% - 20px);
}
.career_entry_hdr {
  text-align: center;
  margin: 0 0 80px;
}
.career_entry_hdr h4 {
  font-size: 30px;
  font-weight: 700;
  text-align: center;
  margin: 0 0 40px;
  color: #384C57;
}
.career_entry_hdr h5 {
  font-size: 17px;
  font-weight: 700;
  text-align: center;
  margin: 0 0 40px;
  color: #384C57;
}
.career_entry_hdr p {
  line-height: 1.8;
}
.career_entry_hdr_type {
  display: flex;
  justify-content: center;
  margin-bottom: 40px;
}
.career_entry_hdr_type li {
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 5px;
}
.footer_tile_caption_center {
  margin: 0 0 60px;
}
#partner .sectiontop_title {
  margin-bottom: 80px;
}
@media(max-width: 768px) {
  #partner .sectiontop_title {
    margin-bottom: 60px;
  }
}