/* 商品カルーセル（ホーム）
 * 既存(Original/OEM)のデザインに合わせる:
 *   正方形画像＋角丸、白いボックスは無し、画像の下に小さな白文字ラベルのみ。
 *   背景はElementorセクションの背景画像が透けて見える。
 */
.pxp-carousel {
	position: relative;
	width: 100%;
	padding: 8px 8px 44px;
}

.pxp-card {
	height: auto;
	box-sizing: border-box;
}

.pxp-carousel .pxp-card__link {
	display: block;
	text-decoration: none;
	color: #ffffff;
}

/* 正方形のサムネイル（角丸・はみ出し防止） */
.pxp-card__thumb {
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border-radius: 14px;
	padding: 2px;                 /* ネオン枠の太さ */
	box-sizing: border-box;
	background: #0c0c16;
	box-shadow: 0 0 14px rgba(255, 46, 154, 0.22);
	transition: box-shadow 0.3s ease;
}

/* 回転するネオングラデの枠線（ピンク→シアン→パープルが流れる） */
.pxp-card__thumb::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 200%;
	height: 200%;
	transform: translate(-50%, -50%) rotate(0deg);
	background: conic-gradient( from 0deg, #ff2e9a, #2de2e6, #8a5cff, #ff2e9a );
	animation: pxp-border-spin 5s linear infinite;
	z-index: 0;
}

.pxp-card__img {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: 12px;
}

.pxp-card__noimg {
	position: relative;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 12px;
	background: linear-gradient(135deg, #2a2a3a, #3a3a4a);
}

.pxp-carousel .pxp-card__link:hover .pxp-card__thumb {
	box-shadow: 0 0 22px rgba(45, 226, 230, 0.5), 0 0 42px rgba(255, 46, 154, 0.3);
}

@keyframes pxp-border-spin {
	to {
		transform: translate(-50%, -50%) rotate(360deg);
	}
}

/* アニメーションを控えたい環境では停止 */
@media (prefers-reduced-motion: reduce) {
	.pxp-card__thumb::before {
		animation: none;
	}
}

/* 画像の下の小さな白文字ラベル */
.pxp-carousel .pxp-card__title {
	margin: 12px 2px 0;
	font-size: 0.9rem;
	font-weight: 500;
	line-height: 1.4;
	color: #ffffff;
}

/* ナビゲーション矢印・ドット（背景が暗いので白） */
.pxp-carousel .swiper-button-prev,
.pxp-carousel .swiper-button-next {
	color: #ffffff;
}

.pxp-carousel .swiper-pagination-bullet {
	background: #ffffff;
	opacity: 0.5;
}

.pxp-carousel .swiper-pagination-bullet-active {
	background: #ffffff;
	opacity: 1;
}
