@charset "utf-8";
/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0 0%;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;margin-right: 0.3%;
}
[dir='rtl'] .slick-slide
{
    float: right;
	margin-left: 0.3%;
  margin-right: 0; 
}
[dir='rtl'] .slick-track .slick-slide:last-child {
  margin-left: 0;
}

.slick-dots {
  position: absolute;
  bottom: -50px;
  width: 100%;
  text-align: center;
  padding: 0;
  margin: 0;
  list-style: none;
}
.slick-dots li {
  display: inline-block;
  margin: 0 5px;
}
.slick-dots li button {
  font-size: 20px;font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝","ＭＳ 明朝", serif;
  width: 32px;
  height: 32px;
  background: transparent;
  border: none;
  color: #ccc;
  cursor: pointer;
  outline: none;
  line-height: 32px;
  text-align: center;
  padding: 0;
  font-weight: normal;
  border-radius: 0;
  transition: color 0.2s;
}
.slick-dots li.slick-active button {
  color: #000;
  font-weight: bold;
  border-bottom: 1px solid #000;
  background: transparent;
}

    video {
        width: 100%; /* ブラウザ幅に合わせる */
        height: auto; /* アスペクト比を維持 */
        display: block; /* 黒い隙間を防ぐ */
        margin: 0;
        padding: 0;
        border: none;
        position: relative; /* ボタンを動画内に配置するために必要 */
    }

    #pc-video,
    #mobile-video {
        display: none; /* 初期状態は非表示 */
        width: 100%;   /* 動画を横幅いっぱいに表示 */
        height: auto;  /* アスペクト比を維持 */
    }

    @media (min-width: 768px) {
        #pc-video {
            display: block; /* PC用動画を表示 */
        }
    }

    @media (max-width: 767px) {
        #mobile-video {
            display: block; /* モバイル用動画を表示 */
        }
    }

    .button-container {
        position: absolute;
        bottom: 10px;
        right: 10px;
        z-index: 10;
        display: flex;
        gap: 10px;
    }

    .control-button {
        padding: 5px 10px 5px;
        font-size: 12px;
        color: white;
        background-color: rgba(0, 0, 0, 0.4);
        border: none;
        cursor: pointer;
    }

    .control-button:hover {
        background-color: rgba(0, 0, 0, 0.6);
    }

    .loading-overlay {
        position: absolute;
        top: 0;
        leff:0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.7);
        display: flex;
        justify-content: center;
        align-items: center;
        z-index: 20;
        opacity: 0; /* 初期は透明 */
        visibility: hidden; /* 初期は非表示 */
        transition: opacity 0.5s ease, visibility 0.5s ease;
    }

    .loading-overlay.visible {
        opacity: 1; /* 表示 */
        visibility: visible;
    }

    #static-image {
        max-width: 100%;
        height: auto;
    }

    .replay-button {
        position: absolute;
        bottom: 10px;
        right: 10px;
        z-index: 30; /* 静止画の上に表示 */
        padding: 10px;
        font-size: 14px;
        color: white;
        background-color: rgba(0, 0, 0, 0.6);
        border: none;
        border-radius: 5px;
        cursor: pointer;
    }

    .replay-button.hidden {
        display: none;
    }


