/**
 * 公開サイト: #gallery-section（HST フォトギャラリー）一覧のみ
 * 管理画面・他ページへ影響しないよう #gallery-section でスコープ
 * Lightbox（#hst-lightbox）は hst-gallery-lightbox.css のまま
 */

#gallery-section .hst-fe-gallery-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.5rem;
	width: 100%;
}

@media (min-width: 768px) {
	#gallery-section .hst-fe-gallery-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0.625rem;
	}
}

@media (min-width: 1024px) {
	#gallery-section .hst-fe-gallery-grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 0.75rem;
	}
}

#gallery-section .hst-fe-gallery-item {
	position: relative;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	min-width: 0;
	border-radius: 0.125rem;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
	transition: box-shadow 0.2s ease;
	cursor: zoom-in;
}

#gallery-section .hst-fe-gallery-item:hover {
	box-shadow: 0 4px 12px rgba(15, 23, 42, 0.12);
}

#gallery-section .hst-fe-gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.7s ease;
}

#gallery-section .hst-fe-gallery-item .hst-fe-gallery-item__shine {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0);
	transition: background 0.3s ease;
	pointer-events: none;
}

#gallery-section .hst-fe-gallery-item:hover img {
	transform: scale(1.08);
}

#gallery-section .hst-fe-gallery-item:hover .hst-fe-gallery-item__shine {
	background: rgba(0, 0, 0, 0.08);
}
