@charset "utf-8";
@media screen and (max-width:768px) {
/* Nav
-----------------------------------------*/
.Nav {
    margin-top: 60px;
    border-top: solid 1px #F5F4F0;
    border-bottom: solid 1px #F5F4F0;
  }
  @media screen and (max-width: 1000px) {
    .Nav {
      position: relative;
    border-top:none;
    }
  }
  .Nav .navbtn {
    display: none;
  }
  @media screen and (max-width: 1000px) {
    .Nav .navbtn {
      display: block;
      position: absolute;
      top: -50px;
      right: 10px;
    }
  }
  @media screen and (max-width: 1000px) {
    .Nav .navbtn a,
    .Nav .navbtn a.close {
      display: block;
      position: relative;
      width: 40px;
      height: 40px;
      background-color: #3E4145;
    }
    .Nav .navbtn a::before,
    .Nav .navbtn a.close::before {
      position: absolute;
      top:10px;
      left:10px;
      content:"";
      width: 20px;
      height: 3px;
      background-color: #FFF;
     transition: .2s;
    }
    .Nav .navbtn a.open::before {
      top:19px;
      transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    }
    .Nav .navbtn a::after,
    .Nav .navbtn a.close::after {
      position: absolute;
      bottom:10px;
      left:10px;
      content:"";
      width: 20px;
      height: 3px;
      background-color: #FFF;
      transition: .2s;
    }
    .Nav .navbtn a.open::after {
      bottom:18px;
      transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    }
  }
  @media screen and (max-width: 1000px) {
    .Nav .navbtn a span {
      display: block;
      overflow: hidden;
      width: 1px;
      height: 1px;
    }
    .Nav .navbtn a span::after,
    .Nav .navbtn a.close span::after {
      position: absolute;
      top:18px;
      left:10px;
      content:"";
      width: 20px;
      height: 3px;
      background-color: #FFF;
    }
    .Nav .navbtn a.open span::after {
      display: none;
    }
  }
  .Nav ul.close {
    display: none;
    border-top: solid 1px #F5F4F0;
  }
  .Nav > ul {
    margin: 0 auto;
    max-width: 1000px;
  }
  @media screen and (max-width: 1000px) {
    .Nav > ul {
      display: none;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      z-index: 9;
      background-color: #FFF;
      border: 1px solid #5AA1D8;
    }
  }
  .Nav > ul > li {
    position: relative;
    font-size: 15px;
    display: inline-block;
  }
  @media screen and (max-width: 1000px) {
    .Nav > ul > li {
      display: block;
      border-bottom: solid 1px #dddddd;
    }
  }
  .Nav > ul > li a {
    display: block;
    position: relative;
    text-decoration: none;
    padding: 19px 15px;
    font-size: 15px;
    color: #3E4145;
    background-color: #fff;
    z-index: 2;
  }
  .Nav > ul > li.parent > a {
    padding-right:25px;
  }
  .Nav > ul > li.parent > a::before {
      display: block;
      content: "";
      position: absolute;
      top: 50%;
      right: 8px;
      width: 6px;
      height: 6px;
      margin: -6px 0 0 0;
      border-top: solid 2px #5AA1D8;
      border-right: solid 2px #5AA1D8;
      -webkit-transform: rotate(135deg);
      transform: rotate(135deg);
  }
  @media screen and (max-width: 1000px) {
  .Nav > ul > li.parent.open > a::before {
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
  }
  }
  @media screen and (max-width: 1000px) {
    .Nav > ul > li.parent.open {
      border-bottom: none;
    }
  }
    .Nav > ul > li.parent.open > a{
      color: #FFF;
    }
    .Nav > ul > li.parent.open > a::after {
    background: #3E4145;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  @media screen and (max-width: 1000px) {
    .Nav > ul > li.parent.open > a {
      color: #FFF;
    }
  }
   
  .Nav > ul > li a:hover {
    color: #fff;
  }
  .Nav > ul > li a::after {
    position: absolute;
    z-index: -1;
    display: block;
    content: '';
  }
  .Nav > ul > li a,
  .Nav > ul > li a::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
  }
  .Nav > ul > li a::after {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(.5);
    transform: scale(.5);
  }
  .Nav > ul > li a:hover::after {
    background: #3E4145;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
   
  /* 2階層 */
  .Nav > ul > li > ul {
    display: none;
    position: absolute;
    top: 53px;
    left: 0;
    width: auto;
    background-color: rgba(255, 255, 255, 0.8);
    z-index: 9;
  }
   
  @media screen and (max-width: 1000px) {
    .Nav > ul > li > ul {
      background-color: #fbfbfb;
      position: static;
    }
  }
   
  .Nav > ul > li > ul li {
    white-space: nowrap;
  }
   
  .Nav > ul > li > ul li a {
    position: relative;
    padding: 12px 27px 12px 27px;
  }
  @media screen and (max-width: 1000px) {
    .Nav > ul > li > ul li a {
      border-bottom: solid 1px #dddddd;
      background-color: #EEE;
    }
  }
  .Nav > ul > li > ul li a::before {
      display: block;
      content: "";
      position: absolute;
      top: 50%;
      left: 10px;
      width: 6px;
      height: 6px;
      margin: -6px 0 0 0;
      border-top: solid 2px #5AA1D8;
      border-right: solid 2px #5AA1D8;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
  }
  .Nav > ul > li > ul li a:hover {
    text-decoration: underline;
  }
   
  @media screen and (max-width: 1000px) {
    .Nav > ul > li > ul li a:hover {
      background-color: #FFF;
    }
  }
   
  .Nav > ul > li > ul li ul li a {
    padding-left: 42px;
  }
  .Nav > ul > li > ul li ul li a::before {
      left: 20px;
  }
}
/* menu */
.header .global{
  background: #CB1C1D;
  margin-top: 1.5em;
  border-top: 1px solid #CB1C1D;
  border-bottom: 1px solid #CB1C1D;
}
.header .global ul{
  width: 95%;
}
.header .global li{
  width: 16.666%;
}
.header .global > ul > li{
  border-left: 1px solid #CB1C1D;
}
.header .global a{
  color: #fff;
  text-decoration: none;
  display: block;
  text-align: center;
  padding: 1.0em 0.5em;
}
.header .global li.current > a,
.header .global a:hover{
  background: #fff;
  color: #CB1C1D;
}
/* メガドロップ部分 */
.menu {
  position: relative;
  width: 100%;
}
ul.second {
  visibility: hidden;
  opacity: 0;
  z-index: 1;
}
li.first ul.second {
  position: absolute;
  top: 56px;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  padding: 20px 2%;
  background: #faebe3;
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
  border: 3px solid #fff;
}
li.first:hover ul.second {
  top: 50px;
  visibility: visible;
  opacity: 1;
}
li.first ul.second > li {
  float: left;
  width: 25%;
}
li.first ul.second > li a {
  color: #3E4145;
}
li.first ul.second:hover + li{
  background: #fff;
}

ul.secondThreeRow {
  visibility: hidden;
  opacity: 0;
  z-index: 1;
}
li.first ul.secondThreeRow {
  position: absolute;
  top: 56px;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  padding: 20px 2%;
  background: #faebe3;
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
  border: 3px solid #fff;
}
li.first:hover ul.secondThreeRow {
  top: 50px;
  visibility: visible;
  opacity: 1;
}
li.first ul.secondThreeRow > li {
  float: left;
  width: 33%;
}
li.first ul.secondThreeRow > li a {
  color: #3E4145;
}
li.first ul.secondThreeRow:hover + li{
  background: #fff;
}
@media screen and (max-width: 820px) {
  .header .global a{
    font-size: 0.9em;
  }
}