/*============================
  スライダー風
============================*/
.kv_slider {
    position: relative;
    width: 100%;
    height: 94vh;
    overflow: hidden;
}

.kv_slider > * {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    animation: fade 32s infinite;
}

.kv_slider img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}

.kv_slider > *:nth-child(1) { animation-delay: 0s; }
.kv_slider > *:nth-child(2) { animation-delay: 4s; }
.kv_slider > *:nth-child(3) { animation-delay: 8s; }
.kv_slider > *:nth-child(4) { animation-delay: 12s; }
.kv_slider > *:nth-child(5) { animation-delay: 16s; }
.kv_slider > *:nth-child(6) { animation-delay: 20s; }
.kv_slider > *:nth-child(7) { animation-delay: 24s; }
.kv_slider > *:nth-child(8) { animation-delay: 28s; }

@keyframes fade {

    /* 0% (0秒) から開始 */
    0% {
        opacity: 0;
    }

    /* 0% から 3% に変更 (フェードイン) */
    3% {
        opacity: 1;
    }

    /* 3% から 12.5% に変更 (表示維持) */
    12.5% {
        opacity: 1;
    }

    /* 12.5% から 15.5% に変更 (フェードアウト) */
    15.5% {
        opacity: 0;
    }

    /* 100% (32秒) まで非表示を維持し、次のループへ */
    100% {
        opacity: 0;
    }
}

@media screen and (max-width:1024px) {
    .kv_slider {
        height: 70vh;
    }
}

@media screen and (max-width:767px) {
    .kv_slider {
        height: 31.25rem; 
    }

    .kv_slider img {
        object-position: center center;
    }
}

@media screen and (max-width:767px) {
    .concept_items {
        margin-top: 32.875rem;
    }
}

@media screen and (max-width:450px) {
    .concept_items {
        margin-top: 36.875rem;
    }
}

.gjs-dashed.kv_slider {
    overflow: hidden;
}