@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap');

body{
  min-width: auto;
  font-family: 'Noto Sans JP', "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3","ＭＳ Ｐゴシック","MS PGothic",Arial, Helvetica,sans-serif;
  font-weight: 400;
}

@media screen and (max-width: 992px) {
.sp_none { display: none !important; }
}

@media screen and (min-width: 993px) {
.pc_none { display: none !important; }
}

/*---------------------------------------------------------------------
	recruit_page recruit_page_top
---------------------------------------------------------------------*/
#container:has(.bl_recruit_header){
  padding-top: 0;
}

.recruit_page #pagebody{
  margin-top: 60px;
}

.bl_recruit_header{
  position: absolute;
  z-index: 500;
  width: 100%;
  display: flex;
  gap: 15px;
  justify-content: space-between;
  padding: 7px 15px 3px;
  background-color: #fff;
}

.bl_recruit_headerLogo_wrap {
  display: flex;
  gap: 14px;
  align-items: center;
}

.bl_recruit_header_logo {
  width: 45px;
}

.bl_recruit_header_copy {
  font-size: 16px;
}

.bl_recruit_headerNavi_wrap {
  display: flex;
  gap: 10px;
  align-items: center;
}

.el_btn02.el_btn02__sm{
  width: 100px;
  padding: 12px 15px;
  font-size: 10px;
}

.bl_recruit_headerNavi_menu {
  position: relative;
  display: grid;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 3px 6px rgba(0,0,0,.16);
  cursor: pointer;
}

.bl_recruit_headerNavi_menuLine {
  position: absolute;
  top: 16px;
  right: 50%;
  display: block;
  width: 25px;
  height: 3px;
  margin-bottom: 3px;
  background-color: #003B98;
  transform: translateX(50%);
}

.bl_recruit_headerNavi_menuLine+.bl_recruit_headerNavi_menuLine{
  top: 23px;
}

.bl_recruit_headerNavi_menuTxt {
  position: absolute;
  right: 50%;
  bottom: 8px;
  font-size: 9px;
  font-weight: 600;
  color: #619ED5;
  transform: translateX(50%);
}

.bl_recruit_headerNavi_drawer {
  position: fixed;
  top: 0;
  right: -100%;
  width: 250px;
  height: 100%;
  padding: 65px 20px 20px;
  background-color: #003B98;
  box-shadow: -3px 0 6px rgba(0,0,0,.16);
  transition: all .3s;
}

.bl_recruit_headerNavi_drawer.open {
  right: 0;
}

.bl_recruit_headerNavi_closeBtn{
  position: absolute;
  top: 20px;
  right: 20px;
  line-height: 1;
  font-size: 40px;
  color: #fff;
  cursor: pointer;
}

.bl_recruit_headerNavi_closeBtn,
.bl_recruit_headerNavi_closeBtn:hover{
  text-decoration: none;
  transition: all .3s;
}

.bl_recruit_headerNavi_item {
  margin-bottom: 10px;
}

.bl_recruit_headerNavi_link {
  display: block;
  padding: 10px 10px;
  background-color: #fff;
  text-decoration: none;
  color: #000;
}

@media print, screen and (min-width: 768px) {
  .recruit_page #pagebody{
    margin-top: 0;
  }

  .bl_recruit_header{
    top: 0;
    padding: 20px 20px;
    background-color: transparent;
  }

  .bl_recruit_headerLogo_wrap {
    position: absolute;
    top: 20px;
    left: 50%;
    display: grid;
    gap: 14px;
    align-items: center;
    width: 14%;
    max-width: 156px;
    transform: translateX(-50%);
  }

  .bl_recruit_header_logo {
    width: 100%;
  }

  .bl_recruit_header_copy {
    font-size: 28px;
    font-size: min(2.7vw,28px);
  }

  .bl_recruit_headerNavi_wrap {
    position: absolute;
    top: 20px;
    right: 20px;
  }

  .bl_recruit_headerBtn_wrap {
    display: flex;
    gap: 10px;
  }

  .bl_recruit_headerBtn_item {

  }

  .bl_recruit_headerNavi_menu {
    position: relative;
    display: grid;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    box-shadow: 0 3px 6px rgba(0,0,0,.16);
    cursor: pointer;
  }

  .bl_recruit_headerNavi_menuLine {
    position: absolute;
    top: 16px;
    right: 50%;
    display: block;
    width: 25px;
    height: 3px;
    margin-bottom: 3px;
    background-color: #003B98;
    transform: translateX(50%);
  }

  .bl_recruit_headerNavi_menuLine+.bl_recruit_headerNavi_menuLine{
    top: 23px;
  }

  .bl_recruit_headerNavi_menuTxt {
    position: absolute;
    right: 50%;
    bottom: 8px;
    font-size: 9px;
    font-weight: 600;
    color: #619ED5;
    transform: translateX(50%);
  }

}


.bl_recruit_top_mv {
  position: relative;
  margin-bottom: 40px;
}

.recruit_top_mv_inner {
  position: absolute;
  top: 37%;
  left: 52%;
  width: 58%;
  max-width: 450px;
  margin: auto;
  transform: translate(-50%, -50%);
}

.bl_recruit_top_mv picture,
.bl_recruit_top_mv img{
  display: block;
  width: 100%;
  height: auto;
}

.bl_recruit_top_mv .ttl {
  line-height: 1;
  font-size: min(6.5vw, 44px);
  letter-spacing: 10px;
}

.bl_recruit_top_mv .mv_line {
  display: block;
}

.bl_recruit_top_mv .lead {
  margin-top: 10px;
  font-size: min(2.65vw,20px);
  color: #003B98;
}

.recruit_page .top_content1 {
  margin-bottom: 20px;
}

@media print, screen and (min-width: 768px) {
  .bl_recruit_top_mv {
    margin-bottom: 60px;
  }

  .recruit_top_mv_inner {
    position: absolute;
    top: 298px;
    transform: translateX(-50%)
  }


  .bl_recruit_top_mv .lead {
    margin-top: 40px;
    font-size: 20px;
    color: #003B98;
  }
}

@media print, screen and (min-width: 768px) and (max-width: 1366px) {
  .recruit_top_mv_inner {
    top: 46%;
    left: 53%;
    max-width: none;
    width: 28%;
  }

  .bl_recruit_top_mv .ttl{
    font-size: min(3.2vw, 44px);
  }

  .bl_recruit_top_mv .lead{
    margin-top: 20px;
    font-size: min(1.28vw, 20px);
  }
}

.recruit_topics_wrap{
  margin-bottom: 55px;
}

.recruit_topics_wrap .head{
  display: grid;
  grid: auto / 1fr 96px;
  gap: 25px 20px;
  align-items: center;
  padding: 0 0 20px;
  border-bottom: 2px solid #ADADAD;
}

.recruit_topics_wrap .ttl{
  font-size: 28px;
  font-weight: 400;
  color: #003B98;
}

.list_topics{
  padding: 20px 0 0;
}

.btn_ichiran a{
  display: block;
  padding: 6px 12px;
  border-radius: 40px;
  background: #619ED5 url(/image/icon_arrow_11.png) no-repeat right 8px center/10px;
  font-size: 10px;
  font-weight: 500;
  text-decoration: none;
  color: #fff;
  transition: all .3s;
}

.btn_ichiran a:hover,
.btn_ichiran a:active{
  opacity: .7;
}

.recruit_topics_wrap .list_topics li{
  border: none;
  border-bottom: 1px solid #C2C2C2;
}

.recruit_topics_wrap .list_topics li:first-child{
  border-top: none;
}

.recruit_topics_wrap .list_topics li > a{
  position: relative;
  padding: 18px 0;
}

.recruit_topics_wrap .list_topics li > a::after{
  content: none;
}

.recruit_topics_wrap .list_topics li .date,
.recruit_topics_wrap .list_topics li .title{
  line-height: 1.4;
  font-size: 15px;
}

.recruit_topics_wrap .list_topics li .title{
  padding: 0 21px 0 0;
  background: url(/image/icon_arrow_12.png) no-repeat right 3px/14px;
  font-weight: 500;
}

@media print, screen and (min-width: 768px) {
  .recruit_topics_wrap{
    margin-bottom: 100px;
  }

  .recruit_top_topics{
    display: grid;
    grid: auto / 162px 1fr;
  }

  .recruit_topics_wrap .head{
    grid: 45px / auto;
    align-items: flex-start;
    padding: 0 29px 0 0;
    border: none;
    border-right: 2px solid #ADADAD;
  }

  .recruit_topics_wrap .ttl{
    font-size: 32px;
  }

  .list_topics{
    padding: 0 0 0 40px;
  }

  .btn_ichiran a{
    display: block;
    padding: 8px 30px 8px 17px;
    background-position: right 13px center;
    font-size: 14px;
  }

  .recruit_topics_wrap .list_topics li{
    border: none;
    border-bottom: 1px solid #C2C2C2;
  }

  .recruit_topics_wrap .list_topics li > a{
    position: relative;
    display: grid;
    grid: auto / 154px 1fr;
    padding: 19px 0;
  }

  .recruit_topics_wrap .list_topics li > a::after{
  }

  .recruit_topics_wrap .list_topics li .date,
  .recruit_topics_wrap .list_topics li .title{
    font-size: 20px;
  }

  .recruit_topics_wrap .list_topics li .date{
    width: 100%;
  }

  .recruit_topics_wrap .list_topics li .title{
    padding: 0 21px 0 0;
    background-size: 19px;
  }
}


.bl_recruit_top_message_wrap {
  position: relative;
  margin: 0 0 70px;
}

.bl_recruit_top_message_wrap::after{
  content: "";
  z-index: -30;
  position: absolute;
  right: -45%;
  bottom: -10px;
  width: 315px;
  height: 215px;
  background: url(/image/recruit/bg01.png) no-repeat center center/contain;
  opacity: .58
}

.bl_recruit_top_message {
  display: flex;
  gap: 11px;
  align-items: center;
  margin-bottom: 25px;
  font-weight: 400;
}

.message_en {
  font-size: 40px;
  color: #003B98;
}

.message_jp {
  font-size: 13px;
}

.bl_message_img {
  float: right;
  max-width: 140px;
  margin: 0 0 20px 10px;
}

.bl_message_img figure {
  margin: 0;
}

.bl_message_img img {
  display: block;
  width: 100%;
  height: auto;
}

.bl_message_txt{
  line-height: 1.8;
}

.bl_message_txt + .bl_message_txt {
  margin-top: 20px;
}

.fw500{ font-weight: 500;}
.fw600{ font-weight: 600;}
.fw700{ font-weight: 700;}

@media print, screen and (min-width: 768px) {
  .bl_recruit_top_message_wrap {
    margin: 0 0 120px;
  }

  .bl_recruit_top_message_wrap::after{
    top: 200px;
    right: -178px;
    bottom: auto;
    width: 437px;
    height: 375px;
    opacity: 1;
  }

  .bl_recruit_top_message {
    gap: 38px;
    margin-bottom: 40px;
  }

  .message_en {
    font-size: 90px;
  }

  .message_jp {
    font-size: 20px;
  }

  .bl_message_img {
    max-width: 340px;
    margin: 0 0 20px 24px;
  }

  .bl_message_txt{
    float: left;
    width: calc(100% - 369px);
    line-height: 2.1;
    font-size: 20px;
  }

  .bl_message_txt + .bl_message_txt {
    margin-top: 45px;
  }
}

@media print, screen and (min-width: 768px) and (max-width: 992px){
  .bl_message_txt + .bl_message_txt {
    width: 100%;
  }
}

.bl_recruit_top_recruit_wrap {
  margin-bottom: 50px;
  padding: 20px 20px 60px;
  background: #F1FAF9 url(/image/recruit/bg02.png) no-repeat center center/cover;
}
.bl_recruit_top_recruit_wrap.bg_none {
  padding-top: 0;
  background: none;
}

.bl_recruit_top_recruit_wrap.bl_recruit_top_workBnr_wrap,
.bl_recruit_top_workBnr_wrap{
  background: none;
  padding-top: 0;
  padding-bottom: 20px;
}

.el_fcGreen{
  color: #008C8C;
}

.bl_recruit_top_recruit_wrap .bl_recruit_top_message{
  margin-bottom: 70px;
}

.bl_recruit_info_list {
  display: grid;
  grid: auto / 1fr;
  gap: 42px 40px;
}

.bl_recruit_info_item {

}

.el_btn {
  display: block;
  position: relative;
  padding: 20px 45px 20px 97px;
  border: 2px solid #C7C7C7;
  border-radius: 15px;
  background-color: #fff;
  font-size: 15px;
  text-decoration: none;
  transition: all .3s;
}

.el_btn,
.el_btn:visited,
.el_btn:hover,
.el_btn:visited:hover
.el_btn:active{
  color: #000;
  text-decoration: none;
}

.el_btn:hover,
.el_btn:active{
  opacity: .7;
}

.el_btn::after{
  content: "";
  position: absolute;
  top: 50%;
  right: 17px;
  width: 22px;
  height: 22px;
  background: url(/image/icon_arrow_13.png) no-repeat center center/contain;
  transform: translateY(-50%);
}

.el_btn.el_btn__arrowBlue::after {
  background-image: url(/image/icon_arrow_14.png);
}

.el_btn.el_btn__arrowGray::after {
  background-image: url(/image/icon_arrow_17.png);
}

.el_btn.el_btn__arrowGreen::after {
  background-image: url(/image/icon_arrow_18.png);
}

.bl_recruit_info_item_img{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 82px;
  height: 92px;
}

@media print, screen and (min-width: 768px) {
  .bl_recruit_top_recruit_wrap {
    margin-bottom: 100px;
    padding: 90px 20px 65px;
    background: #F1FAF9 url(/image/recruit/bg02_pc.png) no-repeat center center/cover;
  }

  .bl_recruit_top_recruit_wrap .bl_recruit_top_message{
    margin-bottom: 40px;
  }

  .bl_recruit_info_list {
    grid: auto / 1fr 1fr;
  }

  .el_btn {
    padding: 47px 75px 47px 170px;
    font-size: 26px;
  }

  .el_btn::after{
    right: 30px;
    width: 38px;
    height: 38px;
  }

  .bl_recruit_info_item_img{
    width: 159px;
    height: 159px;
  }
}

.bl_recruit_top_works_wrap{
  margin-bottom: 60px;
}

.recruit_worksSlide .item{
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
}

@media print, screen and (min-width: 768px) {
  .bl_recruit_top_works_wrap{
    margin-bottom: 100px;
  }
}

.bl_recruit_top_more_wrap {
  padding: 300px 15px 30px;
  background: url(/image/recruit/bg03.jpg) center center/cover;
}

.bl_recruit_top_more_info {
  position: relative;
}

.bl_recruit_top_more_info::after{
  content: "";
  position: absolute;
  top: -104px;
  right: 55px;
  width: 40px;
  height: 110px;
  background: url(/image/recruit/illust03.png) no-repeat center center/contain;
}

.bl_recruit_top_more_bar {
  padding: 20px 22px;
  border-radius: 20px;
  background-color: rgba(255, 255, 255, .65);
}

.bl_recruit_top_more_txt {
  margin: 0 0 10px;
  text-align: center;
}

.el_btn02 {
  display: block;
  padding: 18px 20px;
  border-radius: 40px;
  background-color: #003B98;
  font-size: 18px;
  font-weight: 500;
  text-align: center;
  text-decoration: none;
  color: #fff;
  transition: all .3s;
}

.el_btn02,
.el_btn02:visited,
.el_btn02:active{
  color: #fff;
  text-decoration: none;
}

.el_btn02:hover,
.el_btn02:visited:hover,
.el_btn02:active{
  background-color: #EDECEC;
  text-decoration: none;
  color: #000;
}

.el_btn02.el_btn__green{
  background-color: #008C8C;
}

.el_btn02.el_btn__light{
  background-color: #4E89D0;
}

.el_btn02.el_btn__green:hover,
.el_btn02.el_btn__green:visited:hover,
.el_btn02.el_btn__green:active,
.el_btn02.el_btn__light:hover,
.el_btn02.el_btn__light:visited:hover,
.el_btn02.el_btn__light:active{
  background-color: #EDECEC;
  text-decoration: none;
  color: #000;
}

@media print, screen and (min-width: 768px) {
  .bl_recruit_top_more_wrap {
    padding: 178px 162px 142px;
    background: url(/image/recruit/bg03_pc.jpg) center center/cover;
  }

  .bl_recruit_top_more_info {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 30px;
  }

  .bl_recruit_top_more_info::after{
    content: none;
    position: static;
    top: -104px;
    right: 55px;
    width: 66px;
    height: 180px;
    background: url(/image/recruit/illust03.png) no-repeat center center/contain;
  }

  .bl_recruit_top_more_bar {
    display: flex;
    align-items: center;
    padding: 14px 15px;
    border-radius: 46px;
  }

  .bl_recruit_top_more_txt {
    margin: 0;
    padding: 0 50px;
    font-size: 22px;
    text-align: center;
  }

  .el_btn02 {
    width: 270px;
    padding: 18px 20px;
  }
}

.bl_recruit_footer {
  position: relative;
  margin-top: 160px;
}

#recruit_page_scroll_navi{
  position: absolute;
  top: -60px;
  right: 50%;
  transform: translateX(50%);
}

.bl_recruit_footer_content {
  padding: 120px 15px 45px;
  background: url(/image/recruit/bg04.png) no-repeat center center/cover;
}

.bl_recruit_footer_logo_section {
  margin-bottom: 89px;
  text-align: center;
}

.bl_recruit_footer_logo {
  margin-bottom: 20px;
}

.bl_recruit_footer_copy {
  margin-bottom: 10px;
  font-size: 20px;
}

.bl_recruit_footer_lead {
  color: #003B98;
}

.bl_recruit_footer_info_section {
  display: grid;
  gap: 25px 34px;
  text-align: center;
}

.bl_recruit_footer_sns_list {
  display: flex;
  justify-content: center;
  gap: 20px;
}

.bl_recruit_footer_bottom {
  padding: 15px 15px;
  background-color: #619ED5;
  color: #fff;
}

.bl_recruit_footer_navi_list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 40px;
  justify-content: center;
}

.bl_recruit_footer_navi_list a,
.bl_recruit_footer_navi_list a:visited{
  text-decoration: none;
  color: #fff;
}

.bl_recruit_footer_copyright {
  margin-top: 30px;
}

.bl_recruit_footer_copyright_txt {
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .bl_recruit_footer {
    margin-top: 110px;
  }

  #recruit_page_scroll_navi{
    right: 120px;
  }

  .bl_recruit_footer_content {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 30px;
    padding: 180px 50px 60px;
    background: url(/image/recruit/bg04_pc.png) no-repeat left top/contain;
  }

  .bl_recruit_footer_logo_section {
    display: flex;
    align-items: flex-end;
    gap: 20px;
    margin-bottom: 0;
  }

  .bl_recruit_footer_logo {
    margin-bottom: 0;
  }

  .bl_recruit_footer_copy {
    margin-bottom: 0;
    font-size: 20px;
  }

  .bl_recruit_footer_lead {
    font-size: 18px;
  }

  .bl_recruit_footer_info_section {
    display: flex;
    align-items: center;
  }

  .bl_recruit_footer_sns_list {
    display: flex;
    justify-content: center;
    gap: 20px;
  }

  .bl_recruit_footer_bottom {
    display: flex;
    justify-content: space-between;
    padding: 24px 50px;
  }

  .bl_recruit_footer_navi_section{
    order: 20;
  }

  .bl_recruit_footer_navi_list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 40px;
    justify-content: center;
  } 

  .bl_recruit_footer_navi_list a,
  .bl_recruit_footer_navi_list a:visited{
    font-size: 14px;
    text-decoration: none;
    color: #fff;
  }

  .bl_recruit_footer_copyright {
    order: 10;
    margin: 0;
  }

  .bl_recruit_footer_copyright_txt {
    font-size: 14px;
  }
}

@media print, screen and (min-width: 993px) {
  .el_btn02.el_btn02__sm{
    width: 152px;
    padding: 15px 15px;
    font-size: 18px;
  }
}

/*---------------------------------------------------------------------
	js-inview
---------------------------------------------------------------------*/
/* 管理画面で見えなくなるので…#pagebody */

.js_slide_up,
#pagebody .js_slide_up{
    opacity: 0;
    position: relative;
    top: 50px;
}

.js_slide_down,
#pagebody .js_slide_down {
    opacity: 0;
    position: relative;
    top: -50px;
}

.js_slide_left,
#pagebody .js_slide_left {
    opacity: 0;
    position: relative;
    left: -50px;
}

.js_slide_right,
#pagebody .js_slide_right {
    opacity: 0;
    position: relative;
    right: -50px;
}

/*---------------------------------------------------------------------
	recruit_other
---------------------------------------------------------------------*/
.recruit_page_detail{

}

.recruit_page_detail .page_ttl_wrap{
  background: #E7F4FF;
}

@media print, screen and (min-width: 768px) {
  .recruit_page_detail .page_ttl_wrap{
    padding-top: 240px;
  }

  .recruit_page_detail .page_ttl{
    padding: 75px 15px;
    font-size: 50px;
    text-align: center;
  }

  .bl_recruit_header_copy{
    line-height: 1.4;
  }
}

.recruit_page_detail .recruit_content1{
  margin-top: 15px;
}

.recruit_content1 h2{
  position: relative;
  margin: 0 0 30px;
  padding: 0 0 0 15px;
  font-size: 26px;
  font-weight: 400;
}

.recruit_content1 * + h2{
  margin-top: 30px;
}

.recruit_content1 h2::before{
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  width: 3px;
  height: 23px;
  background-color: #003B98;
}

.recruit_content1 h3{
  margin: 25px 0 25px;
  padding: 0 0 5px;
  border-bottom: 1px solid #BFBFBF;
  font-size: 22px;
  font-weight: 400;
  color: #003B98;
}

.recruit_content1 h4{
  margin: 15px 0 20px;
  font-size: 18px;
  font-weight: 400;
}

.recruit_content1 h5{
  margin: 15px 0 20px;
  font-size: 16px;
  font-weight: 400;
}

.recruit_content1 h6{
  margin: 15px 0 20px;
  font-size: 16px;
  font-weight: 400;
}

.recruit_content1 .fll_img ~ p,
.recruit_content1 .flr_img ~ p{
  line-height: 1.8;
}

.bl_workFlow_wrap {
  margin: 40px 0;
}

.bl_workFlow_img_wrap {
  text-align: center;
}

.bl_workFlow_info_wrap {
  margin: 15px 0 0;
}

.recruit_page .bl_workFlow_info_lead {
  margin: 0 0 15px;
  font-size: 22px;
  font-weight: 700;
}

.bl_workFlow_info_txt,
.bl_workFlow_list {
  line-height: 1.8;
}

.bl_workFlow_wrap + :is(h2,h3,h4,h5,h6){
  margin-top: 50px;
}

@media print, screen and (min-width: 768px) {
  .recruit_page_detail .recruit_content1{
    margin-top: 55px;
  }

  .recruit_content1 h2{
    margin: 0 0 45px;
    padding: 0 0 0 18px;
    font-size: 40px;
  }

  .recruit_content1 * + h2{
    margin-top: 120px;
  }

  .recruit_content1 h2::before{
    top: 12px;
    width: 5px;
    height: 38px;
  }

  .recruit_content1 h3{
    margin: 35px 0 30px;
    padding: 0 0 8px;
    font-size: 38px;
  }

  .recruit_content1 h4{
    margin: 25px 0 25px;
    font-size: 26px;
  }

  .recruit_content1 h5{
    margin: 20px 0 20px;
    font-size: 22px;
  }

  .recruit_content1 h6{
    margin: 20px 0 20px;
    font-size: 18px;
  }

  .recruit_content1 p{
    font-size: 20px;
    line-height: 1.8;
  }

  .bl_workFlow_txt,
  .recruit_content1 .bl_workFlow_txt{
    margin-top: 60px;
  }

  .tab_lh2_1,
  .recruit_content1 .tab_lh2_1{
    line-height: 2.1;
  }

  .recruit_content1 .fll_img ~ p,
  .recruit_content1 .flr_img ~ p{
    line-height: 2.1;
    font-size: 20px;
  }

  p + .bl_workFlow_wrap{
    margin-top: 65px;
  }

  .bl_workFlow_wrap {
    display: grid;
    grid: auto / 270px 1fr;
    gap: 50px;
    margin: 50px 0;
  }

  .bl_workFlow_info_wrap {
    margin: 0;
  }

  .recruit_page .bl_workFlow_info_lead {
    line-height: 1.3;
    margin: 0 0 25px;
    font-size: 32px;
  }

  .bl_workFlow_info_txt,
  .bl_workFlow_list {
    line-height: 2.1;
    font-size: 20px;
  }

  .bl_workFlow_wrap + :is(h2,h3,h4,h5,h6){
    margin-top: 90px;
  }

}

@media print, screen and (max-width : 767px) {
  .sp_1column .fll_img,
  .sp_1column .flr_img{
    width: 100%;
    max-width: 100%;
    margin: 0 0 2.5%;
    text-align: center;
  }
}

.recruit_page #pagebody + .bl_recruit_top_recruit_wrap,
.recruit_page #pagebody + .bl_recruit_top_more_wrap{
  margin-top: 70px;
}

@media print, screen and (min-width: 768px) {
  .recruit_page #pagebody + .bl_recruit_top_recruit_wrap,
  .recruit_page #pagebody + .bl_recruit_top_more_wrap{
    margin-top: 150px;
  }
}

/* タグナビゲーション */
.bl_recruit_tag_nav {
  display: flex;
  gap: 30px;
  justify-content: center;
  margin: 40px 0 60px;
  list-style: none;
  padding: 0;
}

.bl_recruit_tag_nav li {
  position: relative;
  max-width: 270px;
  flex-grow: 1;
}

.bl_recruit_tag_nav li a {
  display: flex;
  justify-content: center;
  padding: 16px 25px 15px 15px;
  background-color: rgba(231, 244, 255, 0.61);
  border-radius: 10px 10px 0 0;
  text-decoration: none;
  color: #000;
  font-size: 18px;
  font-weight: 500;
  transition: all 0.3s;
}

.bl_recruit_tag_nav li a:hover {
  opacity: 0.8;
}

.bl_recruit_tag_nav li a::after {
  content: '';
  position: absolute;
  bottom: 50%;
  left: calc(100% - 25px);
  width: 20px;
  height: 20px;
  background: url(/image/icon_arrow_15.png) no-repeat center center/contain;
  transform: translate(-50%,50%);
}

/* セクション */
.bl_recruit_section {
  margin-bottom: 100px;
}

/* 求人詳細 */
.bl_recruit_job_detail {
  margin-bottom: 60px;
}

/* 詳細行 */
.bl_recruit_detail_row {
  display: flex;
  margin: 0;
}

.bl_recruit_job_detail > .bl_recruit_detail_row:nth-child(1) dt{
  border-top: 1px solid #00489e;
}

.bl_recruit_job_detail > .bl_recruit_detail_row:nth-child(1) dd{
  border-top: 1px solid #ccc;
}

.bl_recruit_detail_row dt {
  width: 120px;
  padding: 12px 11px;
  font-size: 18px;
  font-weight: 600;
  border-bottom: 1px solid #00489e;
  margin: 0;
  flex-shrink: 0;
}

.bl_recruit_detail_row dd {
  flex-grow: 1;
  padding: 12px 18px;
  font-size: 18px;
  border-bottom: 1px solid #ccc;
}

/* エントリーボタン */
.bl_recruit_entry_btn {
  text-align: center;
  margin: 60px 0;
}

.el_btn02.el_btn_entry {
  position: relative;
  margin: auto;
}

.el_btn02.el_btn_entry::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 20px;
  width: 20px;
  height: 20px;
  background: url(/image/icon_arrow_16.png) no-repeat center center/contain;
  transform: translateY(-50%);
}

/* コンテンツエリア */
.content1 {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px;
}

@media print, screen and (min-width: 768px) {
  /* タグナビゲーション */
  .bl_recruit_tag_nav {
    margin: 100px 0 80px;
  }

  .bl_recruit_tag_nav li a {
    font-size: 20px;
  }

  /* セクション */
  .bl_recruit_section {
    margin-bottom: 100px;
  }

  .bl_recruit_section + .bl_recruit_section{
    margin-top: 150px;
  }

  /* 求人詳細 */
  .bl_recruit_job_detail {
  }

  /* 詳細行 */
  .bl_recruit_detail_row dt {
    width: 240px;
    padding: 14px 15px;
  }

  .bl_recruit_detail_row dd {
    padding: 14px 18px;
  }

  .topic_path_top > ol > li{
    font-size: 16px;
  }
}

/*---------------------------------------------------------------------
	recruit_form
---------------------------------------------------------------------*/
/* ステップインジケーター */
.recruit-steps {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 40px 0;
	gap: 12px;
}

.recruit-step {
	flex: 0 0 auto;
	text-align: center;
	position: relative;
}

.recruit-step-badge {
	display: inline-block;
	padding: 4px 15px;
	border-radius: 20px;
	background: #ABABAB;
	color: #fff;
	font-weight: bold;
	font-size: 14px;
	margin-bottom: 8px;
}

.recruit-step.active .recruit-step-badge {
	background: #619ED5;
}

.recruit-step-arrow {
	color: #999;
	font-size: 18px;
	margin: 0 4px;
}

.recruit-step-label {
	font-size: 14px;
	color: #000;
	position: relative;
	padding-bottom: 4px;
}

.recruit-step.active .recruit-step-label {
	font-weight: 500;
}

.recruit-step .recruit-step-label::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 2px;
	background: #ABABAB;
}

.recruit-step.active .recruit-step-label::after {
	background: #619ED5;
}

/* フォーム全体のコンテナ */
.recruit-form-container {
	max-width: 1200px;
	margin: 0 auto;
}

/* フォームカード */
.recruit-form-card {
	background: #F4FAFF;
	padding: 40px 20px 10px;
}

/* フォーム項目 */
.recruit-form-field {
	margin-bottom: 32px;
}

.recruit-form-field:last-child {
	margin-bottom: 0;
}

/* ラベル */
.recruit-form-label {
	display: flex;
	align-items: center;
	margin-bottom: 12px;
	font-weight: bold;
	color: #003B98;
}

.recruit-form-label .required-badge {
	display: inline-block;
  min-width: 43px;
	background: #E53935;
	color: #fff;
	font-size: 12px;
  font-weight: 500;
	padding: 2px 8px;
	border-radius: 3px;
	margin-left: 8px;
	font-weight: normal;
}

/* ラジオボタン */
.recruit-radio-group {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.recruit-radio-btn {
	position: relative;
}

.recruit-radio-btn input[type="radio"] {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}

.recruit-radio-btn label {
	display: flex;
	align-items: center;
	gap: 8px;
	height: 58px;
	padding: 0 16px;
	border-radius: 5px;
	background: #fff;
	cursor: pointer;
	transition: all 0.3s;
	font-weight: normal;
	box-sizing: border-box;
}

.recruit-radio-btn label::before {
	content: '';
	width: 20px;
	height: 20px;
  box-sizing: border-box;
	border: 1px solid #AAAAAA;
	border-radius: 50%;
	flex-shrink: 0;
	position: relative;
	background: #fff;
}

.recruit-radio-btn input[type="radio"]:checked + label::before {
	background: radial-gradient(circle, #000 0%, #000 50%, #fff 50%, #fff 100%);
}

.recruit-radio-btn label:hover {
	border-color: #999;
}

/* テキスト入力 */
.recruit-form-field input[type="text"],
.recruit-form-field input[type="email"],
.recruit-form-field textarea {
	width: 100%;
	padding: 12px;
	border: none;
	border-radius: 4px;
	font-size: 14px;
	box-sizing: border-box;
}

.recruit-form-field input[type="text"]:focus,
.recruit-form-field input[type="email"]:focus,
.recruit-form-field textarea:focus {
	outline: none;
	border-color: #1E5BA8;
}

.recruit-form-field textarea {
	min-height: 120px;
	resize: vertical;
}

/* ファイルアップロード */
.recruit-file-upload {
	position: relative;
	width: 100%;
	padding: 12px;
	border: none;
	border-radius: 4px;
	background-color: #fff;
	box-sizing: border-box;
	min-height: 48px;
	display: flex;
	align-items: center;
}

.recruit-file-upload input[type="file"] {
	width: 100%;
	padding: 0;
	border: none;
	background-color: transparent;
	font-size: 14px;
	box-sizing: border-box;
	cursor: pointer;
}

.recruit-file-upload input[type="file"]::file-selector-button {
	width: 168px;
	height: 48px;
	padding: 12px 20px;
	margin-right: 16px;
	border: 1px solid #ccc;
	border-radius: 4px;
	background-color: #f5f5f5;
	cursor: pointer;
	font-size: 14px;
	box-sizing: border-box;
	transition: background-color 0.3s;
}

.recruit-file-upload input[type="file"]::file-selector-button:hover {
	background-color: #e0e0e0;
}

/* アップロード済みファイル表示 */
.recruit-file-uploaded {
	background: #E8F5E9;
	border-left: 4px solid #4CAF50;
	padding: 12px 16px;
	border-radius: 4px;
	margin-bottom: 12px;
	font-size: 14px;
	line-height: 1.6;
}

.recruit-file-uploaded-icon {
	display: inline-block;
	color: #4CAF50;
	font-weight: bold;
	margin-right: 8px;
	font-size: 18px;
}

.recruit-file-uploaded strong {
	color: #2E7D32;
}

.recruit-file-uploaded-note {
	margin: 8px 0 0 0;
	font-size: 12px;
	color: #666;
}

.recruit-file-change-btn {
	display: inline-block;
	margin-left: 16px;
	padding: 6px 16px;
	background: #fff;
	color: #2E7D32;
	border: 1px solid #4CAF50;
	border-radius: 4px;
	font-size: 13px;
	cursor: pointer;
	transition: all 0.3s;
}

.recruit-file-change-btn:hover {
	background: #4CAF50;
	color: #fff;
}

/* ヘルプテキスト */
.recruit-help-text {
	font-size: 13px;
  font-weight: 600;
	color:#333333;
	margin-top: 8px;
	line-height: 1.6;
}

/* チェックボックス */
.recruit-checkbox-group {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	padding: 5px 15px;
	border-radius: 5px;
	background: #fff;
}

.recruit-checkbox-group input[type="checkbox"] {
	margin-top: 4px;
	flex-shrink: 0;
}

.recruit-checkbox-group label {
	font-weight: normal;
	cursor: pointer;
}

.recruit-privacy-box {
	background: #fff;
	padding: 16px;
	border-radius: 4px;
	margin-bottom: 12px;
	font-size: 13px;
	line-height: 1.8;
}

.recruit-privacy-box strong {
	display: block;
	margin-bottom: 8px;
}

/* 送信ボタン */
.recruit-submit-container {
	text-align: center;
	margin-top: 40px;
	margin-bottom: 40px;
}

.recruit-submit-btn {
	background: #1E5BA8;
	color: #fff;
	border: none;
	padding: 16px 48px;
	font-size: 16px;
	border-radius: 4px;
	cursor: pointer;
	font-weight: bold;
	transition: background 0.3s;
}

.recruit-submit-btn:hover {
	background: #164A8C;
}

/* エラーメッセージ */
.recruit-form-field .error {
	color: #E53935;
	font-size: 13px;
	margin-top: 4px;
	display: block;
}

.error_message {
	background: #FFEBEE;
	border-left: 4px solid #E53935;
	padding: 16px;
	margin-bottom: 24px;
	border-radius: 4px;
}

.error_message ul {
	margin: 0;
	padding-left: 20px;
}

.error_message li {
	color: #E53935;
	margin-bottom: 4px;
}

/* 説明文 */
.recruit-intro-message {
	margin-bottom: 24px;
	line-height: 1.8;
	color: #333;
}

/* 確認画面用の値表示 */
.recruit-form-value {
	padding: 12px;
	background: #f9f9f9;
	border-radius: 4px;
	min-height: 20px;
	line-height: 1.6;
}

/* ボタンコンテナ */
.recruit-button-container {
	display: flex;
	justify-content: center;
	gap: 16px;
	margin-top: 40px;
	margin-bottom: 40px;
}

.recruit-back-btn {
	background: #fff;
	color: #333;
	border: 1px solid #ccc;
	padding: 16px 48px;
	font-size: 16px;
	border-radius: 4px;
	cursor: pointer;
	font-weight: bold;
	transition: all 0.3s;
}

.recruit-back-btn:hover {
	background: #f5f5f5;
	border-color: #999;
}

.mail_form{
  max-width: 1200px;
  margin-top: 50px;
}

.mail_form a.btn_01{
  min-width: auto;
  width: 373px;
  max-width: 98%;
}

@media print, screen and (min-width: 768px) {
  /* ステップインジケーター */
  .recruit-steps {
    align-items: baseline;
    margin: 80px 0 60px;
    gap: 10px;
  }

  .recruit-step {
  }

  .recruit-step-badge {
    min-width: 130px;
    padding: 3px 24px;
    font-size: 16px;
  }

  .recruit-step.active .recruit-step-badge {
  }

  .recruit-step-arrow {
    position: relative;
    top: 7px;
    line-height: 1;
    font-size: 30px;
  }

  .recruit-step-label {
    font-size: 20px;
  }

  .recruit-steps .recruit-step:nth-child(1) .recruit-step-label{
    letter-spacing: 10px;
  }

  .recruit-step.active .recruit-step-label {
  }

  .recruit-step.active .recruit-step-label::after {
  }

  /* フォーム全体のコンテナ */
  .recruit-form-container {
  }

  /* フォームカード */
  .recruit-form-card {
    padding: 100px 80px 10px;
  }

  /* フォーム項目 */
  .recruit-form-field {
    margin-bottom: 45px;
  }

  .recruit-form-field:last-child {
  }

  /* ラベル */
  .recruit-form-label {
    font-size: 26px;
    font-weight: 600;
  }

  .recruit-form-label .required-badge {
    padding: 0 10px;
    font-size: 14px;
  }

  /* ラジオボタン */
  .recruit-radio-group {
  }

  .recruit-radio-btn {
  }

  .recruit-radio-btn input[type="radio"] {
  }

  .recruit-radio-btn label {
    gap: 14px;
    padding: 5px 20px;
    font-size: 20px;
  }

  .recruit-radio-btn label::before {
  }

  .recruit-radio-btn input[type="radio"]:checked + label::before {
  }

  .recruit-radio-btn label:hover {
  }

  /* テキスト入力 */
  .recruit-form-field input[type="text"],
  .recruit-form-field input[type="email"],
  .recruit-form-field textarea {
    font-size: 20px;
    padding: 20px;
    font-size: 18px;
  }

  .recruit-form-field input[type="text"]:focus,
  .recruit-form-field input[type="email"]:focus,
  .recruit-form-field textarea:focus {
  }

  .recruit-form-field textarea {
  }

  /* ファイルアップロード */
  .recruit-file-upload {
    padding: 20px;
  }

  .recruit-file-upload input[type="file"] {
    font-size: 18px;
  }

  .recruit-file-upload input[type="file"]::file-selector-button {
    font-size: 16px;
  }

  /* アップロード済みファイル表示 */
  .recruit-file-uploaded {
    padding: 16px 20px;
    font-size: 16px;
  }

  .recruit-file-uploaded-icon {
    font-size: 20px;
  }

  .recruit-file-uploaded-note {
    font-size: 14px;
  }

  .recruit-file-change-btn {
    padding: 8px 20px;
    font-size: 15px;
  }

  /* ヘルプテキスト */
  .recruit-help-text {
    font-size: 16px;
    margin-top: 10px;
  }

  /* チェックボックス */
  .recruit-checkbox-group {
    padding: 15px 15px;
    font-size: 18px;
  }

  .recruit-checkbox-group input[type="checkbox"] {
    width: 20px;
    height: 20px;
  }

  .recruit-checkbox-group label {
  }

  .recruit-privacy-box {
    font-size: 16px;
  }

  .recruit-privacy-box strong {
  }

  /* 送信ボタン */
  .recruit-submit-container {
    margin-top: 70px;
  }

  .recruit-submit-btn {
  }

  .recruit-submit-btn:hover {
  }

  /* エラーメッセージ */
  .recruit-form-field .error {
  }

  .error_message {
  }

  .error_message ul {
  }

  .error_message li {
  }

  /* 説明文 */
  .recruit-intro-message {
  }
}