/* CSS Document */
#mainVisual{
	background: url("../img/mainvisual.jpg") no-repeat center;
	background-size: cover;
	position: relative;
	height: 650px;
}
.top_logo{
	font-size: 12rem;
	color: rgb(217, 217, 217, 0.6);
	position: absolute;
	bottom: -9rem;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	letter-spacing: 23px;
}

h1 {
	font-size: 2.5rem;
	letter-spacing: 5px;
	margin-bottom: 94px;
	font-weight: 400;
}

.topVisual{
	text-align: left;
	position: relative;
	z-index: 10;
	padding: 6% 0;
	line-height: 2;
	margin-bottom: 80px;
}

.topVisual .bg_img{
	position: absolute;
	max-width: 620px;
	width: 60%;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	z-index: -1;
}

.topVisual .lead{
	font-size: 2.6rem;
	margin-bottom: 24px;
	font-weight: 700;
	line-height: 2.8;
	color: #cd4b52;
}
.topVisual span.line{
	display: block;
	width: 100px;
	height: 1px;
	background: #cd4b52;
	position: absolute;
	bottom: 0;
	left: 0;
}

#sec_01{
	padding: 122px 0 194px;
}
	#sec_01 .txt_contents{
		text-align: left;
		font-size: 1.7rem;
		line-height: 2.5;
	}
		#sec_01 .txt_contents > p{
			margin-bottom: 80px;
		}
		#sec_01 .txt_contents > ul{
			justify-content: center;
		}
			#sec_01 .txt_contents > ul li{
				margin: 0 40px;
			}

#sec_02{
	margin-top: 120px;
	position: relative;
	background: #fafafa;
	padding-bottom: 240px;
}
	#sec_02 h2{
		color: rgb(217, 217, 217, 0.6);
		font-size: 12rem;
		font-weight: 400;
		letter-spacing: 23px;
		margin-top: -82px;
		margin-bottom: 40px;
		display: inline-block;
	}
	#sec_02 .lead_txt{
		font-size: 2rem;
		line-height: 3;
	}
		#sec_02 .lead_txt span{
			margin: 20px 0 80px;
			font-size: 2.7rem;
			color: #cd4b52;
			display: block;
		}

ul.gallery{
	justify-content: space-between;
	max-width: 1320px;
	width: 100%;
	margin: 0 auto;
}

ul.gallery li{
	max-width: 412px;
	width: 32%;
}
ul.gallery li:nth-child(2){
	padding-top: 12%;
}
#end_txt{
	font-size: 2rem;
	line-height: 3;
	margin-top: 140px;
}

#shopBtn01{
	margin: 11% auto 12%;
}
#shopBtn01 .tgl_btn{
	margin-top: 9.3%;
}

@media screen and (max-width: 1500px){
	#mainVisual {
		height: 43.366vw;
	}
}
@media screen and (max-width: 1080px){
	.top_logo,
	#sec_02 h2{
		font-size: 11vw;
	}
	.top_logo{
		bottom: -20%;
	}
}
@media screen and (max-width: 980px){
	.top_logo,
	#sec_02 h2{
		font-size: 9vw;
	}
	.top_logo {
		bottom: -17%;
	}
	#sec_02 h2{
		margin-top: -7%;
	}
}
@media screen and (max-width:900px){
	#sec_01 {
		padding: 80px 0 60px;
	}
	h1{
		margin-bottom: 10px;
	}
	.topVisual .bg_img{
		width: 70%;
	}
}
@media screen and (max-width:768px){
}
@media screen and (max-width:767px){
	.spStyle{
		display: block;
	}
	#mainVisual{
		background: url(../img/mainvisual_sp.jpg) no-repeat center;
		background-size: cover;
	}
	.topVisual{
		padding: 9.352% 0 0;
		margin-bottom: 0;
	}
		.topVisual .bg_img{
			position: inherit;
			max-width: none;
			width: 100%;
			top: 0;
			right: 0;
			transform: none;
			text-align: center;
		}

		.topVisual .lead{
			line-height: 1.8;
			margin-top: 20px;
			font-size: 1.6rem;
			margin-bottom: 10px;
		}
		.topVisual span.line{
			display: none;
		}
	
	#sec_01 .txt_contents{
		font-size: inherit;
		line-height: 2;
	}
		#sec_01 .txt_contents > p{
			margin-bottom: 40px;
		}
		#sec_01 .txt_contents > ul li{
			margin: 0;
		}
			#sec_01 .txt_contents > ul li:first-child{
				margin-right: 20px;
			}
		
	#sec_02 {
		margin-top: 80px;
		padding-bottom: 100px;
	}
		#sec_02 .lead_txt{
			font-size: 1.5rem;
			line-height: 2.5;
			letter-spacing: 0;
		}
			#sec_02 .lead_txt span{
				font-size: 1.8rem;
				margin: 0 0 20px;
			}
	
	#end_txt{
		margin-top: 100px;
		font-size: 1.6rem;
		line-height: 2.5;
		letter-spacing: 0;
	}
}

@media screen and (max-width:680px){
	.top_logo, #sec_02 h2 {
		font-size: 11vw;
		padding-left: 10px;
		letter-spacing: 8px;
		line-height: 1;
	}
	.top_logo {
		bottom: -15%;
	}
	#sec_02 h2 {
		position: absolute;
		top: -20px;
		left: 0;
		margin: 0;
		width: 100%;
	}
	#sec_02 > .contents.top{
		padding-top: 12%;
	}
	ul.gallery{
		display: block;
	}
	ul.gallery li{
		width: 70%;
		margin: 0 auto;
	}
	ul.gallery li:nth-child(2){
		padding: 20px 0;
	}
}


@media screen and (max-width:480px){
	#sec_01 {
		padding: 90px 0 40px;
	}
	#shopBtn01{
		margin: 13.5% auto 29%;
	}
	#shopBtn01 .tgl_btn{
		margin-top: 15%;
	}
}
