/*==========================================================================================

	トップページのCSS

==========================================================================================*/

/* mainVisual */
.mainVisualWrapper{
	padding: 80px 20px 20px;
	/*height: calc(100% - 0px);*/
	height: 100%;
	min-height: 600px;
	box-sizing: border-box;
}
.mainVisual{
    width: 100%;
    height: 100%;
}
.mainVisual .mainVisualInner {
	text-align: center;
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    width: 100%;
}
.mainVisual .mainVisualInner .lead{
	margin: 30px 0 0;
	color: #FFF;
	font-size: 40px;
}


/* about */
#about{
	position: relative;
}
#about .bg{
	width: 60%;
	min-width: 700px;
	height: 750px;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
	background: url(../images/about_bg.jpg) no-repeat left 40px;
}
#about .message{
	width: 48%;
	min-width: 400px;
}
#about .message p{
	margin: 0 0 20px;
}
#about .factory{
	margin: 60px 0 0;
}
#about .factory .img{
	width: 48%;
	float: left;
	background: url(../images/about_factory.jpg) no-repeat center center;
	background-size: cover;
}
#about .factory .txt{
	width: 48%;
	float: right;
	padding: 40px 0;
}
#about .factory .txt h3{
	font-size: 20px;
	line-height: 1em;
	margin: 0px 0 20px;
}
#about .factory .txt h3 span{
	display: block;
	font-size: 14px;
	color: #999;
}


/* products */
#products{
	background: #f1eee9;
}
.swiper-container .swiper-wrapper .swiper-slide{
	background: #FFF;
	width: 80%;
	max-width: 960px;
	border: 1px solid #CCC;
	padding: 40px 80px;
	box-sizing: border-box;
}
.swiper-container .swiper-wrapper .swiper-slide .txt{
	width: 48%;
	float: left;
	position: relative;
}
.swiper-container .swiper-wrapper .swiper-slide .txt .txtInner{
	position: absolute;
	width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
}
.swiper-container .swiper-wrapper .swiper-slide .txt h3{
	font-size: 24px;
	margin: 0 0 20px;
}
.swiper-container .swiper-wrapper .swiper-slide .txt h3 span{
	display: block;
	font-size: 20px;
	color: #b3111f;
}
.swiper-container .swiper-wrapper .swiper-slide .txt p{
	font-size: 14px;
	margin: 0 0 20px;
}
.swiper-container .swiper-wrapper .swiper-slide .txt p.price{
	font-size: 22px;
	font-weight: bold;
}
.swiper-container .swiper-wrapper .swiper-slide .txt p.price span{
	font-size: 12px;
	margin: 0 5px;
}
.swiper-container .swiper-wrapper .swiper-slide  .btnShop{
}
.swiper-container .swiper-wrapper .swiper-slide  .btnShop a{
	display: block;
	background: #b3111f;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	width: 150px;
	height: 36px;
	line-height: 36px;
	font-size: 14px;
	font-weight: bold;
}
.swiper-container .swiper-wrapper .swiper-slide  .btnShop a i{
  margin: 0 5px 0 0;
  font-size: 20px;
}

.swiper-container .swiper-wrapper .swiper-slide .img{
	width: 48%;
	float: right;
}
.swiper-container .swiper-wrapper .swiper-slide .img img{
	width: 100%;
}

.separator{
	margin: 60px 0 0;
	height: 400px;
	background-position: center center;
	background-size: cover;
}

#company dl.companyProfile{
	margin: 80px 0 0;
	font-size: 18px;
}
#company dl.companyProfile > dt{
	width: 200px;
	float: left;
	border-top: 1px solid #333;
	padding: 30px 0 30px 10px;
	box-sizing: border-box;
	font-weight: bold;
}
#company dl.companyProfile > dt:last-of-type{
	border-bottom: 1px solid #333;
}
#company dl.companyProfile > dd{
	width: calc(100% - 220px);
	float: right;
	border-top: 1px solid #CCC;
	padding: 30px 0 30px 10px;
	box-sizing: border-box;
}
#company dl.companyProfile > dd span{
	margin: 0 0 0 10px;
	font-size: 14px;
}
#company dl.companyProfile > dd span i{
	margin: 0 0 0 5px;
	color: #b3111f;
}
#company dl.companyProfile > dd:last-of-type{
	border-bottom: 1px solid #CCC;
}
#company dl.companyProfile > dd dl{
	position: relative;
}
#company dl.companyProfile > dd dl dt{
	position: absolute;
}
#company dl.companyProfile > dd dl dd{
	padding: 0 0 20px 120px;
}
#company #gmap{
	height: 400px;
	margin: 40px 0 0;
}

#contact .lead p{
	text-align: center;
}
#contact .lead p i{
	margin: 0 0 0 5px;
	color: #b3111f;
}
#contact .tel{
	border: 1px solid #CCC;
	max-width: 600px;
	margin: 40px auto 0;
}
#contact .tel h3{
	text-align: center;
	background: #000;
	color: #FFF;
	padding: 10px 0;
}
#contact .tel p{
	padding: 30px 0;
	text-align: center;
	font-size: 30px;
	font-weight: bold;
}
#contact .tel p span{
	font-size: 18px;
	margin: 0 10px 0 0;
}


/*==========================================================================================

	767px以下用（SP）のCSS

==========================================================================================*/
@media screen and (max-width: 768px) {

	/* mainVisual */
	.mainVisualWrapper{
		padding: 60px 20px 20px;
		height: 150vw;
		min-height: 200px;
		max-height: 500px;
		box-sizing: border-box;
	}
	.mainVisual{
	    width: 100%;
	    height: 100%;
	}
	.mainVisual .mainVisualInner .logo img{
		width: 150px;
	}
	.mainVisual .mainVisualInner .lead{
		margin: 10px 0 0;
		font-size: 20px;
	}


	/* about */
	#about .message{
		width: auto;
		min-width: 0;
	}

	#about .factory .img{
		width: 100%;
		float: none;
		background: url(../images/about_factory.jpg) no-repeat center center;
		background-size: cover;
		height: 40vw;
	}
	#about .factory .txt{
		width: 100%;
		float: none;
	}


	/* products */
	.swiper-container .swiper-wrapper .swiper-slide{
		width: 80%;
		max-width: 300px;
		padding: 20px 20px;
	}
	.swiper-container .swiper-wrapper .swiper-slide .img{
		float: none;
		width: 100%;
		margin: 0 auto 10px;
	}
	.swiper-container .swiper-wrapper .swiper-slide .txt{
		float: none;
		width: 100%;
	}
	.swiper-container .swiper-wrapper .swiper-slide .txt .txtInner{
		position: relative;
		width: 100%;
	    top: 0;
	    left: 0;
	    transform: translate(0%, 0%);
	    -webkit-transform: translate(0%, 0%);
	}
	.swiper-container .swiper-wrapper .swiper-slide .txt h3{
		font-size: 18px;
		margin: 0 0 10px;
	}
	.swiper-container .swiper-wrapper .swiper-slide .txt h3 span{
		font-size: 16px;
	}
	.swiper-container .swiper-wrapper .swiper-slide .txt p{
		font-size: 12px;
		margin: 0 0 10px;
		line-height: 1.4em;
	}
	.swiper-container .swiper-wrapper .swiper-slide .txt p.price{
		font-size: 20px;
		margin: 0 0 20px;
	}
	.swiper-container .swiper-wrapper .swiper-slide .txt p.price span{
		font-size: 12px;
	}
	.swiper-container .swiper-wrapper .swiper-slide  .btnShop a{
		margin: 0 auto;
	}

	.separator{
		height: 40vw;
	}

	#company dl.companyProfile{
		margin: 40px 0 0;
		font-size: 14px;
	}
	#company dl.companyProfile > dt{
		width: 90px;
		float: left;
		border-top: 1px solid #333;
		padding: 20px 0 20px 0px;
		box-sizing: border-box;
		font-weight: bold;
	}
	#company dl.companyProfile > dt:last-of-type{
		border-bottom: 1px solid #333;
	}
	#company dl.companyProfile > dd{
		width: calc(100% - 90px);
		float: right;
		border-top: 1px solid #CCC;
		padding: 20px 0 20px 10px;
		box-sizing: border-box;
	}
	#company dl.companyProfile > dd:last-of-type{
		border-bottom: 1px solid #CCC;
	}
	#company dl.companyProfile > dd dl{
		position: relative;
	}
	#company dl.companyProfile > dd dl dt{
		position: absolute;
	}
	#company dl.companyProfile > dd dl dd{
		padding: 0 0 20px 90px;
	}

	#company #gmap{
		height: 200px;
	}
	#contact .tel p{
		font-size: 20px;
	}

}

