@charset "UTF-8";
/* ----------------------------------------------------------------
    Pseudo element (Block)
----------------------------------------------------------------- */
/* ----------------------------------------------------------------
    MV
----------------------------------------------------------------- */
.mv {
  position: relative; /*h1の中央寄せ配置の起点とするためのrelative*/
  height: 100vh; /*高さを全画面にあわせる*/
}
.mv-inner {
  position: fixed;
  z-index: -1; /*最背面に設定*/
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .mv {
    height: auto; /*高さを全画面にあわせる*/
  }
  .mv-inner {
    position: static;
  }
}

#video {
  /*天地中央配置*/
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  /*縦横幅指定*/
  width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
  height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
  min-height: 100%;
  min-width: 100%;
}
@media only screen and (max-width: 767px) {
  #video {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    width: 100%;
  }
}

/* ----------------------------------------------------------------
    ABOUT
----------------------------------------------------------------- */
.t-about:first-child {
  margin-top: 0;
}

/* ----------------------------------------------------------------
    h2
----------------------------------------------------------------- */
.t-hdg-l2 {
  font-size: 4rem;
  font-weight: 700;
  color: #157fc8;
}
@media only screen and (max-width: 767px) {
  .t-hdg-l2 {
    font-size: 2.8rem;
  }
}

/* ----------------------------------------------------------------
    t-link
----------------------------------------------------------------- */
.t-link {
  margin-top: 100px;
}
.t-link > *:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .t-link {
    margin-top: 20px;
  }
}

.panellink {
  margin-top: 180px;
}
.panellink_inner {
  display: flex;
}
.panellink_desc {
  margin-right: 30px;
}
.panellink_desc > *:first-child {
  margin-top: 0;
}
.panellink_title {
  font-size: 2.6rem;
}
.panellink_img {
  flex-shrink: 0;
  max-width: 400px;
}
.panellink_btn {
  text-align: center;
}
.panellink_btn > a {
  display: inline-block;
  padding: 10px 40px;
  border: solid 1px #fff;
  border-radius: 50px;
  background: #157fc8;
  color: #fff;
  font-size: 2.2rem;
  text-decoration: none;
  transition: 0.2s ease-in-out;
}
.panellink_btn > a:hover, .panellink_btn > a:active, .panellink_btn > a:focus {
  background: #fff;
  border-color: #157fc8;
  color: #157fc8;
}
@media only screen and (max-width: 767px) {
  .panellink {
    margin-top: 60px;
  }
  .panellink_inner {
    flex-direction: column-reverse;
  }
  .panellink_desc {
    margin: 0;
  }
  .panellink_img {
    margin-top: 20px;
  }
  .panellink_btn > a {
    width: 100%;
    padding: 10px 40px;
    font-size: 2rem;
  }
}

/* ----------------------------------------------------------------
    t-intro
----------------------------------------------------------------- */
.t-intro_wrap {
  max-width: 1000px;
  margin: 0 auto;
}
.t-intro_box {
  margin-top: 70px;
  padding: 40px 70px;
  background: #fff;
}
.t-intro_box > *:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .t-intro_box {
    margin-top: 46px;
    padding: 8vw 10vw;
  }
}
@media only screen and (max-width: 767px) {
  .t-intro {
    padding: 60px 20px 0;
  }
}