/*!
 * SlickNav Responsive Mobile Menu v1.0.10
 * (c) 2016 Josh Cope
 * licensed under MIT
 */

.slicknav_btn {
  position: relative;
  display: block;
  vertical-align: middle;
  float: right;
/*  padding: 0.438em 0.625em 0.438em 0.625em;*/
  /*padding: 0.438em 0.8em 0.438em 0.8em;*/
  padding:0 !important;
/*  line-height: 1.125em;*/
  cursor: pointer;

  margin: 8px 20px 23px;
  text-decoration: none;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  background-color: #fff;
}
.slicknav_btn:after {
  content:"";
  width: 35px;
  height: 9px;
  background:url(../../images/common/txt_menu.svg) no-repeat;
  background-size:35px 9px;
  position: absolute;
  bottom: -16px;
  left: -3px;
}
.slicknav_btn .slicknav_icon-bar+.slicknav_icon-bar {
  margin-top: 0.188em;
}

.slicknav_menu {
  *zoom: 1;
}

.slicknav_menu .slicknav_menutxt {
  display: block;
  line-height: 1.188em;
  float: left;
}

.slicknav_menu .slicknav_icon {
  float: left;
  width: 1.125em;
  height: 0.875em;
  margin: 0.188em 0 0 0.438em;
}

.slicknav_menu .slicknav_icon:before {
  background: transparent;
  width: 1.125em;
  height: 0.875em;
  display: block;
  content: "";
  position: absolute;
}

.slicknav_menu .slicknav_no-text {
  margin: 0;
}

.slicknav_menu .slicknav_icon-bar {
  display: block;
  width: 30px;
  height: 3px;
}

.slicknav_menu:after {
  content: " ";
  display: table;
  clear: both;
}

.slicknav_menu:before {
  content: "" !important;
  width: 177px;
  height: 29px;
  background-image: url(../../images/common/header/logo_mark.jpg), url(../../images/common/header/logo_text.svg);
  background-repeat: no-repeat, no-repeat;
  background-position: left center, right center;
  background-size: 21px 29px, 149px 13px;
  position: absolute;
  top: 14px;
  left: 11px;
}

/* ハンバーガーの左に並べるSNSアイコン */
.slicknav_menu .snsNaviSp {
  position: absolute;
  top: 15px;
  /* ハンバーガーの「メニュー」文字は右端から11〜46pxを占めるので、
     そこに12px空けた位置まで寄せている */
  right: 58px;
  display: -webkit-flex;
  display: flex;
}

.slicknav_menu .snsNaviSp li {
  margin-left: 8px;
}

.slicknav_menu .snsNaviSp li:first-child {
  margin-left: 0;
}

.slicknav_menu .snsNaviSp a {
  display: block;
  width: 24px;
}

.slicknav_menu .snsNaviSp img {
  width: 100%;
  height: auto;
  display: block;
}

/* 幅の狭い端末ではロゴとSNSアイコンが重なるため、両方を詰める */
@media screen and (max-width: 359px) {
  .slicknav_menu:before {
    /* 背景は2枚重ねなので background-size も2つ指定すること。
       1つだけ書くと両方に適用されてロゴが崩れる */
    width: 140px;
    height: 23px;
    background-size: 17px 23px, 118px 10px;
    top: 17px;
  }

  .slicknav_menu .snsNaviSp li {
    margin-left: 6px;
  }

  .slicknav_menu .snsNaviSp a {
    width: 20px;
  }
}

.slicknav_nav {
  clear: both;
}

.slicknav_nav ul {
  display: block;
}

.slicknav_nav li {
  display: block;
  font-size:16px;
}
.slicknav_nav li li {
}
.slicknav_nav .slicknav_arrow {
  font-size: 0.8em;
  margin: 0 0 0 0.4em;
  font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}

.slicknav_nav .slicknav_item {
  cursor: pointer;
}

.slicknav_nav .slicknav_item a {
  display: inline;
}

.slicknav_nav .slicknav_row {
  display: block;
}

.slicknav_nav a {
  display: block;
}

.slicknav_nav .slicknav_parent-link a {
  display: inline;
}

.slicknav_brand {
  float: left;
}

/* メニューの固定 */
.slicknav_menu {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000000;
  font-size: 16px;
  box-sizing: border-box;
  background-color:#fff;
  padding: 5px;
  -moz-transition: all 0.3s;
-o-transition: all 0.3s;
-webkit-transition: all 0.3s;
transition: all 0.3s;
  opacity:1;
}
.home.fixed .slicknav_menu,
.page .slicknav_menu {
  opacity:1;
}

/* 固定時のメニュー内のスクロール */
.menu_var_scroll {
  height:100% !important;
  overflow: auto !important;
  -webkit-overflow-scrolling: touch !important;
}
.menu_var_scroll ul {
/*  height:100% !important;
  overflow: auto !important;
  -webkit-overflow-scrolling: touch !important;*/
}

.slicknav_menu * {
  box-sizing: border-box;
}

.slicknav_menu .slicknav_menutxt {
  color: #000;
}

.slicknav_menu .slicknav_icon-bar {
  background-color: #333;
}


.slicknav_nav {
  color: #fff;
  margin: 0;
  padding: 0;
  font-size: 0.875em;
  list-style: none;
  overflow: hidden;
}

.slicknav_nav ul {
  list-style: none;
  overflow: hidden;
  margin:0;
  padding:5px;
}
.slicknav_nav ul li {
  border-bottom:1px #fff solid;
}
.slicknav_nav .slicknav_row {
/*  padding: 5px 10px;
  margin: 2px 5px;*/
}

.slicknav_nav .slicknav_row:hover {
/*  background-color: #6cb33f;
  color: #fff;*/
}


.slicknav_nav a {
  padding: 15px 20px;
  text-decoration: none;
  color: #fff;

  background-color:#484848;
  display:block;
}
.slicknav_nav a.parent {

}
.slicknav_nav a:hover {
  background-color: #3c3c3c;
  color: #fff;
}

.slicknav_nav .sub {
  padding:5px;
  background-color:#ccc;
}
.slicknav_nav .sub li {
  margin-bottom:1px;
}
.slicknav_nav .sub li span {
  font-size:10px;
  margin-left:20px;
  position: relative;
}
.slicknav_nav .sub li span:before {
  content:"";
  width: 10px;
  height: 1px;
  background-color:#ccc;
  position: absolute;
  top: 4px;
  left: -15px;
}
.slicknav_nav .sub li a {
  background-color:#fff;
  color:#333;
}
.slicknav_nav .sub li a:hover {
  background-color: #dfdfdf;
}
.slicknav_nav .slicknav_txtnode {
  margin-left: 15px;
}

.slicknav_nav .slicknav_item a {
  padding: 0;
  margin: 0;
}

.slicknav_nav .slicknav_parent-link a {
  padding: 0;
  margin: 0;
}

.slicknav_brand {
/*  color: #fff;
  font-size: 18px;
  line-height: 30px;
  padding: 7px 12px;
  height: 44px;*/
}

/*@media screen and (max-width: 320px) {
.slicknav_menu:before {
  content: "" !important;
}
}*/

/*@media screen and (max-height: 767px) {
.slicknav_menu {
  position: static;
  top: 0;
  left: 0;
}
header {
    padding-top: 0px;
  }
}*/

