@charset "UTF-8";
body {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "Yu Gothic", Verdana, Meiryo, sans-serif; }

@media screen and (max-width: 768px) {
  .pcOnly {
    display: none !important; } }

@media screen and (min-width: 768px) {
  .spOnly {
    display: none !important; } }

.c-headding {
  font-family: "Rubik", sans-serif;
  font-size: 24px;
  font-weight: 400;
  letter-spacing: .19rem;
  color: #0a2d8c;
  line-height: 2.4rem; }
  .c-headding_sub {
    font-size: 14px;
    font-weight: 400;
    line-height: 2.4rem;
    margin: 8px 0 24px;
    letter-spacing: .19rem; }

.c-text {
  line-height: 2.8rem;
  letter-spacing: .07rem; }

.c-link {
  color: #0a2d8c;
  text-decoration: underline;
  cursor: pointer; }

.c-tb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%; }
  @media screen and (max-width: 768px) {
    .c-tb {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      border: 1px solid #dee2e7;
      background-color: #fffef9; } }
  .c-tb_title, .c-tb_text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 90px;
    line-height: 2.8rem;
    padding: 8px 16px; }
  .c-tb_title {
    width: 20%;
    border-bottom: 1px solid #dee2e7;
    letter-spacing: 1.4rem;
    font-weight: bold;
    background-color: #dee2e7;
    margin: 0 4px 4px 0; }
    @media screen and (max-width: 768px) {
      .c-tb_title {
        width: 100%;
        min-height: auto; } }
  .c-tb_text {
    width: calc(80% - 4px);
    border: 1px solid #dee2e7;
    letter-spacing: .07rem;
    line-height: 2.8rem;
    padding: 8px 16px;
    margin-bottom: 4px;
    background-color: #fffef9; }
    @media screen and (max-width: 768px) {
      .c-tb_text {
        width: 100%;
        min-height: auto;
        border: none; } }

/*========= 上部固定させるためのCSS ===============*/
#header {
  height: 70px;
  /*高さ指定*/
  width: 100%;
  /*横幅指定*/
  /*以下はレイアウトのためのCSS*/
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: right;
      -ms-flex-pack: right;
          justify-content: right;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  text-align: center;
  padding: 0px; }
  #header.fixed {
    /*JSを使いfixedクラスが付与された際の設定*/
    position: fixed;
    /*fixedを設定して固定*/
    z-index: 999;
    /*最前面へ*/
    top: 0;
    /*位置指定*/
    left: 0;
    /*位置指定*/ }

nav ul {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  nav ul li a {
    text-decoration: none;
    color: #a5a1a1;
    padding: 10px; }

section {
  padding: 150px 0; }

/* div table要素*/
.header_stroing {
  margin: 0 50 0 0; }

.company_table_line {
  display: table;
  width: 500px; }

.company_table_block {
  display: table-cell;
  width: 300px;
  border-width: 2px;
  border-style: solid;
  border-color: #fff; }

.company_table_key_cell {
  background: #EEEEEE;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-width: 2px;
  border-style: solid;
  border-color: #fff;
  vertical-align: middle;
  width: 200px; }

#footer {
  width: 100%;
  height: 50px;
  background-color: #b0d8e7;
  color: black;
  text-align: center; }

.footer-text {
  color: #fff; }

body {
  overflow-x: hidden;
  font-size: 1.6rem; }
  @media screen and (max-width: 768px) {
    body {
      font-size: 1.4rem; } }
  body:has(header.menu-open) {
    overflow: hidden; }

header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #fff;
  height: 50px;
  padding: 0 16px;
  z-index: 999;
  position: relative;
  -webkit-transition: top 0.3s ease-in-out, background-color 0.3s ease-in-out;
  transition: top 0.3s ease-in-out, background-color 0.3s ease-in-out;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  will-change: transform; }
  header.header-fixed {
    position: fixed;
    top: -50px;
    left: 0;
    -webkit-backdrop-filter: blur(12px);
            backdrop-filter: blur(12px);
    color: #222;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    height: 50px;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.5); }
    header.header-fixed + main {
      margin-top: 50px; }
  header.is-scrollTop {
    top: 0; }

.header_logo {
  color: #fff;
  font-size: 28px;
  font-weight: bold;
  z-index: 999; }
  .menu-open .header_logo {
    color: #222; }
  .header-fixed .header_logo {
    color: #222; }

.menu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px; }
  @media screen and (max-width: 768px) {
    .menu_list {
      width: 100vw;
      height: 100vh;
      min-width: 320px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      position: fixed;
      top: 60px;
      left: 0;
      -webkit-transition: opacity ease-out 0.3s;
      transition: opacity ease-out 0.3s;
      opacity: 0;
      visibility: hidden;
      overflow-y: scroll;
      padding: 0 50px 100px; }
      .menu-open .menu_list {
        opacity: 1;
        visibility: visible;
        gap: 10px;
        margin-top: 30px; } }

.menu_list_item {
  font-size: 1.2rem;
  display: block;
  color: #222;
  letter-spacing: 0.24rem; }
  @media screen and (max-width: 768px) {
    .menu_list_item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      padding: 0.5em 0;
      padding-bottom: 10px;
      width: 100%;
      max-width: 250px;
      margin: 0 auto; } }

.menu_button {
  display: none;
  height: 100%;
  width: 30px;
  cursor: pointer;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  width: 26px;
  height: 20px;
  float: right;
  margin: 10px 0;
  z-index: 999; }
  @media screen and (max-width: 768px) {
    .menu_button {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }

.menu_button_item, .menu_button_item::before, .menu_button_item::after {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 3px;
  top: 8px;
  -webkit-transition: -webkit-transform 400ms ease-out;
  transition: -webkit-transform 400ms ease-out;
  transition: transform 400ms ease-out;
  transition: transform 400ms ease-out, -webkit-transform 400ms ease-out; }
  .menu-open .menu_button_item, .menu-open .menu_button_item::before, .menu-open .menu_button_item::after {
    background-color: #222; }
  .header-fixed .menu_button_item, .header-fixed .menu_button_item::before, .header-fixed .menu_button_item::after {
    background-color: #222; }

.menu_button_item:before {
  content: '';
  top: -8px; }

.menu_button_item:after {
  content: ''; }

.menu-open .menu_button_item {
  background: rgba(255, 255, 255, 0); }
  .menu-open .menu_button_item:before {
    -webkit-transform: translateY(8px) rotate(-45deg);
            transform: translateY(8px) rotate(-45deg); }
  .menu-open .menu_button_item:after {
    -webkit-transform: translateY(-8px) rotate(45deg);
            transform: translateY(-8px) rotate(45deg); }

.menu_list_link {
  font-family: "Rubik", sans-serif;
  margin: 10px 8px 0;
  padding-bottom: 10px;
  display: block;
  text-align: center;
  cursor: pointer;
  position: relative;
  letter-spacing: 0.1rem;
  color: #fff; }
  @media screen and (max-width: 768px) {
    .menu_list_link {
      padding: 15px 0;
      font-size: 1.6rem;
      font-weight: bold; } }
  .menu_list_link:after {
    content: '';
    width: 100%;
    height: 3px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0 auto;
    position: absolute;
    background: #fff;
    -webkit-transform-origin: center top;
            transform-origin: center top;
    -webkit-transition: -webkit-transform .3s;
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s;
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1); }
  .menu_list_link:hover:after {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); }
  .header-fixed .menu_list_link,
  .menu-open .menu_list_link {
    color: #0a2d8c; }
    .header-fixed .menu_list_link:after,
    .menu-open .menu_list_link:after {
      background: #0a2d8c; }

.menu_overlay {
  min-width: 320px;
  position: absolute;
  top: 0;
  right: 0;
  background: #fff;
  border-radius: 50%;
  -webkit-transition: ease-out 0.3s;
  transition: ease-out 0.3s;
  -webkit-transform: scale3d(0, 0, 0);
          transform: scale3d(0, 0, 0);
  width: 2000px;
  height: 2000px;
  margin-top: -1000px;
  margin-right: -1000px; }
  .menu-open .menu_overlay {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); }

main {
  padding-bottom: 150px;
  position: relative;
  z-index: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, whitesmoke), to(white));
  background-image: linear-gradient(180deg, whitesmoke 50%, white); }

section {
  position: relative;
  padding: 0;
  z-index: -1;
  scroll-margin-top: 50px; }

.section_inner {
  padding: 30px 32px; }
  @media screen and (max-width: 768px) {
    .section_inner {
      padding: 30px 16px; } }

.section-article {
  max-width: 1024px;
  margin: 0 auto; }

.about {
  height: calc(100vh - 50px);
  margin-bottom: 30px; }
  .about_section {
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: calc(100vh - 50px); }
  .about_mainvis {
    width: 100vw;
    min-height: 100vh;
    position: relative;
    top: -25px;
    overflow: hidden; }
    .about_mainvis_image {
      width: 100vw;
      height: 100vh;
      -o-object-fit: cover;
         object-fit: cover;
      -o-object-position: center;
         object-position: center;
      -webkit-transition: -webkit-transform 0.3s ease;
      transition: -webkit-transform 0.3s ease;
      transition: transform 0.3s ease;
      transition: transform 0.3s ease, -webkit-transform 0.3s ease; }
      @media screen and (max-width: 768px) {
        .about_mainvis_image {
          -o-object-position: right -250px top 0;
             object-position: right -250px top 0; } }
  .about_message {
    position: absolute;
    display: inline-block;
    padding: 0 16px; }
  .about_lead {
    font-size: 2.5rem;
    font-weight: 500;
    line-height: 4.0rem;
    letter-spacing: 1rem;
    color: #fff; }
    @media screen and (max-width: 768px) {
      .about_lead {
        font-size: 2.2rem;
        line-height: 3.8rem; } }
  .about_text {
    font-size: 1.4rem;
    line-height: 3.0rem;
    padding-top: 10px;
    color: #fff;
    padding-right: 20px; }
    @media screen and (max-width: 768px) {
      .about_text {
        font-size: 1.2rem;
        line-height: 2.4rem;
        padding-top: 16px; } }
    .about_text:first-of-type {
      padding-top: 40px; }

.service_list,
.team_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 24px;
  max-width: 100%;
  margin: 0 auto; }
  .service_list:after,
  .team_list:after {
    content: "";
    display: block;
    width: calc((100% - 16px) / 2);
    height: 0; }
  .service_list_item,
  .team_list_item {
    max-width: 468px;
    min-height: 300px;
    margin: 0 auto;
    padding: 30px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: calc((100% - 24px) / 2);
    border-radius: 40px;
    -webkit-box-shadow: 5px 5px 7px #dfdfdf, -5px -5px 7px #ffffff;
            box-shadow: 5px 5px 7px #dfdfdf, -5px -5px 7px #ffffff; }
    @media screen and (max-width: 680px) {
      .service_list_item,
      .team_list_item {
        width: 100%; } }
    .service_list_item_title,
    .team_list_item_title {
      height: 66px;
      padding-left: 48px;
      padding-bottom: 10px;
      letter-spacing: 0.2rem;
      font-size: 1.8rem;
      font-weight: 600;
      line-height: 2.4rem;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      color: #222;
      margin: 0 24px;
      position: relative;
      gap: 0 4px; }
      @media screen and (max-width: 768px) {
        .service_list_item_title,
        .team_list_item_title {
          font-size: 1.6rem;
          line-height: 2.2rem; } }
      .service_list_item_title:before,
      .team_list_item_title:before {
        content: "";
        background-color: #0a2d8c;
        width: 100%;
        height: 3px;
        display: inline-block;
        position: absolute;
        bottom: 0;
        left: 0; }
      .service_list_item_title svg,
      .team_list_item_title svg {
        width: 32px;
        height: 32px;
        position: absolute;
        left: 4px; }
      .service_list_item_title small,
      .team_list_item_title small {
        font-size: 10px; }
    .service_list_item_text,
    .team_list_item_text {
      margin: 0 24px;
      padding: 16px;
      font-size: 1.4rem; }

.team_list {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  .team_list_item {
    max-width: inherit;
    min-height: inherit;
    width: 100%; }
    .team_list_item_title {
      padding-left: 16px; }

.contact_mail {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer; }
  .contact_mail:before {
    content: "";
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2218%22%20height%3D%2218%22%20viewBox%3D%220%200%2018%2018%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20clip-path%3D%22url(%23clip0_16_25)%22%3E%3Cpath%20d%3D%22M7.5%2010.5L15.75%202.25%22%20stroke%3D%22%23222222%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M15.7499%202.25L10.8749%2015.75C10.842%2015.8218%2010.7892%2015.8827%2010.7227%2015.9253C10.6562%2015.968%2010.5789%2015.9907%2010.4999%2015.9907C10.4209%2015.9907%2010.3436%2015.968%2010.2771%2015.9253C10.2107%2015.8827%2010.1578%2015.8218%2010.1249%2015.75L7.49993%2010.5L2.24993%207.875C2.17812%207.84209%202.11728%207.78926%202.07462%207.72279C2.03195%207.65631%202.00928%207.57899%202.00928%207.5C2.00928%207.42101%202.03195%207.34369%202.07462%207.27721C2.11728%207.21074%202.17812%207.15791%202.24993%207.125L15.7499%202.25Z%22%20stroke%3D%22%23222222%22%20stroke-width%3D%221%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22clip0_16_25%22%3E%3Crect%20width%3D%2218%22%20height%3D%2218%22%20fill%3D%22white%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E");
    width: 16px;
    height: 16px;
    margin-right: 6px; }

#footer.footer {
  height: auto;
  background-color: #dee2e7; }

.footer_inner {
  padding: 8px 0; }

.footer_copy {
  font-size: 10px;
  line-height: 1.2rem; }

.pagetop {
  opacity: 0;
  visibility: hidden;
  position: fixed;
  bottom: 30px;
  right: 16px;
  -webkit-transition: opacity 0.4s ease, visibility 0.4s ease;
  transition: opacity 0.4s ease, visibility 0.4s ease; }
  .pagetop.is-show {
    opacity: 1;
    visibility: visible; }
  .pagetop_inner {
    width: 50px;
    height: 50px; }
  .pagetop_btn {
    color: #222;
    background-color: rgba(255, 255, 255, 0.4);
    width: 100%;
    height: 100%;
    font-size: 2rem;
    display: inline-block;
    line-height: 44px;
    text-align: center;
    -webkit-backdrop-filter: blur(12px);
            backdrop-filter: blur(12px);
    border-radius: 50%;
    overflow: hidden; }
    .pagetop_btn_arrow {
      display: inline-block;
      vertical-align: middle;
      color: #222;
      line-height: 1;
      position: relative;
      width: .1em;
      height: 1em;
      background: currentColor; }
      .pagetop_btn_arrow:before {
        content: '';
        width: 0.45em;
        height: .45em;
        border: .1em solid currentColor;
        border-left: 0;
        border-bottom: 0;
        -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg);
        -webkit-transform-origin: top right;
                transform-origin: top right;
        position: absolute;
        top: -0.1em;
        right: 50%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box; }

.motion {
  display: inline-block;
  overflow: hidden;
  position: relative;
  opacity: 0; }
  .motion:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    background-color: #fff; }
  .motion.is-show {
    opacity: 1; }
    .motion.is-show:after {
      -webkit-animation: slide-In 0.5s 0s cubic-bezier(0.77, 0, 0.175, 1), slide-Out 0.5s 0.5s cubic-bezier(0.77, 0, 0.175, 1);
              animation: slide-In 0.5s 0s cubic-bezier(0.77, 0, 0.175, 1), slide-Out 0.5s 0.5s cubic-bezier(0.77, 0, 0.175, 1);
      -webkit-animation-fill-mode: both;
              animation-fill-mode: both; }
    .motion.is-show > * {
      -webkit-animation: fadeIn 0.1s 0.5s;
              animation: fadeIn 0.1s 0.5s;
      -webkit-animation-fill-mode: both;
              animation-fill-mode: both; }
  .motion.motion-bl:after {
    background-color: #222; }

.fade {
  opacity: 0; }
  .fade.is-show {
    -webkit-animation: fadeIn 0.5s 0.3s;
            animation: fadeIn 0.5s 0.3s;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both; }
  .fade-top.is-show {
    -webkit-animation: fadeIn 0.5s 0.8s;
            animation: fadeIn 0.5s 0.8s;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both; }

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes slide-In {
  0% {
    width: 0; }
  100% {
    width: 100%; } }

@keyframes slide-In {
  0% {
    width: 0; }
  100% {
    width: 100%; } }

@-webkit-keyframes slide-Out {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  100% {
    -webkit-transform: translateX(102%);
            transform: translateX(102%); } }

@keyframes slide-Out {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  100% {
    -webkit-transform: translateX(102%);
            transform: translateX(102%); } }

.scroll-down {
  position: absolute;
  right: 16px;
  bottom: 23vh;
  padding-left: 50px;
  z-index: 1;
  -webkit-transform: rotateZ(-90deg);
          transform: rotateZ(-90deg);
  -webkit-transform-origin: right bottom;
          transform-origin: right bottom; }
  @media screen and (max-width: 768px) {
    .scroll-down {
      bottom: 20vh; } }
  .scroll-down_line {
    position: absolute;
    left: 0;
    top: 50%;
    width: 44px;
    height: 0px;
    margin-top: -1px; }
    .scroll-down_line:after {
      content: '';
      display: block;
      width: 100%;
      height: 0;
      border-bottom: 2px solid #fff;
      -webkit-transition: opacity 0s linear 0.5s, -webkit-transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      transition: opacity 0s linear 0.5s, -webkit-transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0s linear 0.5s;
      transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0s linear 0.5s, -webkit-transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      -webkit-transform-origin: right center;
              transform-origin: right center;
      -webkit-transform: scale(0.001, 1);
              transform: scale(0.001, 1);
      opacity: 0; }
      @media screen and (max-width: 768px) {
        .scroll-down_line:after {
          border-bottom: 1px solid #fff; } }
  .scroll-down_text {
    color: #fff;
    font-size: 12px;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 1;
    letter-spacing: 0.2em;
    font-family: "Replica-Bold", sans-serif;
    overflow: hidden; }
    @media screen and (max-width: 768px) {
      .scroll-down_text {
        font-size: 10px; } }
    .scroll-down_text span {
      display: block;
      -webkit-transform: translate3d(0, 100%, 0);
              transform: translate3d(0, 100%, 0);
      -webkit-transition: -webkit-transform 1.5s cubic-bezier(0.19, 1, 0.22, 1);
      transition: -webkit-transform 1.5s cubic-bezier(0.19, 1, 0.22, 1);
      transition: transform 1.5s cubic-bezier(0.19, 1, 0.22, 1);
      transition: transform 1.5s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 1.5s cubic-bezier(0.19, 1, 0.22, 1); }
  .scroll-down.is-active.is-inview .scroll-down_text {
    -webkit-animation: bounce 2.5s infinite;
            animation: bounce 2.5s infinite; }
    .scroll-down.is-active.is-inview .scroll-down_text span {
      -webkit-transform: none;
              transform: none; }
  .scroll-down.is-active.is-inview .scroll-down_line {
    -webkit-animation: scroll-down-line 2.5s infinite 851ms;
            animation: scroll-down-line 2.5s infinite 851ms; }
    .scroll-down.is-active.is-inview .scroll-down_line:after {
      -webkit-transform: none;
              transform: none;
      opacity: 1;
      -webkit-transition: opacity 0s linear, -webkit-transform 1s cubic-bezier(0.23, 1, 0.32, 1);
      transition: opacity 0s linear, -webkit-transform 1s cubic-bezier(0.23, 1, 0.32, 1);
      transition: transform 1s cubic-bezier(0.23, 1, 0.32, 1), opacity 0s linear;
      transition: transform 1s cubic-bezier(0.23, 1, 0.32, 1), opacity 0s linear, -webkit-transform 1s cubic-bezier(0.23, 1, 0.32, 1); }

@-webkit-keyframes scroll-down-line {
  0% {
    -webkit-transform-origin: 0% 50%;
            transform-origin: 0% 50%;
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); }
  20% {
    -webkit-transform-origin: 0% 50%;
            transform-origin: 0% 50%;
    -webkit-transform: scale(0.001, 1);
            transform: scale(0.001, 1); }
  20.01% {
    -webkit-transform-origin: 100% 50%;
            transform-origin: 100% 50%; }
  38% {
    -webkit-transform-origin: 100% 50%;
            transform-origin: 100% 50%;
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); } }

@keyframes scroll-down-line {
  0% {
    -webkit-transform-origin: 0% 50%;
            transform-origin: 0% 50%;
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); }
  20% {
    -webkit-transform-origin: 0% 50%;
            transform-origin: 0% 50%;
    -webkit-transform: scale(0.001, 1);
            transform: scale(0.001, 1); }
  20.01% {
    -webkit-transform-origin: 100% 50%;
            transform-origin: 100% 50%; }
  38% {
    -webkit-transform-origin: 100% 50%;
            transform-origin: 100% 50%;
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1); } }

@-webkit-keyframes bounce {
  0%, 15%, 38%, 60%, 75% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  30% {
    -webkit-transform: translateX(10px);
            transform: translateX(10px); }
  45% {
    -webkit-transform: translateX(5px);
            transform: translateX(5px); } }

@keyframes bounce {
  0%, 15%, 38%, 60%, 75% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  30% {
    -webkit-transform: translateX(10px);
            transform: translateX(10px); }
  45% {
    -webkit-transform: translateX(5px);
            transform: translateX(5px); } }
