@charset "utf-8";

/*--------------------------------------------
エージェント別
--------------------------------------------*/
/********* pc *********/
.u-pc {
  display: block !important;
}

.u-pc__flex {
  display: flex !important;
}

.u-pc__inlineblock {
  display: inline-block !important;
}

.u-pc__inline {
  display: inline !important;
}

.u-sp,
.u-sp__flex,
.u-sp__inlineblock,
.u-sp__inline {
  display: none !important;
}

/********* sp *********/
@media only screen and (max-width: 750px) {
  .u-pc,
  .u-pc__flex,
  .u-pc__inlineblock,
  .u-pc__inline {
    display: none !important;
  }

  .u-sp {
    display: block !important;
  }

  .u-sp__flex {
    display: block !important;
  }

  .u-sp__inlineblock {
    display: inline-block !important;
  }

  .u-sp__inline {
    display: inline !important;
  }
}


/*--------------------------------------------
英文フォント
--------------------------------------------*/
/* DM Sans */
.u-fs_dmsans {
  font-family: 'DM Sans', sans-serif;
}
.u-fs_dmsans.-fw_bold {
  font-weight: 700;
}
.u-fs_dmsans.-fw_medium {
  font-weight: 500;
}

.u-fs_dmsans.-fw_regular {
  font-weight: 400;
}

/* Sansita */
.u-fs_sansita {
  font-family: 'Sansita', sans-serif;
}
.u-fs_sansita.-fw_black {
  font-weight: 900;
}


/*--------------------------------------------
文字寄せ
--------------------------------------------*/
.u-txt_c {
  text-align: center;
}

.u-txt_l {
  text-align: left;
}

.u-txt_r {
  text-align: right;
}


/*--------------------------------------------
テキスト両端揃え
--------------------------------------------*/
.u-justify {
  text-align: justify;
  text-justify: inter-ideograph; /* IE用 */
}


/*--------------------------------------------
オンマウスで半透明
--------------------------------------------*/
.u-hover {
  transition: 0.2s ease-in-out;
}

.u-hover:hover {
  opacity: 0.7;
}


/*--------------------------------------------
下からフェードイン
--------------------------------------------*/
/* スクロールトリガー */
.u-fadein {
	opacity: 0;
	transform: translate(0, 2vw);
	transition: all 1s ease-out;
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  .u-fadein {
    opacity: 0;
    transform: translate(0, 5vw);
    transition: all 1s ease-out;
  }
}

/* ページ読み込み時CSSのみの動作 */
.u-fadein_02 {
	animation-name: fadeIn_02;
  animation-duration: 1s;
  animation-timing-function: ease-out;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: both;
}
@keyframes fadeIn_02 {
  from {
    opacity: 0;
    transform: translateY(2vw);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  @keyframes fadeIn_02 {
    from {
      opacity: 0;
      transform: translateY(5vw);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
}

/* /recruit/about/keywords/専用 */
.u-fadein_03 {
	animation-name: fadeIn_03;
  animation-duration: 1.5s;
  animation-timing-function: ease-out;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: normal;
  animation-fill-mode: both;
}
@keyframes fadeIn_03 {
  from {
    opacity: 0;
    transform: translateY(2vw);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/********* sp *********/
@media only screen and (max-width: 750px) {
  @keyframes fadeIn_03 {
    from {
      opacity: 0;
      transform: translateY(5vw);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
}


/*--------------------------------------------
タイトル下から徐々にアニメーション
--------------------------------------------*/
.u-ttlani {
  display: inline-block;
  overflow: hidden;
  padding-bottom: 0.16em;
  position: relative;
  top: 0.16em;
}

.u-ttlani.-interview {
  margin-top: -0.3em;
}

.u-ttlani span {
  display: inline-block;
  transform: translate(0, 1.16em) !important;
}

.u-ttlani span.u-ttlani_in {
	opacity: 1 !important;
  transform: translate(0, 0) !important;
	transition: all 1s ease-in-out !important;
}