@charset "UTF-8";
/* CSS Document */

header h1{
	position: absolute;
	left: 0;
	right: 0;
	top: 50px;
	bottom: 0;
	margin: auto;
	height: 100px;
	color: #FFF;
	font-size: 30px;
	width: 500px;
	opacity: 0.0;
	transition-duration:1.0s;
}

header h1.active{
	top: 0;
	opacity: 1.0;
}

header h1 img{
	width: 100%;
}

header h1 .logo{
	display: block;
	position: absolute;
	top: -60px;
	left: 0;
	right: 0;
	margin: auto;
	width: 270px;
}

header h1 .logo img{
	width: 100%;
}

header .vegas-wrapper>h1 .textWrap{
	display: block;
	font-weight: bold;
	font-size: 33px;
	letter-spacing: 1px;
	margin: 30px 0 15px;
	text-shadow:2px 2px 10px #000;
}

header .vegas-wrapper>h1 .textWrap .large{
	font-size: 44px;
}

header .vegas-wrapper>h1 .ruby{
	display: block;
	font-size: 20px;
	text-shadow:2px 2px 10px #000;
	font-family: house-script, sans-serif;
	font-weight: 400;
	font-style: normal;	
}

header#slider {
	height: 800px !important;
}

#concept{
	padding: 150px 0 50px;
	background-color: #FFF;
	box-sizing: border-box;
	text-align: center;
	position:relative;
	min-height: 700px;
	overflow: hidden;
}

#concept .inner{
	position: relative;
	z-index: 1;
}

#concept h2{
	text-align: center;
	margin-bottom: 35px;
	font-size: 34px;
	font-weight: bold;
}

#concept h2 .title{
	display: block;
	font-size: 34px;
	font-weight: bold;
	margin-bottom: 15px;
}

#concept h2 .ruby{
	display: block;
	font-size: 20px;
	font-weight: bold;
	font-family: house-script, sans-serif;
	font-weight: 400;
	font-style: normal;	
}

#concept .textWrap{
	font-size: 14px;
	line-height: 3em;
	text-align: center;
}

#concept .imgGroup li.img01{
	position: absolute;
	left:0;
	top:50px;
	width: 40%;
	opacity: 0.0;
	transition-duration:1.0s;
}

#concept .imgGroup li.img01.active{
	top:0;
	opacity: 1.0;
}

#concept .imgGroup li.img02{
	position: absolute;
	right:0;
	top:50px;
	width: 35%;
	opacity: 0.0;
	transition-duration:1.0s;
}

#concept .imgGroup li.img02.active{
	top:0;
	opacity: 1.0;
}

#concept .imgGroup li img{
	width: 100%;
}

#newProduct{
	padding: 35px 0;
	background-color: #f7ffb0;
	box-sizing: border-box;
	text-align: center;
	min-height: 550px;
	position: relative;
	overflow: hidden;
}

#newProduct .logo {
    display: block;
    width: 150px;
    margin: auto;
    position: absolute;
    top: 0px;
    left: 0;
    right: 0;
}

#newProduct h2{
	width: 200px;
	margin: 0 auto 20px;
}

#newProduct h2 img{
	width: 100%;
}

#newProduct .textWrap{
	font-size: 14px;
	line-height: 1.7em;
	margin-bottom: 30px;
	letter-spacing: -1px;
}

#newProduct .textWrap .red{
	color: #e73743;
}

#newProduct .logo img{
	width: 100%;
}

#newProduct .inner {
    width: 280px;
    margin: auto;
    background-color: #FFF;
    padding: 120px 10px 90px;
    box-sizing: border-box;
}

#newProduct .imgGroup li.img01 {
	position: absolute;
	left: 0;
	right: 780px;
	top: 50px;
	width: 460px;
	max-width: 460px;
	margin: auto;
	opacity: 0.0;
	transition-duration:1.0s;
}

#newProduct .imgGroup li.img01.active{
	top: 0;
	opacity: 1.0;
}

#newProduct .imgGroup li.img02{
	position: absolute;
	right: 0;
	left: 800px;
	top: 50px;
	width: 450px;
	max-width: 450px;
	margin: auto;
	opacity: 0.0;
	transition-duration:1.0s;	
}

#newProduct .imgGroup li.img02.active{
	top: 0;
	opacity: 1.0;
}

#newProduct .imgGroup li img{
	width: 100%;
}

#newProduct .btnWrap {
	position: relative;
	display: block;
	text-align: center;
	background-color: #4c4948;
	border: 1px solid #4c4948;
	color: #FFF;
	font-size: 12px;
	padding: 5px 6px;
	box-sizing: border-box;
	width: 110px;
	margin: auto;
	transition-duration: 500ms;
	transition-timing-function: ease;
}

#newProduct .btnWrap:hover{
	background-color: #FFF;
	color: #4c4948;
	border: 1px solid #4c4948;
	box-sizing: border-box;
}

#product{
	padding: 50px 0;
	background-color: #FFF;
	box-sizing: border-box;
	position: relative;
}

#product h2{
	text-align: center;
	margin-bottom: 35px;
	font-size: 34px;
	font-weight: bold;
}

#product h2 .title{
	display: block;
	font-size: 34px;
	font-weight: bold;
	margin-bottom: 15px;
}

#product h2 .ruby{
	display: block;
	font-size: 20px;
	font-weight: bold;
	font-family: house-script, sans-serif;
	font-weight: 400;
	font-style: normal;	
}

#product .productGroup {
	overflow-x: hidden;
}

#product .productGroup li{
	width: auto;
	position: relative;
	margin: 0 auto 100px;
}

#product .productGroup li .inner{
	width: auto;
	position: relative;
	margin: auto;
}

#product .productGroup>li:before{
	content: "";
	width: 15px;
	height: 144px;
	background-color: #4c4948;
	position: absolute;
	left:0;
	top: 0;
	z-index: 1;
}

#product .productGroup>li:after{
	content: "";
	width: 90%;
	height: 100%;
	background-color: #e6e6de;
	position: absolute;
	right:0;
	top: 0;
	z-index: 1;
}

#product .productGroup>li .infoWrap {
	float: left;
	width: 350px;
	position: relative;
	z-index: 10;
	left: 25%;
	top: 45px;
}

#product .productGroup>li .infoWrap h3{
	border: 1px solid #000;
	padding: 20px;
	box-sizing: border-box;
	text-align: center;
	font-size: 12px;
	margin-bottom: 25px;
}

#product .productGroup>li .infoWrap h3 .ruby {
	display: inline-block;
	text-align: center;
	font-size: 24px;
	border-bottom: 1px solid #4c4948;
	font-family: house-script, sans-serif;
	font-weight: 400;
	font-style: normal;
	margin: 0 auto 15px;
	padding: 0 10px;
	letter-spacing: 1px;
}

#product .productGroup>li .infoWrap h3 .catch{
	display: block;
	font-size: 18px;
}

#product .productGroup>li .infoWrap h3 .name{
	display: block;
	font-weight: bold;
	font-size: 34px;
	margin-top: 10px;
}

#product .productGroup>li .infoWrap .textWrap{
	font-size: 12px;
	line-height: 1.8em;
	margin-bottom: 15px;
}

#product .productGroup>li .infoWrap .btnWrap{
	position: relative;
	display: block;
	text-align: center;
	background-color: #4c4948;
	color: #FFF;
	font-size: 12px;
	padding: 5px 6px;
	box-sizing: border-box;
	width: 110px;
	margin: auto;
	transition-duration: 500ms;
	transition-timing-function: ease;
}

#product .productGroup>li .infoWrap .btnWrap:hover{
	background-color: #FFF;
	color: #4c4948;
}

#product .productGroup>li .imgGroup {
	float: right;
	width: 56%;
	position: relative;
	z-index: 10;
}

#product .productGroup>li .imgGroup .imgWrap {
	width: 100%;
	max-width: 700px;
	top: -20px;
	position: relative;
}

#product .productGroup .imgGroup .imgWrap img{
	width: 100%;
}

#product .productGroup .imgGroup_type01{
	float: right;
	width: 70%;
}

#product .productGroup .imgGroup_type01 li{
	float: left;
	width: 45%;
}

#product .productGroup .imgGroup_type01 li:first-child{
	margin-right: 10%;
	top: -30px;
}

#product .productGroup .imgGroup_type01 li:last-child{
	top: 50px;
}

#product .productGroup>li .imgWrap .caption{
	display: block;
	text-align: left;
	font-size: 14px;
	margin-top: 10px;
}

#product .productGroup>li .imgWrap .caption.right{
	text-align: right;
}

/*画面サイズが2100px以下の場合*/
@media screen and (max-width: 2100px) {
	#product .productGroup>li .infoWrap {
		left: 23%;
	}
}

/*画面サイズが2000px以下の場合*/
@media screen and (max-width: 2000px) {
	#concept {
		min-height: 600px;
	}
}

/*画面サイズが1800px以下の場合*/
@media screen and (max-width: 1800px) {
	
	#concept .imgGroup li.img01 {
		left: -10%;
		width: 50%;
	}
	
	#concept .imgGroup li.img02 {
		right: -10%;
		width: 50%;
	}
	
	#product .productGroup>li .infoWrap {
		left: 15%;
	}
	
	#concept {
		min-height: 500px;
	}	
	
	#newProduct {
		min-height: 500px;
	}
	
	#newProduct .imgGroup li.img01 {
		width: 400px;
		max-width: 400px;
	}
}

/*画面サイズが1600px以下の場合*/
@media screen and (max-width: 1600px) {
	#newProduct .imgGroup li.img01 {
		width: 400px;
		max-width: 400px;
	}
}


/*画面サイズが1400px以下の場合*/
@media screen and (max-width: 1400px) {
	#concept .imgGroup li.img01 {
		left: -15%;
		width: 60%;
	}
	
	#product .productGroup>li .imgGroup {
		width: 60%;
	}
	
	#product .productGroup>li .infoWrap {
		width: 25%;
		left: 10%;
	}
	
	#newProduct .imgGroup li.img02 {
		left: 680px;
		width: 450px;
		max-width: 450px;
	}
	
}

/*画面サイズが1200px以下の場合*/
@media screen and (max-width: 1200px) {
	#newProduct .imgGroup li.img01 {
		width: 35%;
		max-width: initial;
		right: 680px;
	}
	
	#newProduct .imgGroup li.img02 {
		left: 660px;
		width: 40%;
		max-width: 40%;
	}
	
	#product .productGroup>li .infoWrap {
		width: 25%;
		left: 5%;
	}
}

/*画面サイズが1000px以下の場合*/
@media screen and (max-width: 1000px) {
	
	#concept .imgGroup li.img01 {
		left: -10%;
		top: 15%;
		width: 50%;
	}
	
	#concept .imgGroup li.img01.active{
		top:10%;
	}
	
	#concept .imgGroup li.img02 {
		right: -10%;
		top: 15%;
		width: 50%;
	}
	
	#concept .imgGroup li.img02.active{
		top:10%;
	}
	
	#newProduct .imgGroup li.img01 {
		width: 35%;
		max-width: initial;
		right: 60%;
		top: 15%;
	}
	
	#newProduct .imgGroup li.img01.active {
		top: 10%;
	}

	#newProduct .imgGroup li.img02 {
		left: auto;
		width: 40%;
		max-width: initial;
		right: 0;
	}
	
	header#slider {
		height: 500px !important;
	}
	
	#product .productGroup>li .infoWrap {
		width: 30%;
		left: 50px;
		top: 0;
	}
	
	#product .productGroup>li .imgGroup {
		width: 60%;
	}
}

/*画面サイズが800px以下の場合*/
@media screen and (max-width: 800px) {
	
	#newProduct .imgGroup li.img01 {
		width: 45%;
		max-width: initial;
		right: auto;
		top: 50px;
		float: left;
		left: 20px;
		position: relative;
	}
	
	#newProduct .imgGroup li.img01.active {
		top: 0;
	}
	
	#newProduct .imgGroup li.img02 {
		width: 50%;
		max-width: initial;
		right: 20px;
		left: auto;
		position: relative;
		float: right;
	}
	
	#newProduct .inner {
		width: 350px;
	}
	
	#product .productGroup>li .infoWrap h3 .name {
		font-size: 28px;
	}
	
	#product .productGroup>li .infoWrap h3 .catch {
		font-size: 16px;
	}
	
	#product .productGroup>li .infoWrap h3 {
		padding: 20px 15px;
	}
	
	#product .productGroup .imgGroup_type01 li:first-child {
		margin-right: auto;
	}

	#product .productGroup .imgGroup_type01 li {
		float: none;
		width: auto;
	}
	
}

/*画面サイズが680px以下の場合*/
@media screen and (max-width: 680px) {
	
	header .vegas-wrapper>h1 {
		display: block;
		position: absolute;
		height: 100px;
	}
	
	header .contents h1{
		float: left;
		width: 50%;
		height: auto;
		position: relative;
		left: auto;
		right: auto;
		top: auto;
		bottom: auto;
	}
	
	header .contents h1 img{
		width: 100%;
	}
	
	header h1{
		position: relative;
		width: 80%;
		height: auto;
	}
	
	header h1 .logo{
		display: none;
	}
	
	#concept {
		padding: 100px 0 50px;
		min-height: initial;
	}	

	#concept h2 .title{
		font-size: 25px;
	}
	
	#concept .textWrap{
		width: 80%;
		margin: auto;
		font-size: 14px;
		line-height: 1.8em;
	}
	
	
	#newProduct .textWrap{
		margin-bottom: 20px;
	}
	
	#newProduct .inner {
		padding: 120px 10px 30px;
	}
	
	#product .productGroup li .inner {
		width: auto;
		padding: 20px 20px;
	}
	
	#product .productGroup>li .infoWrap{
		width: 35%;
		left: auto;
	}
	
	#product .productGroup>li .infoWrap h3 {
		padding: 20px 10px;
	}
	
	#product .productGroup>li .infoWrap h3 .name {
		font-size: 25px;
	}
	
	#product .productGroup>li .infoWrap h3 .catch {
		font-size: 14px;
	}
	
	#product .productGroup li{
		margin: 0 auto 40px;
	}
	
	#product .productGroup li:last-child{
		margin: 0 auto;
	}
	
	#product .productGroup>li:after{
		content: "";
		width: 100%;
		height: 100%;
	}
	
	#product .productGroup .imgGroup_type01 li:first-child{
		top: auto;
	}

	#product .productGroup .imgGroup_type01 li:last-child{
		top: auto;
	}
	
	#product h2 {
		margin-bottom: 20px;
	}
	
	#product h2 .title{
		font-size: 25px;
	}
	
	#product .productGroup>li .infoWrap .btnWrap {
		width: auto;
	}
}

/*画面サイズが600px以下の場合*/
@media screen and (max-width: 600px) {
	
	header .vegas-wrapper>h1 .textWrap{
		font-size: 24px;
		margin: 0 0 15px;
	}

	header .vegas-wrapper>h1 .textWrap .large{
		font-size: 30px;
	}

	header .vegas-wrapper>h1 .ruby{
		font-size: 20px;
	}
	
	#concept {
		padding: 100px 0;
	}

	#concept .imgGroup li.img01 {
		left: -10%;
		width: 60%;
		top: 50px;
	}
	
	#concept .imgGroup li.img01.active{
		top:0;
	}
	
	#concept .imgGroup li.img02 {
		right: -10%;
		width: 55%;
		top: 50px;
	}
	
	#concept .imgGroup li.img02.active{
		top:0;
	}
	
	#concept .textWrap,
	#newProduct .textWrap{
		width: auto;
		padding: 0 20px;
	}
	
	#newProduct{
		padding: 50px 20px;
		max-height: inherit;
	}
	
	#newProduct .imgGroup li.img01 {
		position: relative;
		width:auto;
		top: auto;
		left:auto;
		max-width: initial;
	}

	#newProduct .imgGroup li.img02 {
		position: relative;
		width: auto;
		top: auto;
		right:auto;
		max-width: initial;
	}
	
	#newProduct .inner {
		width: auto;
		margin: 0 auto 30px;
		padding: 120px 10px 50px;
	}
	
	#product .productGroup .imgGroup_type01 li{
		float: none;
		width: auto;
	}

	#product .productGroup .imgGroup_type01 li:first-child{
		margin-right: auto;
	}
	
	#product .productGroup>li .infoWrap{
		float: none;
		width: auto;
		left: auto;
		margin: 0 auto 30px;
	}
	
	#product .productGroup>li .imgWrap{
		float: none;
		width: auto;
	}
	
	#product .productGroup>li .imgGroup {
		float: none;
		width: auto;
		position: relative;
		z-index: 10;
	}

}

/*画面サイズが560px以下の場合*/
@media screen and (max-width: 560px) {

}

/*画面サイズが480px以下の場合*/
@media screen and (max-width: 480px) {

}

/*画面サイズが400px以下の場合*/
@media screen and (max-width: 400px) {

}