@charset "UTF-8";

/* ====================================
	ベーススタイル
 ==================================== */
article {
	font-weight: 400;
}

em {
	background: #FFFF00;
	font-weight: 500;
}

.font-bold {
	font-weight: 500;
}

.color-white {
	color: #fff;
}

/* フレックスコンテナ */
.flex-container {
	display: flex;
	flex-wrap: wrap;
}

.flex-item {
	width: 100%;
}

/* ====================================
	共通スタイル
 ==================================== */
.bg-gray {
	background: #F5F5F5;
}

.color-orange {
	font-weight: 500;
	color: #F55747;
}

/* アローボタン・左 */
.btn-arrow {
	display: inline-block;
	text-align: center;
}

.btn-arrow a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 0.5em 1em 0.5em 2em;
	font-size: inherit;
	line-height: inherit;
	background-color: #535353;
	background-image: url(/products/common/images/chevron-right-solid-w.svg);
	background-repeat: no-repeat;
	background-position: left 0.7em center;
	background-size: auto 1em;
	color: #fff;
	text-decoration: none;
}

.btn-arrow.btn-arrow.ba-r a {
	padding: 0.7em 2em 0.7em 1em;
	background-position: right 0.7em center;
}

.btn-arrow.ba-lightgray a {
	background-color: #8D8D8D;
}

/* サブセクション */
.sub-title {
	font-weight: bold;
	transform: rotate(-3deg);
}

.sub-title-num {
	color: #F55747;
}

/* intro */
#intro {
	background: #F55747;
	color: #fff;
}

/* ページナビメニュー */
#pageNavi {
	background: #F55747;
	color: #fff;
}

#pageNavi .page-navi-title {
	text-align: center;
}

/* 個別スタイル */
.sub01-box .ttl {
	background: #F55747;
	color: #fff;
}

.sub02-box .recipe {
	padding: 1rem 0;
	border-top: solid 2px #F55747;
	border-bottom: solid 2px #F55747;
}

.sub06-box .sub06-ttl .caption {
	color: #000;
}

/* 製品 */
.product-link a {
	display: inline-block;
	width: 100%;
	padding: 0.1em 0;
	font-weight: 500;
	background: #F55747;
	color: #fff;
	border-radius: 0.5rem;
	text-align: center;
	text-decoration: none;
}

.product-link a::before {
	content: '→';
	margin-right: 0.25em;
}

/* ====================================
	スマートフォン専用スタイル
===================================== */
@media only screen and (max-width: 767px) {
	.tb {
		display: none;
	}

	.mts {
		margin-top: 2rem;
	}

	.maxw480 {
		max-width: 480px;
		margin: 0 auto;
	}

	.frame-red {
		border: solid 6px #F55747;
	}

	/* 画像リスト */
	ul.list-figures {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	ul.list-figures li .img {
		width: 100%;
	}

	ul.list-figures.half li {
		width: 48%;
	}

	ul.list-figures.col3 li {
		margin-top: 2rem;
	}

	ul.list-figures.col3 li:nth-child(-n+2) {
		margin-top: 0;
	}

	/* ページナビメニュー */
	#pageNavi {
		padding: 6rem 0 6rem;
	}

	.page-navi-title {
		margin-bottom: 2rem;
		font-size: 2rem;
	}

	ul.list-page-navi {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	ul.list-page-navi>li {
		width: 50%;
		padding: 2%;
	}

	ul.list-page-navi>li:nth-child(-n+2) {
		margin-top: 0;
	}

	/* メインセクション */
	.main-section {
		padding: 6rem 0 0;
		font-size: 1.6rem;
		line-height: 2.2;
	}

	.intro-img {
		margin-top: 4rem;
	}

	/* サブセクション */
	.sub-section {
		padding: 3rem 0 4rem;
	}

	.sub-title-header {
		margin: 0 0 3rem;
		text-align: center;
	}

	.sub-title-num {
		width: 150px;
		height: 70px;
		margin: 0 auto 1rem;
		font-size: 2.4rem;
		line-height: 1;
		font-weight: bold;
		background-image: url(images/change.png);
		background-size: 100% auto;
		background-position: center;
		background-repeat: no-repeat;
		text-shadow: #fff 1px 1px 2px, #fff -1px 1px 2px,
			#fff 1px -1px 2px, #fff -1px -1px 2px;
	}

	.sub-title-container {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-content: center;
		padding: 0 0 34px;
		position: relative;
	}

	.sub-title-container::before {
		content: '';
		display: block;
		width: 200px;
		height: 34px;
		background: url(images/line.png) no-repeat center center;
		background-size: contain;
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translate(-50%, 0);
	}

	.sub-title {
		font-size: 2.4rem;
	}

	.text-container {
		margin-top: 3rem;
	}

	.text-container .text {
		font-size: 1.4rem;
		line-height: 1.8;
	}

	/* 注釈セクション */
	.caption-section {
		padding: 3rem 0 0;
	}

	/* 個別スタイル */
	.sub01-box {
		margin-top: 3rem;
	}

	.sub01-box .ttl {
		margin: 0 0 2rem;
		padding: .5em 1em;
		font-size: 1.4rem;
		text-align: center;
		border-radius: 1rem;
	}

	.sub02-box {
		margin-top: 3rem;
	}

	.sub02-box .ttl,
	.sub02-box .point {
		font-weight: 500;
		color: #F55747;
	}

	.sub02-box .ttl {}

	.sub02-box .recipe {
		margin: 1rem 0 1rem;
		font-size: 1.4rem;
	}

	.sub02-box .point {
		font-size: 1.4rem;
	}

	.sub02-box .flex-text {
		width: 100%;
	}

	.sub02-box .flex-img {
		width: 100%;
		margin-top: 2rem;
	}

	.sub03-box {
		margin-top: 3rem;
	}

	.sub04-box {
		margin-top: 3rem;
	}

	.sub04-box .list-figures.col3 li {
		width: 48%;
		text-align: center;
	}

	.sub04-box .ttl {
		margin-bottom: 0.5em;
		font-size: 1.2rem;
	}

	.sub04-box .ttl::after {
		content: '';
		display: block;
		width: 100%;
		height: 4px;
		margin: .2em auto 0;
		background: #F55747;
	}

	.sub04-box .text {
		font-size: 1.3rem;
	}

	.sub05-box {
		margin-top: 3rem;
	}

	.sub05-box .ttl {
		margin: 2rem 0 0;
		font-size: 1.4rem;
		text-align: center;
	}

	.sub06-box {
		margin-top: 3rem;
	}

	.sub06-box .flex-container {
		font-size: 1.2rem;
	}

	.sub06-box .flex-container.half {
		justify-content: space-between;
	}

	.sub06-box .flex-container.half>.flex-item {
		width: 48%;
	}

	.sub06-box .sub06-ttl {
		margin-bottom: 0.5em;
	}

	.sub06-box .ttl {
		margin: 0.5em 0;
		text-align: center;
	}

	/* 製品 */
	.products-section {
		padding-top: 3rem;
	}

	.products-main-title {
		padding: 0.8em 1em;
		background: rgba(245, 87, 71, 1);
		color: #fff;
		text-align: center;
	}

	.products-title {
		display: block;
		margin: 0 auto 3rem;
		padding: 0.2em 0;
		font-size: 1.8rem;
		text-align: center;
		position: relative;
	}

	.products-title::before {
		content: '';
		display: block;
		width: 100%;
		height: 4px;
		background: #D9D9D9;
		position: absolute;
		bottom: -6px;
		left: 0;
	}

	.products-title::after {
		content: '';
		display: block;
		width: 50%;
		height: 4px;
		background: #F55747;
		position: absolute;
		bottom: -6px;
		left: 0;
	}

	.product-item {
		padding: 2rem 0;
		border-top: dotted 1px #535353;
	}

	.product-item:first-of-type {
		border-top: none;
	}

	.product-text {
		font-size: 1.4rem;
	}

	.img-type-container {
		display: flex;
		justify-content: center;
		margin-top: 1rem;
	}

	.img-type-container .img {
		width: 60%;
	}

	.img-type-container .type {
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		width: 110px;
		padding: 0 0 5% 1rem;
		font-size: 1.2rem;
	}

	/*	.product-item .size {
		margin-left: 1em;
	}*/
	.popup-movie {
		padding-bottom: 1em;
	}
}

/* ====================================
	PC&タブレット、印刷専用スタイル
===================================== */
@media print,
screen and (min-width: 768px) {
	article .outer-base-width {
		padding-left: 5%;
		padding-right: 5%;
	}

	.mts {
		margin-top: 4rem;
	}

	.maxw750 {
		max-width: 750px;
		margin-left: auto;
		margin-right: auto;
	}

	.maxw750 {
		max-width: 750px;
		margin-left: auto;
		margin-right: auto;
	}

	.maxw820 {
		max-width: 820px;
		margin-left: auto;
		margin-right: auto;
	}

	.maxw840 {
		max-width: 840px;
		margin-left: auto;
		margin-right: auto;
	}

	.maxw860 {
		max-width: 860px;
		margin-left: auto;
		margin-right: auto;
	}

	.maxw960 {
		max-width: 960px;
		margin-left: auto;
		margin-right: auto;
	}

	.frame-red {
		border: solid 12px #F55747;
	}

	/* フレックスコンテナ：ハーフ */
	.flex-container.half {
		justify-content: space-between;
	}

	.flex-container.half>.flex-item {
		width: 48%;
	}

	.flex-container .flex-item-text {
		padding-right: 4%;
		flex: 1;
	}

	.flex-container .flex-item-img {
		width: 360px;
	}

	/* 画像リスト */
	ul.list-figures {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	ul.list-figures li .img {
		width: 100%;
	}

	ul.list-figures.half li {
		width: 48%;
	}

	ul.list-figures.col3 li {
		width: 33.25%;
	}

	/* ページナビメニュー */
	#pageNavi {
		padding: 16rem 0 16rem;
	}

	.page-navi-title {
		margin-bottom: 7rem;
		font-size: 3.2rem;
	}

	ul.list-page-navi {
		display: flex;
		flex-wrap: wrap;
		max-width: 880px;
		margin: 0 auto;
	}

	ul.list-page-navi>li {
		width: calc(100% / 3);
		padding: 1.8%;
	}

	ul.list-page-navi>li>a {
		display: block;
		text-decoration: none;
		border-radius: 2rem;
		position: relative;
		overflow: hidden;
	}

	ul.list-page-navi>li>a .more {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-content: center;
		width: 100%;
		height: 100%;
		font-size: 3rem;
		font-weight: bold;
		font-style: italic;
		background: rgba(0, 0, 0, 0.8);
		color: #fff;
		position: absolute;
		bottom: -100%;
		left: 0;
		transition: .4s;
	}

	ul.list-page-navi>li>a .more .text {
		width: 100%;
		text-align: center;
	}

	ul.list-page-navi>li>a .more::after {
		content: '';
		display: block;
		width: 3rem;
		height: 3rem;
		background-color: #F55747;
		background-image: url(/products/common/images/chevron-down-solid-w.svg);
		background-size: 2rem auto;
		background-position: center center;
		background-repeat: no-repeat;
		border-radius: 50%;
	}

	ul.list-page-navi>li>a.hovering .more {
		bottom: 0;
	}

	/* メインビジュアル */
	#mainVisual {
		height: 800px;
		background: url(images/bg-main-visual.jpg) no-repeat center bottom;
		position: relative;
	}

	.mv-text-container {
		width: 100%;
		max-width: 800px;
		height: 440px;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%, 0);
	}

	.mv-text-item {
		position: absolute;
		top: 0;
		left: 0;
	}

	/* メインビジュアル：ホットクック */
	.mv-hotcook-container {
		width: 100%;
		height: 360px;
		position: absolute;
		bottom: 60px;
		left: 0;
		overflow: hidden;
	}

	.mv-hotcook-wrap {
		width: 100%;
		height: 100%;
		transform-origin: bottom center;
	}

	.mv-hotcook-wrap.off {
		animation: MvPop1 0.15s linear;
	}

	.mv-hotcook-wrap.on {
		animation: MvPop2 0.15s linear;
	}

	.mv-hotcook-bg,
	.mv-hotcook-item {
		width: 100%;
		height: 100%;
		background-size: 2190px auto;
		background-position: left bottom;
		background-repeat: repeat-x;
		position: absolute;
		bottom: 0;
		left: 0;
		animation: 20s MvBgRp infinite linear;
	}

	.mv-hotcook-bg {
		background-image: url(images/bg-mv-hotcook.png);
	}

	.mv-hotcook-wrap.off .mv-hotcook-item {
		background-image: url(images/mv-hotcook-off.png);
	}

	.mv-hotcook-wrap.on .mv-hotcook-item {
		background-image: url(images/mv-hotcook-on.png);
	}

	/* メインセクション */
	.main-section {
		padding: 10rem 0 0;
		font-size: 1.8rem;
		line-height: 2.5;
		text-align: center;
	}

	.intro-img {
		margin-top: 4rem;
	}

	/* サブセクション */
	.sub-section {
		padding: 10rem 0 12rem;
	}

	.sub-title-header {
		margin: 0 0 6rem;
		text-align: center;
	}

	.sub-title-num {
		width: 230px;
		height: 84px;
		margin: 0 auto 4rem;
		font-size: 2.4rem;
		line-height: 1;
		font-weight: bold;
		background-image: url(images/change.png);
		background-size: 100% auto;
		background-position: center;
		background-repeat: no-repeat;
		text-shadow: #fff 1px 1px 2px, #fff -1px 1px 2px,
			#fff 1px -1px 2px, #fff -1px -1px 2px;
	}

	.sub-title-container {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-content: center;
		padding: 0 0 66px;
		position: relative;
	}

	.sub-title-container::before {
		content: '';
		display: block;
		width: 432px;
		height: 66px;
		background: url(images/line.png) no-repeat center center;
		background-size: contain;
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translate(-50%, 0);
	}

	.sub-title {
		font-size: 6.2rem;
		line-height: 1.4;
	}

	.text-container {
		margin-top: 6rem;
	}

	.text-container .text {
		line-height: 2.2;
	}

	/* 注釈セクション */
	.caption-section {
		padding: 6rem 0 0;
	}

	/* 個別スタイル */
	.sub01-box {
		margin-top: 8rem;
	}

	.sub01-box .ttl {
		width: 560px;
		margin: 0 auto 4rem;
		font-size: 1.8rem;
		line-height: 1.8;
		text-align: center;
		border-radius: 1rem;
	}

	.sub02-box {
		margin-top: 6rem;
	}

	.sub02-box .ttl {
		font-size: 1.8rem;
	}

	.sub02-box .recipe {
		margin: 2rem 0 1rem;
		font-size: 1.4rem;
	}

	.sub02-box .flex-container {
		justify-content: space-between;
	}

	.sub02-box .flex-text {
		width: 52%;
	}

	.sub02-box .flex-img {
		width: 46%;
	}

	.sub03-box {
		width: 640px;
		margin: 8rem auto 0;
	}

	.sub04-box {
		margin-top: 6rem;
	}

	.sub04-box .list-figures.col3 li {
		width: 30%;
		text-align: center;
	}

	.sub04-box .ttl {
		margin-bottom: 0.5em;
		font-size: 2rem;
	}

	.sub04-box .ttl::after {
		content: '';
		display: block;
		width: 80%;
		height: 4px;
		margin: 0 auto;
		background: #F55747;
	}

	.sub05-box {
		margin-top: 6rem;
	}

	.sub05-box .ttl {
		margin: 2rem 0 0;
		font-size: 2.2rem;
		text-align: center;
	}

	.sub06-box {
		width: 540px;
		margin: 6rem auto 0;
	}

	.sub06-box .flex-container {
		font-size: 1.4rem;
	}

	.sub06-box .sub06-ttl {
		margin-bottom: 0.5em;
		font-size: 1.8rem;
	}

	.sub06-box .ttl {
		margin: 0.5em 0;
		text-align: center;
	}


	/* 製品 */
	.products-section {
		padding-top: 8rem;
	}

	.products-main-container .visual {
		max-width: 2000px;
	}

	.products-main-title {
		padding: 0.5em 1em 0.5em 10%;
		font-size: 2.4rem;
		background: rgba(245, 87, 71, .85);
		color: #fff;
		position: absolute;
		top: 10%;
	}

	.products-title {
		display: block;
		width: 450px;
		margin: 0 auto 6rem;
		padding: 0.2em 0;
		font-size: 3rem;
		text-align: center;
		position: relative;
	}

	.products-title::before {
		content: '';
		display: block;
		width: 100%;
		height: 8px;
		background: #D9D9D9;
		position: absolute;
		bottom: -6px;
		left: 0;
	}

	.products-title::after {
		content: '';
		display: block;
		width: 50%;
		height: 8px;
		background: #F55747;
		position: absolute;
		bottom: -6px;
		left: 0;
	}

	.product-container {
		display: flex;
		justify-content: center;
		padding: 4rem 0 12rem;
	}

	.product-item {
		width: 33.33%;
		border-right: dotted 1px #535353;
		text-align: center;
	}

	.product-item:first-of-type {
		border-left: dotted 1px #535353;
	}

	.product-text {
		font-size: 1.4rem;
	}

	.product-item .img {
		padding: 8%;
	}

	.product-link {
		width: 9em;
		margin: 0 auto;
	}

	.product-link a {
		display: inline-block;
		padding: 0.1em 1.2em;
		font-weight: 500;
		background: #F55747;
		color: #fff;
		border-radius: 0.5rem;
	}

	.popup-movie {
		padding-bottom: 1.2em;
	}

}

/* ====================================
	タブレット、印刷専用スタイル
===================================== */
@media print,
screen and (min-width: 768px) and (max-width: 1079px) {}

/* ====================================
	PC専用スタイル
===================================== */
@media only screen and (min-width: 1080px) {
	.tb {
		display: none;
	}
}

/* ====================================
	スクリーン専用スタイル
===================================== */
@media screen {}