@charset "utf-8";


/*=============================================
	
	タイトル枠
	
==============================================*/
#top_title_wrap {
	text-align: center;
	color: #FFF;
	position: relative;
	margin: 0;
}
#top_title_wrap .title_img {
	position: relative;
}
#top_title_wrap .title_img:after {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: "";
	background: #000;
	opacity: 0.3;
	display:block;
}
#top_title_wrap h3 {
	position: absolute;
	left: 50%;
	top: 45%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	font-size: 3.6em;
	line-height: 1.0em;
}
#top_title_wrap p.sub {
	position: absolute;
	left: 50%;
	top: 60%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	font-size: 1.4em;
	line-height: 1.0em;
}
	

@media print, screen and (max-width: 768px) {
	/** カスタム **/
	#top_title_wrap h3 {
		font-size: 1.4em;
		line-height: 1.6em;
		padding: 2em;
		background: rgba(0, 0, 0, 0.2);
		width: 15%;
		margin: 0 auto;
		border: 1px solid #666;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		display: inline-block;
		text-align: left;
		height: 60%;
	}	

}

@media print, screen and (min-width: 769px) {
	#top_title_wrap {
		padding: 0 0;
		text-align: center;
		margin: 0;
	}
	#top_title_wrap h3 {
		left: 50%;
		top: 45%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		font-size: 56px;
		margin: 0 0 30px;
	}
	#top_title_wrap p.sub {
		left: 50%;
		top: 65%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		font-size: 14px;
	}
	/** カスタム **/
	#top_title_wrap h3 {
		font-size: 32px;
		line-height: 1.6em;
		padding: 30px;
		background: rgba(0, 0, 0, 0.2);
		width: 70%;
		margin: 0 auto;
		border: 1px solid #666;
	}	
	
}


/*=============================================
	
	ヒストリー
	
==============================================*/
.history_wrap {
	padding: 3em 0;
	position: relative;
}
.webp .history_wrap {
	background:url(/img/concept/bg_history.webp);
	background-repeat: no-repeat;
	background-size: cover;
	}
.no-webp .history_wrap {
	background:url(/img/concept/bg_history.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	}
.history_wrap h3 {
	text-align: center;
	font-size: 1.3em;
	margin-bottom: 1.0em;
}
.history_wrap h4 {
	padding: 0.5em 0;
	text-align: center;
	background: rgba(150, 150, 100, 0.7);
	font-size: 1.1em;
	color: #FFF;
	width: 30%;
	margin: 0 auto 1em;
}
.history_wrap dl dt {
	margin: 0;
}
.history_wrap dl dd {
	background: rgba(255, 255, 255, 0.5);
	padding: 2em;
}
.history_wrap dl dd h5 {
	font-size: 1.2em;
	margin-bottom: 0.8em;
}
.history_wrap dl dd .body {
	line-height: 2em;
}

@media print, screen and (max-width: 768px) {

}

@media print, screen and (min-width: 769px) {
	.history_wrap {
		padding: 50px 0;
		position: relative;
	}
	.history_wrap h3 {
		font-size: 26px;
		margin-bottom: 30px;
	}
	.history_wrap h4 {
		padding: 0.5em 0;
		text-align: center;
		background: rgba(150, 150, 100, 0.7);
		font-size: 14px;
		color: #FFF;
		width: 25%;
		margin: 0 auto 35px;
	}
	.history_wrap dl {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.history_wrap dl dt {
		width: 480px;
		margin: 0;
		margin-right: 40px;
	}
	.history_wrap dl dd {
		width: 400px;
		background: rgba(255, 255, 255, 0.5);
		padding: 30px;
	}
	.history_wrap dl dd h5 {
		font-size: 20px;
		margin-bottom: 0.8em;
	}
	.history_wrap dl dd .body {
		font-size: 13px;
		line-height: 2em;
	}

}


/*=============================================
	
	コンセプト
	
==============================================*/
.concept_wrap {
	padding: 3em 0;
	position: relative;
}
.webp .concept_wrap {
	background:url(/img/concept/bg_concept.webp);
	background-repeat: no-repeat;
	background-size: cover;
	}
.no-webp .concept_wrap {
	background:url(/img/concept/bg_concept.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	}
.concept_wrap h3 {
	text-align: center;
	font-size: 2em;
	margin-bottom: 1.0em;
}
.concept_wrap h4 {
	padding: 0.5em 0;
	text-align: center;
	background: rgba(150, 150, 100, 0.7);
	font-size: 1.1em;
	color: #FFF;
	width: 30%;
	margin: 0 auto 1em;
}
.concept_wrap .lead {
	text-align: center;
	font-size: 1.1em;
	margin: 0 0 2em;
}
.concept_wrap .season {
	margin-bottom: 1.5em;
}
.concept_wrap h5 {
	text-align: center;
	font-size: 1.3em;
	margin: 0 0 1.5em;
}
.concept_wrap .pic_list {
	
}
.concept_wrap .pic_list li {
	margin-bottom: 1em;
}
.concept_wrap .pic_list li.text01, .concept_wrap .pic_list li.text02 {
	padding-top: 1em;
	margin-bottom: 1.5em;
}
@media print, screen and (max-width: 768px) {

}

@media print, screen and (min-width: 769px) {
	.concept_wrap {
		padding: 50px 0;
		position: relative;
	}
	.concept_wrap h3 {
		font-size: 36px;
		margin-bottom: 30px;
	}
	.concept_wrap h4 {
		padding: 0.5em 0;
		text-align: center;
		background: rgba(150, 150, 100, 0.7);
		font-size: 14px;
		color: #FFF;
		width: 25%;
		margin: 0 auto 35px;
	}
	.concept_wrap .lead {
		text-align: center;
		font-size: 1.1em;
		margin: 0 0 2em;
	}
	.concept_wrap .season {
		margin-bottom: 40px;
	}
	.concept_wrap h5 {
		text-align: center;
		font-size: 24px;
		margin: 0 0 30px;
	}
	.concept_wrap .pic_list {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
	.concept_wrap .pic_list li {
		width: 25%;
		margin-bottom: 20px;
	}
	.concept_wrap .pic_list li.pic05, .concept_wrap .pic_list li.pic06 {
		width: 36%;
	}
	.concept_wrap .pic_list li.text01, .concept_wrap .pic_list li.text02 {
		padding-top: 20px;
		margin-bottom: 25px;
		width: 100%;
		text-align: center;
		font-size: 15px;
		line-height: 1.8em;
	}

}