@charset "UTF-8";

/* -- メニュー -- */

/* PC */
#content .contentInner .rightMenu .rightNavi li a {
  padding: 13px 0 13px 30px;
}

#brand.production #content .menu_production a,
#brand.program #content .menu_program a {
  background: #fff;
  color: #8c8c8c;
}

#brand.production #content .menu_production,
#brand.program #content .menu_program {
  display: block;
  background: url(/employment/images/common/icon_current.png) right 0 no-repeat;
  background-size: 15px 45px;
  background-position: right;
}

/* SP */
#brand.production .draewrInner .menu_production a,
#brand.program .draewrInner .menu_program a,
#brand.career_path .draewrInner .menu_career_path a,
#brand.apply .draewrInner .menu_apply a {
  color: #8c8c8c;
}

/* APPLY ボタン */
.btn_entry_disable {
background-color: #ccc!important;
border: none!important;
}
.btn_entry_disable:hover {
  cursor: default;
  color: #fff!important;
  background: url(/employment/images/common/right_arrow_white.png) 95% center no-repeat #ccc!important;
-moz-background-size: 6px 8px!important;
    background-size: 6px 8px!important;
    opacity: 1.0!important;
}


/* -- コンテンツ -- */
#content .tac {
  text-align: center;
}

#content .whiteBox .section.is-w826 {
  max-width: 826px;
  padding-top: 10%;
}

.whiteBox .section .innerSection .text_area {
  width: 55%;
  float: left;
}

.whiteBox .section .innerSection .photo_area {
  width: 40%;
  float: right;
}

.whiteBox .section .innerSection .photo_area img {
  width: 100%;
}

.whiteBox .section .innerSection .p-images__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

.whiteBox .section .innerSection .p-images__item {
  width: 270px;
}

.whiteBox #footer .footer_menu .footer_menu_inner {
  max-width: 700px;
}


/* --.p-btn 共通-- */
.p-btn__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px 24px;
}

.p-btn__list .p-btn__item {
  width: calc( 50% - 12px );
  min-height: 88px;
}

#content .p-btn__list .p-btn__item a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 15px 50px 11px 15px;
  box-sizing: border-box;
  background: url(/employment/images/common/right_arrow_red.png) 95% center no-repeat #fff;
  background-size: 10px auto;
  color: #000;
  font-size: 20px;
  text-align: center;
  line-height: 1.4;
}


/* --.p-apply 共通-- */
.p-apply {
  margin-top: 100px;
  background: #fff;
}

.p-apply__logo {
  display: block;
  margin-bottom: 60px;
  text-align: center;
}

#content .p-apply__title {
  background: #FF0F1C;
  margin-bottom: 40px;
  color: #fff;
  font-size: 28px;
  text-align: center;
}

.p-apply__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 56px 38px;
  max-width: 826px;
  margin: 0 auto;
  padding: 6px 0 60px;
}

#content .p-apply__list .p-apply__item {
  position: relative;
  width: 250px;
  text-align: center;
}

#content .p-apply__list .p-apply__item.inactive {
  opacity: 0.3;
}

.p-apply__item::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  margin-top: 12px;
  transform: translateX( -50% );
  width: 100%;
  height: 2px;
  background-color: #FF0F1C;
}

#content .p-apply__list .p-apply__item a {
  display: block;
  width: 100%;
  height: 100%;
  color: #000;
}


/* --.p-card 共通-- */
.p-card {
  display: flex;
  flex-wrap: wrap;
}

.p-card.is-gap20 {
  gap: 20px;
}

.p-card.is-gap10 {
  gap: 10px;
}

.p-card__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #F2F2F2;
  box-sizing: border-box;
}


/* --.p-career-timeline 共通-- */
.p-career-timeline {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 44px;
}

.p-career-timeline__list {
  flex: 1;
  padding-right: 25px;
}

.p-career-timeline__item {
  position: relative;
  display: flex;
  padding-left: 28px;
  margin-bottom: 26px;
}

.p-career-timeline__item:last-child {
  margin: 0;
}

/* タイムラインの線 */
.p-career-timeline__item:not(.is-current)::before {
  content: '';
  position: absolute;
  left: 3px;
  top: 28px;
  width: 2px;
  height: 100%;
  background-color: #F2F2F2;
}

/* タイムラインの丸 */
.p-career-timeline__item::after {
  content: '';
  position: absolute;
  left: 0;
  top: 15px;
  width: 8px;
  height: 8px;
  transform: translateY(-50%);
  border-radius: 50%;
  background-color: #000;
}

/* 現在の項目 (Now) */
.p-career-timeline__item.is-current .year {
  color: #FF0F1C;
}

.p-career-timeline__item.is-prev-current::before,
.p-career-timeline__item.is-current::after {
  background-color: #FF0000;
}

/* 各経歴項目のテキストスタイル */
.p-career-timeline__item .year {
    width: 73px;
    flex-shrink: 0;
    padding-right: 23px;
    font-size: 20px;
    line-height: 1.5;
}

.p-career-timeline__item .description {
    flex-grow: 1;
    line-height: 1.5;
}

.p-career-commmnt {
  background: #F2F2F2;
  padding: 30px 30px 40px;
}


/* --Production Management Candidate Program の画面専用-- */
.production_program {
  padding: 0 75px;
}

.production_program .p-card__item {
  width: calc( 50% - 10px);
  min-height: 236px;
  padding: 37px 19px;
}

.production_program span {
  position: relative;
  margin-bottom: 19px;
  padding-bottom: 19px;
  font-size: 20px;
  line-height: 1.2;
}

/* タイトル 赤い下線 */
.production_program span::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  width: 30px;
  height: 2px;
  transform: translateX( -50% );
  background-color: #FF0000;
}

#content .production_program p {
  text-align: center;
}


/* --Career Development の画面専用-- */
.production_career .p-card__item {
  width: calc( 50% - 5px );
  padding: 30px;
}

.production_career span {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 22px;
  padding-bottom: 18px;
  color: #FF0000;
  font-size: 25px;
  line-height: 1.2;
}

.production_career span::before {
  content: "";
  flex-shrink: 0;
  display: block;
  width: 53px;
  height: 53px;
  padding-right: 7px;
  background: var( --icon-url ) no-repeat center / contain;
}

.production_career .career {
  --icon-url: url( "/employment/en/production/images/graduate_prd_icon01.png" );
}

.production_career .plan {
  --icon-url: url( "/employment/en/production/images/graduate_prd_icon02.png" );
}

.production_career .application {
  --icon-url: url( "/employment/en/production/images/graduate_prd_icon03.png" );
}

.production_career .training {
  --icon-url: url( "/employment/en/production/images/graduate_prd_icon04.png" );
}

/* タイトル 赤い下線 */
.production_career span::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  transform: translateX( -50% );
  width: 100%;
  height: 2px;
  background-color: #FF0000;
}


/*========================
PC min-width:640px
=========================*/
@media (min-width: 640px) {
  .whiteBox #footer .footer_menu .brand_menu_list li {
    padding: 30px;
  }
  .whiteBox #footer .footer_menu .brand_menu_list li:last-child {
    padding: 0;
  }
}


/*========================
SP max-width:640px
=========================*/
@media (max-width: 640px) {
  #content h2 {
    text-align: center;
  }

  #content .section .mb40:last-child {
    margin-bottom: 40px;
  }

  .whiteBox .section .innerSection .text_area {
    width: 100%;
    float: none;
    margin-bottom: 40px;
  }

  .whiteBox .section .innerSection .photo_area {
    width: 100%;
    float: none;
  }

  .whiteBox .section .innerSection .p-images__item,
  .p-btn__list .p-btn__item,
  .production_program .p-card__item,
  .production_career .p-card__item,
  .p-career-timeline__list {
    width: 100%;
  }

  .p-apply {
    margin-top: 50px;
  }

  .p-apply__logo {
    margin-bottom: 30px;
  }

  .p-apply__list {
    gap: 40px;
  }

  .p-career-timeline__list,
  .production_program {
    padding: 0;
  }

  .p-career-timeline__image {
    margin-top: 25px;
  }
}