* {
margin:0;
outline:0;
padding:0;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-ms-box-sizing:border-box;
	-o-box-sizing:border-box;
	box-sizing:border-box;
}


/* ヘッダー */
header {
	display: none;
}

header .inner {
	position: relative;
	display: table;
	padding-left: 20px;
	height: 120px;
}

@media screen and (max-width: 620px) {

header {
	display: block;
	background: url(../image/bg_top_03.png) repeat-x;
	position: fixed;
	width: 100%; height: 120px;
	top: 0px; left: 0px;
	z-index: 50;
	text-align: center; margin: 0px auto;
}

header .head_01 { width: 250px; float: left; text-align: left; }
header .head_02 { width: 180px; margin-left: 20px; float: left; text-align: left; }

}




.box        { float: left; margin: 0px; width: 340px; height: 100px; ext-align: left; position:relative; }
.nav_box_01       { background-color: #950606; text-align: center; float: left; margin: 0px; width: 90px; height: 100px }
.nav_box_02       { text-align: left; float: left; margin: 0px; padding-left: 15px; width: 250px; position: absolute; left: 90px; top: 50%; -webkit-transform : translateY(-50%); transform : translateY(-50%); }
.nav_box_03      { text-align: left; float: left; margin-top: 5px; }
.nav_box_03_1      { text-align: left; float: left; margin: 0px; }
.nav_box_03_2           { font-size: 16px; float: left; padding-left: 10px; padding-top: 5px; }
.nav_box_04             { position: absolute; top: 10px; right: 15px; width: 300px }
.nav_box_05               { display: none; }
.nav_box_06_1                 { cursor: pointer }
.nav_box_06_2                  { border-bottom: 1px solid #b7b7b7 }
.menu_space            { color: #3a3a3a; font-size: 14px; margin-top: 0px }
.menu_space_2            { float: right; margin-left: 15px; }
.menu_imagesize_1            { width: 90px; height: 100px; }
.menu_imagesize_2            { width: 80px; height: auto }

.submenu                   { visibility: hidden; }
#sub                    { background-color: #fff; text-align: left; padding: 15px; position: absolute; right: 400px; width: 250px; visibility: hidden; border-radius: 0px; box-shadow: 0px 1px 12px 0px rgba(0,0,0,0.2); display: block }


/* メニュー（nav）部分 */
header nav  { text-align: right; vertical-align: top; position: display: table-cell }
.pc_menu li   { text-align: center; clear: right; padding: 35px 7px 0px }
.nav_menu { display: inline-block; }





@media screen and (max-width: 930px) {

	.nav_box_04            { display: none; }
	.nav_box_05             { display: block; position: absolute; right: 95px; margin-top: 22px; }

	.pc_menu   { display: none; }
}	




/* pc検索窓 */

.btn_box      { text-align: center; margin: 0px auto; position: fixed; z-index: 110; top: 0px; left: 0px; width: 100% }
#btn    { float: right; margin-left: 20px; cursor: pointer; display: block }
#overlay1     { background-color: #fff; text-align: left; margin-top: 50px; padding: 15px; position: absolute; z-index: 100; width: 100%; display: none; box-shadow: 0px 1px 12px 0px rgba(0,0,0,0.2); border-radius: 0px; }
.search_box_1            { padding: 10px 0px }
#close    { position: absolute; top: -50px; right: 110px; }
.close_btn          { margin: 0px; cursor: pointer }
.search_btn      { color: #3a3a3a; font-weight: bold; font-size: 16px; 
font-family: 游明朝体, "Yu Mincho", YuMincho, "Noto Serif JP", "Hiragino Mincho ProN", "Helvetica Neue", serif; background-color: #dbdbdb; padding: 7px 0px; border: solid 1px #dbdbdb; width: 100%; cursor: pointer; grayscale: -webkit-font-smoothing: antialiased  }
.search_btn:hover  { color: #fff; font-size: 16px; background-color: #a90303; border: solid 1px #a90303; }



/* sp検索窓とボタン類 */

.search_box_sp             { padding: 20px 0px 0px }
.search_box_sp_2             { padding: 20px 0px }
.search_btn_toggle      { text-align: center; color: #fff; font-weight: bold; font-size: 16px; background-color: #950606; padding: 10px 0px; border: solid 1px #950606; width: 300px; cursor: pointer; }
.search_btn_toggle:hover      { color: #fff; font-weight: bold; font-size: 16px; background-color: #dc8c50; padding: 10px 0px; border: solid 1px #dc8c50; width: 300px; cursor: pointer; }

.btn_cart_1    { font-size: 16px; background-color: #f7f7f7; padding: 10px 0px; width: 80%; max-width: 300px; border: solid 1px #3a3a3a; cursor: pointer; font-family:"游明朝体", "Yu Mincho", YuMincho, 'Noto Serif JP', 'Hiragino Mincho ProN', "Helvetica Neue", serif; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased; }
.btn_cart_1:hover   { background-color: #d7d7d7 }

@media screen and (max-width: 930px) {
	.search_btn_toggle      { color: #fff; font-weight: bold; font-size: 20px; background-color: #1881a8; padding: 12px 0px; border: solid 1px #1881a8; width: 300px; cursor: pointer; }
	.search_btn_toggle:hover      { color: #fff; font-weight: bold; font-size: 20px; background-color: #dc8c50; padding: 12px 0px; border: solid 1px #dc8c50; width: 300px; cursor: pointer; }
}	





/* トグルメニュー */

.toggle_visible            { display: none; }

@media screen and (max-width: 620px) {
	.toggle_visible            { display: block; }
}	

.global-nav {
  position: fixed;
  right: -470px; /* これで隠れる */
  top: 0;
  width: 450px; /* スマホに収まるくらい */
  height: 100%;
  padding-top: 100px;
  background-color: #fff;
  transition: all .6s;
  z-index: 200;
  overflow-y: auto; /* メニューが多くなったらスクロールできるように */
}


.hamburger {
  position: absolute;
	background: url(../image/icon/menu_bg.png) no-repeat;
	display: block;
	padding-top: 15px; padding-left: 10px; padding-right: 10px;
	position: absolute;
	right: 20px;
	top: 25px;
	margin: auto;
	width: 70px;
	height: 70px;
	cursor: pointer;
	z-index: 200;
}

.toggle_nav_1  { float: left; width: 30px; position: fixed; top: 45%; }
.toggle_nav_imagesize  { width: 100%; height: auto; }

.global-nav__list {
  position: absolute; left: 50px;
  margin: 0;
  padding: 0;
  list-style: none;
  float: left;
}
.global-nav__item {
  text-align: center;
  margin: 0px 15px;
  border-bottom: 1px solid #eee;
}
.global-nav__item a {
  display: block;
  padding: 15px 0px;
  text-decoration: none;
  color: #3a3a3a;
}
.global-nav__item a:hover {
  background-color: #eee;
}


.hamburger__line {
  position: absolute;
  left: 13px; 
  width: 45px;
  height: 4px;
  background-color: #3a3a3a;
  transition: all .2s;
}
.hamburger__line--1 {
  top: 20px;
}
.hamburger__line--2 {
  top: 34px;
}
.hamburger__line--3 {
  top: 48px;
}
.black-bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100%;
  z-index: 100;
  background-color: #000;
  opacity: 0;
  visibility: hidden;
  transition: all .4s;
  cursor: pointer;
}



/* 表示された時用のCSS */
.nav-open .global-nav {
  right: 0;
}
.nav-open .black-bg {
  opacity: .8;
  visibility: visible;
}
.nav-open .hamburger__line--1 {
  transform: rotate(45deg);
  top: 30px;
}
.nav-open .hamburger__line--2 {
  width: 0;
  left: 50%;
}
.nav-open .hamburger__line--3 {
  transform: rotate(-45deg);
  top: 30px;
}

#js-hamburger { }
#js-black-bg { }