@charset "UTF-8";
/****************************************
　　lemix下層共通
****************************************/
footer {
	padding-top: 6em;
}
@media (min-width: 768px) {
	footer {
		padding-top: min(9.2vw, 92px);
	}
}
.contentInner {
	text-align: center;
	padding-top: 3em;
	padding-bottom: 1em;
}
@media (min-width: 768px) {
	.contentInner {
		padding-top: 5.4em;
		padding-bottom: 0;
	}
	.contentInner:last-child {
		padding-bottom: 7em;
	}
	.contentInner:first-child {
		padding-top: 114px;
	}
}
.leadText {
	line-height: 2.5;
	text-align: left;
}
.photoArea figure {
	margin-bottom: 1em;
}
.photoArea figure:last-child {
	margin-bottom: 0;
}
@media (min-width: 768px) {
	.leadText {
		line-height: 3;
		display: inline-block;
		margin-top: 0.8em;
	}
	.leadText.box_pc {
		max-width: 775px;
	}
	.photoArea.flex_pc {
		display: flex;
		justify-content: space-between;
		margin-top: 1.6em;
	}
	.photoArea.flex_pc figure {
		width: 49.2%;
		margin-bottom: 0;
	}
}
/*　block　PC横並び2カラム
-----------------------------*/
.block .text {
	margin-bottom: 1em;
}
.block .title03 {
	margin-bottom: 1em;
}
.block figure {
	width: 80%;
	margin: 0 auto;
}
.block figure img {
	width: 100%;
	max-width: 300px;
}

@media (min-width: 768px) {
	.block {
		margin-top: 0.8em;
		display: flex;
		justify-content: space-between;
	}
	.block .text {
		text-align: left;
		margin: 0;
	}
	.block .title03 {
		margin-bottom: 0.5em;
	}
	.block figure {
		width: auto;
		margin: 0;
	}
}
/* -------------------------------------
method：調理法
----------------------------------------*/
@media (min-width: 768px) {
	#method .contentInner {
		padding-bottom: 6em;
	}
	#method .title01 {
		max-width: 817px;
	}
	#method .leadText {
		font-size: min(2.0vw, 20px);
		line-height: 3.2;
		margin-bottom: 2em;
	}
}
/*block*/
#method .block {
	margin-top: 1em;
}
#method .block .text p {
	font-size: 13px;
	line-height: 2;
	text-align: left;
}
#method .block figure img {
	width: min(25vw, 162px);
}
@media (min-width: 768px) {
	#method .block {
		align-items: center;
        margin-left: auto;
        margin-right: auto;
        max-width: 748px;
		margin-top: 1.5em;
	}
	#method .block figure {
		order: 1;
		width:28%;
		margin: 0;
		text-align: left;
	}
	#method .block figure img {
		width: min(14vw, 162px);
	}
	#method .block .text {
		order: 2;
		width: 71%;
	}
}
/*methodList*/
#methodList {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#methodList li {
	width: 48%;
	margin-bottom: 6%;
}
#methodList li p {
	text-align: left;
	font-size: min(3.5vw, 12px);
	letter-spacing: 0.05em;
	line-height: 2.3;
	margin-top: 1em;
}
@media (min-width: 768px) {
	#methodList li {
		width: 22.9%;
		margin-bottom: 2.8%;
	}
}
/* -------------------------------------
lineup：ランナップ
----------------------------------------*/
@media (min-width: 768px) {
	#lineup .contentInner {
		padding-top: 0;
		padding-bottom: 4.8em;
	}
	#lineup .title01 {
		max-width: 817px;
	}
}
.lineupList {
	margin-top: 14px;
	max-width: 1000px;
	width: 100%;
	margin-inline: auto;
	/* 以下gridレイアウト用 */
	display: grid;
	gap: 14px;/* 画像間の余白 */
	grid-auto-flow: dense; /* 隙間を埋めながら配置 */
	grid-template-columns: repeat(3, 1fr); /* カラム数を設定 */
}
h1 + .lineupList {
	margin-top: 22px;
}
.lineupList li:first-child {
	grid-column: 1/3;
	grid-row: 1/3;
}
.lineupList li:nth-child(2) {
	grid-column: 3/4;
	grid-row: 1/2;
}
.lineupList li:nth-child(3) {
	grid-column: 4/3;
	grid-row: 2/3;
}
.lineupList li:nth-child(4) {
	grid-column: 1/2;
	grid-row: 3/4;
}
.lineupList li:nth-child(5) {
	grid-column: 2/3;
	grid-row: 3/4;
}
.lineupList li:nth-child(6) {
	grid-column: 3/4;
	grid-row: 3/4;
}
.lineupList li:nth-child(7) {
	grid-column: 1/2;
	grid-row: 4/5;
}
.lineupList li:nth-child(8) {
	grid-column: 1/2;
	grid-row: 5/6;
}
.lineupList li:nth-child(9) {
	grid-column: 2/4;
	grid-row: 4/6;
}
/* 2カラム用 */
.lineupList.co2 {
	grid-template-columns: repeat(2, 1fr); 
}
.lineupList.co2 li:first-child {
	grid-column: 1/2;
	grid-row: 1/2;
}
.lineupList.co2 li:nth-child(2) {
	grid-column: 2/3;
	grid-row: 1/2;
}
/* アスペクト比設定 */
.lineupList li {
	display: block;
	aspect-ratio: 324/216;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.lineupList li:first-child,
.lineupList li:nth-child(9) {
	aspect-ratio: 331/223;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.lineupList.co2 li {
	aspect-ratio: 493/329;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/*-----------------------
 モーダル内
------------------------*/
/*モーダルのベース*/
.lineup-iziModal.iziModal {
	display: none;
	width: 90%;
	max-width: 918px !important;
	box-shadow: none;
	background: none;
}
@media screen and (max-width: 767px) {
	.lineup-iziModal.iziModal {
		width: 95%;
	}
	.lineup-iziModal.iziModal::after {
		display: none;
	}
}
/*モーダル内のスクロールバー非表示*/
.lineup-iziModal.iziModal.hasScroll .iziModal-wrap {
	-ms-overflow-style: none;
	scrollbar-width: none;
}
.lineup-iziModal.iziModal.hasScroll .iziModal-wrap::-webkit-scrollbar {
	display:none;
}
/*クローズボタン*/
.lineup-iziModal .closeModalBtn {
	display: block;
	width: 62px;
	height: auto;
	position: absolute;
	z-index: 1;
	top: 60px;
	right: 60px;
}
.lineup-iziModal .closeModalBtn:hover {
	cursor: pointer;
}
@media screen and (max-width: 767px) {
	.lineup-iziModal .closeModalBtn {
		width: 30px;
		top: 80px;
		right: 20px;
	}
}
/*モーダルのキャプション出さない*/
.iziModal-navigate-caption {
	display: none!important;
}
/*モーダル時ブラウザのスクロールバー出す*/
html.iziModal-isAttached, html.iziModal-isOverflow{
	overflow-y: auto!important;
	overscroll-behavior-y: contain!important;
}
/*モーダル枠内のスタイル*/
.modalItem__inner {
	box-sizing: border-box;
	border-radius: min(7.7vw, 77px);
	position: relative;
}
.modalItem__inner div:before,
.modalItem__inner div:after {
	content: none;
}
.modalItem__inner .bg {
	background-color: #ffffff;
	border-radius: min(7.7vw, 77px);
	padding: min(6vw, 80px) min(8vw, 145px);
}
.modalItem__inner figure {
	text-align: center;
	margin: 0 auto 2em auto;
}
.modalItem__inner h3 {
	line-height: 1.2;
	font-size: min(4.3vw, 43px);
}
.modalItem__inner h2 {
	line-height: 1.2;
	font-size: min(3.5vw, 30px);
	margin-bottom: 0.5em;
}
.modalItem__inner h2 span {
	line-height: inherit;
	padding-left: 0.5em;
	margin-left: 0.5em;
	border-left: 1px solid #090000;
	display: inline-block;
	vertical-align: top;
}
.modalItem__inner p {
	line-height: 1.4;
	font-size: min(3vw, 20px);
}
@media screen and (max-width: 767px) {
	.modalItem__inner .bg {
		border-radius: min(4vw, 77px);
		padding: min(6vw, 80px);
	}
	.modalItem__inner {
		border-radius: min(4vw, 77px);
		margin-top: 50px;
		margin-bottom: 50px;
		padding: 15px;
	}
}
/*モーダル左右ボタンカスタマイズ*/
.iziModal-navigate {
	z-index: 1000 !important;
	width: 94%;
	max-width: 980px;
	margin: 0 auto;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	pointer-events: none;
}
.iziModal-navigate > button.iziModal-navigate-prev {
	background: none;
	margin-left: 0 !important;
	left: /*54%*/ 0;
}
.iziModal-navigate > button.iziModal-navigate-next {
	margin-right: 0 !important;
	right: /* 54%*/ 0;
	background: none;
}
.iziModal-navigate>button {
	opacity: 1;
	position: absolute;
	width: 50px;
	height: /*100%*/ 50px;
	top: /*10%*/ 50%;
}
.iziModal-navigate-next:before {
	content: "";
	display: block;
	width: 50px;
	height: 50px;
	background: #000;
	position: absolute;
	top: 50%;
	/* left: -30px; */
	transform: translateY(-50%);
	z-index: 1100;
}
.iziModal-navigate-next:after {
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	background-image: url(/img/common/modal-arrow_right.svg);
	background-size: contain;
	vertical-align: middle;
	top: 13px;
	right: 13px;
	position: absolute;
	z-index: 1200;
}
.iziModal-navigate-prev:before {
	content: "";
	display: block;
	width: 50px;
	height: 50px;
	background: #000;
	position: absolute;
	top: 50%;
	/* right: -30px; */
	transform: translateY(-50%);
	z-index: 1100;
}
.iziModal-navigate-prev:after {
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	background-image: url(/img/common/modal-arrow_left.svg);
	background-size: contain;
	vertical-align: middle;
	top: 13px;
	right: 13px;
	position: absolute;
	z-index: 1200;
}
@media screen and (max-width: 767px) {
	.iziModal-navigate {
		width: 100%;
	}
	.iziModal-navigate > button.iziModal-navigate-prev {
		margin-left: 0 !important;
		left: /*54%*/ 1%;
	}
	.iziModal-navigate > button.iziModal-navigate-next {
		margin-right: 0 !important;
		right: 1%;
	}
	.iziModal-navigate>button {
		width: 25px;
		height: 25px;
	}
	.iziModal-navigate-next:before {
		width: 25px;
		height: 25px;
	}
	.iziModal-navigate-next:after {
		width: 15px;
		height: 15px;
		top: 6px;
		left: 6px;
	}
	.iziModal-navigate-prev:before {
		width: 25px;
		height: 25px;
	}
	.iziModal-navigate-prev:after {
		width: 15px;
		height: 15px;
		top: 6px;
		left: 6px;
	}
}
/* -------------------------------------
cultivation：人材育成
----------------------------------------*/
#cultivation .btn01 {
	margin-top: 2em;
}
#cultivation .btn01 a {
	margin-top: 10px;
	width: 80%;
	max-width: 303px;
}
/*block*/
#cultivation .block {
	margin-top: 2em;
}
#cultivation .block .text p {
	font-size: 13px;
	line-height: 2;
	text-align: left;
}
#cultivation .block p.link-url {
	font-size: 100%;
}
#cultivation .block p.link-url a {
	color: #a1cc56;
	display: block;
}
#cultivation .block figure img {
	max-width: 364px;
}
@media (min-width: 768px) {
	#cultivation .block {
		align-items: flex-end;
		margin-top: 76px;
	}
	#cultivation .block figure {
		order: 1;
		width:41%;
		margin: 0 0 0 6%;
	}
	#cultivation .block .text {
		order: 2;
		width: 63%;
	}
	#cultivation .block .text p {
		padding: 0 1em;
	}
}
@media (min-width: 1000px) {
	#cultivation .block {
		align-items: initial;
	}
	#cultivation .block .text {
		position: relative;
	}
	#cultivation .block p.link-url {
		position: absolute;
		bottom: 0;
		left: 0;
	}
}
/* -------------------------------------
development：食の安全
----------------------------------------*/
.flow {
	max-width: 975px;
	margin: auto;
}
.flow figcaption {
	font-weight: 800;
	color: #231815;
	font-size: min(3.2vw, 32px);
	margin-bottom: 1em;
}
.flow figcaption span {
	font-weight: inherit;
	font-size: 115%;
	letter-spacing: 0.05em;
	padding-right: 0.1em;
}
#development .block figure {
	width: 50%;
}
@media (min-width: 768px) {
	.flow figcaption {
		font-size: min(2.6vw, 32px);
	}
	#development .block figure {
		width: auto;
		margin-top: 0.6em;
	}
}

/* -------------------------------------
business
----------------------------------------*/
