.Opening > ul,
.one-time:not(.mac-carousel),
.mac-carousel-track {
	display: flex;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	margin: 0;
	padding: 0;
}
.Opening > ul::-webkit-scrollbar,
.one-time::-webkit-scrollbar,
.mac-carousel-track::-webkit-scrollbar {
	display: none;
}
.Opening > ul > li,
.one-time:not(.mac-carousel) > .ph,
.mac-carousel-slide {
	flex: 0 0 100%;
	min-width: 0;
	scroll-snap-align: start;
	scroll-snap-stop: always;
}
.Opening > ul,
.Opening > ul > li,
.Opening > ul > li > span {
	height: 100%;
}
.Opening > ul > li > span {
	display: block;
}
.mac-carousel {
	position: relative;
}
.mac-carousel-track img {
	display: block;
}
#mv .filter,
#mv h2 {
	pointer-events: none;
}
.mac-carousel-controls {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0;
	height: 30px;
}
.mac-carousel-controls button {
	border: 0;
	border-radius: 0;
	background: transparent;
	color: #203953;
	width: 30px;
	height: 30px;
	padding: 0;
	font: inherit;
	font-size: 16px;
	cursor: pointer;
}
.mac-carousel-controls button[aria-label$="枚目の画像"] {
	width: 20px;
	font-size: 6px;
	color: #000;
	opacity: .25;
}
.mac-carousel-controls button[aria-current] {
	opacity: .75;
}
.mac-carousel-controls button:focus-visible,
.mac-carousel-track:focus-visible {
	outline: 2px solid #4389c7;
	outline-offset: -2px;
}
.mac-carousel-hero .mac-carousel-track {
	display: block;
	position: relative;
	overflow: hidden;
	touch-action: pan-y;
}
.mac-carousel-hero .mac-carousel-slide {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transition: opacity 2s;
	pointer-events: none;
}
.mac-carousel-hero .mac-carousel-slide.is-active {
	z-index: 1;
	opacity: 1;
	pointer-events: auto;
}
.mac-carousel-hero .is-active img.Opening__img,
.mac-carousel-hero .is-leaving img.Opening__img {
	animation: mac-hero-zoom 5s linear forwards;
}
@keyframes mac-hero-zoom {
	from { transform: scale(1); }
	to { transform: scale(1.1); }
}
@media screen and (max-width: 680px) {
	#mv {
		top: -3px;
		margin-bottom: -3px;
	}
}
@media (prefers-reduced-motion: reduce) {
	.mac-carousel-hero .mac-carousel-slide { transition: none; }
	.mac-carousel-hero .is-active img.Opening__img,
	.mac-carousel-hero .is-leaving img.Opening__img { animation: none; }
}
