@charset "UTF-8";
/*---------------------------------------
 weekly menu　一覧ページ
---------------------------------------*/
#weeklyIndex .pc_flex {
	margin-top: 2em;
}
#weeklyIndex .atn {
	line-height: 1.56;
	text-decoration: underline;
	text-indent: -1em;
	padding-left: 1em;
	font-weight: 500;
	font-size: clamp(12px, 2.08vw, 16px);
}
.mealTab {
	display: flex;
	justify-content: space-around;
	width: 40%;
	max-width: 510px;
	margin: auto;
}
.mealTab li {
	text-align: center;
	font-weight: 700;
	font-size: clamp(20px, 4.29vw, 33px);
	color: #b5b5b6;
	position: relative;
	padding-bottom: 0.2em;
	display: inline-block;
	line-height: 1.4;
	cursor: pointer;
}
.mealTab li.active,
.mealTab li:hover {
	color: #44403f;
}
.mealTab li.active::after {
	position: absolute;
	content: "";
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 2em;
	height: 1px;
	background-color: #44403f;
}
@media (max-width: 1000px) {
	#weeklyIndex .pc_flex {
		display: block;
		margin-top: 1em;
	}
	#weeklyIndex .pc_flex .mode_pc {
		display: none;
	}
	#weeklyIndex .atn {
		margin-bottom: 2em;
	}
	.mealTab {
		width: auto;
	}
}
@media (min-width: 1600px) {
	.mealTab {
		margin-right: 22%;
	}
}
/*.mealList*/
.mealList dl {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	padding-top: 1.5em;
	padding-bottom: 3em;
	border-top: 1px solid #44403f;
}
.mealList dl:first-child {
	border-top: none;
}
.mealList dt {
	width: 100%;
	display: flex;
	align-items: center;
	margin-bottom: 1em;
}
.mealList dd {
	width: 32%;
	margin-right: 2%;
}
.mealList dd:last-child {
	margin-right: 0;
}
.mealList .plus {
	font-weight: 500;
	font-size: clamp(10px, 1.32vw, 18px);
	order: 3;
}
.mealList h3 {
	font-weight: 700;
	font-size: clamp(20px, 4.29vw, 33px);
	margin-right: 1em;
	order: 1;
}
.mealList .total {
	order: 2;
	margin-right: 0.5em;
}
.mealList .total span {
	display: inline-block;
}
.mealList .total .icon {
	border: 1px solid #44403f;
	border-radius: 1.5em;
	width:  7em;
	font-size: clamp(10px, 0.88vw, 12px);
	font-weight: 500;
	text-align: center;
	line-height: 2.4;
	margin-right: 0.5em;
}
.mealList .total .kcal {
	font-weight: 700;
	font-size: clamp(13px, 1.6vw, 23px);
}
.mealList dd .photo {
	position: relative;
	width: 100%;
	height: auto;
	margin-bottom: clamp(1em, 2.21vw, 30px);
}
.mealList dd .photo img {
	object-fit: cover;
	width: 100%;
	max-height: 250px;
	aspect-ratio: 34 / 25;
}
.mealList dd .photo .sidedish {
	position: absolute;
	right: 3.5%;
	bottom: 4.5%;
	font-size: clamp(10px, 1.4vw, 19px);
}
.mealList dd h4 {
	font-weight: 500;
	font-size: clamp(10px, 1.69vw, 23px);
	margin-bottom: 0.6em;
	line-height: 1.2;
}
.mealList dd p {
	font-size: clamp(10px, 1.32vw, 18px);
	line-height: 1.2;
}
@media (min-width: 769px) {
	.mealList {
		margin-top: 40px;
	}
	.mealList dl {
		padding-top: 20px;
		padding-bottom: 80px;
	}
	.mealList dd {
		width: 25%;
		max-width: 340px;
		margin-left: 3.3%;
		margin-right: 0;
	}
	.mealList dt {
		margin-bottom: 0;
		width: 15%;
		max-width: 204px;
		display: block;
	}
	.mealList h3 {
		margin-right: 0;
		margin-bottom: 0.8em;
	}
	.mealList h3 span {
		display: block;
		margin-right: 0;
	}
	.mealList .plus {
		width: 100%;
		border-bottom: 1px solid #44403f;
		padding-bottom: 0.9em;
		margin-bottom: 1em;
		margin-right: 0;
	}
	.mealList .total {
		width: 57%;
		text-align: center;
		margin-right: 0;
	}
	.mealList .total span {
		display: block;
		text-align: center;
	}
	.mealList .total .icon {
		width:  min(100%, 106px);
		margin-right: 0;
		margin-bottom: 0.8em;
	}
}

/*---------------------------------------
 weekly menu 詳細ページ
---------------------------------------*/
#weeklyDetail h2 {
	font-size: clamp(14px, 2.99vw, 23px);
	font-weight: 500;
	line-height: 1.4;
	margin-bottom: 0.8em;
}
#weeklyDetail .sidedish {
	margin-bottom: 1em;
}
#weeklyDetail .link-text {
	margin-top: 2em;
	margin-bottom: 2.5em;
}
#weeklyDetail .photo {
	margin-bottom: min(3.13vw, 60px);
}
#weeklyDetail .text,
#weeklyDetail .nutrients {
	margin-bottom: 3.5em;
}
#weeklyDetail h3,
#weeklyDetail p,
#weeklyDetail .nutrients p,
#weeklyDetail .nutrients dl {
	font-size: clamp(14px, 2.99vw, 23px);
	line-height: 1.87;
	margin-bottom: 0.5em;
}
#weeklyDetail .entry_body p {
	margin-bottom: 2em;
}
.nutrients h3 {
	font-weight: 500;
}
.nutrients dl {
	display: flex;
}
.nutrients dt {
	width: 7em;
}
@media (min-width: 769px) {
	#weeklyDetail {
		max-width: 765px;
		padding-top: 22px;
	}	
}