@charset "UTF-8";
/*Header*/
.header-sp-only {
  display: none;
}
a.meanmenu-reveal {
  display: none;
}
header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  transition: .3s;
  background-color: rgba(255, 255, 255, 0);
  height: 0px;
}
.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-transition: all .4s ease 0s, background .6s ease .2s;
  transition: all .4s ease 0s, background .6s ease .2s;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  height: 120px;
}
.is-fixed .logo {
  -webkit-transition: all .4s ease 0s, background .6s ease .2s;
  transition: all .4s ease 0s, background .6s ease .2s;
  top: 0px;
  position: relative;
}
.margin-top {
  margin: 0px;
}
/*#header {
  z-index: 99;
  width: 100%;
  position: fixed;
  background: #FFF;
  height: 120px;
}*/
.header-wrapper {
  height: 100px;
  background-color: rgba(255, 255, 255, 0.7);
}
.main-navigation {
  float: right;
  margin-top: 30px;
}
.header-inner h1 {
  font-family: "Noto Sans JP", sans-serif;
  float: left;
  margin: 30px 0 0 2%;
  -webkit-transition: all .4s ease 0s, background .6s ease .2s;
  transition: all .4s ease 0s, background .6s ease .2s;
}
@media screen and (max-width:1400px) {
  .header-inner h1 {
    float: left;
    margin: 30px 0 0 2%;
    -webkit-transition: all .4s ease 0s, background .6s ease .2s;
    transition: all .4s ease 0s, background .6s ease .2s;
  }
}
nav {
  position: relative;
  top: 0px;
  color: #292929;
  font-weight: 600;
  text-align: center;
  margin-bottom: 0px;
  display: block;
}
nav ul {
  list-style: none;
  display: flex;
  float: left;
  margin-top: 20px;
}
nav ul ul {
  display: block;
  margin-top: 5px;
}
nav ul li {
  position: relative;
}
nav ul li a {
  text-align: left;
  display: block;
  text-decoration: none;
  color: #292929;
  padding: 0px 15px 0px 25px;
  transition: all .3s;
  font-size: 0.9rem;
  line-height: 1.2rem;
}
nav ul li a:hover, .header-nav a:hover {
  color: #A3A3A3;
}
nav ul li li a {
  padding: 10px 35px;
}
nav ul li a:hover {}
nav ul li ul li a span {
  position: relative;
  left: -20px;
}
nav ul li ul li a::before {
  color: #292929;
  content: '';
  position: absolute;
  left: 180px;
  top: 17px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}
nav ul li ul li a:hover::before {
  color: #FFF;
  content: '';
  position: absolute;
  left: 180px;
  top: 17px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}
nav ul ul li.has-child::before {
  content: '';
  position: absolute;
  left: 6px;
  top: 17px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}
nav li.has-child ul {
  position: absolute;
  left: 0;
  top: 24px;
  z-index: 4;
  background: #6DAA76;
  width: 200px;
  visibility: hidden;
  opacity: 0;
  transition: all .3s;
}
.list-icon:after {
  content: url('../../assets/images/icon-02.png');
  position: absolute;
  top: 50%;
  right: 5px;
  margin-top: -6px;
}
nav li.has-child:hover > ul, nav li.has-child ul li:hover > ul, nav li.has-child:active > ul, nav li.has-child ul li:active > ul {
  visibility: visible;
  opacity: 1;
}
nav li.has-child ul li a {
  color: #fff;
  border-bottom: solid 1px rgba(255, 255, 255, 0.6);
}
nav li.has-child ul li:last-child a {
  border-bottom: none;
}
nav li.has-child ul li a:hover, nav li.has-child ul li a:active {
  background-color: #9AD7A3;
}
nav li.has-child ul ul {
  top: 0;
  left: 182px;
  background: #6DAA76;
}
nav li.has-child ul ul li a:hover, nav li.has-child ul ul li a:active {
  background: #6DAA76;
}
@media screen and (max-width:768px) {
  nav {
    padding: 0;
  }
  nav ul {
    display: block;
  }
  nav li.has-child ul, nav li.has-child ul ul {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    visibility: visible;
    opacity: 1;
    display: none;
    transition: none;
  }
  nav ul li a {
    border-bottom: 1px solid #ccc;
  }
  nav ul li.has-child::before {
    left: 20px;
  }
  nav ul ul li.has-child::before {
    transform: rotate(135deg);
    left: 20px;
  }
  nav ul li.has-child.active::before {
    transform: rotate(-45deg);
  }
}
.menu {
  width: 100%;
  position: relative;
  right: 30px;
}
.menu-item {
  font-size: 0.8rem;
  color: #FFF;
  flex-grow: 1;
  padding: 6px;
  float: right;
}
.menu-item a {
  color: #FFF;
  text-decoration: none;
}
.sp_sns, .language_sp {
  display: none !important;
}
.main-navigation:before, .main-navigation:after, .main-navigation .menu:after, header:after, nav:after, .header-inner:after, .header-contents:after, .gnavi__wrap:before {
  content: "";
  display: block;
  clear: both;
}
.header-nav {
  float: right;
  position: relative;
  z-index: 7;
}
.header-nav ul {
  display: flex;
  margin: 15px 0 0 0;
}
.header-nav ul li {
  margin: 0 0 0 20px;
}
.header-nav .tel {
  width: 200px;
}
.header-nav .tel img {
  width: 100%;
  height: auto;
}
.header-nav_a {
  top: 15px;
  position: relative;
  font-size: .9rem;
  font-weight: 600;
}