@charset "UTF-8";
/*	flex
---------------------------------------------------*/
/* ofi */
/* CSS Document */
/* ↓pcの場合のみ loop設定しているときのswiperの箇所のズレを修正 */
/*.works-list a {
    padding-bottom: 3rem !important;
 }

/*----------------------------------------------
 top amimation用に
 ----------------------------------------------*/
#top {
  -webkit-transition: ease-in 1s;
  background-color: #e9eef5;
  transition: ease-in 1s;
}

/* sns */
.sns-list__side {
  opacity: 0;
}

.header {
  opacity: 0;
}

/* fv__parts */
#move-01 {
  margin-top: 30px;
  padding-bottom: 8px;
  padding-bottom: 0.5rem;
  font-weight: 700;
  font-size: calc(1.8rem + 2.94118vw - 9.41176px);
  font-family: 'Noto Sans JP', sans-serif;
  letter-spacing: 0.8px;
  letter-spacing: 0.05rem;
  opacity: 0;
}

#move-02 {
  margin-top: 30px;
  font-weight: 800;
  font-size: calc(2rem + 4.41176vw - 14.11765px);
  font-family: 'Noto Sans JP', sans-serif;
  letter-spacing: 0.05em;
  opacity: 0;
}

.move-wrap {
  -webkit-transition: all 1s;
  display: inline-block;
  position: relative;
  padding: 2em 4%;
  transition: all 1s;
}
.move-wrap::before, .move-wrap::after {
  -webkit-transition: 0.3s ease all;
  display: block;
  z-index: 10;
  position: absolute;
  width: 0px;
  height: 3px;
  background-color: #140fa2;
  content: "";
  transition: 0.3s ease all;
}
.move-wrap::before {
  right: 0;
  bottom: 0;
}
.move-wrap::after {
  top: 0;
  left: 0;
}
.move-wrap__inner::before, .move-wrap__inner::after {
  -webkit-transition: 0.3s ease all;
  display: block;
  z-index: 10;
  position: absolute;
  width: 3px;
  height: 0px;
  background-color: #140fa2;
  content: "";
  transition: 0.3s ease all;
}
.move-wrap__inner::before {
  bottom: 0;
  left: 0;
}
.move-wrap__inner::after {
  top: 0;
  right: 0;
}
.move-wrap.active::before, .move-wrap.active::after {
  width: 100%;
}
.move-wrap.active::before {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.move-wrap.active::after {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}
.move-wrap.active .move-wrap__inner::before, .move-wrap.active .move-wrap__inner::after {
  height: 100%;
}
.move-wrap.active .move-wrap__inner::before {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.move-wrap.active .move-wrap__inner::after {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}

.move-back {
  -webkit-transition: ease-in 0.3s;
  position: absolute;
  right: 0;
  left: 0;
  color: #140fa2;
  font-family: Arial "Helvetica Neue", "Noto Sans JP", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
  text-align: left;
  transition: ease-in 0.3s;
}

.scroll__wrap {
  opacity: 0;
}

@media print, screen and (min-width: 376px) {
  /*====================================================================/
  	/*------------------iPhone 以上----------------
  	/====================================================================*/
  html {
    width: 100%;
  }
}

@media print, screen and (min-width: 561px) {
  /*====================================================================/
  	/*------------------タブレットスタイル----------------
  	/====================================================================*/
  html {
    width: 100%;
  }
}

@media print, screen and (min-width: 977px) {
  /*====================================================================/
  	/*-------------------小さいPCスタイル----------------
  	/====================================================================*/
  html {
    width: 100%;
  }
}

@media print, screen and (min-width: 1257px) {
  /*====================================================================/
  	/*-------------------PCスタイル-------------------
  	/====================================================================*/
  html {
    width: 100%;
  }
  #move-01 {
    font-size: 4.5rem;
  }
  #move-02 {
    font-size: 6.5rem;
  }
  .move-wrap {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: 2.8em 7rem 2.8em 6.8rem;
  }
  .move-back {
    top: calc(50% - 17rem);
    left: 1rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

@media print, screen and (min-width: 1920px) {
  /*====================================================================/
  	/*-------------------full PCスタイル-------------------
  	/====================================================================*/
  html {
    width: 100%;
  }
}

@media screen and (max-width: 1256px) {
  /*====================================================================/
  	/*------------------PC以下---------
  	/====================================================================*/
  html {
    width: 100%;
  }
  .move-wrap {
    padding: 2.8em 6rem 2.8em 5.8rem;
  }
  .move-back {
    top: calc(50% - 11rem);
    left: 5%;
  }
}

@media screen and (max-width: 976px) {
  /*====================================================================/
  	/*------------------スマホタブレット共通スタイル---------
  	/====================================================================*/
  html {
    width: 100%;
  }
  .move-wrap {
    padding: 1.8em 4rem 1.8em 3.8rem;
  }
}

@media screen and (max-width: 560px) {
  /*====================================================================/
  	/*------------------スマホのみスタイル----------------
  	/====================================================================*/
  html {
    width: 100%;
  }
  .move-wrap {
    padding: 1.3em 3rem 1.5em 3rem;
  }
  .move-back {
    top: calc(50% - 11rem);
    left: 0;
    text-align: center;
  }
}

@media screen and (max-width: 375px) {
  /*====================================================================/
  	/*------------------iPhone 以下----------------
  	/====================================================================*/
  html {
    width: 100%;
  }
}
/*# sourceMappingURL=map/top-animation.css.map */
