/* ===================================================================
CSS information
 file name  :  nav.css
 style info :  ハンバーガーメニュー
 admin info :  Design office RIVER
=================================================================== */




.button_container {
  position: fixed;
  top: 20px;
  right: 20px;
  height: 27px;
  width: 35px;
  cursor: pointer;
  z-index: 100;
  -webkit-transition: opacity .25s ease;
  transition: opacity .25s ease;  
}
.button_container:hover {
  opacity: .7;
}
.button_container.active .top {
  -webkit-transform: translateY(11px) translateX(0) rotate(45deg);
          transform: translateY(11px) translateX(0) rotate(45deg);
  background: #FFF;
}
.button_container.active .middle {
  opacity: 0;
  background: #FFF;
}
.button_container.active .bottom {
  -webkit-transform: translateY(-11px) translateX(0) rotate(-45deg);
          transform: translateY(-11px) translateX(0) rotate(-45deg);
  background: #FFF;
}

/*〓 ホバー時、上下に間隔が開く処理*/
.button_container:hover .top {
 top: -2px;
}
.button_container:hover .bottom {
 top: 24px;
}
.button_container:hover.active .top {
  -webkit-transform: translateY(13px) translateX(0) rotate(45deg);
          transform: translateY(13px) translateX(0) rotate(45deg);
  background: #FFF;
}
.button_container:hover.active .bottom {
  -webkit-transform: translateY(-13px) translateX(0) rotate(-45deg);
          transform: translateY(-13px) translateX(0) rotate(-45deg);
  background: #FFF;
}
/*〓 ホバー時、上下に間隔が開く処理*/

.button_container span {
  background: #0194D7;
  border: none;
  height: 5px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all .35s ease;
  transition: all .35s ease;
  cursor: pointer;
}
.button_container span:nth-of-type(2) {
  top: 11px;
}
.button_container span:nth-of-type(3) {
  top: 22px;
}

.overlay {
  position: fixed;
  background: #0194D7;
  top: 0;
  left: 0;
  width: 100%;
  height: 0%;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity .35s, visibility .35s, height .35s;
  transition: opacity .35s, visibility .35s, height .35s;
  /*overflow: hidden;*/
  overflow: auto;
  z-index: 2;
}
.overlay.open {
  opacity: .9;
  visibility: visible;
  height: 100%;
}
.overlay.open li {
  -webkit-animation: fadeInRight .5s ease forwards;
          animation: fadeInRight .5s ease forwards;
  -webkit-animation-delay: .35s;
          animation-delay: .35s;
}
.overlay.open li:nth-of-type(2) {
  -webkit-animation-delay: .40s;
          animation-delay: .40s;
}
.overlay.open li:nth-of-type(3) {
  -webkit-animation-delay: .45s;
          animation-delay: .45s;
}
.overlay.open li:nth-of-type(4) {
  -webkit-animation-delay: .50s;
          animation-delay: .50s;
}
.overlay.open li:nth-of-type(5) {
  -webkit-animation-delay: .55s;
          animation-delay: .55s;
}
.overlay.open li:nth-of-type(6) {
  -webkit-animation-delay: .60s;
          animation-delay: .60s;
}
.overlay.open li:nth-of-type(7) {
  -webkit-animation-delay: .65s;
          animation-delay: .65s;
}
.overlay.open li:nth-of-type(8) {
  -webkit-animation-delay: .70s;
          animation-delay: .70s;
}
.overlay nav {
  position: relative;
  /*height: 70%;*/
  top: 50%;
  margin: 0 auto;
  transform: translateY(-50%);
  font-size: 2rem;
    width:800px;
	padding-left:5%;
}
.overlay ul {
  list-style: none;
  padding: 0;
  margin: 0 auto;
  display: inline-block;
  position: relative;
  height: 100%;

}

.overlay ul#nav_left{width:35%; margin-right:20%;  }
.overlay ul#nav_right{width:35%;  }
.overlay ul#nav_right{ font-size:1.4rem;
}

.overlay ul li {
  display: block;
  line-height:300%;
  height:50px;
  /*
  height: calc(100% / 4);
  min-height: 50px;*/
  position: relative;
  opacity: 0;
}
.overlay ul#nav_right li{  height:50px;
  line-height:300%;
}
.overlay ul li a {
  display: block;
  position: relative;
  color: #FFF;
  text-decoration: none;
  overflow: hidden;
  margin-left:1em;
  padding-left:1em;
}
.overlay ul li a:hover:after, .overlay ul li a:focus:after, .overlay ul li a:active:after {
  width: 100%; 
}
.overlay ul li a:after {
  content: '';
  position: absolute;
  bottom: 10px;
  left: 50%;
  width: 0%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  height: 1px;
  background: #FFF;
  -webkit-transition: .35s;
  transition: .35s;
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    left: 20%;
  }
  100% {
    opacity: 1;
    left: 0;
  }
}

.overlay i{ margin-right:0.5em;}


/*ヘッダー カート周り*/
.header-tools a:link,
.header-tools a:visited{ color:#000;}

.header-tools {
  margin: 0px 20px 0 100px;
  width: 465px;
  text-align: right;
    position: fixed;
  top: 20px;
  right: 60px;
}

.header-tools a{  text-decoration:none; transition: all .5s ease-out;}
.header-tools a:hover{   color:#999;}

.header-tools__unit {
  display: inline;
  margin-left: 40px;
  line-height: 1.4;
}
.header-tools__unit i{
  top: 0px;
  left: -24px;}

.header-tools__unit-cart {
  margin-left: 15px;
}

.header-tools__unit-cart a,
.header-tools__unit-cart a:visited{  color:#ddd; transition: all .5s ease-out;}
.header-tools__unit-cart a:hover{  color:#fff;}

.header-tools__btn {
  position: relative;
  padding: 7px 15px 7px 34px;
  font-size: 12px;
}
.header-tools__btn i {
  position: absolute;
  top: 7px;
  left: 4px;
  font-size: 14px;
    color:#fff;
}

.header-tools__count {
  padding: 0 2px;
  font-size: 14px;
}

.btn-primary {
  background: #333;
  color: #fff;
   border-radius: 8px;
}

.header-tools__unit-cart a.btn-primary{ color:#fff;}


.btn-primary:hover {
  background: #666;
  color: #fff;
  opacity: 0.8;
  -moz-opacity: 0.8;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=80)";
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=80);
  zoom: 1;
}

