@charset "UTF-8";
/* VARIABLES
----------------------------- */
/* MIXINS
----------------------------- */
/* FUNCTIONS */
/* ADJUSTMENT */
.mt0 {
  margin-top: 0vw !important;
}
@media (min-width: 769px) {
  .mt0 {
    margin-top: 0px !important;
  }
}

.mb0 {
  margin-bottom: 0vw !important;
}
@media (min-width: 769px) {
  .mb0 {
    margin-bottom: 0px !important;
  }
}

.pt0 {
  padding-top: 0vw !important;
}
@media (min-width: 769px) {
  .pt0 {
    padding-top: 0px !important;
  }
}

.pb0 {
  padding-bottom: 0vw !important;
}
@media (min-width: 769px) {
  .pb0 {
    padding-bottom: 0px !important;
  }
}

.mt-sp0 {
  margin-top: 0vw !important;
}

.mb-sp0 {
  margin-bottom: 0vw !important;
}

.pt-sp0 {
  padding-top: 0vw !important;
}

.pb-sp0 {
  padding-bottom: 0vw !important;
}

@media (min-width: 769px) {
  .mt-pc0 {
    margin-top: 0px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc0 {
    margin-bottom: 0px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc0 {
    padding-top: 0px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc0 {
    padding-bottom: 0px !important;
  }
}

.mt5 {
  margin-top: 1.3333333333vw !important;
}
@media (min-width: 769px) {
  .mt5 {
    margin-top: 5px !important;
  }
}

.mb5 {
  margin-bottom: 1.3333333333vw !important;
}
@media (min-width: 769px) {
  .mb5 {
    margin-bottom: 5px !important;
  }
}

.pt5 {
  padding-top: 1.3333333333vw !important;
}
@media (min-width: 769px) {
  .pt5 {
    padding-top: 5px !important;
  }
}

.pb5 {
  padding-bottom: 1.3333333333vw !important;
}
@media (min-width: 769px) {
  .pb5 {
    padding-bottom: 5px !important;
  }
}

.mt-sp5 {
  margin-top: 1.3333333333vw !important;
}

.mb-sp5 {
  margin-bottom: 1.3333333333vw !important;
}

.pt-sp5 {
  padding-top: 1.3333333333vw !important;
}

.pb-sp5 {
  padding-bottom: 1.3333333333vw !important;
}

@media (min-width: 769px) {
  .mt-pc5 {
    margin-top: 5px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc5 {
    margin-bottom: 5px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc5 {
    padding-top: 5px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc5 {
    padding-bottom: 5px !important;
  }
}

.mt10 {
  margin-top: 2.6666666667vw !important;
}
@media (min-width: 769px) {
  .mt10 {
    margin-top: 10px !important;
  }
}

.mb10 {
  margin-bottom: 2.6666666667vw !important;
}
@media (min-width: 769px) {
  .mb10 {
    margin-bottom: 10px !important;
  }
}

.pt10 {
  padding-top: 2.6666666667vw !important;
}
@media (min-width: 769px) {
  .pt10 {
    padding-top: 10px !important;
  }
}

.pb10 {
  padding-bottom: 2.6666666667vw !important;
}
@media (min-width: 769px) {
  .pb10 {
    padding-bottom: 10px !important;
  }
}

.mt-sp10 {
  margin-top: 2.6666666667vw !important;
}

.mb-sp10 {
  margin-bottom: 2.6666666667vw !important;
}

.pt-sp10 {
  padding-top: 2.6666666667vw !important;
}

.pb-sp10 {
  padding-bottom: 2.6666666667vw !important;
}

@media (min-width: 769px) {
  .mt-pc10 {
    margin-top: 10px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc10 {
    margin-bottom: 10px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc10 {
    padding-top: 10px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc10 {
    padding-bottom: 10px !important;
  }
}

.mt15 {
  margin-top: 4vw !important;
}
@media (min-width: 769px) {
  .mt15 {
    margin-top: 15px !important;
  }
}

.mb15 {
  margin-bottom: 4vw !important;
}
@media (min-width: 769px) {
  .mb15 {
    margin-bottom: 15px !important;
  }
}

.pt15 {
  padding-top: 4vw !important;
}
@media (min-width: 769px) {
  .pt15 {
    padding-top: 15px !important;
  }
}

.pb15 {
  padding-bottom: 4vw !important;
}
@media (min-width: 769px) {
  .pb15 {
    padding-bottom: 15px !important;
  }
}

.mt-sp15 {
  margin-top: 4vw !important;
}

.mb-sp15 {
  margin-bottom: 4vw !important;
}

.pt-sp15 {
  padding-top: 4vw !important;
}

.pb-sp15 {
  padding-bottom: 4vw !important;
}

@media (min-width: 769px) {
  .mt-pc15 {
    margin-top: 15px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc15 {
    margin-bottom: 15px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc15 {
    padding-top: 15px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc15 {
    padding-bottom: 15px !important;
  }
}

.mt20 {
  margin-top: 5.3333333333vw !important;
}
@media (min-width: 769px) {
  .mt20 {
    margin-top: 20px !important;
  }
}

.mb20 {
  margin-bottom: 5.3333333333vw !important;
}
@media (min-width: 769px) {
  .mb20 {
    margin-bottom: 20px !important;
  }
}

.pt20 {
  padding-top: 5.3333333333vw !important;
}
@media (min-width: 769px) {
  .pt20 {
    padding-top: 20px !important;
  }
}

.pb20 {
  padding-bottom: 5.3333333333vw !important;
}
@media (min-width: 769px) {
  .pb20 {
    padding-bottom: 20px !important;
  }
}

.mt-sp20 {
  margin-top: 5.3333333333vw !important;
}

.mb-sp20 {
  margin-bottom: 5.3333333333vw !important;
}

.pt-sp20 {
  padding-top: 5.3333333333vw !important;
}

.pb-sp20 {
  padding-bottom: 5.3333333333vw !important;
}

@media (min-width: 769px) {
  .mt-pc20 {
    margin-top: 20px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc20 {
    margin-bottom: 20px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc20 {
    padding-top: 20px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc20 {
    padding-bottom: 20px !important;
  }
}

.mt25 {
  margin-top: 6.6666666667vw !important;
}
@media (min-width: 769px) {
  .mt25 {
    margin-top: 25px !important;
  }
}

.mb25 {
  margin-bottom: 6.6666666667vw !important;
}
@media (min-width: 769px) {
  .mb25 {
    margin-bottom: 25px !important;
  }
}

.pt25 {
  padding-top: 6.6666666667vw !important;
}
@media (min-width: 769px) {
  .pt25 {
    padding-top: 25px !important;
  }
}

.pb25 {
  padding-bottom: 6.6666666667vw !important;
}
@media (min-width: 769px) {
  .pb25 {
    padding-bottom: 25px !important;
  }
}

.mt-sp25 {
  margin-top: 6.6666666667vw !important;
}

.mb-sp25 {
  margin-bottom: 6.6666666667vw !important;
}

.pt-sp25 {
  padding-top: 6.6666666667vw !important;
}

.pb-sp25 {
  padding-bottom: 6.6666666667vw !important;
}

@media (min-width: 769px) {
  .mt-pc25 {
    margin-top: 25px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc25 {
    margin-bottom: 25px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc25 {
    padding-top: 25px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc25 {
    padding-bottom: 25px !important;
  }
}

.mt30 {
  margin-top: 8vw !important;
}
@media (min-width: 769px) {
  .mt30 {
    margin-top: 30px !important;
  }
}

.mb30 {
  margin-bottom: 8vw !important;
}
@media (min-width: 769px) {
  .mb30 {
    margin-bottom: 30px !important;
  }
}

.pt30 {
  padding-top: 8vw !important;
}
@media (min-width: 769px) {
  .pt30 {
    padding-top: 30px !important;
  }
}

.pb30 {
  padding-bottom: 8vw !important;
}
@media (min-width: 769px) {
  .pb30 {
    padding-bottom: 30px !important;
  }
}

.mt-sp30 {
  margin-top: 8vw !important;
}

.mb-sp30 {
  margin-bottom: 8vw !important;
}

.pt-sp30 {
  padding-top: 8vw !important;
}

.pb-sp30 {
  padding-bottom: 8vw !important;
}

@media (min-width: 769px) {
  .mt-pc30 {
    margin-top: 30px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc30 {
    margin-bottom: 30px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc30 {
    padding-top: 30px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc30 {
    padding-bottom: 30px !important;
  }
}

.mt35 {
  margin-top: 9.3333333333vw !important;
}
@media (min-width: 769px) {
  .mt35 {
    margin-top: 35px !important;
  }
}

.mb35 {
  margin-bottom: 9.3333333333vw !important;
}
@media (min-width: 769px) {
  .mb35 {
    margin-bottom: 35px !important;
  }
}

.pt35 {
  padding-top: 9.3333333333vw !important;
}
@media (min-width: 769px) {
  .pt35 {
    padding-top: 35px !important;
  }
}

.pb35 {
  padding-bottom: 9.3333333333vw !important;
}
@media (min-width: 769px) {
  .pb35 {
    padding-bottom: 35px !important;
  }
}

.mt-sp35 {
  margin-top: 9.3333333333vw !important;
}

.mb-sp35 {
  margin-bottom: 9.3333333333vw !important;
}

.pt-sp35 {
  padding-top: 9.3333333333vw !important;
}

.pb-sp35 {
  padding-bottom: 9.3333333333vw !important;
}

@media (min-width: 769px) {
  .mt-pc35 {
    margin-top: 35px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc35 {
    margin-bottom: 35px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc35 {
    padding-top: 35px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc35 {
    padding-bottom: 35px !important;
  }
}

.mt40 {
  margin-top: 10.6666666667vw !important;
}
@media (min-width: 769px) {
  .mt40 {
    margin-top: 40px !important;
  }
}

.mb40 {
  margin-bottom: 10.6666666667vw !important;
}
@media (min-width: 769px) {
  .mb40 {
    margin-bottom: 40px !important;
  }
}

.pt40 {
  padding-top: 10.6666666667vw !important;
}
@media (min-width: 769px) {
  .pt40 {
    padding-top: 40px !important;
  }
}

.pb40 {
  padding-bottom: 10.6666666667vw !important;
}
@media (min-width: 769px) {
  .pb40 {
    padding-bottom: 40px !important;
  }
}

.mt-sp40 {
  margin-top: 10.6666666667vw !important;
}

.mb-sp40 {
  margin-bottom: 10.6666666667vw !important;
}

.pt-sp40 {
  padding-top: 10.6666666667vw !important;
}

.pb-sp40 {
  padding-bottom: 10.6666666667vw !important;
}

@media (min-width: 769px) {
  .mt-pc40 {
    margin-top: 40px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc40 {
    margin-bottom: 40px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc40 {
    padding-top: 40px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc40 {
    padding-bottom: 40px !important;
  }
}

.mt45 {
  margin-top: 12vw !important;
}
@media (min-width: 769px) {
  .mt45 {
    margin-top: 45px !important;
  }
}

.mb45 {
  margin-bottom: 12vw !important;
}
@media (min-width: 769px) {
  .mb45 {
    margin-bottom: 45px !important;
  }
}

.pt45 {
  padding-top: 12vw !important;
}
@media (min-width: 769px) {
  .pt45 {
    padding-top: 45px !important;
  }
}

.pb45 {
  padding-bottom: 12vw !important;
}
@media (min-width: 769px) {
  .pb45 {
    padding-bottom: 45px !important;
  }
}

.mt-sp45 {
  margin-top: 12vw !important;
}

.mb-sp45 {
  margin-bottom: 12vw !important;
}

.pt-sp45 {
  padding-top: 12vw !important;
}

.pb-sp45 {
  padding-bottom: 12vw !important;
}

@media (min-width: 769px) {
  .mt-pc45 {
    margin-top: 45px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc45 {
    margin-bottom: 45px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc45 {
    padding-top: 45px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc45 {
    padding-bottom: 45px !important;
  }
}

.mt50 {
  margin-top: 13.3333333333vw !important;
}
@media (min-width: 769px) {
  .mt50 {
    margin-top: 50px !important;
  }
}

.mb50 {
  margin-bottom: 13.3333333333vw !important;
}
@media (min-width: 769px) {
  .mb50 {
    margin-bottom: 50px !important;
  }
}

.pt50 {
  padding-top: 13.3333333333vw !important;
}
@media (min-width: 769px) {
  .pt50 {
    padding-top: 50px !important;
  }
}

.pb50 {
  padding-bottom: 13.3333333333vw !important;
}
@media (min-width: 769px) {
  .pb50 {
    padding-bottom: 50px !important;
  }
}

.mt-sp50 {
  margin-top: 13.3333333333vw !important;
}

.mb-sp50 {
  margin-bottom: 13.3333333333vw !important;
}

.pt-sp50 {
  padding-top: 13.3333333333vw !important;
}

.pb-sp50 {
  padding-bottom: 13.3333333333vw !important;
}

@media (min-width: 769px) {
  .mt-pc50 {
    margin-top: 50px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc50 {
    margin-bottom: 50px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc50 {
    padding-top: 50px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc50 {
    padding-bottom: 50px !important;
  }
}

.mt55 {
  margin-top: 14.6666666667vw !important;
}
@media (min-width: 769px) {
  .mt55 {
    margin-top: 55px !important;
  }
}

.mb55 {
  margin-bottom: 14.6666666667vw !important;
}
@media (min-width: 769px) {
  .mb55 {
    margin-bottom: 55px !important;
  }
}

.pt55 {
  padding-top: 14.6666666667vw !important;
}
@media (min-width: 769px) {
  .pt55 {
    padding-top: 55px !important;
  }
}

.pb55 {
  padding-bottom: 14.6666666667vw !important;
}
@media (min-width: 769px) {
  .pb55 {
    padding-bottom: 55px !important;
  }
}

.mt-sp55 {
  margin-top: 14.6666666667vw !important;
}

.mb-sp55 {
  margin-bottom: 14.6666666667vw !important;
}

.pt-sp55 {
  padding-top: 14.6666666667vw !important;
}

.pb-sp55 {
  padding-bottom: 14.6666666667vw !important;
}

@media (min-width: 769px) {
  .mt-pc55 {
    margin-top: 55px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc55 {
    margin-bottom: 55px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc55 {
    padding-top: 55px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc55 {
    padding-bottom: 55px !important;
  }
}

.mt60 {
  margin-top: 16vw !important;
}
@media (min-width: 769px) {
  .mt60 {
    margin-top: 60px !important;
  }
}

.mb60 {
  margin-bottom: 16vw !important;
}
@media (min-width: 769px) {
  .mb60 {
    margin-bottom: 60px !important;
  }
}

.pt60 {
  padding-top: 16vw !important;
}
@media (min-width: 769px) {
  .pt60 {
    padding-top: 60px !important;
  }
}

.pb60 {
  padding-bottom: 16vw !important;
}
@media (min-width: 769px) {
  .pb60 {
    padding-bottom: 60px !important;
  }
}

.mt-sp60 {
  margin-top: 16vw !important;
}

.mb-sp60 {
  margin-bottom: 16vw !important;
}

.pt-sp60 {
  padding-top: 16vw !important;
}

.pb-sp60 {
  padding-bottom: 16vw !important;
}

@media (min-width: 769px) {
  .mt-pc60 {
    margin-top: 60px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc60 {
    margin-bottom: 60px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc60 {
    padding-top: 60px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc60 {
    padding-bottom: 60px !important;
  }
}

.mt65 {
  margin-top: 17.3333333333vw !important;
}
@media (min-width: 769px) {
  .mt65 {
    margin-top: 65px !important;
  }
}

.mb65 {
  margin-bottom: 17.3333333333vw !important;
}
@media (min-width: 769px) {
  .mb65 {
    margin-bottom: 65px !important;
  }
}

.pt65 {
  padding-top: 17.3333333333vw !important;
}
@media (min-width: 769px) {
  .pt65 {
    padding-top: 65px !important;
  }
}

.pb65 {
  padding-bottom: 17.3333333333vw !important;
}
@media (min-width: 769px) {
  .pb65 {
    padding-bottom: 65px !important;
  }
}

.mt-sp65 {
  margin-top: 17.3333333333vw !important;
}

.mb-sp65 {
  margin-bottom: 17.3333333333vw !important;
}

.pt-sp65 {
  padding-top: 17.3333333333vw !important;
}

.pb-sp65 {
  padding-bottom: 17.3333333333vw !important;
}

@media (min-width: 769px) {
  .mt-pc65 {
    margin-top: 65px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc65 {
    margin-bottom: 65px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc65 {
    padding-top: 65px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc65 {
    padding-bottom: 65px !important;
  }
}

.mt70 {
  margin-top: 18.6666666667vw !important;
}
@media (min-width: 769px) {
  .mt70 {
    margin-top: 70px !important;
  }
}

.mb70 {
  margin-bottom: 18.6666666667vw !important;
}
@media (min-width: 769px) {
  .mb70 {
    margin-bottom: 70px !important;
  }
}

.pt70 {
  padding-top: 18.6666666667vw !important;
}
@media (min-width: 769px) {
  .pt70 {
    padding-top: 70px !important;
  }
}

.pb70 {
  padding-bottom: 18.6666666667vw !important;
}
@media (min-width: 769px) {
  .pb70 {
    padding-bottom: 70px !important;
  }
}

.mt-sp70 {
  margin-top: 18.6666666667vw !important;
}

.mb-sp70 {
  margin-bottom: 18.6666666667vw !important;
}

.pt-sp70 {
  padding-top: 18.6666666667vw !important;
}

.pb-sp70 {
  padding-bottom: 18.6666666667vw !important;
}

@media (min-width: 769px) {
  .mt-pc70 {
    margin-top: 70px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc70 {
    margin-bottom: 70px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc70 {
    padding-top: 70px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc70 {
    padding-bottom: 70px !important;
  }
}

.mt75 {
  margin-top: 20vw !important;
}
@media (min-width: 769px) {
  .mt75 {
    margin-top: 75px !important;
  }
}

.mb75 {
  margin-bottom: 20vw !important;
}
@media (min-width: 769px) {
  .mb75 {
    margin-bottom: 75px !important;
  }
}

.pt75 {
  padding-top: 20vw !important;
}
@media (min-width: 769px) {
  .pt75 {
    padding-top: 75px !important;
  }
}

.pb75 {
  padding-bottom: 20vw !important;
}
@media (min-width: 769px) {
  .pb75 {
    padding-bottom: 75px !important;
  }
}

.mt-sp75 {
  margin-top: 20vw !important;
}

.mb-sp75 {
  margin-bottom: 20vw !important;
}

.pt-sp75 {
  padding-top: 20vw !important;
}

.pb-sp75 {
  padding-bottom: 20vw !important;
}

@media (min-width: 769px) {
  .mt-pc75 {
    margin-top: 75px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc75 {
    margin-bottom: 75px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc75 {
    padding-top: 75px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc75 {
    padding-bottom: 75px !important;
  }
}

.mt80 {
  margin-top: 21.3333333333vw !important;
}
@media (min-width: 769px) {
  .mt80 {
    margin-top: 80px !important;
  }
}

.mb80 {
  margin-bottom: 21.3333333333vw !important;
}
@media (min-width: 769px) {
  .mb80 {
    margin-bottom: 80px !important;
  }
}

.pt80 {
  padding-top: 21.3333333333vw !important;
}
@media (min-width: 769px) {
  .pt80 {
    padding-top: 80px !important;
  }
}

.pb80 {
  padding-bottom: 21.3333333333vw !important;
}
@media (min-width: 769px) {
  .pb80 {
    padding-bottom: 80px !important;
  }
}

.mt-sp80 {
  margin-top: 21.3333333333vw !important;
}

.mb-sp80 {
  margin-bottom: 21.3333333333vw !important;
}

.pt-sp80 {
  padding-top: 21.3333333333vw !important;
}

.pb-sp80 {
  padding-bottom: 21.3333333333vw !important;
}

@media (min-width: 769px) {
  .mt-pc80 {
    margin-top: 80px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc80 {
    margin-bottom: 80px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc80 {
    padding-top: 80px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc80 {
    padding-bottom: 80px !important;
  }
}

.mt85 {
  margin-top: 22.6666666667vw !important;
}
@media (min-width: 769px) {
  .mt85 {
    margin-top: 85px !important;
  }
}

.mb85 {
  margin-bottom: 22.6666666667vw !important;
}
@media (min-width: 769px) {
  .mb85 {
    margin-bottom: 85px !important;
  }
}

.pt85 {
  padding-top: 22.6666666667vw !important;
}
@media (min-width: 769px) {
  .pt85 {
    padding-top: 85px !important;
  }
}

.pb85 {
  padding-bottom: 22.6666666667vw !important;
}
@media (min-width: 769px) {
  .pb85 {
    padding-bottom: 85px !important;
  }
}

.mt-sp85 {
  margin-top: 22.6666666667vw !important;
}

.mb-sp85 {
  margin-bottom: 22.6666666667vw !important;
}

.pt-sp85 {
  padding-top: 22.6666666667vw !important;
}

.pb-sp85 {
  padding-bottom: 22.6666666667vw !important;
}

@media (min-width: 769px) {
  .mt-pc85 {
    margin-top: 85px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc85 {
    margin-bottom: 85px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc85 {
    padding-top: 85px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc85 {
    padding-bottom: 85px !important;
  }
}

.mt90 {
  margin-top: 24vw !important;
}
@media (min-width: 769px) {
  .mt90 {
    margin-top: 90px !important;
  }
}

.mb90 {
  margin-bottom: 24vw !important;
}
@media (min-width: 769px) {
  .mb90 {
    margin-bottom: 90px !important;
  }
}

.pt90 {
  padding-top: 24vw !important;
}
@media (min-width: 769px) {
  .pt90 {
    padding-top: 90px !important;
  }
}

.pb90 {
  padding-bottom: 24vw !important;
}
@media (min-width: 769px) {
  .pb90 {
    padding-bottom: 90px !important;
  }
}

.mt-sp90 {
  margin-top: 24vw !important;
}

.mb-sp90 {
  margin-bottom: 24vw !important;
}

.pt-sp90 {
  padding-top: 24vw !important;
}

.pb-sp90 {
  padding-bottom: 24vw !important;
}

@media (min-width: 769px) {
  .mt-pc90 {
    margin-top: 90px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc90 {
    margin-bottom: 90px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc90 {
    padding-top: 90px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc90 {
    padding-bottom: 90px !important;
  }
}

.mt95 {
  margin-top: 25.3333333333vw !important;
}
@media (min-width: 769px) {
  .mt95 {
    margin-top: 95px !important;
  }
}

.mb95 {
  margin-bottom: 25.3333333333vw !important;
}
@media (min-width: 769px) {
  .mb95 {
    margin-bottom: 95px !important;
  }
}

.pt95 {
  padding-top: 25.3333333333vw !important;
}
@media (min-width: 769px) {
  .pt95 {
    padding-top: 95px !important;
  }
}

.pb95 {
  padding-bottom: 25.3333333333vw !important;
}
@media (min-width: 769px) {
  .pb95 {
    padding-bottom: 95px !important;
  }
}

.mt-sp95 {
  margin-top: 25.3333333333vw !important;
}

.mb-sp95 {
  margin-bottom: 25.3333333333vw !important;
}

.pt-sp95 {
  padding-top: 25.3333333333vw !important;
}

.pb-sp95 {
  padding-bottom: 25.3333333333vw !important;
}

@media (min-width: 769px) {
  .mt-pc95 {
    margin-top: 95px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc95 {
    margin-bottom: 95px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc95 {
    padding-top: 95px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc95 {
    padding-bottom: 95px !important;
  }
}

.mt100 {
  margin-top: 26.6666666667vw !important;
}
@media (min-width: 769px) {
  .mt100 {
    margin-top: 100px !important;
  }
}

.mb100 {
  margin-bottom: 26.6666666667vw !important;
}
@media (min-width: 769px) {
  .mb100 {
    margin-bottom: 100px !important;
  }
}

.pt100 {
  padding-top: 26.6666666667vw !important;
}
@media (min-width: 769px) {
  .pt100 {
    padding-top: 100px !important;
  }
}

.pb100 {
  padding-bottom: 26.6666666667vw !important;
}
@media (min-width: 769px) {
  .pb100 {
    padding-bottom: 100px !important;
  }
}

.mt-sp100 {
  margin-top: 26.6666666667vw !important;
}

.mb-sp100 {
  margin-bottom: 26.6666666667vw !important;
}

.pt-sp100 {
  padding-top: 26.6666666667vw !important;
}

.pb-sp100 {
  padding-bottom: 26.6666666667vw !important;
}

@media (min-width: 769px) {
  .mt-pc100 {
    margin-top: 100px !important;
  }
}

@media (min-width: 769px) {
  .mb-pc100 {
    margin-bottom: 100px !important;
  }
}

@media (min-width: 769px) {
  .pt-pc100 {
    padding-top: 100px !important;
  }
}

@media (min-width: 769px) {
  .pb-pc100 {
    padding-bottom: 100px !important;
  }
}

/* COMMON
----------------------------- */
.main {
  line-height: 1.5;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #000;
  font-size: clamp(16px, 4.2666666667vw, 4.2666666667vw);
}
@media (min-width: 769px) {
  .main {
    font-size: 16px;
  }
}
.main * {
  box-sizing: border-box;
}
.main a {
  text-decoration: none;
}
.main figure {
  text-align: center;
}
.main .img {
  display: block;
  text-align: center;
}
.main img {
  max-height: 100%;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  vertical-align: bottom;
}
.main .sp {
  display: block;
}
@media (min-width: 769px) {
  .main .sp {
    display: none;
  }
}
.main .pc {
  display: none;
}
@media (min-width: 769px) {
  .main .pc {
    display: block;
  }
}

/* SECTION
----------------------------- */
@media (min-width: 769px) {
  .main {
    padding-top: 155px;
  }
}
.main .section__inner {
  padding: clamp(20px, 5.3333333333vw, 5.3333333333vw) clamp(15px, 4vw, 4vw);
}
@media (min-width: 769px) {
  .main .section__inner {
    padding: 40px 0px;
  }
}
@media (min-width: 769px) {
  .main .section__inner {
    max-width: 1200px;
    margin-inline: auto;
  }
}
.main .section__inner > *:last-child {
  margin-bottom: 0;
}
.main .bg--red {
  background: #f70000;
}
.main .bg--white {
  background: #fff;
}

/* HEADING & TEXT
----------------------------- */
.main .heading--primary {
  font-size: clamp(24px, 6.4vw, 6.4vw);
  margin-bottom: clamp(20px, 5.3333333333vw, 5.3333333333vw);
  font-weight: bold;
}
@media (min-width: 769px) {
  .main .heading--primary {
    font-size: 24px;
  }
}
@media (min-width: 769px) {
  .main .heading--primary {
    margin-bottom: 20px;
  }
}
.main .heading--secondary {
  margin-bottom: clamp(10px, 2.6666666667vw, 2.6666666667vw);
  padding: clamp(8px, 2.1333333333vw, 2.1333333333vw) clamp(0px, 0vw, 0vw) clamp(20px, 5.3333333333vw, 5.3333333333vw);
  background: url(/jp/eng/recruit/internship-report25/img/h3_bg_sp.png) center/contain no-repeat;
  text-align: center;
  font-weight: bold;
}
@media (min-width: 769px) {
  .main .heading--secondary {
    margin-bottom: 10px;
  }
}
@media (min-width: 769px) {
  .main .heading--secondary {
    padding: 15px 0px 40px;
  }
}
@media (min-width: 769px) {
  .main .heading--secondary {
    background-image: url(/jp/eng/recruit/internship-report25/img/h3_bg_pc.png);
  }
}
.main .heading--secondary__sub, .main .heading--secondary__main {
  display: block;
  line-height: 1.2;
}
.main .heading--secondary__sub {
  font-size: clamp(20px, 5.3333333333vw, 5.3333333333vw);
}
@media (min-width: 769px) {
  .main .heading--secondary__sub {
    font-size: 20px;
  }
}
.main .heading--secondary__main {
  font-size: clamp(30px, 8vw, 8vw);
}
@media (min-width: 769px) {
  .main .heading--secondary__main {
    font-size: 30px;
  }
}
.main .txt--center {
  text-align: center;
}
.main .txt--white {
  color: #fff;
}
.main .fs--ex-small {
  font-size: 0.7em;
}
.main .fs--small {
  font-size: 0.875em;
}
.main .fs--large {
  font-size: 1.125em;
}
.main .fw--normal {
  font-weight: normal;
}
.main .fw--bold {
  font-weight: bold;
}

.main {
  /* PAGE-HERO
  ----------------------------- */
  /* COMPANY-INTRO
  ----------------------------- */
  /* SECTION-NAV
  ----------------------------- */
  /* STRENGTHS
  ----------------------------- */
  /* GROWTH-REASONS
  ----------------------------- */
  /* TRAITS
  ----------------------------- */
  /* TRAIT POINT TEXT REVEAL
  ----------------------------- */
  /* PC時だけ大きく */
  /* animation（なめらか：全OFFほぼゼロ、ループ） */
  /* 0–25%: 1 / 25–50%: 1&2 / 50–75%: 1&2&3 / 75–100%: リセット */
}
.main .page-hero {
  position: relative;
}
.main .page-hero__kicker {
  display: flex;
  align-items: center;
  gap: clamp(10px, 2.6666666667vw, 2.6666666667vw);
  font-size: clamp(11px, 2.9333333333vw, 2.9333333333vw);
  color: #7b7b7b;
}
@media (min-width: 769px) {
  .main .page-hero__kicker {
    gap: 10px;
  }
}
@media (min-width: 769px) {
  .main .page-hero__kicker {
    font-size: 11px;
  }
}
.main .page-hero__kicker::before {
  content: "";
  display: block;
  width: clamp(45px, 12vw, 12vw);
  height: 1px;
  background: #c3c3c3;
}
@media (min-width: 769px) {
  .main .page-hero__kicker::before {
    width: 84px;
  }
}
.main .page-hero__title {
  font-size: clamp(20px, 5.3333333333vw, 5.3333333333vw);
  margin-bottom: clamp(25px, 6.6666666667vw, 6.6666666667vw);
  font-weight: bold;
}
@media (min-width: 769px) {
  .main .page-hero__title {
    font-size: 20px;
  }
}
@media (min-width: 769px) {
  .main .page-hero__title {
    margin-bottom: 25px;
  }
}
.main .page-hero__title .large {
  font-size: clamp(30px, 8vw, 8vw);
}
@media (min-width: 769px) {
  .main .page-hero__title .large {
    font-size: 30px;
  }
}
.main .page-hero__bar {
  height: clamp(15px, 4vw, 4vw);
  transform: translateX(-5.5vw);
}
@media (min-width: 769px) {
  .main .page-hero__bar {
    height: 15px;
  }
}
@media (min-width: 769px) {
  .main .page-hero__bar {
    transform: translateX(0);
  }
}
.main .page-hero__bar img {
  vertical-align: top;
}
.main .company-intro {
  position: relative;
  padding-top: clamp(10px, 2.6666666667vw, 2.6666666667vw);
}
@media (min-width: 769px) {
  .main .company-intro {
    padding-top: 10px;
  }
}
.main .company-intro::before {
  content: "";
  position: absolute;
  inset: 0;
  height: 150%;
  z-index: -1;
  background: url(/jp/eng/recruit/strengths/img/intro_bg.svg) center/cover no-repeat;
  opacity: 0.4;
}
.main .company-intro__title {
  font-size: clamp(24px, 6.4vw, 6.4vw);
  margin-bottom: clamp(30px, 8vw, 8vw);
  font-weight: bold;
  text-decoration: underline;
  text-underline-offset: 5px;
}
@media (min-width: 769px) {
  .main .company-intro__title {
    font-size: 24px;
  }
}
@media (min-width: 769px) {
  .main .company-intro__title {
    margin-bottom: 30px;
  }
}
.main .company-intro__body {
  display: grid;
  gap: clamp(15px, 4vw, 4vw);
}
@media (min-width: 769px) {
  .main .company-intro__body {
    gap: 15px;
  }
}
.main .company-intro__text .large {
  font-size: clamp(22px, 5.8666666667vw, 5.8666666667vw);
}
@media (min-width: 769px) {
  .main .company-intro__text .large {
    font-size: 40px;
  }
}
.main .company-intro__highlight {
  position: relative;
  display: inline-block;
  color: #fff;
  font-weight: bold;
  z-index: 0;
  padding: clamp(2px, 0.5333333333vw, 0.5333333333vw) clamp(6px, 1.6vw, 1.6vw);
  /* 背景レイヤー */
}
@media (min-width: 769px) {
  .main .company-intro__highlight {
    padding: 2px 8px;
  }
}
.main .company-intro__highlight::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: url(/jp/eng/recruit/strengths/img/highlight_bg.svg) left center/cover no-repeat;
  /* 初期状態：左に隠す */
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.6s ease;
}
.main .company-intro__highlight.is-active::before {
  transform: scaleX(1);
}
.main .section-nav {
  position: relative;
  background: url(/jp/eng/recruit/strengths/img/nav_bg.png) center/contain no-repeat;
  overflow: hidden;
  margin-bottom: clamp(40px, 10.6666666667vw, 10.6666666667vw);
  padding: clamp(90px, 24vw, 24vw) clamp(15px, 4vw, 4vw) clamp(80px, 21.3333333333vw, 21.3333333333vw);
}
@media (min-width: 769px) {
  .main .section-nav {
    margin-bottom: 0px;
  }
}
@media (min-width: 769px) {
  .main .section-nav {
    padding: 100px 0px;
  }
}
@media (min-width: 769px) {
  .main .section-nav {
    background-size: cover;
  }
}
.main .section-nav::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(95deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0) 60%);
  pointer-events: none;
}
.main .section-nav__list {
  max-width: 1200px;
  margin-inline: auto;
  position: relative;
  z-index: 1;
  display: grid;
  gap: clamp(20px, 5.3333333333vw, 5.3333333333vw);
}
@media (min-width: 769px) {
  .main .section-nav__list {
    gap: 20px;
  }
}
.main .section-nav__link {
  display: flex;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #fff;
  text-decoration: none;
  position: relative;
  gap: clamp(25px, 6.6666666667vw, 6.6666666667vw);
}
@media (min-width: 769px) {
  .main .section-nav__link {
    gap: 25px;
  }
}
.main .section-nav__link::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 0;
  height: 1px;
  background-color: currentColor;
  transition: width 0.3s ease;
}
.main .section-nav__link:hover::after {
  width: 105%;
}
.main .section-nav__number {
  padding-left: 5px;
}
.main .section-nav__label {
  display: flex;
  align-items: center;
  position: relative;
  font-size: clamp(18px, 4.8vw, 4.8vw);
  font-weight: bold;
}
@media (min-width: 769px) {
  .main .section-nav__label {
    font-size: 18px;
  }
}
.main .section-nav__label::before {
  content: "";
  display: inline-block;
  height: clamp(20px, 5.3333333333vw, 5.3333333333vw);
  width: clamp(20px, 5.3333333333vw, 5.3333333333vw);
  margin-right: clamp(5px, 1.3333333333vw, 1.3333333333vw);
  background: url(/jp/eng/recruit/strengths/img/nav_line.svg) center bottom/contain no-repeat;
}
@media (min-width: 769px) {
  .main .section-nav__label::before {
    height: 20px;
  }
}
@media (min-width: 769px) {
  .main .section-nav__label::before {
    width: 20px;
  }
}
@media (min-width: 769px) {
  .main .section-nav__label::before {
    margin-right: 5px;
  }
}
.main .thumbnail-list {
  display: grid;
  gap: clamp(20px, 5.3333333333vw, 5.3333333333vw);
}
@media (min-width: 769px) {
  .main .thumbnail-list {
    gap: 30px;
  }
}
@media (min-width: 769px) {
  .main .thumbnail-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
.main .thumbnail-list__item {
  aspect-ratio: 15/7;
}
.main .thumbnail-list__link {
  display: block;
  height: 100%;
  position: relative;
  background: #000;
  overflow: hidden;
}
.main .thumbnail-list__link img {
  width: 100%;
  height: 100%;
  opacity: 0.6;
  transition-property: transform, opacity;
  transition-duration: 0.5s;
}
.main .thumbnail-list__link:hover img {
  opacity: 0.8;
  transform: scale(1.15);
}
.main .thumbnail-list__txt {
  padding-left: clamp(20px, 5.3333333333vw, 5.3333333333vw);
  position: absolute;
  bottom: clamp(15px, 4vw, 4vw);
  left: clamp(30px, 8vw, 8vw);
  font-size: clamp(18px, 4.8vw, 4.8vw);
  color: #fff;
}
@media (min-width: 769px) {
  .main .thumbnail-list__txt {
    padding-left: 30px;
  }
}
@media (min-width: 769px) {
  .main .thumbnail-list__txt {
    bottom: 20px;
  }
}
@media (min-width: 769px) {
  .main .thumbnail-list__txt {
    left: 40px;
  }
}
@media (min-width: 769px) {
  .main .thumbnail-list__txt {
    font-size: 18px;
  }
}
.main .thumbnail-list__txt--sm {
  font-size: clamp(13px, 3.4666666667vw, 3.4666666667vw);
}
@media (min-width: 769px) {
  .main .thumbnail-list__txt--sm {
    font-size: 13px;
  }
}
.main .thumbnail-list__txt::before {
  content: "";
  height: 100%;
  width: 1px;
  position: absolute;
  top: 0;
  left: 0;
  transform: rotate(30deg);
  background: #fff;
}
.main .strengths__list {
  display: grid;
  position: relative;
  gap: clamp(20px, 5.3333333333vw, 5.3333333333vw);
}
@media (min-width: 769px) {
  .main .strengths__list {
    gap: 20px;
  }
}
@media (min-width: 769px) {
  .main .strengths__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
.main .strengths__list::after {
  content: "";
  display: block;
  height: clamp(100px, 26.6666666667vw, 26.6666666667vw);
}
@media (min-width: 769px) {
  .main .strengths__list::after {
    height: 0px;
  }
}
.main .strengths-card {
  border: 1px solid #f70000;
  padding: clamp(10px, 2.6666666667vw, 2.6666666667vw);
  position: -webkit-sticky;
  position: sticky;
  top: clamp(80px, 21.3333333333vw, 21.3333333333vw);
  background: #fff;
}
@media (min-width: 769px) {
  .main .strengths-card {
    padding: 10px;
  }
}
@media (min-width: 769px) {
  .main .strengths-card {
    top: 0px;
  }
}
@media (min-width: 769px) {
  .main .strengths-card {
    position: relative;
  }
}
.main .strengths-card:nth-child(1) {
  z-index: 1;
}
.main .strengths-card:nth-child(2) {
  z-index: 2;
}
.main .strengths-card:nth-child(3) {
  z-index: 3;
}
.main .strengths-card__number {
  position: absolute;
  top: 10px;
  left: 10px;
}
.main .strengths-card__title {
  margin-bottom: clamp(15px, 4vw, 4vw);
  padding-left: clamp(80px, 21.3333333333vw, 21.3333333333vw);
  font-size: clamp(18px, 4.8vw, 4.8vw);
  font-weight: bold;
}
@media (min-width: 769px) {
  .main .strengths-card__title {
    margin-bottom: 15px;
  }
}
@media (min-width: 769px) {
  .main .strengths-card__title {
    padding-left: 80px;
  }
}
@media (min-width: 769px) {
  .main .strengths-card__title {
    font-size: 18px;
  }
}
.main .strengths-card__emphasis {
  font-size: clamp(26px, 6.9333333333vw, 6.9333333333vw);
  color: #f70000;
  line-height: 1.2;
}
@media (min-width: 769px) {
  .main .strengths-card__emphasis {
    font-size: 26px;
  }
}
.main .strengths-card:nth-child(2) {
  top: clamp(160px, 42.6666666667vw, 42.6666666667vw);
}
@media (min-width: 769px) {
  .main .strengths-card:nth-child(2) {
    top: 0px;
  }
}
.main .strengths-card:nth-child(3) {
  top: clamp(240px, 64vw, 64vw);
}
@media (min-width: 769px) {
  .main .strengths-card:nth-child(3) {
    top: 0px;
  }
}
.main .growth-reasons {
  background: #f5f5f5;
  overflow: hidden;
}
.main .growth-reasons__list {
  display: grid;
  gap: clamp(20px, 5.3333333333vw, 5.3333333333vw);
  padding-left: clamp(30px, 8vw, 8vw);
}
@media (min-width: 769px) {
  .main .growth-reasons__list {
    gap: 40px;
  }
}
@media (min-width: 769px) {
  .main .growth-reasons__list {
    padding-left: 0px;
  }
}
@media (min-width: 769px) {
  .main .growth-reasons__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 769px) {
  .main .growth-reasons__list--second {
    display: block;
    width: 60%;
    margin-inline: auto;
  }
}
.main .reason-card {
  padding: clamp(25px, 6.6666666667vw, 6.6666666667vw);
  position: relative;
  margin-bottom: clamp(100px, 26.6666666667vw, 26.6666666667vw);
  z-index: 1;
}
@media (min-width: 769px) {
  .main .reason-card {
    padding: 25px;
  }
}
@media (min-width: 769px) {
  .main .reason-card {
    margin-bottom: 100px;
  }
}
.main .reason-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 110%;
  height: 100%;
  border: 1px solid #000;
  border-right-width: 0;
  background: #fff;
  z-index: -1;
}
@media (min-width: 769px) {
  .main .reason-card::before {
    width: 100%;
    border-right-width: 1px;
  }
}
.main .reason-card__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(20px, 5.3333333333vw, 5.3333333333vw);
}
@media (min-width: 769px) {
  .main .reason-card__inner {
    gap: 40px;
  }
}
.main .reason-card__content {
  min-width: 0;
}
@media (min-width: 769px) {
  .main .reason-card__content:has(> .reason-card__img) {
    display: grid;
    grid-template-columns: 1fr 0.7fr;
    gap: 30px;
    align-items: center;
  }
}
.main .reason-card__title {
  font-size: clamp(18px, 4.8vw, 4.8vw);
  margin-bottom: clamp(10px, 2.6666666667vw, 2.6666666667vw);
  font-weight: bold;
}
@media (min-width: 769px) {
  .main .reason-card__title {
    font-size: 18px;
  }
}
@media (min-width: 769px) {
  .main .reason-card__title {
    margin-bottom: 16px;
  }
}
.main .reason-card__img {
  display: block;
  margin-top: clamp(20px, 5.3333333333vw, 5.3333333333vw);
  padding: clamp(20px, 5.3333333333vw, 5.3333333333vw);
}
@media (min-width: 769px) {
  .main .reason-card__img {
    margin-top: 0px;
  }
}
@media (min-width: 769px) {
  .main .reason-card__img {
    padding: 0px;
  }
}
.main .reason-card__media {
  height: clamp(150px, 40vw, 40vw);
  width: clamp(200px, 53.3333333333vw, 53.3333333333vw);
  position: absolute;
  bottom: -28vw;
  right: clamp(-15px, -4vw, -4vw);
  text-align: right;
}
@media (min-width: 769px) {
  .main .reason-card__media {
    height: 150px;
  }
}
@media (min-width: 769px) {
  .main .reason-card__media {
    width: 200px;
  }
}
@media (min-width: 769px) {
  .main .reason-card__media {
    right: 0px;
  }
}
@media (min-width: 769px) {
  .main .reason-card__media {
    bottom: -100px;
  }
}
.main .traits {
  position: relative;
  background: #f70000;
  border-radius: 30px;
}
.main .traits::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background: linear-gradient(#f5f5f5, #fff);
  z-index: -1;
}
.main .traits__list {
  display: grid;
  gap: clamp(20px, 5.3333333333vw, 5.3333333333vw);
}
@media (min-width: 769px) {
  .main .traits__list {
    gap: 40px;
  }
}
@media (min-width: 769px) {
  .main .traits__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
.main .trait-card {
  background: #fff;
  border-radius: 50%;
  margin-inline: auto;
  display: grid;
  text-align: center;
  width: clamp(345px, 92vw, 92vw);
  padding-top: 35px;
  height: clamp(345px, 92vw, 92vw);
  aspect-ratio: 1/1;
}
@media (min-width: 769px) {
  .main .trait-card {
    width: 345px;
  }
}
@media (min-width: 769px) {
  .main .trait-card {
    height: 345px;
  }
}
@media (min-width: 769px) {
  .main .trait-card {
    height: 100%;
    width: 100%;
  }
}
.main .trait-card__label {
  display: block;
  font-size: clamp(12px, 3.2vw, 3.2vw);
}
@media (min-width: 769px) {
  .main .trait-card__label {
    font-size: 14px;
  }
}
.main .trait-card__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  padding: 0 10px 5px;
  margin-bottom: clamp(35px, 10.6666666667vw, 10.6666666667vw);
  font-size: clamp(32px, 8.5333333333vw, 8.5333333333vw);
  color: #f70000;
  font-weight: bold;
  border-bottom: 1px solid #f70000;
  line-height: 1.2;
}
@media (min-width: 769px) {
  .main .trait-card__title {
    margin-bottom: 30px;
  }
}
@media (min-width: 769px) {
  .main .trait-card__title {
    font-size: 32px;
  }
}
.main .trait-card__points {
  display: grid;
  gap: clamp(20px, 2.6666666667vw, 2.6666666667vw);
}
@media (min-width: 769px) {
  .main .trait-card__points {
    gap: 40px;
  }
}
.main .trait-card__point {
  font-size: 0.9em;
}
.main .trait-card__point .text-reveal__char {
  color: #c3c3c3;
  transition: color 0.2s linear;
}
.main .trait-card__point.is-revealed .text-reveal__char.is-active {
  color: #000;
}
.main .chevron {
  width: 29px; /* ← これを必ず指定（SPの初期サイズ） */
  height: auto; /* 縦横比は viewBox が保ってくれる */
  display: block;
}
.main .chevron {
  display: block;
  margin-inline: auto; /* ← 横方向の中央寄せ！ */
}
@media (min-width: 769px) {
  .main .chevron {
    width: 64px; /* ← PCサイズをここで指定！ */
  }
}
.main .chevron__item {
  opacity: 0;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
}
.main .chevron__item--1 {
  -webkit-animation-name: chevron-loop-1;
          animation-name: chevron-loop-1;
}
.main .chevron__item--2 {
  -webkit-animation-name: chevron-loop-2;
          animation-name: chevron-loop-2;
}
.main .chevron__item--3 {
  -webkit-animation-name: chevron-loop-3;
          animation-name: chevron-loop-3;
}
@-webkit-keyframes chevron-loop-1 {
  0% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76%, 100% {
    opacity: 0;
  } /* 全OFFは一瞬だけ */
}
@keyframes chevron-loop-1 {
  0% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76%, 100% {
    opacity: 0;
  } /* 全OFFは一瞬だけ */
}
@-webkit-keyframes chevron-loop-2 {
  0%, 24% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76%, 100% {
    opacity: 0;
  }
}
@keyframes chevron-loop-2 {
  0%, 24% {
    opacity: 0;
  }
  25% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76%, 100% {
    opacity: 0;
  }
}
@-webkit-keyframes chevron-loop-3 {
  0%, 49% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76%, 100% {
    opacity: 0;
  }
}
@keyframes chevron-loop-3 {
  0%, 49% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  76%, 100% {
    opacity: 0;
  }
}

/* STICKY AREA
----------------------------- */
.sticky-area {
  height: 21.3333333333vw;
  width: 21.3333333333vw;
  position: fixed;
  right: 2.1333333333vw;
  bottom: 17.0666666667vw;
  z-index: 999;
  border-radius: 50%;
  transform-origin: center;
}
@media (min-width: 769px) {
  .sticky-area {
    height: 160px;
    width: 160px;
    right: 32px;
    bottom: 112px;
  }
}
.sticky-area__txt {
  -webkit-animation: rotation 8s linear infinite;
          animation: rotation 8s linear infinite;
}
.sticky-area__arrow {
  height: 6.4vw;
  position: absolute;
  top: 50%;
  left: 50%;
  rotate: 90deg;
  translate: -50% -50%;
  transition: transform 0.3s;
}
@media (min-width: 769px) {
  .sticky-area__arrow {
    height: 56px;
  }
}
.sticky-area:hover .sticky-area__arrow {
  transform: translateY(-2.1333333333vw);
}
@media (min-width: 769px) {
  .sticky-area:hover .sticky-area__arrow {
    transform: translateY(-8px);
  }
}

@-webkit-keyframes rotation {
  0% {
    rotate: 0;
  }
  100% {
    rotate: 360deg;
  }
}

@keyframes rotation {
  0% {
    rotate: 0;
  }
  100% {
    rotate: 360deg;
  }
}
/* STICKY AREA */
.sticky-area {
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.sticky-area.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
/*# sourceMappingURL=style.css.map */