/**
 * teppanyaki-projects（body.gp-tpp-landing）— mobile-first
 */

body.gp-tpp-landing {
	overflow-x: clip;
}

body.gp-tpp-landing .entry-content:empty {
	display: none;
}

body.gp-tpp-landing .gp-tpp-room__grid,
body.gp-tpp-landing .gp-tpp-equip__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px 28px;
	align-items: start;
	width: 100%;
	min-width: 0;
}

body.gp-tpp-landing .gp-tpp-room__cell,
body.gp-tpp-landing .gp-tpp-equip__grid > img {
	margin: 0;
	min-width: 0;
}

body.gp-tpp-landing .gp-tpp-intro {
	margin: 0 0 2rem;
	min-width: 0;
}

body.gp-tpp-landing .gp-tpp-intro__title {
	margin: 0 0 1rem;
	font-size: clamp(1.5rem, 2.8vw, 2rem);
	font-weight: 700;
	line-height: 1.2;
	color: #fff;
	letter-spacing: -0.02em;
}

body.gp-tpp-landing .gp-tpp-intro__title--section {
	margin-top: 2.25rem;
}

body.gp-tpp-landing .gp-tpp-intro__text {
	margin: 0 0 1.75rem;
	line-height: 1.6;
	color: var(--gp-text-muted);
	text-align: justify;
	hyphens: auto;
}

body.gp-tpp-landing .gp-tpp-intro__strong {
	margin: 0 0 0.35em;
	font-weight: 700;
	line-height: 1.45;
	color: #fff;
}

body.gp-tpp-landing .gp-tpp-intro__strong--address {
	margin-bottom: 1.75rem;
}

body.gp-tpp-landing .gp-tpp-room {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	margin-top: 1rem;
	min-width: 0;
}

body.gp-tpp-landing .gp-tpp-room__cell img,
body.gp-tpp-landing .gp-tpp-equip__grid > img,
body.gp-tpp-landing .gp-tpp-room--tea > img,
body.gp-tpp-landing .gp-tpp-room--food > img,
body.gp-tpp-landing .gp-tpp-intro > img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
}

body.gp-tpp-landing .gp-tpp-intro > img {
	margin: 0 0 1.25rem;
}

@media (max-width: 767px) {
	body.gp-tpp-landing .gp-tpp-room__grid,
	body.gp-tpp-landing .gp-tpp-equip__grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	body.gp-tpp-landing .gp-tpp-intro__text {
		text-align: start;
		hyphens: none;
	}

	body.gp-tpp-landing .gp-tpp-intro__strong,
	body.gp-tpp-landing .gp-tpp-intro__strong--address {
		text-align: start;
	}

	body.gp-tpp-landing .featured-image.page-header-image {
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	body.gp-tpp-landing .featured-image.page-header-image img {
		display: block;
		max-width: 100%;
		height: auto;
	}

	body.gp-tpp-landing .entry-content {
		padding-left: 0;
		padding-right: 0;
		padding-top: clamp(16px, 4vw, 28px);
	}
}
