@charset "UTF-8";
/*------------------------------------------------
	BTOS トップニュース (2025-07 追加)
------------------------------------------------*/
/* トップ > トップニュース */
@media only screen and (max-width: 768px) {
	#custom .top-news {
		background-image: -webkit-gradient(linear, left top, right top, color-stop(30.55%, #000), color-stop(88.75%, #515151));
		background-image: -webkit-linear-gradient(left, #000 30.55%, #515151 88.75%);
		background-image: linear-gradient(90deg, #000 30.55%, #515151 88.75%);
	}
}

#custom .top-news-container {
	overflow: visible;
	position: relative;
	z-index: auto;
	padding: 0 39px;
}

@media only screen and (max-width: 768px) {
	#custom .top-news-container {
		padding: 0 32px;
	}
}

#custom .top-news-container:has(.swiper-slide:only-child) {
	padding: 0 15px;
}

.debug #custom .top-news-container {
	position: static;
	max-width: none;
	margin: 0;
}

#custom .top-news-swiper {
	position: static;
}

#custom .top-news-swiper.swiper-fade .swiper-slide {
	visibility: hidden;
}

#custom .top-news-swiper.swiper-fade .swiper-slide-visible,
#custom .top-news-swiper.swiper-fade .swiper-slide-active {
	visibility: visible;
}

#custom .top-news-swiper:where(.swiper-with-fade.swiper-initialized, .swiper-with-fade[data-initial]) .swiper-slide {
	opacity: 0;
	-webkit-transition: opacity 0.4s ease-out, -webkit-transform 0.5s ease;
	transition: opacity 0.4s ease-out, -webkit-transform 0.5s ease;
	transition: opacity 0.4s ease-out, transform 0.5s ease;
	transition: opacity 0.4s ease-out, transform 0.5s ease, -webkit-transform 0.5s ease;
}

#custom .top-news-swiper:where(.swiper-with-fade.swiper-initialized, .swiper-with-fade[data-initial]) .swiper-slide-visible, #custom .top-news-swiper:where(.swiper-with-fade.swiper-initialized, .swiper-with-fade[data-initial]) .swiper-slide-active, #custom .top-news-swiper:where(.swiper-with-fade.swiper-initialized, .swiper-with-fade[data-initial]) .swiper-slide:only-child {
	opacity: 1;
	-webkit-transition: opacity 0.5s ease-in, -webkit-transform 0.5s ease;
	transition: opacity 0.5s ease-in, -webkit-transform 0.5s ease;
	transition: opacity 0.5s ease-in, transform 0.5s ease;
	transition: opacity 0.5s ease-in, transform 0.5s ease, -webkit-transform 0.5s ease;
}

.debug #custom .top-news-swiper:where(.swiper-with-fade.swiper-initialized, .swiper-with-fade[data-initial]) .swiper-slide .swiper-slide {
	opacity: 1;
}

#custom .top-news-button {
	display: inline-block !important;
	width: 39px;
	height: 39px;
	border-radius: 4px;
	background: rgba(255, 255, 255, 0) url("../../images/asset/common/ico/ico-arrow-white.svg") no-repeat center center;
	background-size: 9px 15px;
	-webkit-transition: background-color 0.2s ease-out;
	transition: background-color 0.2s ease-out;
	-webkit-transition-property: opacity, background-color, color;
	transition-property: opacity, background-color, color;
}

#custom .top-news-button:is(:hover, :focus) {
	background-color: rgba(255, 255, 255, 0.21);
}

@media only screen and (max-width: 768px) {
	#custom .top-news-button {
		width: 30px;
	}
}

#custom .top-news-button.swiper-button-prev {
	left: 0;
}

#custom .top-news-button.swiper-button-next {
	right: 0;
}

#custom .top-news-button.swiper-button-hidden {
	z-index: -1;
	opacity: 0;
}

#custom .top-news-button.swiper-button-lock {
	display: none !important;
	opacity: 0;
}

.debug-1 #custom .top-news-controls::before, .debug-1 #custom .top-news-controls::after {
	content: "";
	display: block;
	position: absolute;
	z-index: 2;
	top: 0;
	bottom: 0;
	width: 7.5%;
	width: min(108px, 7.5%);
}

@media (max-width: 1024px) {
	.debug-1 #custom .top-news-controls::before, .debug-1 #custom .top-news-controls::after {
		content: none;
		display: none;
	}
}

.debug-1 #custom .top-news-controls::before {
	left: 0;
	background-image: -webkit-linear-gradient(right, #0000, #000f calc(100% - 39px));
	background-image: linear-gradient(to left, #0000, #000f calc(100% - 39px));
}

.debug-1 #custom .top-news-controls::after {
	right: 0;
	background-image: -webkit-linear-gradient(left, #51515100, #515151ff calc(100% - 39px));
	background-image: linear-gradient(to right, #51515100, #515151ff calc(100% - 39px));
}

#custom .top-news:has(.swiper-slide:only-child) .top-news-button,
#custom .top-news:has(.swiper-slide:only-child) .top-news-controls {
	display: none !important;
}