@charset "utf-8";

html{
	font-size: 10px;
	/*font-size: 62.5%;*/
}

body{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	line-height: 1.0;
	letter-spacing: 0;
	color: #000000;
	font-size: 0;
	overflow-x: hidden;
}

.clearFix:after{
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	_zoom: 1;
}

a,a img,input[type="button"],
input[type="submit"],
input[type="reset"],
input[type="image"]{
	-webkit-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

a:hover img,
input[type="button"]:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="image"]:hover{
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

br.smp{display: none;}



/**************************************************
 wrapper
**************************************************/
#wrapper{
	position: relative;
	min-width: 1200px;
	top: 100px;
}



/**************************************************
 header
**************************************************/
header{
	position: fixed;
	width: 100%;
	min-width: 1200px;
	height: 100px;
	top: 0;
	left: 0;
	background-color: #222222;
	z-index: 99990;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	/*-webkit-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;*/
}

header h1{
	order: 1;
	margin-left: -110px;
}
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, header h1{margin-left: calc((50% - 40px) * -1);}
}
header h1 img{width: 112px;}

header p{
	width: 210px;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	font-size: 1.2rem;
	letter-spacing: 1px;
	color: #FFFFFF;
	padding-left: 50px;
	order: 0;
}

#globalNavi{
	position: absolute;
	width: 50%;
	height: calc(100vh - 100px);
	top: 100px;
	right: -51%;
	background-color: #222222;
	z-index: 99991;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
#globalNavi.open{right: 0;}
#globalNavi ul{width: 350px;}
#globalNavi ul li{
	font-size: 1.5rem;
	line-height: 1.4;
	letter-spacing: 2px;
	margin: 20px 0;
}
#globalNavi ul li a{
	position: relative;
	display: block;
	color: #FFFFFF;
	padding: 10px 10px 10px 20px;
}
#globalNavi ul li a::before{
	position: absolute;
	content: '';
	width: 10px;
	height: 1px;
	top: calc(50% + 1px);
	left: 0;
	background-color: #FFFFFF;
	-webkit-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
#globalNavi ul li a:hover{
	padding: 10px 10px 10px 40px;
	opacity: 0.5;
}
#globalNavi ul li a:hover::before{width: 30px;}

#menu{
  	width: 100px;
  	height: 100px;
	top: 0;
	right: 0;
	background: url("../img/menu_pc1.png") no-repeat 0 0;
	cursor: pointer;
	-webkit-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
	order: 3;
}
#menu.open{background: url("../img/menu_pc2.png") no-repeat 0 0;}



/**************************************************
 onlineShop
**************************************************/
#onlineShop{
	padding: 40px 0;
	background-color: #555555;
	text-align: center;
	font-size: 2.0rem;
	letter-spacing: 1px;
}
#onlineShop a{
	position: relative;
	color: #FFFFFF;
	padding-right: 20px;
}
#onlineShop a::before{
	position: absolute;
	content: '';
	width: 12px;
	height: 1px;
	top: 50%;
	right: 0;
	background-color: #FFFFFF;
	-webkit-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
#onlineShop a:hover{
	opacity: 0.5;
	padding-right: 30px;
}
#onlineShop a:hover::before{width: 25px;}
#onlineShop a img{
	width: 20px;
	height: auto;
	vertical-align: middle;
	margin-right: 5px;
}
#onlineShop a:hover img{opacity: 1.0;}



/**************************************************
 footer
**************************************************/
footer{
	padding: 80px 50px;
	color: #FFFFFF;
	background-color: #222222;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

footer dl{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
footer dl dt img{width: 112px;}
footer dl dd{
	font-size: 1.5rem;
	line-height: 1.8;
	letter-spacing: 2px;
	padding-left: 50px;
}
footer dl dd a{color: #FFFFFF;}
footer dl dd a:hover{opacity: 0.5;}

.copyRight{font-size: 1.2rem;}



/**************************************************
 notFound
**************************************************/
#notFound{
	width: 1000px;
	margin: 100px auto;
}
#notFound img{
	display: block;
	margin: 0 auto 30px auto;
}
#notFound p{
	text-align: center;
	font-size: 1.7rem;
	line-height: 1.8;
}





/**************************************************
 Responsive
**************************************************/
@media screen and (max-width: 690px){
	
	
br.smp{display: block;}
br.pc{display: none;}
	
	

/**************************************************
 wrapper
**************************************************/
#wrapper{
	min-width: 100%;
	top: 60px;
}



/**************************************************
 header
**************************************************/
header{
	min-width: 100%;
	height: 60px;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}

header h1{
	order: 0;
	margin-left: 20px;
}
header h1 img{width: 80px;}

header p{
	width: auto;
	font-size: 1.0rem;
	letter-spacing: 0;
	padding-left: 15px;
	order: 1;
}

#globalNavi{
	width: 100%;
	top: 60px;
	height: calc(100vh - 60px);
	right: -101%;
}

#menu{
	position: absolute;
	top: 0;
	right: 0;
  	width: 60px;
  	height: 60px;
	background: url("../img/menu_smp1.png") no-repeat 0 0;
	background-size: 60px auto;
	order: 3;
}
#menu.open{
	background: url("../img/menu_smp2.png") no-repeat 0 0;
	background-size: 60px auto;
}



/**************************************************
 onlineShop
**************************************************/
#onlineShop{
	padding: 20px 0;
	font-size: 1.8rem;
}
#onlineShop a img{width: 18px;}



/**************************************************
 footer
**************************************************/
footer{
	padding: 40px 0;
	display: block;
}

footer dl{
	display: block;
	text-align: center;
}
footer dl dt img{width: 80px;}
footer dl dd{
	font-size: 1.3rem;
	letter-spacing: 1px;
	padding: 20px 0 0 0;
}

.copyRight{
	font-size: 1.0rem;
	text-align: center;
	padding-top: 40px;
}
	
	
	
/**************************************************
 notFound
**************************************************/
#notFound{
	width: 100%;
	margin: 50px auto;
	padding: 0 20px;
}
#notFound img{
	width: 100%;
	margin: 0 auto 30px auto;
}
#notFound p{
	text-align: left;
	font-size: 1.5rem;
}

	
	
}