@charset "utf-8";


/*  l-planDetail
--------------------------------------------------*/
.l-planDetail {
	padding-block: 16.0rem;
}

.wf-notoserifjp-n4-active .l-planDetail {
	font-family: YakuHanMP, "Shippori Mincho B1", "Noto Serif JP", serif;
	font-weight: 400;
}

.planDetail-contents {
	max-width: 1200px;
	padding-block: 10.0rem 9.0rem;
	border: solid 1px var(--black);
	background: var(--white);
	box-sizing: border-box;
}

.planDetail-contents::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: .8rem;
	background: linear-gradient(90deg, rgba(128, 128, 128, 1) 0%, rgba(77, 77, 77, 1) 100%);
	z-index: 1;
}

.planDetail-inner {
	width: min(90%, 1000px);
	margin-inline: auto;
}

.planDetail-head {
	width: calc(420 / 1000 * 100%);
	padding-top: calc(60 / 1000 * 100%);
}

.planDetail-info {
	width: 100%;
	margin-bottom: 3.0rem;
}

.planDetail-info__type {
	font-size: 3.6rem;
	line-height: 1.2;
	letter-spacing: .05em;
	text-align: center;
	padding-bottom: 2.2rem;
	margin-bottom: 2.2rem;
	border-bottom: solid 1px var(--black);
}

.planDetail-info__type em {
	font-size: calc(42 / 36 * 1em);
	line-height: 1;
	padding-right: .2em;
}

.planDetail-info__floor {
	font-size: 3.2rem;
	letter-spacing: .05em;
	line-height: 2;
	text-align: center;
}

.planDetail-info__floor span {
	display: block;
	font-size: calc(42 / 32 * 1em);
	line-height: 1;
}

.planDetail-info__floor em {
	font-size: calc(52 / 42 * 1em);
	line-height: 1;
}

.planDetail-spec {
	width: 100%;
	text-align: center;
	margin-bottom: 4.5rem;
}

.planDetail-spec__meter {
	margin-bottom: 1.0rem;
	gap: 2.0rem;
}

.planDetail-spec__meter__heading {
	font-size: 1.4rem;
	line-height: 1;
	letter-spacing: .05em;
	padding-top: 2.4em;
}

.planDetail-spec__meter__desc {
	font-size: 3.1rem;
	line-height: 1;
	letter-spacing: .05em;
}

.planDetail-spec__meter__desc em {
	font-size: calc(52 / 31 * 1em);
	line-height: 1;
	letter-spacing: .05em;
}

.planDetail-spec__meter__desc small {
	font-size: 1.4rem;
	line-height: 1;
	letter-spacing: .05em;
}

.planDetail-spec__note {
	font-size: 1.4rem;
	line-height: 1.75;
	letter-spacing: .05em;
	margin-bottom: 2.0rem;
}

.planDetail-spec__note i {
	display: inline-block;
	width: 3.6rem;
	line-height: 1;
	transform: scale(0.8, 1);
}

.planDetail-spec__other {
	gap: .5rem 1.0rem;
}

.planDetail-spec__other__txt {
	font-size: 1.4rem;
	line-height: 1.75;
	letter-spacing: .05em;
}

.planDetail-madori {
	width: calc(580 / 1000 * 100%);
	text-align: right;
}

.planDetail-madori__item img {
	width: 100%;
}

.planDetail-legend {
	position: relative;
	width: 100%;
	margin-top: auto;
}

.planDetail-legend__mark {
	font-size: max(1.1rem, 10px);
	letter-spacing: 0;
	line-height: 1;
	gap: 1.0rem 2.5rem;
}

.planDetail-legend__mark i {
	display: inline-block;
	margin-right: 1.0rem;
	vertical-align: -.05em;
	width: max(3.0rem, 27px);
}

.planDetail-legend__desc {
	font-size: max(1.1rem, 10px);
	letter-spacing: 0;
	line-height: 1.81818182;
	gap: 1.0rem 1.2rem;
	margin-top: .7rem;
}

.planDetail-legend__note {
	font-size: max(1.1rem, 10px);
	letter-spacing: -.05em;
	line-height: 1.81818182;
	margin-top: .5rem;
}

@media screen and (max-width: 768px) {
	.l-planDetail {
		padding-block: 9.0rem 6.0rem;
	}

	.planDetail-contents {
		padding-block: 3.0rem 4.0rem;
	}

	.planDetail-contents::before {
		height: .4rem;
	}

	.planDetail-inner {
		width: calc(280 / 320 * 100%);
	}

	.planDetail-head {
		width: 100%;
		padding-top: 0;
		display: contents;
	}

	.planDetail-info {
		margin-bottom: 1.0rem;
		order: 0;
	}

	.planDetail-info__type {
		font-size: 1.9rem;
		padding-bottom: 1.2rem;
		margin-bottom: 1.2rem;
	}

	.planDetail-info__type em {
		font-size: calc(22 / 19 * 1em);
	}

	.planDetail-info__floor {
		font-size: 1.7rem;
	}

	.planDetail-info__floor span {
		display: block;
		font-size: calc(22 / 17 * 1em);
	}

	.planDetail-info__floor em {
		font-size: calc(28 / 22 * 1em);
	}

	.planDetail-spec {
		margin-bottom: 3.0rem;
		order: 1;
	}

	.planDetail-spec__meter {
		margin-bottom: .7rem;
		gap: 1.0rem 1.0rem;
	}

	.planDetail-spec__meter__heading {
		font-size: 1.0rem;
		padding-top: 1.5em;
	}

	.planDetail-spec__meter__desc {
		font-size: 1.7rem;
	}

	.planDetail-spec__meter__desc em {
		font-size: calc(28 / 17 * 1em);
	}

	.planDetail-spec__meter__desc small {
		font-size: 1.0rem;
	}

	.planDetail-spec__note {
		font-size: 1.0rem;
		margin-bottom: 1.0rem;
	}

	.planDetail-spec__note i {
		width: 2.5rem;
	}

	.planDetail-spec__other {
		gap: .3rem 1.0rem;
	}

	.planDetail-spec__other__txt {
		font-size: 1.0rem;
	}

	.planDetail-madori {
		width: 100%;
		text-align: center;
		order: 2;
	}

	.planDetail-legend {
		margin-top: 3.0rem;
		order: 3;
	}

	.planDetail-legend__mark {
		font-size: 1.0rem;
		line-height: 1;
		gap: .8rem 1.0rem;
	}

	.planDetail-legend__mark i {
		margin-right: .7rem;
		width: 2.2rem;
	}

	.planDetail-legend__desc {
		font-size: 1.0rem;
		line-height: 1;
		gap: .8rem .8rem;
	}

	.planDetail-legend__note {
		font-size: 1.0rem;
	}
}