/* responsive */
/*@include mq() { }*/
/* Scss Document */
/*color*/
/* cubic-bezier */
.vh_max {
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
}

.f_sans {
  font-family: "Noto Sans JP", sans-serif;
}

.f_en {
  font-family: "roboto", sans-serif;
}

.text {
  line-height: 2;
  letter-spacing: 0.075em;
}

.u_ba {
  position: relative;
}
.u_ba::before, .u_ba::after {
  content: "";
  position: absolute;
  display: block;
}

/*
.vertical {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}
 */
.wrapper {
  opacity: 0;
  position: relative;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.wrapper.lazyloaded {
  opacity: 0;
}
.wrapper.fadein {
  opacity: 1;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

.first_loading {
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 9999;
  background: white;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.first_loading img {
  width: 21.71875rem;
  opacity: 0;
  display: block;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.wrapper.fadein ~ .first_loading img {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.wrapper.fadein ~ .first_loading img.fadeout {
  opacity: 0;
}
.wrapper.fadein ~ .first_loading.bgout {
  -webkit-transition: 1s;
  transition: 1s;
  background: rgba(255, 255, 255, 0);
}
.wrapper.fadein ~ .first_loading.fadeout {
  opacity: 0;
  pointer-events: none;
  z-index: -1;
}

.motion01, .page_footer::before,
.page_footer .cont_wrap, .home_contact .contact_tt, .home_contact p, .home_contact, .post_list + .see_more,
.post_list .post_item, .media_tt,
.event_tt,
.project_tt, .service_nav li, .service_tree, .home_about .left > *, .home_about .right > * {
  opacity: 0;
  -webkit-transform: translate(0, 3.125rem);
          transform: translate(0, 3.125rem);
  -webkit-transition: 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.motion01_ani, .load_complete .page_footer.ani::before,
.load_complete .page_footer.ani .cont_wrap, .load_complete .home_contact.ani .contact_tt, .load_complete .home_contact.ani p, .load_complete .home_contact.ani, .load_complete .post_list.ani + .see_more,
.load_complete .post_list.ani .post_item, .load_complete .media_tt.ani,
.load_complete .event_tt.ani,
.load_complete .project_tt.ani, .load_complete .service_nav.ani li, .load_complete .service_tree.ani, .load_complete .home_about .left.ani > *, .load_complete .home_about .right.ani > * {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.motion02, .more_block .heading > *, .more_block .see_more, .more_block {
  opacity: 0;
  -webkit-transform: translate(5rem, 0);
          transform: translate(5rem, 0);
  -webkit-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.motion02_ani, .load_complete .more_block.ani .heading > *, .load_complete .more_block.ani .see_more, .load_complete .more_block.ani {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.page_header .logo, .page_header .menu_bt, .page_header .nav_list li {
  opacity: 0;
  -webkit-transform: translate(0, 1.25rem);
          transform: translate(0, 1.25rem);
  -webkit-transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.page_header .logo {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.page_header .menu_bt {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.page_header .nav_list li {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.page_header .nav_list li:nth-child(1) {
  -webkit-transition-delay: 0.65s;
          transition-delay: 0.65s;
}
.page_header .nav_list li:nth-child(2) {
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
}
.page_header .nav_list li:nth-child(3) {
  -webkit-transition-delay: 0.75s;
          transition-delay: 0.75s;
}
.page_header .nav_list li:nth-child(4) {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}
.page_header .nav_list li:nth-child(5) {
  -webkit-transition-delay: 0.85s;
          transition-delay: 0.85s;
}
.page_header .nav_list li:nth-child(6) {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}
.page_header .nav_list li:nth-child(7) {
  -webkit-transition-delay: 0.95s;
          transition-delay: 0.95s;
}
.page_header .nav_list li:nth-child(8) {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}
.page_header .nav_list li:nth-child(9) {
  -webkit-transition-delay: 1.05s;
          transition-delay: 1.05s;
}
.page_header .nav_list li:nth-child(10) {
  -webkit-transition-delay: 1.1s;
          transition-delay: 1.1s;
}
.load_complete .page_header .logo, .load_complete .page_header .menu_bt, .load_complete .page_header .nav_list li {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.home_about .left > *, .home_about .right > * {
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.load_complete .home_about .left.ani h1 {
  -webkit-transition-delay: 0.1s;
          transition-delay: 0.1s;
}
.load_complete .home_about .left.ani h2 {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.load_complete .home_about .right.js-ani p {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.load_complete .home_about .right.js-ani p.see_more {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}

.load_complete .more_block.ani .heading h3 {
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.load_complete .more_block.ani .heading p {
  -webkit-transition-delay: 0.25s;
          transition-delay: 0.25s;
}
.load_complete .more_block.ani .see_more {
  -webkit-transition-delay: 0.45s;
          transition-delay: 0.45s;
}

.load_complete .service_nav.ani li:nth-child(1) {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.load_complete .service_nav.ani li:nth-child(2) {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.load_complete .service_nav.ani li:nth-child(3) {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}
.load_complete .service_nav.ani li:nth-child(4) {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.load_complete .post_list.ani .post_item:nth-child(1) {
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}
.load_complete .post_list.ani .post_item:nth-child(2) {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}
.load_complete .post_list.ani .post_item:nth-child(3) {
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}
.load_complete .post_list.ani .post_item:nth-child(4) {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}
.load_complete .post_list.ani .post_item:nth-child(5) {
  -webkit-transition-delay: 1.2s;
          transition-delay: 1.2s;
}
.load_complete .post_list.ani .post_item:nth-child(6) {
  -webkit-transition-delay: 1.4s;
          transition-delay: 1.4s;
}
.load_complete .post_list.ani .post_item:nth-child(7) {
  -webkit-transition-delay: 1.6s;
          transition-delay: 1.6s;
}
.load_complete .post_list.ani .post_item:nth-child(8) {
  -webkit-transition-delay: 1.8s;
          transition-delay: 1.8s;
}
.load_complete .post_list.ani .post_item:nth-child(9) {
  -webkit-transition-delay: 2s;
          transition-delay: 2s;
}
.load_complete .post_list.ani .post_item:nth-child(10) {
  -webkit-transition-delay: 2.2s;
          transition-delay: 2.2s;
}
.load_complete .post_list.ani .post_item:nth-child(11) {
  -webkit-transition-delay: 2.4s;
          transition-delay: 2.4s;
}
.load_complete .post_list.ani .post_item:nth-child(12) {
  -webkit-transition-delay: 2.6s;
          transition-delay: 2.6s;
}
.load_complete .post_list.ani .post_item:nth-child(13) {
  -webkit-transition-delay: 2.8s;
          transition-delay: 2.8s;
}
.load_complete .post_list.ani .post_item:nth-child(14) {
  -webkit-transition-delay: 3s;
          transition-delay: 3s;
}
.load_complete .post_list.ani .post_item:nth-child(15) {
  -webkit-transition-delay: 3.2s;
          transition-delay: 3.2s;
}
.load_complete .post_list.ani .post_item:nth-child(16) {
  -webkit-transition-delay: 3.4s;
          transition-delay: 3.4s;
}
.load_complete .post_list.ani .post_item:nth-child(17) {
  -webkit-transition-delay: 3.6s;
          transition-delay: 3.6s;
}
.load_complete .post_list.ani .post_item:nth-child(18) {
  -webkit-transition-delay: 3.8s;
          transition-delay: 3.8s;
}
.load_complete .post_list.ani .post_item:nth-child(19) {
  -webkit-transition-delay: 4s;
          transition-delay: 4s;
}
.load_complete .post_list.ani .post_item:nth-child(20) {
  -webkit-transition-delay: 4.2s;
          transition-delay: 4.2s;
}
.load_complete .post_list.ani + .see_more {
  -webkit-transition-delay: 1s;
          transition-delay: 1s;
}

.load_complete .home_project .post_list.ani + .see_more {
  -webkit-transition-delay: 1.8s;
          transition-delay: 1.8s;
}

.load_complete .home_contact.ani .contact_tt {
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}
.load_complete .home_contact.ani p {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.page_footer::before {
  -webkit-transform: translate(-50%, 5rem);
          transform: translate(-50%, 5rem);
}
.load_complete .page_footer.ani::before {
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}

.is-fade-in-up {
  -webkit-animation-name: fade-in-up-sm;
          animation-name: fade-in-up-sm;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  opacity: 0;
}

@-webkit-keyframes fade-in-up-sm {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(-30px);
            transform: translateY(-30px);
    opacity: 0;
  }
}

@keyframes fade-in-up-sm {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateY(-30px);
            transform: translateY(-30px);
    opacity: 0;
  }
}
@-webkit-keyframes logo-fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
@keyframes logo-fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
@-webkit-keyframes logo-fade-out {
  0% {
    display: block;
    opacity: 1;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: none;
    opacity: 0;
  }
}
@keyframes logo-fade-out {
  0% {
    display: block;
    opacity: 1;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: none;
    opacity: 0;
  }
}
.loading {
  width: 100%;
  height: 100%;
  position: fixed;
  opacity: 1;
  -webkit-transition: 0.8s;
  transition: 0.8s;
  top: 0;
  left: 0;
  background: #ffffff;
  z-index: 9999;
}
.loading.fadeout {
  opacity: 0;
  pointer-events: none;
}
.loading.fadeout::after {
  opacity: 0;
}

@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotateZ(-360deg);
            transform: rotateZ(-360deg);
  }
  100% {
    -webkit-transform: rotateZ(0deg);
            transform: rotateZ(0deg);
  }
}

@keyframes rotate {
  0% {
    -webkit-transform: rotateZ(-360deg);
            transform: rotateZ(-360deg);
  }
  100% {
    -webkit-transform: rotateZ(0deg);
            transform: rotateZ(0deg);
  }
}