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

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

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

/* fv__parts */
#move-01 {
  margin-top: 30px;
  font-weight: 700;
  font-size: calc(1.4rem + 2.35294vw - 7.52941px);
  line-height: 1.75;
  font-family: 'Noto Serif JP', sans-serif;
  letter-spacing: 0;
  opacity: 0;
}

#move-02 {
  margin-top: 30px;
  padding-top: 0.5em;
  font-weight: 700;
  font-size: calc(2.4rem + 3.52941vw - 11.29412px);
  font-family: 'Noto Serif JP', sans-serif;
  opacity: 0;
}

.move-back {
  -webkit-transition: ease-in 1s;
  position: absolute;
  right: 0;
  left: 0;
  color: #284c8d;
  text-align: center;
  transition: ease-in 1s;
}

.scroll__wrap {
  opacity: 0;
}

.frist-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  content: "";
}
.frist-bg__inner {
  position: relative;
  width: 100%;
  height: 100%;
  content: "";
}

.frist-bg__block01 {
  -webkit-transform-origin: top right;
  -webkit-transition: 0.3s ease all;
  -webkit-transform: skew(-25deg);
  position: absolute;
  top: 0;
  right: 55%;
  width: 100vw;
  height: 0;
          transform: skew(-25deg);
          transform-origin: top right;
  background: rgba(40, 76, 141, .36);
  content: "";
  transition: 0.3s ease all;
}
.frist-bg__block01.active {
  height: 100%;
}

.frist-bg__block02 {
  -webkit-transform-origin: top left;
  -webkit-transition: 0.3s ease all;
  -webkit-transform: skew(-25deg);
  position: absolute;
  top: 0;
  left: 45%;
  width: 40%;
  height: 100%;
  overflow: hidden;
          transform: skew(-25deg);
          transform-origin: top left;
  content: "";
  transition: 0.3s ease all;
}
.frist-bg__block02__inner {
  position: relative;
  width: 100%;
  height: 100%;
  content: "";
}
.frist-bg__block02__inner__block {
  -webkit-transition: 0.3s ease all;
  -webkit-transform-origin: bottom left;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0;
          transform-origin: bottom left;
  background: rgba(144, 207, 230, .36);
  content: "";
  transition: 0.3s ease all;
}
.frist-bg__block02.active .frist-bg__block02__inner__block {
  height: 100%;
}

.frist-bg__block03 {
  -webkit-transform-origin: top left;
  -webkit-transition: 0.3s ease all;
  -webkit-transform: skew(-25deg);
  position: absolute;
  top: 0;
  left: 85%;
  width: 100vw;
  height: 0;
          transform: skew(-25deg);
          transform-origin: top left;
  background: rgba(40, 76, 141, .36);
  content: "";
  transition: 0.3s ease all;
}
.frist-bg__block03.active {
  height: 100%;
}
@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%;
  }
  .frist-bg__block01 {
    right: 60%;
  }
  .frist-bg__block02 {
    left: 40%;
  }
  .frist-bg__block03 {
    left: 80%;
  }
}
@media print, screen and (min-width: 1257px) {
  /*====================================================================/
  	/*-------------------PCスタイル-------------------
  	/====================================================================*/
  html {
    width: 100%;
  }
  #move-01 {
    font-size: 3.2rem;
  }
  #move-02 {
    font-size: 4.8rem;
  }
  .move-back {
    top: calc(50% - 13rem);
  }
}
@media print, screen and (min-width: 1920px) {
  /*====================================================================/
  	/*-------------------full PCスタイル-------------------
  	/====================================================================*/
  html {
    width: 100%;
  }
}
@media screen and (max-width: 1256px) {
  /*====================================================================/
  	/*------------------PC以下---------
  	/====================================================================*/
  html {
    width: 100%;
  }
  .move-back {
    top: calc(50% - 11rem);
  }
}
@media screen and (max-width: 976px) {
  /*====================================================================/
  	/*------------------スマホタブレット共通スタイル---------
  	/====================================================================*/
  html {
    width: 100%;
  }
}
@media screen and (max-width: 560px) {
  /*====================================================================/
  	/*------------------スマホのみスタイル----------------
  	/====================================================================*/
  html {
    width: 100%;
  }
  .move-back {
    top: calc(50% - 8rem);
  }
}
@media screen and (max-width: 375px) {
  /*====================================================================/
  	/*------------------iPhone 以下----------------
  	/====================================================================*/
  html {
    width: 100%;
  }
}
/*# sourceMappingURL=map/top-animation.css.map */
