/* PC：仮で設定しておりますので、調整の際は削除してください。 */
/* ＝＝＝＝＝＝＝＝＝＝＝　▼ 共通 ▼　＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

.Anniversary_lp {
  font-family: "sawarabi-gothic", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.Anniversary_lp .cont_inner {
  max-width: 2100px;
  width: 100%;
  margin: 0 auto;
}
.Anniversary_lp img {
  width: 100%;
  height: 100%;
}
.pcOnly {
  display: block;
}
.spOnly {
  display: none;
}

@font-face {
  font-family: "UniversLTStd";
  src: url("/Page/issue/LP/issue102/font/UniversLTStd-Light.otf") format("opentype");
}

.credit {
  font-size: 1.5rem;
  letter-spacing: 0em;
  color: #000;
  font-family: "UniversLTStd";
}

@media only screen and (min-width: 768px) {
  /* .header.off {
    visibility: hidden;
    opacity: 0;
    z-index: -100;
    transition: 1s;
  } */
  .header.js-header-remove,
  .header .header-inner.js-header-removesec {
    opacity: 0;
    visibility: hidden;
    transition: inherit;
  }
}

@media screen and (max-width: 767px) {
  .Anniversary_lp .cont_inner {
    max-width: none;
  }
  .Anniversary_lp {
    font-size: calc(20 * (100vw / 750));
  }
  .pcOnly {
    display: none;
  }
  .spOnly {
    display: block;
  }

  .credit {
    font-size: calc(22 * (100vw / 750));
    letter-spacing: -0.01em;
    color: #000;
    font-family: "UniversLTStd";
  }

  .model_img a {
    opacity: 1;
  }

  div#Contents {
    padding-top: calc(25*(100vw / 375));
  }
  main.main-area {
    padding: 0;
  }
  div#breadcrumb {
    display: none;
  }

}



/*--------------------------------
  mainvisual
--------------------------------*/

.mainvisual {
  width: 170rem;
  margin: 0 auto;;
}

.mainvisual_txt ul {
  text-align: center;
  margin-top: 13rem;
}

.mainvisual_txt ul li:nth-of-type(1) {
  width: 19.4rem;
  margin: 0 auto;
}

.mainvisual_txt ul li:nth-of-type(2) {
  font-size: 1.7rem;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  margin-top: 4.8rem;
  line-height: 2.03;
}

@media screen and (max-width: 767px) {
  .mainvisual {
    width: 100%;
    margin: 0 auto;;
  }

  .mainvisual_txt ul {
    margin-top: calc(140 * (100vw / 750));
  }
  
  .mainvisual_txt ul li:nth-of-type(1) {
    width: calc(237 * (100vw / 750));
    margin: 0 auto;
  }
  
  .mainvisual_txt ul li:nth-of-type(2) {
    font-size: calc(20 * (100vw / 750));
    letter-spacing: 0.01em;
    font-feature-settings: "palt";
    margin-top: calc(55*(100vw / 750));
    line-height: 2;
    margin-left: calc(10*(100vw / 750));
  }


}


/*--------------------------------
  section01
--------------------------------*/
.section01 {
  margin-top: 15.4rem;
  margin-bottom: 18rem;
}

.section01 .model_box01 {
  width: 88rem;
  margin: 0 auto 0;
}

.section01 .flexArea01 {
  width: 158rem;
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  margin: 12rem 0 0 21rem;
  position: relative;
}

.section01 .flexArea01 .txt02 {
  width: 57.2rem;
  position: absolute;
  top: 30.8rem;
  left: 26.2rem;
  z-index: 10;
  pointer-events: none;
}

.section01 .flexArea01 .txt02 img {
  width: 57.2rem;
}

@media screen and (min-width: 768px) {
  .txt02.spOnly.slide-in.leftAnime.slideAnimeLeftRight {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .txt02.pcOnly.slide-in.leftAnime.slideAnimeLeftRight {
    display: none;
  }
}

.section01 .flexArea01 .model_box02 {
  width: 54rem;
}

.section01 .flexArea01 .model_box02 .credit {
  margin-top: 3rem;
  text-align: right;
}

.section01 .flexArea01 .model_box02 .credit li:nth-of-type(2) {
  margin-top: 1.3rem;
}

.section01 .flexArea01 .model_box03 {
  width: 68rem;
  margin-top: 45.4rem;
}

@media screen and (max-width: 767px) {
  .section01 {
    margin-top: calc(170 * (100vw / 750));
    margin-bottom: calc(136 * (100vw / 750));
  }
  
  .section01 .model_box01 {
    width: calc(750 * (100vw / 750));
  }
  
  .section01 .model_box01 .txt02 {
    width: calc(524 * (100vw / 750));
    margin-left: calc(41 * (100vw / 750));
  }

  .section01 .model_box01 .model_img {
    width: calc(750 * (100vw / 750));
    margin: calc(30 * (100vw / 750)) auto 0;
  }

  .section01 .flexArea01 {
    width: calc(710*(100vw / 750));
    display: block;
    margin: calc(70*(100vw / 750)) 0 0 calc(0*(100vw / 750));
    position: relative;
  }
    
  .section01 .flexArea01 .model_box02 {
    width: calc(500 * (100vw / 750));
    margin-left: auto;
  }
    
  .section01 .flexArea01 .model_box03 {
    width: calc(620 * (100vw / 750));
    margin-top: calc(70 * (100vw / 750));
  }

  .section01 .flexArea01 .model_box03 .credit {
    margin-top: calc(44*(100vw / 750));
    margin-left: calc(40*(100vw / 750));
    text-align: left;
  }
  
  .section01 .flexArea01 .model_box03 .credit li:nth-of-type(2) {
    margin-top: calc(12 * (100vw / 750));
  }
  
}


/*--------------------------------
  section02
--------------------------------*/

.section02 {
  background: #333f50;
  margin-bottom: 18rem;
}

.section02 .flexArea02 {  
  width: 120rem;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  padding: 18rem 0 7rem 0;
}

.section02 .flexArea02 .model_box04,
.section02 .flexArea02 .model_box05 {
  width: 58rem;
}

.section02 .model_box06 {
  display: flex;
  margin-top: 5rem;
  justify-content: center;
  margin-left: 27rem;
  align-items: flex-end;

}

.section02 .model_box06 .model_img {
  width: 84rem;
}

.section02 .model_box06 .credit {
  text-align: left;
  color: #fff;
  margin-left: 3rem;
  margin-bottom: -0.4rem;
}

.section02 .model_box06 .credit li:nth-of-type(2) {
  margin-top: 1.1rem;
}

.section02 .model_box07 {
  padding-top: 18rem;
}

@media screen and (max-width: 767px) {
  .section02 {
    margin-bottom: calc(140 * (100vw / 750));
  }
  
  .section02 .flexArea02 {  
    width: calc(480*(100vw / 750));
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    padding: calc(140*(100vw / 750)) 0 0 0;
    margin: 0 calc(44*(100vw / 750)) 0 0;
    margin-left: auto;
  }
  
  .section02 .flexArea02 .model_box04,
  .section02 .flexArea02 .model_box05 {
    width: calc(480 * (100vw / 750));
  }

  .section02 .flexArea02 .model_box05 {
    margin-top: calc(20 * (100vw / 750));
  }
  
  .section02 .model_box06 {
    display: flex;
    margin-top: calc(70*(100vw / 750));
    justify-content: center;
    margin-left: 0;
    align-items: center;
    flex-direction: column;
  }
  
  .section02 .model_box06 .model_img {
    width: calc(660 * (100vw / 750));
    margin: 0 auto;
  }
  
  .section02 .model_box06 .credit {
    text-align: center;
    color: #fff;
    margin: calc(45*(100vw / 750)) 0 0 0;
    letter-spacing: 0;
  }
  
  .section02 .model_box06 .credit li:nth-of-type(2) {
    margin-top: calc(12 * (100vw / 750));
  }
  
  .section02 .model_box07 {
    padding-top: calc(135 * (100vw / 750));
  }
}



/*--------------------------------
  section03
--------------------------------*/

.section03 {
  width: 120rem;
  margin: 0 auto;
  margin-top: 0;
  padding-bottom: 18rem;
}

.section03 .model_box08 {
  position: sticky;
  top: 0px;
}

.section03 .model_box09 {
  width: 56rem;
  margin: 12rem 0 0 6rem;
  z-index: 100;
  position: relative;
}

.section03 .model_box09 img {
  width: 56rem;
}

.section03 .model_box10 {
  width: 66rem;
  margin: 12rem 8rem 0 0;
  margin-left: auto;
  z-index: 100;
  position: relative;
}

.section03 .model_box10 img {
  width: 66rem;
}

.section03 .model_box10 .credit {
  margin-top: 3.2rem;
  text-align: right;
  letter-spacing: -0.01em;
  position: inherit !important;
}

.section03 .model_box10 .credit li:nth-of-type(2) {
  margin-top: 1.2rem;
  letter-spacing: 0;
}

.section03 .model_box10 .credit li:nth-of-type(3) {
  margin-top: 1.2rem;
}


.section03 {
  position: relative;
} 

.section03 .cont_inner::after {
  content: "";
  width: 100%;
  height: 40rem;
  display: block;
}

@media screen and (max-width: 767px) {
  .section03 {
    width: calc(750 * (100vw / 750));
    margin: 0 auto;
    margin-top: 0;
    padding-bottom: calc(0 * (100vw / 750));
  }
  
  .section03 .model_box08 {
    position: sticky;
    top: calc(50 * (100vw / 750));
    z-index: 10;
  }
  
  .section03 .model_box09 {
    width: calc(480 * (100vw / 750));
    margin: calc(70 * (100vw / 750)) 0 0 calc(40 * (100vw / 750));
    z-index: 12;
    position: relative;
  }
  
  .section03 .model_box09 img {
    width: calc(480 * (100vw / 750));
  }
  
  .section03 .model_box10 {
    width: calc(560 * (100vw / 750));
    margin: calc(70 * (100vw / 750)) calc(40 * (100vw / 750)) 0 0;
    margin-left: auto;
    z-index: 12;
    position: relative;
  }
  
  .section03 .model_box10 img {
    width: calc(560 * (100vw / 750));
  }
  
  .section03 .model_box10 .credit {
    margin-top: calc(43 * (100vw / 750));
    text-align: right;
    letter-spacing: -0.01em;
  }
  
  .section03 .model_box10 .credit li:nth-of-type(2) {
    margin-top: calc(12 * (100vw / 750));
    letter-spacing: 0;
  }
  
  .section03 .model_box10 .credit li:nth-of-type(3) {
    margin-top: calc(12 * (100vw / 750));
  }
  
  
  .section03 {
    position: relative;
  } 
  
  .section03 .cont_inner::after {
    content: "";
    width: 100%;
    height: calc(200 * (100vw / 750));
    display: block;
  }
}

.credit_color {
  color: #fff;
}


/*--------------------------------
  section04
--------------------------------*/

.section04 {
  margin-top: 17.7rem;
  margin-bottom: 18rem;
}

.section04 .model_box11 {
  width: 76rem;
  margin: 0 auto;
}

.section04 .flexArea03 {
  width: 179rem;
  margin: 12rem 0 0 8rem;
  display: flex;
  justify-content: space-between;
}

.section04 .flexArea03 .model_box12 {
  width: 100rem;
}

.section04 .flexArea03 .model_box13 {
  width: 56rem;
  margin-top: 27.3rem;
}

.section04 .flexArea03 .model_box13 .credit {
  margin-top: 3.2rem;
}

.section04 .flexArea03 .model_box13 .credit li:nth-of-type(2) {
  margin-top: 1.2rem;
  letter-spacing: -0.01em;
}

.section04 .flexArea03 .model_box13 .credit li:nth-of-type(3) {
  margin-top: 1.2rem;
  letter-spacing: -0.01em;
}

.section04 .flexArea03 .model_box13 .credit li:nth-of-type(4) {
  margin-top: 1.2rem;
}

@media screen and (max-width: 767px) {
  .section04 {
    margin-top: calc(240 * (100vw / 750));
    margin-bottom: calc(150 * (100vw / 750));
  }
  
  .section04 .model_box11 {
    width: calc(620 * (100vw / 750));
    margin: 0 auto;
  }
  
  .section04 .flexArea03 {
    width: calc(750 * (100vw / 750));
    margin: calc(66 * (100vw / 750)) 0 0 calc(0 * (100vw / 750));
    display: flex;
    justify-content: space-between;
    flex-direction: column;
  }
  
  .section04 .flexArea03 .model_box12 {
    width: calc(750 * (100vw / 750));
  }
  
  .section04 .flexArea03 .model_box13 {
    width: calc(540 * (100vw / 750));
    margin-top: calc(70*(100vw / 750));
    margin-left: calc(40*(100vw / 750));
  }
  
  .section04 .flexArea03 .model_box13 .credit {
    margin-top: calc(45 * (100vw / 750));
  }
  
  .section04 .flexArea03 .model_box13 .credit li:nth-of-type(2) {
    margin-top: calc(12 * (100vw / 750));
    letter-spacing: -0.01em;
  }
  
  .section04 .flexArea03 .model_box13 .credit li:nth-of-type(3) {
    margin-top: calc(12 * (100vw / 750));
    letter-spacing: -0.01em;
  }
  
  .section04 .flexArea03 .model_box13 .credit li:nth-of-type(4) {
    margin-top: calc(12 * (100vw / 750));
  }
  
}


/*--------------------------------
  section05
--------------------------------*/

.section05 {
  margin-top: 0;
  position: relative;
  padding-bottom: 15rem;
}

.flexArea04 {
  position: relative;
  width: 152rem;
  margin: 0 0 0 33rem;
  padding-top: 18rem;
}

.flexArea04 .txt03 {
  width: 6.8rem;
  position: absolute;
  top: 72.5rem;
  left: 8.3rem;
  z-index: 10;
  pointer-events: none;
}

@media screen and (min-width: 768px) {
  .txt03.spOnly.slide-in.leftAnime.slideAnimeLeftRight {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .txt03.pcOnly.slide-in.downAnime.slideAnimeDownUp {
    display: none;
  }
}

.flexArea04 .model_box14 {
  width: 78rem;
  margin-left: 21rem;
}

.flexArea04 .model_box15 {
  width: 68rem;
  margin: 12rem 1rem 0 0;
  margin-left: auto;
}

.flexArea04 .model_box16 {
  margin-top: -20.4rem;
  margin-left: -1rem;
  display: flex;
}

.flexArea04 .model_box16 .model_img {
  width: 58rem;
}

.flexArea04 .model_box16 .credit {
  margin: 63.3rem 0 0 3rem;
  color: #fff;
}

.flexArea04 .model_box16 .credit li:nth-of-type(2) {
  margin-top: 1.2rem;
  letter-spacing: -0.01em;
}

.flexArea04 .model_box16 .credit li:nth-of-type(3) {
  margin-top: 1.2rem;
  letter-spacing: -0.01em;
}

.flexArea04 .model_box16 .credit li:nth-of-type(4) {
  margin-top: 1.1rem;
  letter-spacing: -0.01em;
}

.model_box17 {
  width: 80rem;
  margin: 24.5rem auto 0;
}

.txt04.slide-in.leftAnime.slideAnimeLeftRight {
  display: flex;
}

.txt04 {
  width: 66.6rem;
  margin: 8.1rem auto 0;
}

.txt04 img {
  width: 66.6rem;
  margin: 0 auto;
}

.section05::before {
  content: "";
  background: #333f50;
  display: block;
  width: 100%;
  height: 340.5rem;
  top: 0;
  right: 0rem;
  position: absolute;
  z-index: -1;
}

@media screen and (max-width: 767px) {
  .section05 {
    padding-bottom: calc(50 * (100vw / 750));
  }
  
  .flexArea04 {
    position: relative;
    width: calc(750*(100vw / 750));
    margin: 0;
    padding-top: calc(250*(100vw / 750));
  }
  
  .flexArea04 .txt03 {
    width: calc(474*(100vw / 750));
    position: absolute;
    top: calc(138*(100vw / 750));
    left: calc(236*(100vw / 750));
    z-index: 10;
    pointer-events: none;
  }
  
  .flexArea04 .model_box14 {
    width: calc(600 * (100vw / 750));
    margin-left: auto;
    margin-right: calc(40 * (100vw / 750));
  }
  
  .flexArea04 .model_box15 {
    width: calc(560 * (100vw / 750));
    margin-left: 0;
    margin: calc(70 * (100vw / 750)) 0 0 calc(0 * (100vw / 750));
    text-align: right;
  }
  
  .flexArea04 .model_box16 {
    width: calc(520*(100vw / 750));
    margin-top: calc(57*(100vw / 750));
    margin-left: auto;
    display: block;
  }
  
  .flexArea04 .model_box16 .model_img {
    width: calc(520 * (100vw / 750));
  }
  
  .flexArea04 .model_box16 .credit {
    margin: calc(43 * (100vw / 750)) 0 0 0;
    color: #fff;
  }
  
  .flexArea04 .model_box16 .credit li:nth-of-type(2) {
    margin-top: calc(12 * (100vw / 750));
    letter-spacing: -0.01em;
  }
  
  .flexArea04 .model_box16 .credit li:nth-of-type(3) {
    margin-top: calc(15 * (100vw / 750));
    letter-spacing: -0.01em;
  }
  
  .flexArea04 .model_box16 .credit li:nth-of-type(4) {
    margin-top: calc(12 * (100vw / 750));
    letter-spacing: -0.01em;
  }
  
  .model_box17 {
    width: calc(620 * (100vw / 750));
    margin: calc(139 * (100vw / 750)) auto 0;
  }
  
  .txt04 {
    width: calc(520 * (100vw / 750));
    margin: calc(72 * (100vw / 750)) auto 0;
  }
  
  .txt04 img {
    width: calc(520 * (100vw / 750));
    margin: 0 auto;
  }
  
  .section05::before {
    content: "";
    background: #333f50;
    display: block;
    width: 100%;
    height: calc(3185 * (100vw / 750));
    top: 0;
    right: 0rem;
    position: absolute;
    z-index: -1;
  }
}


/*--------------------------------
  スライド ドット調整
--------------------------------*/

.flexArea04 .model_box15 ul.slick-dots {
  position: relative;
  margin: 0;
  bottom: 3rem;
  padding-right: 2rem;
  right: 0;
  z-index: 10001;
  justify-content: end;
}

.flexArea04 .model_box15 ul.slick-dots button {
  width: 1rem;
  height: 1rem;
  opacity: 1 !important;
}

.flexArea04 .model_box15 ul.slick-dots li:nth-of-type(1) {
  margin-right: 2rem;
}

@media screen and (max-width: 767px) {
  .flexArea04 .model_box15 ul.slick-dots {
    position: relative;
    margin: 0;
    bottom: calc(32*(100vw / 750));
    padding-right: calc(20*(100vw / 750));
    right: 0;
    z-index: 10001;
    justify-content: end;
  }
  
  .flexArea04 .model_box15 ul.slick-dots button {
    width: calc(10 * (100vw / 750));
    height: calc(10 * (100vw / 750));
    opacity: 1 !important;
  }

  .flexArea04 .model_box15 ul.slick-dots li:nth-of-type(1) {
    margin-right: calc(20 * (100vw / 750));
  }
}


/*--------------------------------
  AllBtnWrap
--------------------------------*/
.AllBtnWrap {
  margin: 11rem auto 26rem;
}

.allBtnCont {
  font-family: "Times New Roman", Times, serif;
  font-style: normal;
  font-size: 2.4rem;
  line-height: 1;
  letter-spacing: 0.03em;
  text-align: center;
  word-spacing: 0.04rem;
  margin-left: 0.2rem;
}

.allBtnCont a {
  font-weight: 400;
}

.btnLiner {
  margin: 1.6rem auto 0;
  background-color: #000;
  height: 1px;
}

.itemBtn {
  opacity: 0;
  transition: 1s;
}

.liner.done+.itemBtn {
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .AllBtnWrap {
    margin: calc(168 * (100vw / 750)) auto calc(203 * (100vw / 750));
  }
  
  .allBtnCont {
    font-family: "Times New Roman", Times, serif;
    font-style: normal;
    font-size: calc(28 * (100vw / 750));
    line-height: 1;
    letter-spacing: 0.03em;
    text-align: center;
    word-spacing: 0.04rem;
    margin-left: calc(2 * (100vw / 750));
  }
  
  .allBtnCont a {
    font-weight: 400;
  }
  
  .btnLiner {
    margin: calc(12 * (100vw / 750)) auto 0;
    background-color: #000;
    height: 1px;
  }
  
  .itemBtn {
    opacity: 0;
    transition: 1s;
  }
  
  .liner.done+.itemBtn {
    opacity: 1;
  }
}

/*================ Liner ================*/
.liner {
  width: 0%;
  transition: all 1s ease;
}

@media only screen and (max-width: 560px) {
  .btnLiner {
    width: calc(150 * (100vw / 750));
    transform: scale(0, 1);
  }

  .active {
    transform: scale(1, 1);
  }
}

@media only screen and (min-width: 768px) {
  .active {
    width: 13rem;
  }
}

@media only screen and (min-width: 768px) {
  .content_inner {
    width: 210rem;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 767px){
  .active {
    width: calc(150 * (100vw / 750));
  }
}




/*--------------------------------
  fadeIn
--------------------------------*/
.fadeup {
  opacity: 0;
  transition: opacity 1.2s, transform 1.2s;
  transform: translateY(30px);
}

.fadeup.fade-active {
  opacity: 1;
  transform: translateY(0rem);
}

.fadein {
  opacity: 0;
  transition: opacity 1.2s;
}

.fadein.fade-active {
  opacity: 1;
}

.fadein-load {
  opacity: 0;
  transition: opacity, 1s;
}

.fadein-load.fade-active {
  opacity: 1;
}

/*----------------------------
js-scroll_up ｜下から上へ出現
----------------------------*/
.js-scroll_up {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  opacity: 0;
}
.js-scroll_up.on {
  transform: translateY(0);
  opacity: 1.0;
}

/*----------------------------
js-scroll_left ｜左から出現
----------------------------*/
.js-scroll_left {
  -webkit-transition: 0.8s ease-in-out;
  -moz-transition: 0.8s ease-in-out;
  -o-transition: 0.8s ease-in-out;
  transition: 0.8s ease-in-out;
  transform: translateX(-30px);
  opacity: 0;
  filter: alpha(opacity=0);
  -moz-opacity: 0;
}

/*----------------------------
js-scroll_right ｜右から出現
----------------------------*/
.js-scroll_right {
  -webkit-transition: 0.8s ease-in-out;
  -moz-transition: 0.8s ease-in-out;
  -o-transition: 0.8s ease-in-out;
  transition: 0.8s ease-in-out;
  transform: translateX(30px);
  opacity: 0;
  filter: alpha(opacity=0);
  -moz-opacity: 0;
}
@media only screen and (min-width: 768px) {
  #MR240520influence .js-scroll_right-pc{
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
  }
  #MR240520influence .js-scroll_right-pc.js-scrollIn{
    transform: translateX(0);
    opacity: 1.0;
  }
}


@media only screen and (max-width: 767px) {
  .js-scroll_right-sp {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
  }
  .js-scroll_left-sp {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(-30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
  }
}


.js-scroll_left.on,
.js-scroll_right.on,
.js-scroll_left-sp.on,
.js-scroll_right-sp.on {
  opacity: 1.0;
  filter: alpha(opacity=100);
  -moz-opacity: 1.0;
  transform: translateX(0);
}

/*----------------------------
  slick
----------------------------*/

.section01_slide01,
.section03_slide01,
.section04_slide01,
.section05_slide01 {
  margin: 0 auto;
}

.section01_slide01 ul,
.section03_slide01 ul,
.section04_slide01 ul,
.section05_slide01 ul{
  position: relative;
  margin: 0;
  bottom: 3rem;
  padding-left: 1rem;
  left: 0;
  z-index: 10001;
  justify-content: flex-start;
}

.section01_slide01 ul.slick-dots button,
.section03_slide01 ul.slick-dots button,
.section04_slide01 ul.slick-dots button,
.section05_slide01 ul.slick-dots button{
  width: 1rem;
  height: 1rem;
  opacity: 1 !important;
}

.section01_slide01 ul.slick-dots li:nth-of-type(1),
.section03_slide01 ul.slick-dots li:nth-of-type(1),
.section04_slide01 ul.slick-dots li:nth-of-type(1),
.section05_slide01 ul.slick-dots li:nth-of-type(1){
  margin: 0 2rem 0 1rem;
  opacity: 1 !important;
}
.slick-dots li{
  margin: 0;
  opacity: 1 !important;
}

/*----------------------------
  slick
----------------------------*/
@media screen and (max-width: 767px) {
  .section01_slide01 ul,
  .section04_slide01 ul,
  .section05_slide01 ul{
    bottom: calc(30*(100vw / 750));
    padding-left: calc(10*(100vw / 750));
  }
  .section03_slide01 ul{
    padding-left: calc(20*(100vw / 750));
    bottom: calc(30*(100vw / 750));
  }
  .section01_slide01 ul.slick-dots button,
  .section03_slide01 ul.slick-dots button,
  .section04_slide01 ul.slick-dots button,
  .section05_slide01 ul.slick-dots button{
    width: calc(10 * (100vw/750));
    height: calc(10 * (100vw/750));
    /* animation: stretch-left-to-right 0.6s both; */
  }
  .section01_slide01 ul.slick-dots li:nth-of-type(1),
  .section03_slide01 ul.slick-dots li:nth-of-type(1),
  .section04_slide01 ul.slick-dots li:nth-of-type(1),
  .section05_slide01 ul.slick-dots li:nth-of-type(1){
    margin: 0 calc(20* (100vw / 750)) 0 calc(10* (100vw / 750));
  }
}



/*----------------------------
先頭から順に表示するアニメーション
----------------------------*/
.slide-in {
  overflow: hidden;
  display: inline-block;
}

.slide-in_inner {
  display: inline-block;
}

/*左右のアニメーション*/
.leftAnime {
  opacity: 0; /*事前に透過0にして消しておく*/
}

.slideAnimeLeftRight {
  -webkit-animation-name: slideTextX100;
          animation-name: slideTextX100;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}

@-webkit-keyframes slideTextX100 {
  from {
    transform: translateX(-100%); /*要素を左の枠外に移動*/
    opacity: 0;
  }
  to {
    transform: translateX(0); /*要素を元の位置に移動*/
    opacity: 1;
  }
}

@keyframes slideTextX100 {
  from {
    transform: translateX(-100%); /*要素を左の枠外に移動*/
    opacity: 0;
  }
  to {
    transform: translateX(0); /*要素を元の位置に移動*/
    opacity: 1;
  }
}
.slideAnimeRightLeft {
  -webkit-animation-name: slideTextX-100;
          animation-name: slideTextX-100;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}

@-webkit-keyframes slideTextX-100 {
  from {
    transform: translateX(100%); /*要素を右の枠外に移動*/
    opacity: 0;
  }
  to {
    transform: translateX(0); /*要素を元の位置に移動*/
    opacity: 1;
  }
}

@keyframes slideTextX-100 {
  from {
    transform: translateX(100%); /*要素を右の枠外に移動*/
    opacity: 0;
  }
  to {
    transform: translateX(0); /*要素を元の位置に移動*/
    opacity: 1;
  }
}



/* 上下のアニメーション*/
.downAnime{
  opacity: 0;/* 事前に透過0 にして消しておく*/
}

.slideAnimeDownUp {
  animation-name:slideTextY100;
  animation-duration:0.8s;
  animation-fill-mode:forwards;
  opacity: 0;
}

@keyframes slideTextY100 {
  from {
      transform: translateY(100%);/* 要素を上の枠外に移動*/
      opacity: 0;
  }
  to {
      transform: translateY(0);/* 要素を元の位置に移動*/
      opacity: 1;
  }
}

.slideAnimeUpDown {
  animation-name:slideTextY-100;
  animation-duration:0.8s;
  animation-fill-mode:forwards;
  opacity: 0;
}

@keyframes slideTextY-100 {
  from {
      transform: translateY(-100%);/* 要素を下の枠外に移動*/
      opacity: 0;
  }
  to {
      transform: translateY(0);/* 要素を元の位置に移動*/
      opacity: 1;
  }
}