@charset "UTF-8";

/* reset */
@import url(reset.css);

/* web font*/
@import url(https://use.fontawesome.com/releases/v5.0.6/css/all.css);

@font-face {
	font-family: 'Noto Serif Japanese';
	font-style: normal;
	font-weight: 400;
	src: url(../../fonts/NotoSansCJKjp.woff2) format('woff2'),
		 url(../../fonts/NotoSansCJKjp.woff) format('woff'),
		 url(../../fonts/NotoSansCJKjp.otf) format('opentype')
	}
	
	
/* desktop / mobile --------------------------------------------------------------- */
.dsk {
	display: block;
	}

.mob {
	display: none;
	}
	
	
@media(max-width: 768px){
	.dsk {
		display: none !important;
		}
	
	.mob {
		display: block !important;
		}
	}


/* zoom --------------------------------------------------------------- */
.zoom {
	overflow: hidden;
	}
	
	.zoom img {
		-webkit-transition: all 0.5s ease-out;
		transition: all 0.5s ease-out;
		}
		
		.zoom:hover img {
			transform: scale(1.03,1.03);
			-webkit-transform: scale(1.03, 1.03);
			-moz-transform: scale(1.03, 1.03);
			-ms-transform: scale(1.03, 1.03);
			-o-transform: scale(1.03, 1.03);
			}
			
			
			
/* trans --------------------------------------------------------------- */
.trans {
	-ms-filter: "alpha(opacity=0)";
	filter: alpha(opacity=0);
	opacity: 0;
	transform : translate(0, 50px);
	transition : all 750ms;
	}
	
	.trans.scrollin {
		-ms-filter: "alpha(opacity=100)";
		filter: alpha(opacity=100);
		opacity: 1;
		transform : translate(0, 0);
		}

	
	
/* common --------------------------------------------------------------- */
.ltr1 {
	letter-spacing: 1px;
	}
	
.ltr2 {
	letter-spacing: 2px;
	}

.ltr3 {
	letter-spacing: 3px;
	}

	
		
/* body --------------------------------------------------------------- */
body {
	word-wrap: break-word;
	-webkit-text-size-adjust: 100%;
	}

body,
a,
input,
select,
textarea,
submit {
	color: #46607c;
	font-size: 14px;
	line-height: 1.7;
	font-family: 'Noto Serif Japanese', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	letter-spacing: 1px;
	}
	
input,
select,
textarea,
submit {
	border: 0;
	box-sizing: border-box;
	}



/* header --------------------------------------------------------------- */
#header {
	width: 100%;
	padding: 20px 0;
	z-index: 999;
	position: fixed;
	left: 0;
	top: 0;
	}

.headerActive {
	background-image: url(../../img/header/headerActive.png);
	background-repeat: repeat;
	}
		
	#header #headerInner {
		width: 90%;
		max-width: 1200px;
		margin: 0 auto;
		overflow: hidden;
		}
	
		#header #headerInner h1 {
			float: left;
			width: 160px;
			height: 21px;
			}
	
			#header #headerInner h1 a {
				text-indent: -9999px;
				
				background-image: url(../../img/header/logo.png);
				background-position: center center;
				background-size: 100% auto;
				-webkit-background-size: 100% auto;
				-moz-background-size: 100% auto;
				-o-background-size: 100% auto;
				-ms-background-size: 100% auto;
				}
				
			#header #headerInner h1 a.logoActive {
				background-image: url(../../img/header/logoActive.png);
				}
	
		#header #headerInner ul {
			float: right;
			clear: none;
			}
		
			#header #headerInner ul li {
				float: left;
				margin-left: 50px;
				}
				
				#header #headerInner ul li a {
					color: #ffffff;
					padding-top: 3px;
					}
				
				body#nav1 .nav1 a,
				body#nav2 .nav2 a,
				body#nav3 .nav3 a,
				body#nav4 .nav4 a {
					border-bottom: solid 1px;
					}
				
@media(max-width: 768px){
	#header {
		display: none;
		}
	}



/* hamburger --------------------------------------------------------------- */
#hamburger {
	display: none;
	}
		
@media(max-width: 768px){
	#hamburger {
		display: block;
		width: 100%;
		height: 50px;
		padding-left: 5%;
		box-sizing: border-box;
		z-index: 999999;
		background-color: #ffffff;
		position: fixed;
		left: 0;
		top: 0;
		}
	
		#hamburger h1 {
			float: left;
			width: 150px;
			padding-top: 10px;
			}
		
			#hamburger h1 a,
			#hamburger h1 img {
				width: 100%;
				}
				
		#hamburger .menu {
			width: 50px;
			height: 50px;
			cursor: pointer;
			background-image: url(../../img/header/navOn.jpg);
			position: absolute;
			right: 5%;
			top: 0;
			}	
		
		#hamburger ul {
			width: 100%;
			background-color: #ffffff;
			border-top: solid 1px;
			border-color: #edeeef !important;
			position: absolute;
			right: -100%;
			top: 50px;
			}
			
			#hamburger ul li {
				width: 100%;
				border-bottom: solid 1px;
				border-color: #edeeef !important;
				}
				
				#hamburger ul li a {
					padding: 15px 0;
					text-align: center;
					}
	}

	
	
	
/* wrapper --------------------------------------------------------------- */
#wrapper {
	}
	
	#wrapper h2,
	#wrapper h3,
	#wrapper h4 {
		font-size: 18px;
		text-align: center;
		}
	
	#wrapper h2 {
		letter-spacing: 3px;
		}
	
	#wrapper h3 {
		letter-spacing: 3px;
		}
		
	#wrapper h4 {
		letter-spacing: 1px;
		}

@media(max-width: 768px){
	#wrapper h2 {
		letter-spacing: 3px;
		}
	
	#wrapper h3 {
		letter-spacing: 1px;
		}
		
	#wrapper h4 {
		letter-spacing: 1px;
		}
	}


/* visual --------------------------------------------------------------- */
.visual {
	width: 100%;
	}
	
	.visual img {
		width: 100%;
		}



/* breadcrumb --------------------------------------------------------------- */
#breadcrumb {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto 100px auto; 
	padding-top: 10px;
	}
	
	#breadcrumb,	
	#breadcrumb a {
		font-size: 11px;
		}
		
		#breadcrumb a {
			display: inline;
			text-decoration: underline;
			}
	
body#nav3 #breadcrumb,
body#nav4 #breadcrumb {
	margin-top: 70px; 
	}	
	
@media(max-width: 768px){
	#breadcrumb {
		margin-bottom: 50px;
		}
		
	body#nav3 #breadcrumb,
	body#nav4 #breadcrumb {
		margin-top: 50px; 
		}
		
		#breadcrumb,	
		#breadcrumb a {
			font-size: 10px;
			}
	}
	


/*  productsItem--------------------------------------------------------------- */
#productsItem {
	width: 100%;
	}
		
body#nav1 #productsItem {
	margin-bottom: 150px;
	}
	
	#productsItem ul {
		overflow: hidden;
		}
		
		#productsItem ul li {
			float: left;
			width: 50%;
			position: relative;
			}
			
			#productsItem ul li p,
			#productsItem ul li p img {
				width: 100%;
				}
			
			#productsItem ul li .productsTitle {
				width: 100%;
				text-align: center;
				position: absolute;
				left: 0;
				bottom: 10%;
				}
				
				#productsItem ul li .productsTitle h3 {
					margin-bottom: 20px;
					}
				
				#productsItem ul li .productsTitle a {
					display: inline-block;
					padding: 5px 50px;
					border: solid 1px;
					}

@media(max-width: 768px){
	body#nav1 #productsItem {
		margin-bottom: 50px;
		}
	
		#productsItem ul li {
			float: none;
			width: 100%;
			}
			
				#productsItem ul li .productsTitle h3 {
					font-size: 15px;
					}
	}



/* store button --------------------------------------------------------------- */
#store {
	margin: 0 auto;
	text-align: center;
	}
	
	#store a {
		width: 200px;
		margin: 0 auto;
		padding: 10px 50px;
		text-align: center;
		border: solid 1px;
		}

@media(max-width: 768px){
	#store a {
		width: auto;
		display: inline-block;
		}
	}
		
		
		
/* footer --------------------------------------------------------------- */
#footer {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	padding-bottom: 22px;
	}
	
	#footer dl {
		width: 100%;
		display: table;
		}
		
		#footer dl dt,
		#footer dl dd {
			display: table-cell;
			vertical-align: bottom;
			}
		
		#footer dl dt {
			text-align: left;
			font-size: 11px;
			}
			
			#footer dl dt h5 {
				margin-bottom: 7px
				}
				
			#footer dl dt a {
				display: inline-block;
				font-size: 11px;
				text-decoration: underline;
				}
				
			#footer dl dt span {
				margin-top: 1em;
				}
			
		#footer dl dd {
			text-align: right;
			}
			
			#footer dl dd ul {
				float: right;
				margin-bottom: 52px;
				overflow: hidden;
				}
			
				#footer dl dd ul li {
					float: left;
					margin-left: 30px;
					}
					
					#footer dl dd ul li a {
						font-size: 12px;
						}
						
			#footer dl dd ol {
				float: right;
				margin: 0 5px 10px 0;
				}
			
				#footer dl dd ol li {
					float: left;
					margin-left: 12px;
					}
					
					#footer dl dd ol li a {
						font-size: 20px;
						}
									
			#footer dl dd p {
				clear: both;
				font-size: 9px;
				}

@media(max-width: 768px){
	#footer {
		padding-bottom: 12px;
		}
		
		#footer dl {
			display: block;
			}
			
			#footer dl dt,
			#footer dl dd {
				display: block;
				vertical-align: top;
				}
			
			#footer dl dt {
				text-align: center;
				margin-bottom: 40px;
				}
				
			#footer dl dd {
				text-align: center;
				}
				
				#footer dl dd ul {
					float: none;
					margin-bottom: 20px;
					text-align: center;
					}
				
					#footer dl dd ul li {
						float: none;
						display: inline-block;
						margin: 0 10px;
						}
						
						#footer dl dd ul li a {
							font-size: 11px;
							}
				
				#footer dl dd ol {
					float: none;
					width: 100%;
					text-align: center;
					margin: 0 auto 20px auto;
					}
				
					#footer dl dd ol li {
						float: none;
						display: inline-block;
						margin: 0 10px;
						}
						
						#footer dl dd ol li a {
							font-size: 20px;
							}
	}



/* pagetop --------------------------------------------------------------- */
#pagetop {
	display: none;
	width: 40px;
	position: fixed;
	right: 10px;
	bottom: 10px;
	
	z-index: 10;
	}
		
	#pagetop a {
		width: 40px;
		height: 40px;
		background-image: url(../../img/common/pagetop.png);
		text-indent: -9999px;
		background-position: center center;
		background-size: 100% auto;
		-webkit-background-size: 100% auto;
		-moz-background-size: 100% auto;
		-o-background-size: 100% auto;
		-ms-background-size: 100% auto;
		}


@media(max-width: 768px){
	#pagetop {
		right: 0;
		bottom: 0;
		}
	}



/* loading --------------------------------------------------------------- */
#loading {
	width: 100%;
	height: 100vh;
	z-index: 9999999;
	background-color: #ffffff;
	background-image: url(../../img/common/loader.gif);
	background-position: center center;
	
	background-size: 100px auto;
	-webkit-background-size: 100px auto;
	-moz-background-size: 100px auto;
	-o-background-size: 100px auto;
	-ms-background-size: 100px auto;
		
	position: fixed;
	left: 0;
	top: 0;
	}