@charset "UTF-8";


/*---------------------------------------------------------------*\
$header
\*---------------------------------------------------------------*/

.header {
  position: absolute;
  width: 100%;
  height: 80px;
  top: 0;
  left: 0;
  padding: 0 25px;
}

.header .wrapper_content {
  width: calc((100% - 50px));
  margin: 0 auto;
}

/* logo */
.header .logo_header {
  position: relative;
  z-index: 5;
}

.header .logo_header a {
  display: block;
  width: 100px;
}

/* pc menu */
.header .menu {
  position: relative;
  z-index: 5;
  margin-left: auto;
}

.header .menu ul {
  gap: 30px;
}

.header .menu li a {
  font-size: 14px;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
}


/* mobile menu */
.header .mobile_menu {
  display: none;
}


@media screen and (max-width: 1080px) {

  /* pc menu */
  .header .menu {
    display: none;
  }


  /* mobile menu */
  .header .mobile_menu {
    z-index: 11;
    position: fixed;
    display: flex;
    flex-direction: column;
    justify-content: center;
    right: 25px;
    width: 20px;
    top: calc((80px - 18px) / 2);
  }

  /* menu icon */
  .header .triger_wrap {
    height: 18px;
    width: 20px;
    margin: 0 auto;
  }

  .header .menu_trigger,
  .header .menu_trigger span {
    display: block;
    transition: all .3s;
  }

  .header .menu_trigger {
    position: relative;
    width: 100%;
    height: 100%;
  }

  .header .menu_trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    border-radius: 20px;
    z-index: 5;
  }

  .header .menu_trigger span:nth-of-type(1) {
    top: 0;
  }

  .header .menu_trigger span:nth-of-type(2) {
    top: 7px;
    left: 0px;
  }

  .header .menu_trigger span:nth-of-type(3) {
    bottom: 2px;
  }


  /* mobile menu inside  */
  .header .mobilenav {
    display: -webkit-flex;
    -webkit-flex-direction: column;
    -webkit-justify-content: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    top: 0;
    left: 0;
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
  }

  .header .mobilenav:before {
    display: block;
    content: '';
    background-image: url('../img/common/footer_background_right.svg');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    top: -59px;
    right: -146px;
    z-index: 5;
    position: absolute;
    width: 289px;
    height: 252px;
  }

  .header .mobilenav .wrap_content_mobilenav {
    height: 100%;
    position: relative;
  }

  .header .mobilenav .menu_main_contents ul {
    gap: 40px;
  }

  .header .mobilenav ul li a {
    display: inline-flex;
    font-size: 18px;
  }

  .header .mobilenav .wrap_buttons {
    gap: 20px;
  }

  .header .mobilenav .button {
    width: 178px;
    height: 46px;
    font-size: 16px;
  }


  /* mobile menu - animation */
  .header .movmobb1 .active span:nth-of-type(1) {
    -webkit-transform: translateY(12px) rotate(-45deg);
    transform: translateY(12px) rotate(-45deg);
    top: -4.5px;
    background-color: #fff !important;
  }

  .header .movmobb1 .active span:nth-of-type(2) {
    opacity: 0;
  }

  .header .movmobb1 .active span:nth-of-type(3) {
    -webkit-transform: translateY(-8px) rotate(45deg);
    transform: translateY(-8px) rotate(45deg);
    bottom: 0px;
    background-color: #fff !important;
  }
}


@media screen and (max-width: 600px) {

  .header {
    height: 56px;
  }

  .header .mobile_menu {
    top: calc((56px - 18px) / 2);
  }
}



/*---------------------------------------------------------------*\
$navigation
\*---------------------------------------------------------------*/

#navigation {
  box-shadow: 0px 3px 20px 0px rgba(0, 0, 0, 0.08);
  background-color: rgba(255, 255, 255, .8);
  position: fixed;
  z-index: 10;
  width: 100%;
  height: 75px;
  opacity: 0;
  top: 0;
  left: 0;
  transition: all 0.3s;
}


@media screen and (max-width: 601px) {

  #navigation {
    height: 56px;
  }
}