/* ============================================
   施設と設備（equipment.html）専用スタイル
   ============================================ */

/* ============================================
   安心とやすらぎの居室
   ============================================ */

/* 2列グリッド */
.room__grid {
	display: flex;
	gap: 40px;
}

/* 各列：縦並び */
.room__col {
	flex: 1 1 0;
	min-width: 0;
}

/* 居室タイプ見出し */
.room__type-title {
	font-size: 24px;
	font-weight: 700;
	color: #A61C4B;
	text-align: center;
	margin-bottom: 10px;
}

/* 間取り図（object-fit: cover で中央トリミング） */
.room__madori-wrap {
	width: 100%;
	aspect-ratio: 580 / 460;
	overflow: hidden;
	margin-bottom: 16px;
}
.room__madori {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

/* 写真（縦横比を維持しつつ自動縮小） */
.room__photo-wrap {
	width: 100%;
	aspect-ratio: 580 / 360;
	overflow: hidden;
	border-radius: 12px;
}
.room__photo {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

/* 写真下のキャプション */
.room__caption {
	margin-top: 20px;
	line-height: 1.8;
}

/* 下部注意書き */
.room__notes {
	margin-top: 50px;
	line-height: 1.8;
}
.room__notes p {
	margin-bottom: 4px;
}
.room__notes p:last-child {
	margin-bottom: 0;
}

/* 内装ギャラリーブロック */
.room__gallery-block {
	margin-top: 60px;
}

.room__gallery-grid {
	display: flex;
	gap: 20px;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}
.room__gallery-img {
	flex: 1 1 0;
	min-width: 0;
	width: 100%;
	height: auto;
	display: block;
	border-radius: 8px;
}

/* ============================================
   安心とやすらぎの居室：レスポンシブ
   ============================================ */
@media (max-width: 768px) {
	.room__grid {
		flex-direction: column;
		gap: 40px;
	}
	.room__gallery-grid {
		flex-wrap: wrap;
		gap: 12px;
	}
	.room__gallery-img {
		flex: 0 0 calc(50% - 6px);
		width: calc(50% - 6px);
	}
}

/* ============================================
   便利で快適な居室の設備
   ============================================ */
.facility__inner {
	display: flex;
	align-items: flex-start;
	gap: 40px;
}
.facility__img-wrap {
	flex: 0 0 420px;
	max-width: 420px;
}
.facility__img {
	width: 100%;
	height: auto;
	border-radius: 12px;
	display: block;
}
.facility__text {
	flex: 1 1 0;
	min-width: 0;
}
.facility__item {
	margin-bottom: 24px;
}
.facility__item:last-child {
	margin-bottom: 0;
}
.facility__item-title {
	font-weight: 700;
	color: #A61C4B;
	margin-bottom: 6px;
	line-height: 1.6;
}
.facility__item-body {
	line-height: 1.8;
}

@media (max-width: 768px) {
	.facility__inner {
		flex-direction: column;
	}
	.facility__img-wrap {
		flex: none;
		width: 100%;
		max-width: 100%;
	}
}

/* ============================================
   安心・充実のサポート
   ============================================ */
.support__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}
.support__item-title {
	font-weight: 700;
	color: #A61C4B;
	margin-bottom: 8px;
	line-height: 1.6;
}
.support__item-body {
	line-height: 1.8;
}

@media (max-width: 768px) {
	.support__grid {
		grid-template-columns: 1fr;
		gap: 30px;
	}
}

/* ============================================
   癒しと語らいが広がる、くつろぎのひととき
   ============================================ */

/* 上段：3列グリッド */
.lounge__top-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
.lounge__top-img {
	width: 100%;
	height: auto;
	border-radius: 12px;
	display: block;
}

/* 上段下のテキスト */
.lounge__desc {
	margin: 40px 0 60px;
}
.lounge__desc p {
	margin-bottom: 16px;
}
.lounge__desc p:last-child {
	margin-bottom: 0;
}

/* 下段：3列グリッド（キャプションあり） */
.lounge__bottom-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
.lounge__bottom-item {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.lounge__bottom-img {
	display: block;
	width: 100%;
	height: auto;
	margin-bottom: 5px;
	border-radius: 12px;
}

/* ============================================
   癒しと語らいが広がる：レスポンシブ
   ============================================ */
@media (max-width: 768px) {
	.lounge__top-grid {
		grid-template-columns: 1fr;
		gap: 16px;
	}
	.lounge__desc {
		margin-top: 30px;
		margin-bottom: 40px;
	}
	.lounge__bottom-grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}
}

/* ============================================
   お問い合わせ margin-top
   ============================================ */
.contact {
	margin-top: 80px;
}
@media (max-width: 768px) {
	.contact {
		margin-top: 40px;
	}
}

/* ============================================
   光の郷 概要
   ============================================ */

/* 各ブロック（画像左＋表右）の横並び */
.gaiyo__block {
	display: flex;
	align-items: flex-start;
	gap: 100px;
	margin-bottom: 40px;
}
.gaiyo__block:last-child {
	margin-bottom: 0;
}

/* 画像エリア */
.gaiyo__img-wrap {
	flex: 0 0 300px;
	max-width: 300px;
	min-width: 0;
}
.gaiyo__img {
	width: 100%;
	height: auto;
	border-radius: 12px;
	display: block;
}

/* 表エリア */
.gaiyo__table-wrap {
	flex: 1 1 0;
	min-width: 0;
}

/* 概要の小見出し（施設概要・建築概要・設備概要） */
.gaiyo__subtitle {
	font-size: 24px;
	font-weight: 700;
	color: #A61C4B;
	text-align: left;
	margin-bottom: 10px;
}

/* 定義リスト形式の表 */
.gaiyo__dl {
	width: 100%;
	border-top: 1px solid #CCCCCC;
}
.gaiyo__dl ul {
	list-style: disc;
	margin-left: 20px;
}
.gaiyo__row {
	display: flex;
	align-items: flex-start;
	border-bottom: 1px solid #CCCCCC;
	padding: 14px 0;
	gap: 14px;
}
.gaiyo__dt {
	flex: 0 0 100px;
	font-weight: 500;
	line-height: 1.8;
	white-space: nowrap;
}
.gaiyo__dd {
	flex: 1 1 0;
	min-width: 0;
	line-height: 1.8;
}
.gaiyo__dd p {
	margin-bottom: 12px;
}
.gaiyo__dd p:last-child {
	margin-bottom: 0;
}

/* ============================================
   光の郷 概要：レスポンシブ
   ============================================ */
@media (max-width: 768px) {
	.gaiyo__block {
		flex-direction: column;
		gap: 30px;
	}
	.gaiyo__img-wrap {
		flex: none;
		max-width: 240px;
		margin: 0 auto;
	}
	.gaiyo__dt {
		flex: 0 0 80px;
		font-size: 0.9rem;
	}
}
