@charset "UTF-8";
/* =======================================
【BASE】
========================================== */
header {
  background: #fff;
  width: 100%;
  position: sticky;
  top: 0;
  right: 0;
  z-index: 100;
}

.h_tel a {
  color: #fbfbfb;
}
.h_tel .num span {
  padding-left: 0.9em;
  background: url(../img/tel.svg) no-repeat left bottom 4px/0.67em;
}

.header01 {
  display: flex;
  justify-content: space-between;
  color: #fbfbfb;
}

.header01 .nav01 {
  display: flex;
}
.header01 .nav01 ul {
  display: flex;
}
.header01 .nav01 > ul:nth-child(1) {
  padding-top: 10px;
}
.header01 .nav01 > ul:nth-child(1) li:not(:last-child) {
  margin-right: 20px;
}
.header01 .nav01 > ul:nth-child(1) .btn01.cart a {
  padding-right: 16px !important;
  padding-left: 4em !important;
  background: url(../img/cart.svg) no-repeat left 1.2em bottom 13px/1.7em,
    #101010;
}
.header01 .nav01 > ul:nth-child(1) .btn01.youtube a {
  padding-right: 16px !important;
  padding-left: 4em !important;
  background: url(../img/youtube.svg) no-repeat left 1.2em bottom 15px/1.7em,
    #101010;
}

.header02 {
  display: flex;
  justify-content: space-between;
}

.header02 .logo {
  width: 16.07em;
  padding-top: 14px;
}

.header02 > div {
  margin-top: 13px;
}

.header02 .linkArea > li {
  margin-left: 21px;
}
.header02 .linkArea > li span {
  padding-left: 1.1em;
  color: #666570;
  font-weight: 700;
}
.header02 .linkArea > li .l_sitemap {
  background: url(../img/h_icon01.svg) no-repeat left top 0.4em/0.9em;
}
.header02 .linkArea > li .l_livecamera {
  background: url(../img/h_icon02.svg) no-repeat left top 0.5em/0.9em;
}
.header02 .linkArea > li .l_contact {
  background: url(../img/h_icon03.svg) no-repeat left top 0.5em/0.9em;
}
.header02 .snsArea {
  justify-content: flex-end;
  margin-top: 5px;
  margin-bottom: 5px;
}
.header02 .snsArea > li {
  margin-right: 7px;
}
.header02 .snsArea > li img {
  width: 2.05em;
}
.header02 .snsArea > li:nth-of-type(2) {
  margin-right: 9px;
}
.header02 .snsArea > li.searchBox {
  width: 14.7em;
  margin-right: 0;
  position: relative;
}
.header02 .snsArea > li.searchBox .search_text {
  background: url(https://www.google.com/cse/static/images/1x/ja/branding.png)
      left 9px top 50% no-repeat,
    #e7eefa !important;
  padding: 3px 11px !important;
  border: none !important;
  font-size: 12px;
  width: calc(100% - 11px) !important;
  height: 32px !important;
  border-radius: 73px 60px 60px 73px;
  cursor: pointer;
  font-size: 14px;
}
.header02 .snsArea > li.searchBox .search_btn {
  height: 32px;
  position: absolute;
  /* display: inline-block; */
  overflow: hidden;
  text-indent: -9999px;
  border: none;
  background: url(../img/search_icon.svg) no-repeat 50% 50%/17px auto;
  background-color: #120f26;
  min-width: 32px;
  cursor: pointer;
  padding: 7px;
  top: -1px;
  right: -1px;
  border-radius: 50%;
}
.header02 .snsArea > li.searchBox .search_results {
  position: absolute;
  top: 0;
  left: 0;
  height: 0;
  overflow: hidden;
}

.gsst_a {
  display: none;
}

.gsc-results-wrapper-overlay {
  left: 50% !important;
  transform: translateX(-50%);
}

.header_nav {
  background: #0051ab;
  margin-top: 4px;
}
.header_nav .nav {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  display: flex;
  position: relative;
  z-index: 9;
}
.header_nav .nav > li {
  list-style: none;
  width: 16.6666666667%;
  position: relative;
}
.header_nav .nav li a {
  display: block;
  text-align: center;
  color: #fff;
  text-decoration: none;
  box-sizing: border-box;
  padding: 11px 0 13px;
  border-right: 1px solid #fff;
}
.header_nav .nav li:first-child a {
  border-left: 1px solid #fff;
}
.header_nav .nav li ul {
  width: 100%;
  display: none;
  margin-left: -25px;
  margin-left: 0;
  position: absolute;
  z-index: 999;
  background: #fff;
}
.header_nav .nav li ul li a {
  color: #fff;
  background: #0051ab;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
  font-size: 80%;
}
.header_nav .nav li ul li:last-child a {
  border-bottom: 1px solid #fff;
}
.header_nav .content {
  width: 750px;
  height: 200px;
  background: #eee;
  margin: 0 auto;
  padding: 10px;
  text-align: left;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  header {
    height: 50px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.0901960784);
  }
  header .logo {
    width: 156px;
    padding-top: 6px;
    margin-left: 3%;
  }
  .header_nav .nav > li {
    width: 100%;
  }
  .header_nav .nav li ul li a {
    background: none;
    color: #120f26;
    text-align: left;
    border: none;
    font-size: 100%;
    padding: 3px 0 3px;
  }
  .header_nav {
    background: none;
    margin-top: 0;
    order: 1;
  }
  .header02 {
    order: 2;
  }
  .header02 > div {
    margin-top: 0;
    width: 100%;
  }
  .header02 .linkArea > li {
    margin-left: 0;
  }
  .header02 .linkArea {
    padding: 0 3%;
    flex-wrap: wrap;
    gap: 10px 20px;
  }
  .header02 .snsArea {
    justify-content: flex-start;
    padding: 0 3%;
    margin-bottom: 20px;
    margin-top: 5%;
  }
  .header02 .snsArea > li:nth-of-type(2) {
    margin-right: 20px;
  }
  /* ---------------------------------------------------------------------------
  ★ハンバーガーメニュー
  --------------------------------------------------------------------------- */
  /* アコーディオンメニュー */
  .accordion-list:not(:first-child) {
    margin-top: 10px;
  }
  .accordion-title {
    cursor: pointer;
    padding: 0 !important;
    width: 3em;
    height: 3.5em;
    color: #fefefe;
    position: absolute;
    top: 0;
    right: 0;
  }
  .accordion-title:after {
    position: relative;
    display: block;
    content: "";
    right: -12px;
    top: 1em;
    width: 1.3em;
    height: 1.5em;
    transition: all 0.4s ease-in-out;
    background: url(../img/arrow_b.svg) no-repeat center left/100%;
  }
  .accordion-title.open:after {
    transform: rotate(90deg);
  }
  .accordion-box {
    position: relative;
  }
  .accordion-close {
    display: none;
    padding-left: 0.8em;
    padding-bottom: 0.4em;
    padding-top: 0.3em;
    border-bottom: 1px solid #dde4e1;
    position: static !important;
  }
  .nav li:nth-child(1) a {
    border-left: none !important;
  }
  .accordion-close li a {
    padding: 6px 0 0px;
    font-weight: 500;
    color: #0a0a0a;
    font-weight: 600;
  }
  .global-nav {
    position: fixed;
    right: -100vw;
    top: 50px;
    height: auto;
    color: #fefefe;
    transition: all 0.6s;
    z-index: 999999;
    overflow-y: auto;
    background: #fefefe;
    display: flex;
    flex-direction: column;
    height: calc(100vh - 50px);
  }
  .global-nav .accordion-container {
    width: 100vw;
    margin: 20px auto;
    background: #fff;
    padding: 0 6%;
    display: block;
  }
  .global-nav .accordion-container .accordion-title02 {
    position: relative;
    margin: 0;
    border-bottom: 1px solid #e5ecee;
    padding: 0.8em 0.8em 0.8em 0.8em;
    font-weight: normal;
    color: #120f26;
    cursor: pointer;
    display: block;
    font-weight: 600;
    background: #fff;
    display: block;
    background-size: 16px;
    text-align: left;
  }
  .global-nav .accordion-container .accordion-content li {
    padding: 0.3em 0.3em 0.3em 4.25em;
    border-bottom: none;
  }
  .global-nav .accordion-container .accordion-content li a {
    color: #fefefe;
  }
  .global-nav .btn01 a {
    width: 90%;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
  }
  .global-nav .center a {
    color: #3c3c3c;
  }
  .accordion-content li {
    padding: 5px 20px;
    border-bottom: 1px solid #949292;
  }
  .hamburger {
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    height: 50px;
    cursor: pointer;
    z-index: 999999;
    background: #0051ab;
  }
  .hamburger__line {
    position: absolute;
    left: 13px;
    width: 24px;
    height: 2px;
    background-color: #fff;
    transition: all 0.6s;
    border-radius: 50em;
  }
  .hamburger__line--1 {
    top: 17px;
  }
  .hamburger__line--2 {
    top: 24px;
  }
  .hamburger__line--3 {
    top: 31px;
  }
  .black-bg01 {
    position: fixed;
    left: 0;
    top: 50px;
    width: 100vw;
    height: 100vh;
    z-index: 100;
    background-color: #000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.6s;
    cursor: pointer;
  }
  /* 表示された時用のCSS */
  .nav-open .global-nav {
    right: 0;
    overflow-y: scroll;
  }
  .nav-open .black-bg01 {
    opacity: 0.8;
    visibility: visible;
  }
  .nav-open .hamburger__line--1 {
    transform: rotate(45deg);
    top: 24px;
  }
  .nav-open .hamburger__line--2 {
    width: 0;
    left: 50%;
  }
  .nav-open .hamburger__line--3 {
    transform: rotate(-45deg);
    top: 24px;
  }
} /*# sourceMappingURL=header.css.map */
