/* ------------------------------------- */
/* 全体:ヘッダーメニュー用 */
/* ------------------------------------- */
body.left_menu {
	display: block;
	width: 100%;
	overflow: hidden;
	position: relative;
}
/* ------------------------------------- */
/* SP版専用:上部固定ヘッダーメニュー */
/* ------------------------------------- */
@media screen and (max-width: 640px) {
 header#header .sp_fixed_header {
  width: 100vw;
  background: #fff;
 }
 header#header .sp_fixed_header.fixed {
  position: fixed;
  top: 0;
  z-index: 5000;
  overflow: auto;
 }
 header#header .sp_fixed_header .sp_flex_header {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
 }
 header#header .sp_fixed_header .sp_flex_header::after {
  content: none;
 }
 header#header .sp_fixed_header .sp_flex_header h1 {
  width: 26.667vw;
  margin: 2.66vw 0 1.33vw 4.66vw;
 }
 header#header .sp_fixed_header .sp_flex_header h1 img {
  width: 23.733vw;
 }
}	
/* ------------------------------------- */
/* ヘッダー:メニュー開閉ボタン */
/* ------------------------------------- */
@media screen and (max-width: 640px) {
	header#header .sp_fixed_header	.sp_flex_header .menu_btn{
		position: static;
		width: 5.333vw;
		margin-right: 6vw;
		transition: 0.6s;
		cursor: pointer;
	}
header#header .sp_fixed_header	.sp_flex_header .menu_btn img{
		width: 5.333vw;
	}	
header#header .sp_fixed_header	.sp_flex_header .menu_btn img.state_open {
	display: none;
}
header#header .sp_fixed_header	.sp_flex_header .menu_btn.active img.state_open {
	display: inline;
}
header#header .sp_fixed_header	.sp_flex_header .menu_btn.active img.state_close {
	display: none;
}		
}
/* ------------------------------------- */
/* ヘッダー:メニュー */
/* ------------------------------------- */
@media screen and (max-width: 640px) {
	header#header .sp_fixed_header .menu{		
	position: fixed;
	width: 100vw;
	height: 100%;
	text-align: center;
		padding-top: 13.333vw;
		padding-bottom: 13.333vw;
	transition: 0.6s;
	overflow: auto;
	background: #a4000d;
	/*left: -100vw;*/
		right:-100vw;
	z-index: 5000;		
	}
	header#header .sp_fixed_header.fixed .menu{
		/*position: static;*/
	}
header#header .sp_fixed_header .menu.active {
	/*left: 0;*/
	right:0;
}
header#header .menu .item {
	display: inline-block;
	line-height: 1;
	vertical-align: middle;
}
header#header .menu .item .sub_item.type_link .mini_item.num02 {
		margin: 11.333vw 0;
	}
header#header .menu .item .sub_item.type_link .mini_item a{
	color: #fff;
	font-size: 5.33vw;
	font-weight: bold;
	padding-bottom: 1vw;
	border-bottom:#fff 2px solid; 
}
header#header .menu .item .sub_item.type_link .mini_item a span{
	display: block;
	font-size: 2.4vw;
	margin-bottom: 3vw;
}
	/*--sns--*/
	header#header .menu .item .sub_item.type_sns {
		margin: 20vw 0 0;
	}
	header#header .menu .item .sub_item.type_sns ul {
	display: inline-block;
	letter-spacing: -.40em;
	}
	header#header .menu .item .sub_item.type_sns ul li {
	display: inline-block;
		margin-right: 3.8vw;
	letter-spacing: normal;
	vertical-align: top;
	}
	header#header .menu .item .sub_item.type_sns ul li.tw_account_btn,
	header#header .menu .item .sub_item.type_sns ul li.insta_account_btn {
		width: 45vw;
		margin-bottom: 5vw;
		margin-right: 0;
}
	header#header .menu .item .sub_item.type_sns ul li:last-child {
	margin-right: 0;
	}
	header#header .menu .item .sub_item.type_sns ul li img {
		width: 11.4vw;
	}
		header#header .menu .item .sub_item.type_sns ul li.tw_account_btn a,
		header#header .menu .item .sub_item.type_sns ul li.insta_account_btn a {
			display: block;
			width: 40vw;
			margin: auto;
	}
		header#header .menu .item .sub_item.type_sns ul li.tw_account_btn a img,
		header#header .menu .item .sub_item.type_sns ul li.insta_account_btn a img {
		width: 40vw;
	}
}

/* ------------------------------------- */
/* PC版専用:上部固定ヘッダーメニュー */
/* ------------------------------------- */
header#header .pc_fixed_menu {
	display: block;
	width: 100%;
	height: 85px;
	background: #ffffff;
	position: absolute;
	top:  0;
	left: 0;
	z-index: 5000;
}
header#header .pc_fixed_menu.fixed {
	position: fixed;
}
header#header .pc_fixed_menu .inner {
	width: calc(100% - 60px);
	margin: 0 auto;
	position: relative;
}
header#header .pc_fixed_menu .inner .item {
	position: absolute;
}
header#header .pc_fixed_menu .inner .item.num01 {
	letter-spacing: -.40em;
	top: 25px;
	left: 0;
}
header#header .pc_fixed_menu .inner .item.num01 .sub_item {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: bottom;
}
header#header .pc_fixed_menu .inner .item.num01 .sub_item {
}
header#header .pc_fixed_menu .inner .item.num01 .sub_item:nth-child(2) {
	margin-left: 33px;
 line-height: 1;
	letter-spacing: -.40em;
	position: relative;
	bottom: 5px;
}
header#header .pc_fixed_menu .inner .item.num01 .sub_item:nth-child(2) span {
	display: inline-block;
	margin-right: 40px;
}
header#header .pc_fixed_menu .inner .item.num01 .sub_item:nth-child(2) span a {
	display: inline-block;
	/*padding-left: 15px;*/
	color: #c90023;
	font-size: 21px;
	font-weight: bold;
	letter-spacing: normal;
	position: relative;
}
header#header .pc_fixed_menu .inner .item.num01 .sub_item:nth-child(2) span.current a:before{	
	content: "";
	display: inline-block;
	width:  100%;
	position: absolute;
	bottom:   -28px;
	left:  0;
	z-index: 1;
	border-bottom: #c90023 3px solid;	
}
/*header#header .pc_fixed_menu .inner .item.num01 .sub_item:nth-child(2) span a:before {
	content: "";
	display: inline-block;
	width:  11px;
	height: 100%;
	background: url('../../images/common/header/mark_orange_dot@2x.png');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top:   0;
	left:  0;
	z-index: 1;
}*/
header#header .pc_fixed_menu .inner .item.num02 {
	top: 24px;
	/*right: 75px;*/
	right: 0;
}
header#header .pc_fixed_menu .inner .item.num02 ul {
	display: inline-block;
	letter-spacing: -.40em;
	vertical-align: top;
}
header#header .pc_fixed_menu .inner .item.num02 ul li {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	margin-right: 12px;
}
header#header .pc_fixed_menu .inner .item.num02 ul li:last-child {
	margin-right: 0;
}
header#header .pc_fixed_menu .inner .item.num02 ul li.tw_account_btn a img,
header#header .pc_fixed_menu .inner .item.num02 ul li.insta_account_btn a img {
	width: 175px;
}
@media screen and (max-width: 640px) {
	header#header .pc_fixed_menu {
		display: none;
	}
}

