/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: May 02 2026 | 07:36:15 */
.xv-video-grid {
  display: block;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

/* スマホ対応 */
@media screen and (max-width: 768px) {
  .xv-video-grid {
    grid-template-columns: 1fr;
  }
  .xv-video-item video {
    padding-bottom:30px;
  }
}

/* 各動画ブロック */
.xv-video-item {
  position: relative;
  width: 100%;
  cursor: pointer;
  overflow: hidden;
}

/* サムネ画像 */
.xv-video-item img {
  width: 100%;
  height: auto;
  display: block;
}

/* 動画本体 */
.xv-video-item video {
  width: 100%;
  height: auto;
  display: block;
  background: #fff;
}

/* 再生ボタン */
.xv-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 70px;
  height: 70px;
  background: #ff0000;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}

/* ▶マーク */
.xv-play-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 55%;
  transform: translate(-50%, -50%);
  border-left: 20px solid #fff;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
}

/* ホバーで軽くズーム（PCのみ） */
@media (hover: hover) {
  .xv-video-item:hover img {
    transform: scale(1.05);
    transition: 0.3s;
  }
}

/* フォールバック用ボタン */
.xv-tap-to-play {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0,0,0,0.7);
  color: #fff;
  padding: 6px 12px;
  font-size: 12px;
  border-radius: 4px;
  z-index: 3;
}

/* 再生中はカーソル戻す */
.xv-video-item video {
  cursor: default;
}

/* 不要なテーマ干渉を防ぐ */
.xv-video-item * {
  box-sizing: border-box;
}

/* Xeory対策（画像の謎余白潰し） */
.xv-video-item img {
  vertical-align: bottom;
}

/* コントロールUIが隠れないように */
.xv-video-item video::-webkit-media-controls {
  z-index: 5;
}