/* =======================================================
  MENU ＆ PRICE
======================================================= */

.menu-price {
	position: relative;
	padding: 90px 0 120px;
	overflow: hidden;
	font-family: "Zen Kaku Gothic New", sans-serif;
	color: #333;
}

.price-orange {
	background:
		linear-gradient(
			135deg,
			#ff6a00 0%,
			#f8e0c0 100%
		);
}

.price-orange::before {
	position: absolute;
	top: -320px;
	left: -450px;
	width: 980px;
	height: 980px;
	content: "";
	background: radial-gradient(
		circle,
		rgba(255, 132, 0, 0.5) 0%,
		rgba(255, 132, 0, 0) 68%
	);
	pointer-events: none;
}

.menu-price__inner {
	position: relative;
	z-index: 1;
	width: 1020px;
	margin: 0 auto;
}

.menu-price__tax-note {
    margin: 38px 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
    text-align: center;
}

.bl-sec-head {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.bl-sec-head-main {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 254px;
	height: 46px;
	background: #fff;
	margin-bottom: 30px;
}

.bl-sec-head-main::after {
	position: absolute;
	bottom: -5px;
	left: 50%;
	width: 10px;
	height: 10px;
	content: "";
	background: #fff;
	transform: translateX(-50%) rotate(45deg);
}

.bl-sec-head-ja {
	position: relative;
	z-index: 1;
	margin: 0;
	color: #333;
}

.bl-sec-head-en {
	margin: 16px 0 0;
	font-family: "Alata", sans-serif;
	letter-spacing: 0;
	color: #fff;
	font-style: italic;
}

/* =======================================================
  通常プラン一覧
======================================================= */

.menu-price__plan-list {
	display: grid;
	grid-template-columns: repeat(2, 430px);
	gap: 76px 40px;
	align-items: start;
	justify-content: center;
}

.menu-price__plan {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.menu-price__plan:nth-child(3) {
	grid-column: 1 / -1;
	justify-self: center;
}

.menu-price__card {
	width: 430px;
	height: 432px;
	overflow: hidden;
	background: #fff;
	border: 1px solid #ff6a00;
	box-shadow: 0 0 20px rgba(51, 51, 51, 0.15);
}

.menu-price__card-title {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 45px;
	padding: 0 30px;
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
	color: #fff;
	text-align: center;
	background: #ff6a00;
}


/* =======================================================
  部位画像
======================================================= */

.menu-price__visual {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 370px;
	height: 170px;
	margin: 12px auto 0;
	overflow: hidden;
	background: #fff;
}

.menu-price__visual img {
	display: block;
	width: auto;
	max-width: 100%;
	height: 100%;
	object-fit: contain;
}


/* =======================================================
  料金
======================================================= */

.menu-price__price-list {
	display: grid;
	grid-template-columns: repeat(2, 178px);
	gap: 14px;
	justify-content: center;
	margin-top: 8px;
}

.menu-price__price {
	min-width: 0;
}

.menu-price__price-heading {
	position: relative;
	width: 178px;
	height: 24px;
}

.menu-price__annotation {
	position: absolute;
	top: 5px;
	right: 0;
	z-index: 1;
	font-size: 10px;
	font-weight: 400;
	line-height: 1.6;
	color: #333;
}

.menu-price__amount-label {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 178px;
	height: 24px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
}

.menu-price__amount-label--total {
	color: #333;
	background: #faf7f2;
}

.menu-price__amount-label--monthly {
	color: #fff;
	background: #ff6a00;
}

.menu-price__amount-value {
	display: flex;
	position: relative;
	align-items: baseline;
	justify-content: center;
	min-width: 0;
	margin: 0;
	color: #ff6a00;
	white-space: nowrap;
}

.menu-price__amount-number {
	font-family: "Alata", sans-serif;
	font-size: 34px;
	font-weight: 400;
	line-height: 1.48;
	letter-spacing: 0;
	font-style: italic;
}

.menu-price__amount-unit {
	margin-left: 4px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
}


/* =======================================================
  注記
======================================================= */

.menu-price__notes {
	display: flex;
	flex-direction: column;
	gap: 4px;
	width: 370px;
	padding: 0;
	margin: 5px auto 0;
	list-style: none;
}

.menu-price__note {
	display: grid;
	grid-template-columns: 24px 1fr;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.6;
}

.menu-price__note > span:first-child {
	white-space: nowrap;
}


/* =======================================================
  カテゴリー見出し
======================================================= */

.menu-price__category {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 190px;
	height: 44px;
	margin: 20px auto;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.35;
	color: #333;
	text-align: center;
	background: #ffe9d9;
}

.menu-price__category::after {
	position: absolute;
	bottom: -6px;
	left: 50%;
	width: 11px;
	height: 11px;
	content: "";
	background: #ffe9d9;
	transform: translateX(-50%) rotate(45deg);
}

/* =======================================================
  セットプラン
======================================================= */

.menu-price__set {
	margin: 100px auto;
}

.menu-price__set-title {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 220px;
	height: 44px;
	margin: 0 auto 44px;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.35;
	color: #333;
	text-align: center;
	background: #ffe9d9;
}

.menu-price__set-title::after {
	position: absolute;
	bottom: -11px;
	left: 50%;
	width: 22px;
	height: 22px;
	content: "";
	background: #ff6a00;
	transform: translateX(-50%) rotate(45deg);
}

.menu-price__set-list {
	display: grid;
	grid-template-columns: repeat(2, 430px);
	gap: 76px 40px;
	align-items: start;
	justify-content: center;
}

.menu-price__set-card {
	width: 430px;
	min-height: 283px;
	overflow: hidden;
	background: #fff;
	border: 1px solid #ff6a00;
	box-shadow: 0 0 20px rgba(51, 51, 51, 0.15);
}

.menu-price__set-card:nth-child(3) {
	grid-column: 1 / -1;
	justify-self: center;
}


/* =======================================================
  セットプラン タイトル
======================================================= */

.menu-price__set-card-title {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 73px;
	padding: 8px 30px;
	margin: 0;
	color: #fff;
	text-align: center;
	background: #ff6a00;
}

.menu-price__set-card-main-title {
	display: block;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
}

.menu-price__set-card-option {
	display: block;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
}


/* =======================================================
  セットプラン 本体
======================================================= */

.menu-price__set-card-body {
	padding: 14px 29px 17px;
}


/* =======================================================
  セットプラン 料金
======================================================= */

.menu-price__set-price-list {
	display: grid;
	grid-template-columns: repeat(2, 178px);
	gap: 14px;
	justify-content: center;
}

.menu-price__set-price {
	min-width: 0;
}

.menu-price__set-price-heading {
	position: relative;
	width: 178px;
	height: 24px;
}

.menu-price__set-annotation {
	position: absolute;
	top: 5px;
	right: 0;
	z-index: 1;
	font-size: 10px;
	font-weight: 400;
	line-height: 1.6;
	color: #333;
}

.menu-price__set-price-label {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 178px;
	height: 24px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
}

.menu-price__set-price-label--total {
	color: #333;
	background: #faf7f2;
}

.menu-price__set-price-label--monthly {
	color: #fff;
	background: #ff6a00;
}

.menu-price__set-price-value {
	display: flex;
	position: relative;
	align-items: baseline;
	justify-content: center;
	min-width: 0;
	margin: 0;
	color: #ff6a00;
	white-space: nowrap;
}

.menu-price__set-price-number {
	font-family: "Alata", sans-serif;
	font-size: 34px;
	font-weight: 400;
	line-height: 1.48;
	letter-spacing: 0;
	font-style: italic;
}

.menu-price__set-price-unit {
	margin-left: 4px;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
}


/* =======================================================
  セットプラン 注記
======================================================= */

.menu-price__set-notes {
	display: flex;
	flex-direction: column;
	gap: 4px;
	width: 370px;
	padding: 0;
	margin: 4px auto 0;
	list-style: none;
}

.menu-price__set-note {
	display: grid;
	grid-template-columns: 24px 1fr;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.6;
}

.menu-price__set-note > span:first-child {
	white-space: nowrap;
}
/* =======================================================
  MENU ＆ PRICE SP
======================================================= */

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

	.menu-price {
		padding: 70px 0 90px;
	}

	.menu-price::before {
		top: -190px;
		left: -370px;
		width: 744px;
		height: 744px;
	}

	.menu-price__inner {
		width: 325px;
	}

	.menu-price__tax-note {
		margin-bottom: 12px;
		font-size: 12px;
		line-height: 1.6;
	}

	.bl-sec-head-main {
		width: 275px;
		height: 40px;
	}

	.bl-sec-head-main::after {
		bottom: -9px;
		width: 19px;
		height: 19px;
	}

	.bl-sec-head-ja {
		font-size: 20px;
	}

	.bl-sec-head-en {
		margin-top: 16px;
		font-size: 14px;
	}
	/* =====================================================
	  通常プラン
	===================================================== */

	.menu-price__plan-list {
		display: block;
	}

	.menu-price__plan + .menu-price__plan {
		margin-top: 58px;
	}

	.menu-price__plan:nth-child(3) {
		display: flex;
	}

	.menu-price__card {
		width: 325px;
		height: 464px;
		box-shadow: none;
	}

	.menu-price__card-title {
		height: 46px;
		padding: 0 25px;
		font-size: 18px;
	}

	.menu-price__visual {
		width: 275px;
		height: 126px;
		margin-top: 18px;
	}

	.menu-price__price-list {
		grid-template-columns: repeat(2, 128px);
		gap: 10px;
		margin-top: 13px;
	}

	.menu-price__price-heading {
		width: 128px;
		height: 28px;
	}

	.menu-price__amount-label {
		width: 128px;
		height: 28px;
		font-size: 16px;
	}

	.menu-price__annotation {
		top: -1px;
		font-size: 10px;
	}
	
	.menu-price__amount-unit {
		font-size: 16px;
	}

	.menu-price__notes {
		width: 275px;
		margin-top: 6px;
	}

	.menu-price__note {
		font-size: 14px;
		line-height: 1.6;
		grid-template-columns: 36px 1fr;
	}

	.menu-price__category {
		width: 275px;
		height: 40px;
		margin-top: 20px;
		font-size: 20px;
	}

	.menu-price__category::after {
		bottom: -9px;
		width: 19px;
		height: 19px;
	}

	/* =====================================================
	  セットプラン
	===================================================== */

	.menu-price__set {
		margin-top: 100px;
	}

	.menu-price__set-title {
		width: 275px;
		height: 40px;
		margin-bottom: 39px;
		font-size: 20px;
	}

	.menu-price__set-title::after {
		bottom: -9px;
		width: 19px;
		height: 19px;
	}

	.menu-price__set-list {
		display: block;
	}

	.menu-price__set-card {
		width: 325px;
		min-height: 344px;
		box-shadow: none;
	}

	.menu-price__set-card + .menu-price__set-card {
		margin-top: 30px;
	}

	.menu-price__set-card:nth-child(3) {
		display: block;
	}

	.menu-price__set-card-title {
		height: 68px;
		padding: 8px 25px;
	}

	.menu-price__set-card-main-title {
		font-size: 18px;
	}

	.menu-price__set-card-option {
		font-size: 14px;
	}

	.menu-price__set-card-body {
		padding: 14px 24px 18px;
	}

	.menu-price__set-price-list {
		display: block;
	}

	.menu-price__set-price + .menu-price__set-price {
		margin-top: 7px;
	}

	.menu-price__set-price {
		display: flex;
		align-items: center;
		width: 100%;
		min-height: 62px;
	}

	.menu-price__set-price-heading {
		flex: 0 0 83px;
		width: 83px;
		height: 28px;
	}

	.menu-price__set-price-label {
		width: 62px;
		height: 28px;
		margin-left: 21px;
		font-size: 16px;
	}

	.menu-price__set-annotation {
		top: 1px;
		font-size: 14px;
	}

	.menu-price__set-price-value {
		flex: 1;
		justify-content: flex-start;
	}

	.menu-price__set-price-unit {
		font-size: 16px;
	}

	.menu-price__set-notes {
		width: 275px;
		margin-top: 9px;
	}

	.menu-price__set-note {
		font-size: 14px;
		line-height: 1.6;
		grid-template-columns: 36px 1fr;
	}


}