@charset "utf-8";

/* ---------------------------------------------------------------------------------------------

　   RECRUIT

--------------------------------------------------------------------------------------------- */

#recruit_introduction {
  background: url(../img/recruit/intro_bg.png) no-repeat center / auto 100%;
}
#recruit_introduction h2 {
  text-align: center;
}
#recruit_introduction p {
  text-align: center;
  line-height: 2.5em;
}
#recruit_charm,
#recruit_voice {
  position: relative;
}

#recruit_charm .container,
#recruit_voice .container {
  position: relative;
  z-index: 2;
}
#recruit_charm:after,
#recruit_voice:after {
  content: "";
  background: #EEECE5;
  z-index: 1;
  position: absolute;
  border-radius: 50%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.recruit_charm--box:first-of-type {
  padding-top: 0;
}
.recruit_charm--fig img {
  border-radius: 2rem;
}
.recruit_charm--txt .recruit_charm--num {
  font-weight: 700;
  color: var(--mainColor);
  line-height: 1.5em;
}
.recruit_charm--txt p {
  line-height: 2em;
}

.recruit_person_inner {
  background: #EEECE5;
  border-radius: 1rem;
}
.recruit_person_inner li {
  position: relative;
  padding-left: 5rem;
  font-weight: 700;
}
.recruit_person_inner li:before {
  content: "";
  width: 3rem;
  height: 2.8rem;
  background: url(../img/check.svg) no-repeat center / 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.recruit_cta_inner {
  background: url(../img/recruit/cta_bg.jpg) no-repeat center / cover;
  color: #fff;
  border: 1px solid #707070;
  border-radius: 2rem;
}
.recruit_cta_inner h2 {
  text-align: center;
  font-weight: 700;
  margin-bottom: .9em;
}
.recruit_cta_lead_txt {
  text-align: center;
  font-weight: 700;
}
.recruit_cta_inner .btn {
  border: none;
  display: flex;
  background: #fff;
  color: var(--black);
}
.recruit_cta_inner .btn:hover {
  opacity: 1;
}
.recruit_cta_inner .btn .btn_ico {
  display: inline-block;
  vertical-align: middle;
  margin-right: 1rem;
}
.recruit_cta_inner .btn .btn_ico img {
  width: 2rem;
  display: block;
}
.recruit_cta_inner .btn .arrow {
  width: 5rem;
  height: 5rem;
  right: 1rem;
}
.recruit_cta_inner .btn .arrow:before,
.recruit_cta_inner .btn .arrow:after {
  width: 5rem;
  height: 5rem;
  background: url(../img/btn03_arrow.svg) no-repeat center / 100%;
}


.recruit_number_box {
  background: #EEECE5;
  border-radius: 1rem;
  width: 31.2%;
}
.recruit_number_box01 {
  width: 65.96%;
}
.recruit_number_box h3 {
  text-align: center;
}
.recruit_number_box figure,
.recruit_number_box picture {
  text-align: center;
  margin-top: 1rem;
}
.recruit_number_txt.recruit_number_txt_w {
  color: #D6D1BF;
}
.recruit_number_txt {
  font-weight: 700;
  color: #958D7E;
  text-align: center;
  position: relative;
}
.recruit_number_u {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.recruit_number_txt .recruit_number_txt_n {
  display: inline-block;
  line-height: 1;
  font-weight: 700;
}
.recruit_number_txt .recruit_number_txt_n small {
  display: inline-block;
  line-height: 1;
}
.recruit_number_small_txt {
  font-weight: 700;
  text-align: center;
}
.recruit_number_txt_t {
  display: inline-block;
  line-height: 1;
}

.recruit_jobs_tab_txt dl {
  margin-bottom: 4rem;
}
.recruit_jobs_tab_txt dt:first-of-type {
  padding-top: 0;
}
.recruit_jobs_tab_txt dt {
  font-weight: 700;
  padding-top: 2rem;
  margin-bottom: .5rem;
}
.recruit_jobs_tab_txt dd {
  border-bottom: 1px dashed #222;
  padding-bottom: 1.5rem;
}
.recruit_jobs_tab_txt .disc li {
  list-style: disc;
  margin-left: 1.2em;
}

.recruit_voice_tab_inner {
}
.recruit_voice_staff_name {
  border-left: .5rem solid #958D7E;
  padding-left: 3rem;
  margin-bottom: 2.5rem;
}
.recruit_voice_staff_name span {
  display: block;
  font-weight: 700;
}
.recruit_voice_staff_name_jp {
  line-height: 1.2;
}
.recruit_voice_staff_name_en {
  margin-top: .8rem;
}
.recruit_voice_staff_info p {
  margin-bottom: 1.5rem;
}
.recruit_voice_staff_info p:last-child {
  margin-bottom: 0;
}
.recruit_voice_faq {
  margin-bottom: 4rem;
}
.recruit_voice_faq h4 span {
  color: var(--mainColor);
}
.recruit_voice_faq_box:last-child {
  margin-bottom: 0;
}
.recruit_voice_faq_box p {
  line-height: 2em;
}
.recruit_voice_schedule h4 {
  border-left: .5rem solid #958D7E;
  padding-left: 1.5rem;
}
.recruit_voice_schedule_inner {
  border-radius: 1rem;
  border: 1px solid var(--black);
}
.recruit_voice_time_schedule {
  margin-bottom: 2rem;
}
.recruit_voice_time_schedule dl {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.recruit_voice_time_schedule dl:after {
  content: "";
  width: .1rem;
  height: 100%;
  position: absolute;
  background: #958D7E;
  left: .25rem;
  top: 0;
}
.recruit_voice_time_schedule dt,
.recruit_voice_time_schedule dd {
  margin-bottom: 1.5rem;
}
.recruit_voice_time_schedule dt:last-of-type,
.recruit_voice_time_schedule dd:last-of-type {
  margin-bottom: 0;
}
.recruit_voice_time_schedule dt {
  color: #958D7E;
  position: relative;
  font-size: 2rem;
  font-weight: 700;
  width: 8rem;
  padding: 0 1.8rem;
}
.recruit_voice_time_schedule dt:before {
  content: "";
  position: absolute;
  width: .6rem;
  height: .6rem;
  background: #958D7E;
  border-radius: 50%;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.recruit_voice_time_schedule dd {
  width: calc(100% - 8rem);
}
.recruit_schedule_small_txt {
  line-height: 2em;
}
.recruit_carrerup_image_more {
  overflow: auto;
}
.recruit_carrerup_image_more_box {
  background: #EEECE5;
  border-radius: 1rem;
  position: relative;
}
.recruit_carrerup_image_more_box h3 {
  text-align: center;
}
.recruit_carrerup_image_years {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  border-radius: .6rem;
  font-weight: 700;
  text-align: center;
  background: #C2B69C;
  padding: .3em;
  top: 0;
}

.recruit_carrerup_image_more_box p {
  line-height: 2em;
}


#recruit_carrerup .scroll__inner {
  overflow-x: scroll;
  -ms-overflow-style: none;
  /* IE, Edge 対応 */
  scrollbar-width: none;
  /* Firefox 対応 */
}
#recruit_carrerup .scroll__inner::-webkit-scrollbar {
  /* Chrome, Safari 対応 */
  display: none;
}
#recruit_carrerup .simplebar-scrollbar::before {
  background: #958D7E;
  border-radius: 0;
  height: 14px !important;
  /*margin-left: 2px;
  margin-top: 3px;*/
}
#recruit_carrerup .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}
#recruit_carrerup .simplebar-track {
  background: #ccc;
}
#recruit_carrerup .simplebar-track.simplebar-horizontal {
  height: 10px;
}
#recruit_carrerup .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  top: 0;
  height: 10px;
}
#recruit_carrerup .simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
  left: 0;
  right: 0;
}
#recruit_introduction {
  position: relative;
}
.tab-content {
  display: none;
}
.tab-content.show {
  display: block;
}
.tab-container {
  display: flex;
  justify-content: center;
  border-bottom: 1px solid #222;
}
.tab {
  cursor: pointer;
  width: 49%;
  max-width: 44.5rem;
  background: #CCCCCC;
  border-radius: .6rem .6rem 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}
#recruit_jobs .tab {
  max-width: 22rem;
}
.tab:last-child {
  margin-right: 0;
}
.tab span {
  text-align: center;
}
.tab.active {
  background: var(--black);
  color: #fff;
}
.recruit_voice_img img,
.recruit_jobs_tab_img img {
  border: .4rem solid #fff;
  border-radius: 2rem;;
}
@media only screen and ( max-width : 767px ) {
  #recruit_introduction {
    padding: 3rem 0;
  }

  #recruit_introduction h2 {
    font-size: 2.8rem;
    margin-bottom: 2rem;
    letter-spacing: .1em;
  }
  #recruit_introduction p {
    letter-spacing: .1em;
  }
  #recruit_charm {
    padding: 6rem 0 8rem;
    margin: 6rem 0;
  }
  #recruit_charm:after {
    width: 380%;
    height: 100%;
  }
  .recruit_charm--box {
    margin-bottom: 6rem;
  }
  .recruit_charm--box:last-child {
    margin-bottom: 0;
  }
  .recruit_charm--fig {
    margin-bottom: 2.5rem;
  }
  .recruit_charm--fig img {
    border-radius: 1rem;
  }
  .recruit_charm--txt {
  }
  .recruit_charm--num {
    font-size: 1.2rem;
  }
  .recruit_charm--title {
    font-size: 2rem;
    margin-bottom: 1.5rem;
    line-height: 1.8em;
  }
  #recruit_number {
  }
  #recruit_carrerup,
  #recruit_jobs,
  #recruit_voice,
  #recruit_faq {
    margin-top: 6rem;
  }
  .recruit_number_box {
    width: 100%;
    margin-bottom: 4rem;
    padding: 2.5rem 2rem;
  }
  .recruit_number_box:last-child {
    margin-bottom: 0;
  }
  .recruit_number_box h3 {
    font-size: 2rem;
    text-align: center;
  }
  .recruit_number_txt .recruit_number_txt_n {
    font-size: 14rem;
  }
  .recruit_number_txt .recruit_number_txt_n small {
    font-size: 12rem;
  }
  .recruit_number_box .recruit_number_txt_t {
    font-size: 6rem;
  }
  .recruit_number_box05 .recruit_number_txt_t,
  .recruit_number_box06 .recruit_number_txt_t,
  .recruit_number_box08 .recruit_number_txt_t {
    font-size: 3.2rem;
  }
  .recruit_number_box04 .recruit_number_txt .recruit_number_txt_n {
    font-size: 10rem;
  }
  .recruit_number_box04 .recruit_number_txt .recruit_number_txt_n small {
    font-size: 8rem;
  }
  .recruit_number_box04 .recruit_number_box .recruit_number_txt_t {
    font-size: 4.6rem;
  }
  .recruit_number_box02 .recruit_number_small_txt {
    width: 100%;
    text-align: center;
  }
  .recruit_number_box02 .recruit_number_txt_t {
    font-size: 2.4rem;
  }
  .recruit_number_u {
    font-size: 2rem;
    letter-spacing: .4em;
  }
  .recruit_number_box06 .recruit_number_u {
    font-size: 3.2rem;
  }
  .recruit_number_small_txt {
    margin-top: .5rem;
  }
  .recruit_carrerup_image {
    /* overflow: auto;
    margin-right: -2rem;
    margin-bottom: 4rem; */
    display: none;
  }
  .recruit_carrerup_image .scroll__inner {
    padding-bottom: 3rem;
  }
  .recruit_carrerup_image img {
    max-width: 58rem;
    width: 58rem;
  }
  #recruit_carrerup .subtitle {
    margin-bottom: 0;
  }
  .recruit_carrerup_image_more {
    overflow: auto;
    margin-right: -2rem;
    margin-bottom: 6rem;
  }
  .recruit_carrerup_image_more_inner {
    width: 120rem;
    padding-top: 1.5rem;
    padding-bottom: 3rem;
    padding-right: 2rem;
  }
  .recruit_carrerup_image_more_box {
    flex: 1;
    margin-right: 2rem;
    padding: 3rem 2.5rem;
    font-size: 1.2rem;
  }
  .recruit_carrerup_image_more_box:last-child {
    margin-right: 0;
  }
  .recruit_carrerup_image_more_box .recruit_carrerup_image_years {
    width: 9rem;
    font-size: 1.2rem;
    top: -1.5rem;
    text-align: center;
  }
  .recruit_carrerup_image_more_box h3 {
    font-size: 2rem;
    margin-bottom: 1.5rem;
  }
  .recruit_carrerup_image_more_box ul {
     margin-top: 2rem;
  }
  .recruit_carrerup_image_more_box li:before {
    top: .2rem;
  }
  .recruit_carrerup_image_sp {
    max-width: 84%;
    margin: 0 auto 4rem;
    display: block;
  }
  .recruit_cta {
    margin-bottom: 2rem;
  }
  .recruit_cta_inner {
    padding: 4rem 3rem;
  }
  .recruit_cta_inner h2 {
    font-size: 2rem;
  }
  .recruit_cta_lead_txt {
    font-size: 2.8rem;
    margin-bottom: 4rem;
  }
  .recruit_cta_inner .btn {
    width: 100%;
    font-size: 1.6rem;
  }
  #recruit_voice {
    padding: 0 0 3rem;
    margin: 14rem 0 12rem;
  }
  #recruit_voice:after {
    width: 360%;
    height: 108%;
  }
  .recruit_voice_tab_inner {
  }
  .recruit_voice_staff_info {
    margin-top: 2rem;
  }
  .recruit_voice_top {
    margin-bottom: 3rem;
  }
  .recruit_voice_staff_name .recruit_voice_staff_name_jp {
    font-size: 2.8rem;
  }
  .recruit_voice_staff_name .recruit_voice_staff_name_en {
    font-size: 1.2rem;
    margin-top: .4rem;
  }
  .recruit_voice_faq_box {
    margin-bottom: 3rem;
  }
  .recruit_voice_faq_box h4, {
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
  .recruit_voice_schedule h4 {
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
  .recruit_voice_schedule_inner {
    padding: 2rem;
  }
  .recruit_voice_time_schedule dd {
    font-size: 1.6rem;
    padding-top: .15em;
  }
  .recruit_voice_staff_info p {
    margin-bottom: 1rem;
  }
  .recruit_schedule_small_txt {
    font-size: 1.2rem;
  }
  .recruit_person_inner {
    padding: 2rem 2.5rem;
  }
  .recruit_person_inner li {
    font-size: 2rem;
    margin-bottom: 1.5rem;
    padding-left: 3.5rem;
  }
  .recruit_person_inner li:before {
    width: 2rem;
    height: 1.9rem;
    top: 0.6rem;
    transform: translateY(0%);
  }
  .recruit_person_inner li:last-child {
    margin-bottom: 0;
  }
  .recruit_jobs_tab_inner {
  }
  .recruit_jobs_tab_img {
    margin-bottom: 2rem;
  }
  
  .tab-container {
    margin-bottom: 3rem;
    padding: 0 1rem;
  }
  .tab {
    margin-right: 2%;
    height: 5rem;
    font-size: 1.4rem;
  }
  .recruit_voice_img img,
  .recruit_jobs_tab_img img {
    border-width: .2rem;
    border-radius: .6rem;
  }
  .recruit_voice_staff_name {
    padding-left: 1rem;
  }
  #recruit_faq {
    margin-bottom: 6rem;
  }
}
@media print, screen and ( min-width : 768px ) {
  .recruit_carrerup_image_sp {
    display: none;
  }
  #recruit_charm:after {
    width: 160%;
    height: 120%;
  }
  #recruit_voice:after {
    width: 260%;
    height: 108%;
  }
  #recruit_introduction {
    padding: 9.5rem 0 5rem;
  }
  #recruit_introduction h2 {
    font-size: 4.8rem;
    margin-bottom: 4rem;
  }
  #recruit_charm {
    padding: 10rem 0;
    margin: 18rem 0;
  }
  .recruit_charm--box {
    width: 30.5%;
  }
  .recruit_charm--fig {
    margin-bottom: 3rem;
  }
  .recruit_charm--txt {
  }
  .recruit_charm--num {
    font-size: 2rem;
  }
  .recruit_charm--title {
    font-size: 2.8rem;
    margin-bottom: 2rem;
  }
  #recruit_number {
    margin-bottom: 14rem;
  }
  #recruit_carrerup,
  #recruit_jobs {
    margin-bottom: 14rem;
  }
  #recruit_voice {
    padding: 10rem 0;
    margin: 20rem 0 10rem;
  }
  #recruit_person {
    padding: 12rem 0;
  }
  
  .recruit_person_inner {
    padding: 5rem 8rem;
  }
  .recruit_person_inner ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .recruit_person_inner li {
    font-size: 2.4rem;
    width: 49%;
    margin-top: 2rem;
  }
  .recruit_person_inner li:nth-child(-n+2) {
    margin-top: 0;
  }
  .recruit_cta_inner {
    padding: 7rem 4rem;
  }
  .recruit_cta_inner h2 {
    font-size: 2rem;
  }
  .recruit_cta_lead_txt {
    font-size: 3.6rem;
    margin-bottom: 5rem;
  }
  .recruit_cta_inner .btn {
    width: 38.8rem;
    height: 7.6rem;
    font-size: 2rem;
  }
  .recruit_cta_inner .btn:after {
    width: 5.8rem;
    height: 5.8rem;
  }
  #recruit_faq {
    margin-bottom: 9.5rem;
  }
  .recruit_number_box {
    margin-bottom: 4rem;
    padding: 3rem;
  }
  .recruit_number_box h3 {
    font-size: 2.4rem;
  }
  .recruit_number_box02 h3 {
    margin-bottom: 3rem;
  }
  .recruit_number_txt {
    font-size: 3.6rem;
  }
  .recruit_number_box04 .recruit_number_txt {
    font-size: 4.6rem;
  }
  .recruit_number_box01 .recruit_number_txt {
    font-size: 6rem;
  }
  .recruit_number_box02 .recruit_number_txt {
    font-size: 3.6rem;
  }
  .recruit_number_box01 .recruit_number_txt .recruit_number_txt_n {
    font-size: 10.6rem;
  }
  .recruit_number_txt .recruit_number_txt_n {
    font-size: 15rem;
  }
  .recruit_number_txt .recruit_number_txt_n small {
    font-size: 12rem;
  }
  .recruit_number_box04 .recruit_number_txt_n {
    font-size: 10rem;
  }
  .recruit_number_box04 .recruit_number_txt .recruit_number_txt_n small {
    font-size: 8rem;
  }
  .recruit_number_box04 .recruit_number_u {
    font-size: 2rem;
  }
  .recruit_number_small_txt {
    font-size: 1.4rem;
  }
  .recruit_jobs_tab_inner {
  }
  .recruit_jobs_tab_img {
    width: 37.2%;
  }
  .recruit_jobs_tab_txt {
    width: 56.1%;
  }
  .recruit_voice_tab_inner {
  }
  .recruit_voice_top {
    margin-bottom: 6rem;
  }
  .recruit_voice_staff_name_jp {
    font-size: 3.6rem;
  }
  .recruit_voice_img {
    width: 37.2%;
  }
  .recruit_voice_staff_info {
    width: 55.7%;
  }
  .recruit_voice_staff_info p {
    font-size: 2rem;
  }
  .recruit_voice_faq_box {
    margin-bottom: 4rem;
  }
  .recruit_voice_faq h4 {
    font-size: 2.8rem;
    margin-bottom: 2rem;
  }
  .recruit_voice_schedule h4 {
    font-size: 2.8rem;
    margin-bottom: 2.5rem;
  }
  .recruit_voice_schedule_inner {
    padding: 3.5rem;
  }
  .recruit_voice_time_schedule dd {
  }
  .recruit_voice_time_schedule dl {
    width: 48%;
  }
  .recruit_schedule_small_txt {
    font-size: 1.4rem;
  }
  .recruit_carrerup_image {
    margin-bottom: 10rem;
  }
  .recruit_carrerup_image_more {
  }
  .recruit_carrerup_image_more .scroll__inner {
  }
  .recruit_carrerup_image_more_inner {
    width: 230rem;
    padding-bottom: 6rem;
  }
  .recruit_carrerup_image_more_box {
    width: 52.5rem;
    padding: 4rem 3rem;
    margin-top: 3rem;
  }
  .recruit_carrerup_image_more_box h3 {
    font-size: 3.6rem;
    margin-bottom: 2rem;
  }
  .recruit_carrerup_image_years {
    font-size: 2.4rem;
    width: 18rem;
    top: -3rem;
  }
  .recruit_carrerup_image_more_box p {
  }
  .recruit_carrerup_image_more_box li {
    font-size: 2rem;
  }
  .recruit_carrerup_image_more_box li:before {
    top: .9rem;
  }
  .recruit_carrerup_image_more_box01 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .recruit_carrerup_image_more_box01 li {
    width: 48%;
  }
  #recruit_faq .btn {
    margin-top: 5rem;
  }
  .tab-container {
    margin-bottom: 6rem;
  }
  .tab {
    margin-right: 4rem;
    height: 6rem;
    font-size: 2.4rem;
  }
}

/* ---------------------------------------------------------------------------------------------

　   RECRUIT FAQ

--------------------------------------------------------------------------------------------- */
.accordion_wrap {
  overflow: hidden;
  margin-bottom: 2rem;
  border-radius: 1rem;
}
.accordion_wrap:last-child {
  margin-bottom: 0;
}
.accordion_header {
  position: relative;
  display: flex;
  align-items: center;
  cursor: pointer;
  background: #fff;
  font-weight: 700;
}
.accordion_header:before {
  content: "Q";
  font-family: "din-2014", sans-serif;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 5.6rem;
  line-height: 1;
}
.accordion_header.open {
  background: var(--black);
  color: #fff;
}
.accordion_header.open:before {
  color: #fff;
}

.acc_arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  transition: .3s;
}
.accordion_header.open .acc_arrow {
  transform: translateY(-50%) rotate(180deg);
  background: url(../img/recruit/ico-minus.png) no-repeat center / 100%;
}
.accordion_header.open .acc_arrow img {
  opacity: 0;
}
.acc_arrow img {
  display: block;
}
.accordion_content {
  position: relative;
  display: none;
  background: #fff;
}
.accordion_content:before {
  content: "A";
  font-family: "din-2014", sans-serif;
  position: absolute;
  left: 1.5rem;
  top: 1.5rem;
  font-size: 5.6rem;
  line-height: 1;
  font-weight: 700;
  color: var(--mainColor);
}

@media only screen and ( max-width : 767px ) {
  .accordion_header {
    font-size: 1.6rem;
    padding: 1.5rem 4rem 1.5rem 4.5rem;
  }
  .accordion_content:before,
  .accordion_header:before {
    left: 1.5rem;
    font-size: 3.2rem;
  }
  .acc_arrow {
    right: 1.5rem;
  }
  .acc_arrow img {
    width: 1.6rem;
  }
  .accordion_content {
    padding: 1.5rem 1.5rem 2rem 4.5rem;
  }
}
@media print, screen and ( min-width : 768px ) {
  .accordion_header {
    font-size: 2.4rem;
    padding: 2.5rem 11rem 2.5rem 9.5rem;
  }
  .accordion_content:before,
  .accordion_header:before {
    left: 3.4rem;
  }
  .acc_arrow {
    right: 4.5rem;
  }
  .accordion_content {
    padding: 2.5rem 3.4rem 5rem 9.5rem;
  }
}
/* ---------------------------------------------------------------------------------------------

　   XXX

--------------------------------------------------------------------------------------------- */

@media only screen and ( max-width : 767px ) {
}
@media print, screen and ( min-width : 768px ) {
}
