.p-subMv {
	margin-bottom: 0;
}

.p-concept {
	--gutter-sp: 6.4rem;
	background: url("../images/housedesign/bg01.webp") no-repeat center/cover;
	padding: 12.4rem 0 13.2rem;
	text-align: center;
}

.p-concept__ttl {
	margin-bottom: 4.8rem;
	text-align: center;
}

.p-concept__ttl img {
	width: 54.9rem;
}

.p-concept__label {
	font-size: 5.8rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	margin: 0 -1rem 3.7rem;
}

.p-concept__label small {
	font-size: 3.9rem;
	letter-spacing: 0;
}

.p-concept__txt {
	font-size: 2.08rem;
	font-weight: 500;
	text-align: justify;
	margin: 0 auto;
	max-width: 60rem;
}

.p-concept__list {
	display: flex;
	flex-wrap: wrap;
	margin-top: 6.5rem;
}

.p-concept__list li {
	flex: 0 100%;
}

.p-concept__list img {
	width: 100%;
}

.p-freeplan {
	--gutter-sp: 3.2rem;
	background-color: #eaeff2;
	padding: 12.1rem 0 10.9rem;
}

.p-freeplan__ttl {
	color: #748a96;
	font-size: 3rem;
	font-weight: var(--font-weight-base);
	letter-spacing: 0.15em;
	margin-bottom: 6rem;
	text-align: center;
}

.p-freeplan__txt {
	font-size: 4.3rem;
	margin: 0 -1rem 6.5rem;
	text-align: center;
}

.plan-list {
	display: grid;
	gap: 4.5rem;
	margin-bottom: 15.8rem;
}

.plan-list:last-child {
	margin-bottom: 0;
}

.plan-card {
	background-color: #fff;
	padding: 3rem;
}

.plan-card__ttl {
	background-color: #748a96;
	color: #fff;
	font-size: 3rem;
	font-weight: 500;
	margin-bottom: 1.3rem;
	padding: 0.3rem 1.5rem 0.5rem;
	text-align: center;
}

.plan-card__txt {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.333;
	margin-bottom: 2.3rem;
	padding: 0 0 1.2rem 1.5rem;
	position: relative;
}

.plan-card__txt::after {
	content: "";
	background-color: #231f20;
	height: 1px;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	transform: scaleY(0.5);
}

.plan-card__txt .--custom01 {
	display: inline-block;
	transform: scaleX(0.9);
	margin: 0 -6rem 0 -4.5rem;
}

.plan-card__txt .--custom02 {
	display: inline-block;
	transform: scaleX(0.82);
	margin: 0 -8.5rem 0 -7.5rem;
}

@media (min-width: 768px) {

.p-concept {
	padding: 13.8rem 0 15.9rem;
}

.p-concept__ttl {
	margin-bottom: 4rem;
}

.p-concept__ttl img {
	width: 42.4rem;
}

.p-concept__label {
	font-size: 4.5rem;
	letter-spacing: 0.22em;
	margin-bottom: 3rem;
	line-height: 1.3;
}

.p-concept__label small {
	font-size: 3rem;
	letter-spacing: 0.11em;
}

.p-concept__txt {
	font-size: 1.6rem;
}

.p-concept__list li {
	flex: 1;
}

.p-freeplan {
	padding: 12.9rem 0 41.3rem;
}

.p-freeplan__txt {
	font-size: 3.3rem;
	letter-spacing: 0.13em;
	margin-bottom: 8.4rem;
}

.plan-list {
	grid-template-columns: repeat(2, 1fr);
	gap: 4rem;
	margin-bottom: 14.4rem;
}

.plan-card__ttl {
	font-size: 2.6rem;
}

.plan-card__txt {
	font-size: 1.8rem;
}

}

@media (max-width: 767px) {

.p-freeplan .hline01 {
	margin-bottom: 7.5rem;
}

.plan-card__txt.--small {
	font-size: 1.65rem;
}

}

