@charset "utf-8";
/*
 * HERO
 */
.main__hero {
  width: 100%;
  min-width: 1200px;
  height: 570px;
  margin-top: -28px;
  position: relative;
  background: transparent url(/ytc/corp/recruit/sales-driver/img/pc-hero-job-description.jpg?t=20250118) no-repeat 50% 50%;
  background-size: cover;
}
.main__hero-title {
  position: absolute;
  top: 248px;
  left: 220px;
  font-size: 3.2rem;
  color: #fff;
  font-weight: bold;
  line-height: 1.7;
}
@media screen and (max-width: 1199px){
  .main__hero {
    width: 1200px;
    height: 570px;
    margin-top: -28px;
    position: relative;
    background: transparent url(/ytc/corp/recruit/sales-driver/img/pc-hero-job-description.jpg?t=20250118) no-repeat 50% 50%;
    background-size: cover;
  }
}

@media screen and (max-width: 767px){
  .main__hero {
    width: 100vw;
    min-width: 100vw;
    height: 93.33vw;
    margin-top: -8vw;
    background: transparent url(/ytc/corp/recruit/sales-driver/img/sp-hero-job-description.jpg?t=20250118) no-repeat 50% 50%;
    background-size: 100vw auto;
  }
  .main__hero-title {
    font-size: 4.27vw;
    top: 38.7vw;
    left: 7.0vw;
  }
}

.main__lead {
  width: 1200px;
  margin: 0 auto;
  padding: 70px 0 60px;
  font-size:1.6rem;
  font-weight: 500;
  text-align: center;
  line-height: 2.2;

}

@media screen and (max-width: 1199px){
  .main__lead {
    width: 100%;
    margin: 0 auto;
    padding: 70px 0 60px;
    font-size:1.6rem;
    font-weight: 500;
    text-align: center;
    line-height: 2.2;
  }
}


@media screen and (max-width: 1024px){
  .main__lead {
    width: 85.3vw;
    padding: 2.6vw 0 60px;
    font-size: 1.6rem;
    line-height: 2.2;
    text-align: center;
  }
}

@media screen and (max-width: 767px){
  .main__lead {
    width: 85.3vw;
    padding: 2.6vw 0 14vw;
    font-size: 3.47vw;
    line-height: 2.0;
    text-align: left;
  }
}

.main__jobdescription {
  position: relative;
  width: 960px;
  margin: 0 auto;
  padding: 50px 0 60px;
}

.main__jobdescription-title {
  width: 960px;
  margin: 0 auto;
  line-height: 1.0;
  text-align: center;
  font-size: 3.6rem;
  padding-bottom: 20px;
}
.next-content .main__jobdescription-title {
  width: 960px;
  margin: 0 auto;
  line-height: 1.0;
  text-align: center;
  font-size: 3.6rem;
  padding-bottom: 20px;
}

.title {
  position: relative;
}
.title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc( 50% - 50px );
  width: 100px;
  height: 3px;
  background-color: #000;
}

.main__jobdescription-subtitle {
  width: 960px;
  margin: 0;
  line-height: 1.7;
  text-align: center;
  font-size: 2.6rem;
  font-weight: 500;
  margin-top: 40px;
}

.main__jobdescription-lead {
  position: relative;
  width: 960px;
  margin: 0;
  line-height: 1.7;
  text-align: center;
  font-size: 1.6rem;
  margin-top: 30px;
  padding-bottom: 20px;
  font-weight: 500;
}

.main__jobdescription-anotation {
  font-size: 1.4rem;
  line-height: 2.0;
  font-weight: normal;
}

.main__jobdescription.schedule .main__jobdescription-lead::after {
  content: "";
  position:absolute;
  bottom: 0;
  right: -167px;
  width: 202px;
  height: 108px;
  background:url(/ytc/corp/recruit/sales-driver/img/jobdescription-schedule-car.png?t=25112601) no-repeat 0 0;
  background-size:202px 108px;
}

.main__schedule-timeline {
  display: block;
  position: relative;
  list-style-type: none;
  width: 960px;
  margin: 120px 0 0 auto;
  padding-left: 0;
}

.main__schedule-timeline::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 49px;
  width: 2px;
  height: 85%;
  background-color: #fccf00;
}

.main__schedule-timeline .cat01,
.main__schedule-timeline .step08 {
  position: relative;
}

.main__schedule-timeline .cat01::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 49px;
  width: 2px;
  height: 220px;
  background-color: #f0f0f0;
}
.main__schedule-timeline .step08::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 49px;
  width: 2px;
  height: 220px;
  background-color: #f0f0f0;
}
.main__schedule-timeline .cat02 {
  position: relative;
}
.main__schedule-timeline .cat02::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 49px;
  width: 2px;
  height: 120px;
  background-color: #f0f0f0;
}


.main__schedule-timeline dl {
  display: flex;
  justify-content:flex-start;
  align-items: start;
}
.main__schedule-timeline dt {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap:wrap;
  box-sizing:border-box;
  width: 100px;
  height: auto;
  min-height: 100px;
  padding: 0 20px 40px;
  text-align: center;
  z-index: 3;
  font-size: 1.6rem;
  letter-spacing: -1.5px;
  font-weight: bold;
}


.main__schedule-timeline dd {
  display: block;
  box-sizing:border-box;
  width: 860px;
  margin: 0;
  padding-left: 16px;
  padding-bottom: 10px;
  padding-right: 360px;
  border-bottom: 1px dotted #000000;
  margin-bottom: 20px;
  letter-spacing: -1px;
}
.noborder dd { border-bottom: none; }


.main__schedule-timeline .cat01 dd {
  height: 170px;
  background:url(/ytc/corp/recruit/sales-driver/img/schedule_cat01.png?t=25112601) no-repeat top -10px left 500px;
  background-size:220px 140px;
}
.main__schedule-timeline .step01 dd {
  height: 220px;
  background:url(/ytc/corp/recruit/sales-driver/img/schedule_01.jpg?t=20250118) no-repeat top 0 right 0;
  background-size:320px 200px;
}
.main__schedule-timeline .step02 dd {
  height: 220px;
  background:url(/ytc/corp/recruit/sales-driver/img/schedule_02.jpg?t=20250118) no-repeat top 0 right 0;
  background-size:320px 200px;
}
.main__schedule-timeline .step04 dd {
  height: 224px;
  background:url(/ytc/corp/recruit/sales-driver/img/schedule_04.jpg?t=20250118) no-repeat top 0 right 0;
  background-size:320px 204px;
}
.main__schedule-timeline .step05 dd {
  height: 220px;
  background:url(/ytc/corp/recruit/sales-driver/img/schedule_05.jpg?t=20250118) no-repeat top 0 right 0;
  background-size:320px 200px;
}
.main__schedule-timeline .step06 dd {
  height: 220px;
  background:url(/ytc/corp/recruit/sales-driver/img/schedule_06.jpg?t=20250118) no-repeat top 0 right 0;
  background-size:320px 200px;
}
.main__schedule-timeline .step07 dd {
  height: 224px;
  background:url(/ytc/corp/recruit/sales-driver/img/schedule_07.jpg?t=20250118) no-repeat top 0 right 0;
  background-size:320px 204px;
}
.main__schedule-timeline .cat02 dd {
  height: 170px;
  padding-top: 60px;
  box-sizing: border-box;
  background: url(/ytc/corp/recruit/sales-driver/img/schedule_cat02.png?t=25112601) no-repeat top 0 left 500px;
  background-size:220px 140px;
}
.main__schedule-timeline dt span {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 3;
}
.main__schedule-timeline dt.main__schedule-enphasis strong {
  font-size: 2.4rem;
  letter-spacing: 0;
  line-height: 1.0;
}
.main__schedule-timeline dt::after {
  content: "";
  position: absolute;
  top: 0;
  left: 20px;
  width: 60px;
  height: 60px;
  border: 2px solid #fccf00;
  border-radius: 30px;
  background-color: #fff;
  z-index: 2;
}

.main__schedule-timeline dt.main__schedule-enphasis::after {
  left: 0;
  top: -20px;
  width: 100px;
  height: 100px;
  background-color: #fccf00;
  border-radius: 50px;
}


.main__schedule-timeline .main__schedule-timeline-outside dt::after {
  content: "";
  position: absolute;
  top: 0;
  left: 20px;
  width: 60px;
  height: 60px;
  border: 2px solid #f0f0f0;
  border-radius: 30px;
  background-color: #fff;
  z-index: 2;
}

.main__schedule-timeline .cat02 dt {
  margin-top: 60px;
  padding: 0 20px 40px;
  text-align: center;
  z-index: 3;
  font-size: 1.6rem;
  letter-spacing: -1.5px;
  font-weight: bold;
}

.main__schedule-timeline dt.last::before {
  content: "";
  position: absolute;
  top: 0;
  left: calc( 50% - 1px );
  width: 2px;
  height: 100%;
  background-color: #f0f0f0;
  z-index: 1;
}

.main__schedule-timeline h5 {
  margin: 0;
  padding-top: 20px;
  line-height: 1.0;
  font-size: 2.2rem;
}

.main__schedule-timeline dd p {
  font-size: 1.6rem;
  font-weight: 500;
}

@media screen and (max-width: 1024px){
  .main__schedule-timeline {
    display: block;
    position: relative;
    list-style-type: none;
    width: 960px;
    margin: 120px auto 0 auto;
    padding-left: 0;
  }

  .main__schedule-timeline::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 49px;
    width: 2px;
    height: 90%;
    background-color: #fccf00;
  }
  .main__schedule-timeline dl {
    display: flex;
    justify-content:flex-start;
    align-items: start;
  }
  .main__schedule-timeline dt {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap:wrap;
    box-sizing:border-box;
    width: 100px;
    height: auto;
    min-height: 100px;
    padding: 0 20px 40px;
    text-align: center;
    z-index: 3;
    font-size: 1.6rem;
    letter-spacing: -1.5px;
    font-weight: bold;
  }

  .main__schedule-timeline dd {
    display: block;
    box-sizing:border-box;
    width: 860px;
    margin: 0 0 20px 0;
    padding-left: 16px;
    padding-bottom: 20px;
    padding-right: 360px
  }

  .main__schedule-timeline dt span {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    z-index: 3;
  }
  .main__schedule-timeline dt.main__schedule-enphasis strong {
    font-size: 2.4rem;
    letter-spacing: 0;
    line-height: 1.0;
  }
  .main__schedule-timeline dt::after {
    content: "";
    position: absolute;
    top: 0;
    left: 20px;
    width: 60px;
    height: 60px;
    border: 2px solid #fccf00;
    border-radius: 30px;
    background-color: #fff;
    z-index: 2;
  }

  .main__schedule-timeline dt.main__schedule-enphasis::after {
    left: 0;
    top: -20px;
    width: 100px;
    height: 100px;
    background-color: #fccf00;
    border-radius: 50px;
  }

  .main__schedule-timeline dt.last::before {
    content: "";
    position: absolute;
    top: 0;
    left: calc( 50% - 1px );
    width: 2px;
    height: 100%;
    background-color: transparent;
    z-index: 1;
  }


  .main__schedule-timeline h5 {
    margin: 0;
    padding-top: 20px;
    line-height: 1.0;
    font-size: 2.2rem;
  }

  .main__schedule-timeline dd p {
    font-size: 1.6rem;
    font-weight: 500;
  }

}
@media screen and (max-width: 767px){
  .main__jobdescription {
    position: relative;
    width: 85.3vw;
    margin: 0 auto;
    padding: 0 0 0;
  }

  .next-content .main__jobdescription-title,
  .main__jobdescription-title {
    width: 85.3vw;
    font-size: 4.5vw;
    padding-bottom: 2.67vw;
    margin: 0 auto;
  }

  .title {
    position: relative;
  }
  .title::after {
    content: "";
    left: calc( 50% - 6.7vw );
    width: 13.4vw;
    height: 0.4vw;
  }

  .main__jobdescription-subtitle {
    width: 85.3vw;
    font-size: 4.27vw;
    margin-top: 5vw;
  }

  .main__jobdescription-lead {
    width: 85.3vw;
    text-align: left;
    letter-spacing: -0.5px;
    font-size: 3.47vw;
    margin-top: 2.6vw;
  }

  .main__jobdescription-anotation {
  font-size: 3.2vw;
}


  .main__jobdescription.schedule .main__jobdescription-lead {
    padding-bottom: 24vw;
    margin-bottom: 18.6vw;
  }

  .main__jobdescription.schedule .main__jobdescription-lead::after {
    content: "";
    position:absolute;
    bottom: 0;
    right: -0.6vw;
    width: 29.3vw;
    height: 15.68vw;
    background:url(/ytc/corp/recruit/sales-driver/img/jobdescription-schedule-car.png?t=25112601) no-repeat 0 0;
    background-size:29.3vw 15.58vw;
  }

  .main__schedule-timeline {
    width: 85.3vw;
    margin: 0 0 63.2vw auto;
    padding: 0 0 0 0;;
  }

  .main__schedule-timeline::before {
    content: "";
    top: 0;
    left: calc( 8vw - 0.27vw);
    width: 0.54vw;
    height: 95%;
  }
  .main__schedule-timeline .cat01::before {
    top: 0;
    left: calc( 8vw - 0.27vw);
    width: 0.54vw;
    height: 30vw;
  }
  .main__schedule-timeline .step08::before {
    top: 0;
    left: calc( 8vw - 0.27vw);
    width: 0.54vw;
    height: 30vw;
  }


  .main__schedule-timeline .cat02::before {
    top: 0;
    left: calc( 8vw - 0.27vw);
    width: 0.54vw;
    height: 20vw;
  }


  .main__schedule-timeline dl {
    display: flex;
    justify-content:flex-start;
    align-items: start;
  }
  .main__schedule-timeline dt {
    width: 16vw;
    height: auto;
    min-height: 16vw;
    padding: 0 0 4vw;
    font-size: 3.2vw;
  }

  .main__schedule-timeline dd {
    display: block;
    box-sizing:border-box;
    width: 69.3vw;
    height: auto;
    margin: 0 0 2.6vw;
    padding-left: 4.3vw;
    padding-right: 0;
    padding-bottom: 50vw;
    border-bottom: 0.2vw dotted #000000;
  }
  .main__schedule-timeline .noborder dd { border-bottom: none; }
  .main__schedule-timeline .cat01 dd {
  height: 25.3vw;
  padding-bottom: 0;
  background:url(/ytc/corp/recruit/sales-driver/img/schedule_cat01.png?t=25112601) no-repeat top 0 right 0;;
  background-size:28.5vw auto;
}

  .main__schedule-timeline .step01 dd {
    height: 82.6vw;
    background:url(/ytc/corp/recruit/sales-driver/img/schedule_01_sp.jpg?t=20250118) no-repeat bottom 5.3vw right 0;
    background-size:65.1vw auto;
  }
  .main__schedule-timeline .step02 dd {
    height: 77.5vw;
    background:url(/ytc/corp/recruit/sales-driver/img/schedule_02_sp.jpg?t=20250118) no-repeat bottom 5.3vw right 0;
    background-size:65.1vw auto;
  }
  .main__schedule-timeline .step03 dd {
        padding-bottom: 0;
  }
  .main__schedule-timeline .step04 dd {
    height: 69.7vw;
    background:url(/ytc/corp/recruit/sales-driver/img/schedule_04_sp.jpg?t=20250118) no-repeat bottom 5.3vw right 0;
    background-size:65.1vw auto;
  }
  .main__schedule-timeline .step05 dd {
    height:69.7vw;
    background:url(/ytc/corp/recruit/sales-driver/img/schedule_05_sp.jpg?t=20250118) no-repeat bottom 5.3vw right 0;
    background-size:65.1vw auto;
  }
.main__schedule-timeline .step06 dd {
  height: 69.7vw;
  background:url(/ytc/corp/recruit/sales-driver/img/schedule_06_sp.jpg?t=20250118) no-repeat bottom 5.3vw right 0;
    background-size:65.1vw auto;
}
.main__schedule-timeline .step07 dd {
  height: 66.1vw;
  background:url(/ytc/corp/recruit/sales-driver/img/schedule_07_sp.jpg?t=20250118) no-repeat bottom 0 right 0;
    background-size:65.1vw auto;
}
.main__schedule-timeline .step08 dd {
  padding-bottom: 0;
}
.main__schedule-timeline .cat02 dd {
  height: 20vw;
  padding-top: 8vw;
  padding-bottom: 0;
  box-sizing: border-box;
  background: url(/ytc/corp/recruit/sales-driver/img/schedule_cat02.png?t=25112601) no-repeat bottom 0 right 0;
  background-size:28vw auto;
}

  .main__schedule-timeline dt span {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    z-index: 3;
  }
  .main__schedule-timeline dt.main__schedule-enphasis strong {
    font-size: 4.27vw;
  }
  .main__schedule-timeline dt::after {
    content: "";
    position: absolute;
    top: 0;
    left: 2vw;
    width: 12vw;
    height: 12vw;
    border: 0.54vw solid #fccf00;
    border-radius: 6vw;
    background-color: #fff;
    z-index: 2;
  }

  .main__schedule-timeline dt.main__schedule-enphasis::after {
    left: 0;
    top: -2vw;
    width: 16vw;
    height: 16vw;
    border-radius: 8vw;
  }

  .main__schedule-timeline .main__schedule-timeline-outside dt::after {
  top: 0;
    left: 2vw;
    width: 12vw;
    height: 12vw;
    border: 0.54vw solid #f0f0f0;
    border-radius: 6vw;
    background-color: #fff;
    z-index: 2;
  }

  .main__schedule-timeline .cat02 dt {
    margin-top: 8vw;
    padding: 0 0 4vw;
    z-index: 3;
    width: 16vw;
    height: auto;
    min-height: 16vw;
    font-size: 3.2vw;
    font-weight: bold;
  }

  .main__schedule-timeline dt.last::before {
    content: "";
    position: absolute;
    top: 0;
    left: calc( 8vw - 0.27vw);
    width: 0.54vw;
    height: 100%;
    background-color: transparent;
    z-index: 1;
  }


  .main__schedule-timeline h5 {
    margin: 0;
    padding-top: 20px;
    line-height: 1.0;
    font-size: 3.47vw;
  }

  .main__schedule-timeline dd p {
    font-size: 3.2vw;
  }


}

/* STEP UP */
.main__jobdescription.stepup {
  width: 100%;
  min-width: 1200px;
  overflow-x: hidden;
  background-color: #f0f0f0;
}
.main__jobdescription.stepup .main__jobdescription-lead {
  margin-bottom: 50px;
}

.main__jobdescription.stepup .main__jobdescription-lead::after {
    content: "";
    position:absolute;
    bottom: 0;
    right: -249px; 
    width: 402px;
    height: 150px;
    background:url(/ytc/corp/recruit/sales-driver/img/jobdescription-stepup-box.png?t=25112601) no-repeat 0 0;
    background-size:402px 150px;
  }

.main__jobdescription.stepup .main__jobdescription-wrapper {
  width: 900px;
  box-sizing: border-box;
  margin: 45px auto;
}
.swiper-wrapper {
  padding-top: 20px;
}

.main__jobdescription-step {
  box-sizing: border-box;
  position: relative;
  width: 420px;
  height: 550px;
  margin-bottom: 40px;
  padding: 303px 23px 20px;
}
.main__jobdescription-step h4 {
  text-align: center;
  font-size: 2.4rem;
  line-height: 1.0;
  margin: 0 0 30px;
}
.main__jobdescription-step p {
  font-size: 1.6rem;
  line-height: 2.18;
}

.main__jobdescription-step::before {
  content: "研修";
  position: absolute;
  box-sizing: border-box;
  top: -20px;
  left: calc( 50% - 50px );
  border: 4px solid #fccf00;
  border-radius: 50px;
  background-color: #fff;
  width: 100px;
  height: 100px;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.0;
  padding-top: 30px;
}
.main__jobdescription-step.driver::before {
  white-space: pre;
  content: "SD\Aデビュー";
  background-color: #fccf00;
  line-height: 1.1;
  padding-top: 14px;
  letter-spacing: -2px;
}

.main__jobdescription-step.step1 {
  background: #ffffff url(/ytc/corp/recruit/sales-driver/img/jobdescription__stepup_step01.jpg?t=20250118) no-repeat center top 30px;
  background-size: 370px 250px
}
.main__jobdescription-step.step2 {
  background: #ffffff url(/ytc/corp/recruit/sales-driver/img/jobdescription__stepup_step02.jpg?t=20250118) no-repeat center top 30px;
  background-size: 370px 250px
}
.main__jobdescription-step.step3 {
  background: #ffffff url(/ytc/corp/recruit/sales-driver/img/jobdescription__stepup_step03.jpg?t=20250118) no-repeat center top 30px;
  background-size: 370px 250px
}
.main__jobdescription-step.step4 {
  background: #ffffff url(/ytc/corp/recruit/sales-driver/img/jobdescription__stepup_step04.jpg?t=20250118) no-repeat center top 30px;
  background-size: 370px 250px
}
.main__jobdescription-step.step5 {
  background: #ffffff url(/ytc/corp/recruit/sales-driver/img/jobdescription__stepup_step05.jpg?t=20250118) no-repeat center top 30px;
  background-size: 370px 250px
}
.main__jobdescription-step.step6 {
  background: #ffffff url(/ytc/corp/recruit/sales-driver/img/jobdescription__stepup_step06.jpg?t=20250118) no-repeat center top 30px;
  background-size: 370px 250px
}
.main__jobdescription-step.step7 {
  background: #ffffff url(/ytc/corp/recruit/sales-driver/img/jobdescription__stepup_step07.jpg?t=20250118) no-repeat center top 30px;
  background-size: 370px 250px
}
.main__jobdescription-step.step8 {
  background: #ffffff url(/ytc/corp/recruit/sales-driver/img/jobdescription__stepup_step08.jpg?t=20250118) no-repeat center top 30px;
  background-size: 370px 250px
}
.main__jobdescription-swiperarea {
  position: relative;
  width: 100%;
  height: auto;
}

.button-prev,
.button-next {
  position: absolute;
  top: calc( 50% - 15px);
  width: 30px;
  height: 30px;
  background: url(/ytc/corp/recruit/sales-driver/img/pagenation.svg?t=25112601) no-repeat 0 0;
  background-size: 30px 30px;
  z-index: 5;
}

.button-prev {
  left: -50px;
  transform-origin: center;
  transform: rotate( 180deg );
}
.button-next {
  right: -50px;
}

.swiper-slide-next,.swiper-slide-prev {
  opacity: 1;
}

.swiper { 
  position: relative;
  padding-left: 270px;
  padding-right: 270px;
  width: calc( 900px + 270px + 270px );
  margin-left: -270px;
}
.swiper::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 270px;
  height: 100%;
  display: block;
  background: linear-gradient(90deg, #f0f0f0 0%, 60%, rgba(0,0,0,0) 100% );
  z-index: 29;
}
.swiper::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 270px;
  height: 100%;
  display: block;
  background: linear-gradient(270deg, #f0f0f0 0%, 60%, rgba(0,0,0,0) 100% );
  z-index: 29;
}

@media screen and (max-width: 1199px){
  .main__jobdescription.stepup {
    min-width: 100%;
  }

  .main__jobdescription.stepup .main__jobdescription-wrapper {
    width: 85.3vw;
  }
  .swiper-wrapper {
    padding-top: 1.67vw;
  }

  .main__jobdescription-step {
    width: 35vw;
    height: 45.83vw;
    margin-bottom: 3.3vw;
    padding: 25.25vw 1.92vw 1.67vw;
  }

  .main__jobdescription-step h4 {
    font-size: 2.0vw;
    margin: 0 0 2.5vw;
  }
  .main__jobdescription-step p {
    font-size: 1.33vw;
  }


  .main__jobdescription-step::before {
    content: "研修";
    position: absolute;
    box-sizing: border-box;
    top: -1.67vw;
    left: calc( 50% - 50px );
    border: 4px solid #fccf00;
    border-radius: 50px;
    background-color: #fff;
    width: 100px;
    height: 100px;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.0;
    padding-top: 30px;
  }
  .main__jobdescription-step.driver::before {
    white-space: pre;
    content: "SD\Aデビュー";
    background-color: #fccf00;
    line-height: 1.1;
    padding-top: 14px;
    letter-spacing: -2px;
  }
  .main__jobdescription-step.step1,
  .main__jobdescription-step.step2,
  .main__jobdescription-step.step3,
  .main__jobdescription-step.step4,
  .main__jobdescription-step.step5,
  .main__jobdescription-step.step6,
  .main__jobdescription-step.step7,
  .main__jobdescription-step.step8 {
    background-size: 30.8vw 20.8vw
  }


  .button-prev,
  .button-next {
    position: absolute;
    top: calc( 50% - 15px);
    width: 30px;
    height: 30px;
    background: url(/ytc/corp/recruit/sales-driver/img/pagenation.svg?t=25112601) no-repeat 0 0;
    background-size: 30px 30px;
    z-index: 10;
  }

  .button-prev {
    left: -4.1vw;
    transform-origin: center;
    transform: rotate( 180deg );
  }
  .button-next {
    right: 4.1vw;
  }

  .swiper-slide-next,.swiper-slide-prev {
    opacity: 1;
  }

  .swiper { 
    padding-left: calc( 17.5vw + 60px);
    padding-right:  calc( 17.5vw + 60px);
    width: calc( 70vw + 60px + 35vw + 120px );
    margin-left: calc( (17.5vw + 60px) * -1 );
  }

}


@media screen and (max-width: 767px){
  .main__jobdescription.stepup {
    min-width: 85.3vw;
    position: relative;
    padding: 13.3vw 0;
    margin: 0;
  }

  .main__jobdescription.stepup .main__jobdescription-wrapper {
    width: 100vw;
    margin: 2vw auto 0;
    padding: 0 0 0;
  }
  .main__jobdescription.stepup .main__jobdescription-title,
  .main__jobdescription.stepup .main__jobdescription-subtitle {
    width: 85.3vw;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
  .main__jobdescription.stepup .main__jobdescription-lead {
    width: 85.3vw;
    padding-bottom: 14vw;
    margin: 2.6vw auto 3vw;
    letter-spacing: -0.5px;
    font-feature-settings: "liga";
  }


  .main__jobdescription.stepup .main__jobdescription-lead::after {
    content: "";
    position:absolute;
    bottom: 0;
    right: -3.7vw;
    width: 43.2vw;
    height: 16.1vw;
    background:url(/ytc/corp/recruit/sales-driver/img/jobdescription-stepup-box.png?t=25112601) no-repeat 0 0;
    background-size:43.2vw 16.1vw;
  }


  .swiper-wrapper {
    padding-top: 9.5vw;
  }

  .main__jobdescription-swiperarea {
    position: relative;
  }
/*
  .main__jobdescription-swiperarea::before {
    position: absolute;
    content: '';
    width: 7.35vw;
    height: 100%;
    background: linear-gradient(90deg, #f0f0f0 0%, 75%, rgba(0,0,0,0) 100% );
    top: 0;
    left: 0;
    z-index: 3;
  }

    .main__jobdescription-swiperarea::after {
    position: absolute;
    content: '';
    width: 7.35vw;
    height: 100%;
    background: linear-gradient(270deg, #f0f0f0 0%, 75%, rgba(0,0,0,0) 100% );
    top: 0;
    right: 0;
    z-index: 3;
  }
*/
  .main__jobdescription-step {
    box-sizing: border-box;
    width: 80.3vw;
    height: 113.3vw;
    margin-bottom: 0;
    padding: 60vw 5.3vw;
  }
  .main__jobdescription-step h4 {
    font-size: 4.27vw;
    line-height: 1.0;
    margin: 0 0 3vw;
  }
  .main__jobdescription-step p {
    font-size: 3.47vw;
    line-height: 2.0;
    font-feature-settings: "liga";

  }

  .main__jobdescription-step::before {
    top: -3.5vw;
    left: calc( 50% - 8.67vw );
    border: 0.5vw solid #fccf00;
    border-radius: 8.67vw;
    width: 17.43vw;
    height: 17.43vw;
    font-size: 4.2vw;
    line-height: 1.0;
    padding-top: 6vw;
  }
  .main__jobdescription-step.driver::before {
    line-height: 1.1;
    padding-top: 3vw;
    letter-spacing: -2px;
  }

  .main__jobdescription-step.step1,
  .main__jobdescription-step.step2,
  .main__jobdescription-step.step3,
  .main__jobdescription-step.step4,
  .main__jobdescription-step.step5,
  .main__jobdescription-step.step6,
  .main__jobdescription-step.step7,
  .main__jobdescription-step.step8 {
    background-position: center top 6vw;
    background-size: 74vw 50vw;
  }
  .button-prev,
  .button-next {
    position: absolute;
    top: calc( 50% - 3.3vw);
    width: 6.6vw;
    height: 6.6vw;
    background-size: 6.6vw 6.6vw;
  }

  .button-prev {
    left: calc( -2.6vw + 7.35vw);
    transform-origin: center;
    transform: rotate( 180deg );
    z-index: 5;
  }
  .button-next {
    right: calc( -2.6vw + 7.35vw);
    z-index:5;
  }
  .swiper { 
    padding-left: 0;
    padding-right: 0;
    width: 100%;
    margin-left: 0;
  }
  .swiper::before,
  .swiper::after  {
    background: transparent;
    display: none;
  }

}

/* CAREER ADVANCEMENT */

.main__jobdescription.career-advancement {
  width: 100%;
  min-width: 1200px;
  margin: 0 auto;
  padding-bottom: 820px;
  background:url(/ytc/corp/recruit/sales-driver/img/jobdescription__careeradvancement-pc.png?t=25112601) no-repeat center top 0;
  background-size: 2830px 1480px;
}

.main__jobdescription.career-advancement .main__jobdescription-wrapper {
  width: 960px;
  margin: 0 auto;
}

.main__jobdescription-careeradvancement-steps {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: 960px;
  margin: 75px auto 0;
  padding: 0 0 80px;
  list-style-type: none;
  background:url(/ytc/corp/recruit/sales-driver/img/jobdescription-careeradvancement-steps.png?t=25112601) no-repeat center top 0;
  background-size: 960px 310px;
}

.main__jobdescription-careeradvancement-steps li {
  display: table;
  box-sizing: border-box;
  width: 180px;
  margin-top: 60px;
  text-align: center;
  font-size: 2.0rem;
  font-weight: 500;
}

.main__jobdescription-careeradvancement-steps li div {
  display: table-cell;
  vertical-align: middle;
  text-align:center;
}
.main__jobdescription-careeradvancement-steps li span.tagline {
  display: block;
  font-size: 1.4rem;
  line-height: 1.4;
}
.main__jobdescription-careeradvancement-steps li:nth-of-type(1) {
  height: 163px;
}
.main__jobdescription-careeradvancement-steps li:nth-of-type(2) {
  height: 183px;
}
.main__jobdescription-careeradvancement-steps li:nth-of-type(3) {
  height: 203px;
}
.main__jobdescription-careeradvancement-steps li:nth-of-type(4) {
  height: 223px;
}
.main__jobdescription-careeradvancement-steps li:nth-of-type(5) {
  height: 243px;
}

.main__jobdescription-statement {
  position: relative;
  width: 960px;
  margin: 0 auto;
  font-size: 2.6rem;
  font-weight: 500;
  text-align: center;

}
.main__jobdescription-statement::before {
  content: "";
  position: absolute;
  border-left: 3px solid #000;
  border-top: 3px solid #000;
  height: 80px;
  width: 40px;
  top: -25px;
  left: -20px;
}
.main__jobdescription-statement::after {
  content: "";
  position: absolute;
  border-right: 3px solid #000;
  border-bottom: 3px solid #000;
  height: 80px;
  width: 40px;
  bottom: -15px;
  right: -20px;
}
@media screen and (max-width: 1199px) {
  .main__jobdescription.career-advancement {
    min-width: 100%;
    margin: 0 auto;
    padding-bottom: 820px;
    background:url(/ytc/corp/recruit/sales-driver/img/jobdescription__careeradvancement-pc.png?t=25112601) no-repeat center top 0;
    background-size: 2830px 1480px;
  }

  .main__jobdescription.career-advancement .main__jobdescription-wrapper {
    width: 80%;
    margin: 0 auto;
  }

  .main__jobdescription-careeradvancement-steps {
    width: 80%;
    padding: 0 0 6.6vw;
    background-size: 100% auto;
  }

  .main__jobdescription-careeradvancement-steps li {
    display: table;
    box-sizing: border-box;
    width: 180px;
    margin-top: 30px;
    text-align: center;
    font-size: 2.0rem;
    font-weight: 500;
  }


  .main__jobdescription-statement {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 1024px ) {
  .main__jobdescription.career-advancement {
    width: 100%;
    min-width: 100vw;
    max-width: 100vw;
    margin: 0 auto;
    padding: 14vw 0;
    background:url(/ytc/corp/recruit/sales-driver/img/jobdescription__careeradvancement-sp.png?t=25112601) no-repeat center top 0;
    background-size: 100vw auto;
  }

  .main__jobdescription.career-advancement .main__jobdescription-wrapper {
    width: 83.5vw;
    margin: 2vw auto 0;
    padding: 0 0 0;
  }


  .main__jobdescription-careeradvancement-steps {
    width: 85.3vw;
    margin: 2.6vw auto 14vw;
    padding: 0 0 2vw;
    list-style-type: none;
    background:url(/ytc/corp/recruit/sales-driver/img/jobdescription-careeradvancement-steps.png?t=25112601) no-repeat center top 0;
    background-size: 85.3vw auto;
  }

  .main__jobdescription-careeradvancement-steps li {
    width: 17vw;
    margin-top: 3vw;
    letter-spacing: -2px;
  }
  .main__jobdescription-careeradvancement-steps li span.tagline {
    font-size: 2vw;
  }
  .main__jobdescription-careeradvancement-steps li:nth-of-type(1) {
    height: 12.8vw;
  }
  .main__jobdescription-careeradvancement-steps li:nth-of-type(2) {
    height: 15.4vw;
  }
  .main__jobdescription-careeradvancement-steps li:nth-of-type(3) {
    height: 18.0vw;
  }
  .main__jobdescription-careeradvancement-steps li:nth-of-type(4) {
    height: 20.6vw;
  }
  .main__jobdescription-careeradvancement-steps li:nth-of-type(5) {
    height: 23.2vw;
  }
  .main__jobdescription-statement {
    position: relative;
    width: 85.3vw;
    font-size: 2.0rem;
  }
  .main__jobdescription-statement::before {
    content: "";
    border-left: 0.4vw solid #000;
    border-top: 0.4vw solid #000;
    height: 10.5vw;
    width: 5.3vw;
    top: -2vw;
    left: 0;
  }
  .main__jobdescription-statement::after {
    content: "";
    border-right: 0.4vw solid #000;
    border-bottom: 0.4vw solid #000;
    height: 10.5vw;
    width: 5.3vw;
    bottom: -2vw;
    right: 0;
  }

}
@media screen and (max-width: 767px){
  .main__jobdescription-careeradvancement-steps li {
    font-size: 2.6vw;
    letter-spacing: -1px;
  }
  .main__jobdescription-statement {
    position: relative;
    width: 85.3vw;
    font-size: 4.27vw;
  }
  .main__jobdescription-statement::before {
    content: "";
    border-left: 0.4vw solid #000;
    border-top: 0.4vw solid #000;
    height: 10.5vw;
    width: 5.3vw;
    top: -2vw;
    left: 0;
  }
  .main__jobdescription-statement::after {
    content: "";
    border-right: 0.4vw solid #000;
    border-bottom: 0.4vw solid #000;
    height: 10.5vw;
    width: 5.3vw;
    bottom: -2vw;
    right: 0;
  }

}

.main__jobdescription.next-content {
  position: relative;
  margin: -690px auto 50px;

  width: 1200px;
}


@media screen and (max-width: 1024px){
.main__jobdescription.next-content {
  position: relative;
  margin: 0.67vw auto;
  width: 100vw;
}

}