@charset "UTF-8";

/* ===============================
	utility
=============================== */
.season-detail {
	display: none;
}

.current-season .season-detail {
	display: block;
}

/* ===============================
	PC / Tab
=============================== */
@media print,
screen and (min-width: 481px) {
	h2 {
		font-size: 4rem;
		line-height: 1.4;
	}

	/* 基本セクション */
	.subBox {
		padding-bottom: 125px;
		font-size: 1.6rem;
		line-height: 2;
	}

	.subBox .baseWidth {
		padding-top: 40px;
		text-align: center;
	}

	.textBox {
		margin-top: 50px;
	}

	.imgBox {
		margin-top: 60px;
	}

	.subBox ul.photos {
		justify-content: space-between;
		text-align: left;
	}

	.arrow.arrow-left {
		padding-left: 1em;
	}

	.subBox ul.photos a {
		display: block;
		position: relative;
	}

	.subBox ul.photos a:before {
		content: '';
		display: block;
		width: 300px;
		height: 200px;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
		transition: 0.4s;
	}

	.subBox ul.photos a:hover:before {
		opacity: 1;
		-webkit-box-shadow: 3px 3px 10px 0px rgba(0, 0, 0, 0.7);
		-moz-box-shadow: 3px 3px 10px 0px rgba(0, 0, 0, 0.7);
		box-shadow: 3px 3px 10px 0px rgba(0, 0, 0, 0.7);
	}

	/* メインビジュアル */
	.main-visual {
		overflow: hidden;
		position: relative;
		height: 700px;
		margin: 0 auto;
	}

	.main-visual .title {
		position: absolute;
		top: 0;
		left: 50%;
		-moz-transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-o-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
		z-index: 52;
	}

	.slider-wrap .slide-image {
		overflow: hidden;
	}

	.slider-wrap .slide-image .image {
		height: 700px;
	}

	.slider-wrap .slide-image .image {
		width: 115%;
		width: calc(100% + 50px);
	}

	.slider-wrap .slide-image .image.slide01 {
		background: url(images/bg-main-visual01.jpg) no-repeat center center;
		background-size: cover;
	}

	.slider-wrap .slide-image .image.slide02 {
		background: url(images/bg-main-visual02.jpg) no-repeat center center;
		background-size: cover;
	}

	.slider-wrap .slide-image .image.slide03 {
		background: url(images/bg-main-visual03.jpg) no-repeat center center;
		background-size: cover;
	}

	.slider-wrap .image {
		-webkit-animation: mvslideAnime 20s forwards;
		animation: mvslideAnime 20s forwards;
	}

	.slider-wrap .bx-wrapper img {
		visibility: hidden;
	}

	.mainImg {
		overflow: hidden;
		position: relative;
	}

	.mainImg img {
		position: relative;
		left: 50%;
		-moz-transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-o-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	.main-img-container {
		display: flex;
		flex-wrap: wrap;
		row-gap: 2rem;
		justify-content: center;
		max-width: 520px;
		margin: 6rem auto;
	}

	.main-img-container img {
		width: 100%;
		height: auto;
		vertical-align: middle;
	}

	.prod-healsio {
		width: 50%;
	}

	.prod-hotcook {
		width: 50%;
		margin-left: -2rem;
	}

	.healsio-logo {
		max-width: 250px;
		margin: 0 auto;
	}

	/* 個別スタイル */
	#main {
		padding-top: 60px;
		padding-bottom: 100px;
		font-size: 1.8rem;
		line-height: 2.8;
		text-align: center;
	}

	.iconSeason {
		margin-top: 40px;
	}

}

@media screen and (max-width: 1500px) {

}

/* ===============================
	mobile
=============================== */
@media screen and (max-width: 480px) {
	h2 {
		font-size: 2.4rem;
		line-height: 1.4;
	}

	/* 基本セクション */
	.subBox {
		padding-bottom: 4rem;
		font-size: 1.3rem;
		line-height: 2;
	}

	.subBox .baseWidth {
		padding-top: 3rem;
		text-align: center;
	}

	.seasonTtl {
		text-align: center;
	}

	.textBox {
		margin-top: 3rem;
	}

	.imgBox {
		margin-top: 3rem;
	}

	.main-img-container {
		display: flex;
		flex-wrap: wrap;
		row-gap: 2rem;
		justify-content: center;
		margin: 3rem auto;
	}

	.main-img-container img {
		width: 100%;
		height: auto;
		vertical-align: middle;
	}

	.prod-healsio {
		width: 50%;
	}

	.prod-hotcook {
		width: 50%;
		margin-left: -2rem;
	}

	.healsio-logo {
		max-width: 200px;
		margin: 0 auto;
	}
	/* 個別スタイル */
	#main {
		padding-top: 3rem;
		padding-bottom: 6rem;
		font-size: 1.3rem;
		line-height: 2;
		text-align: center;
	}

	.iconSeason {
		padding: 0 36%;
		margin-top: 2rem;
	}

	.subBox ul.photos {
		display: flex;
		justify-content: space-between;
	}

}