#customers .logoslide {
    animation: bg-slider 46s linear infinite;
    background: url(http://carhoo.co.jp/wp-content/themes/original/img/top/up-lo.webp?ver=20250821) repeat-x 50%;
    background-size: auto 60px;
    height: 60px;
    width: 100%;
}

#column .inner p {
    font-size: 16px;
}

.swiper-container {
    overflow: hidden;
}

#column .inner .swiper-slide {
    height: 300px;
}

#column .inner .head img {
    margin-bottom: 30px;
}

#column .inner .title {
    font-weight: bold;
    text-align: left;
}

#column .inner p.cat {
    color: #d30d30;
}


:root {
    --duration-top: 55s;
    /* 上段：右→左 */
    --duration-bottom: 55s;
    /* 下段：左→右 */
    --gap: 10px;
    --card-w: clamp(160px, 18vw, 220px);
    --card-h: clamp(64px, 9vw, 96px);
    --edge-fade: 80px;
    --bg: #f6f7fb;
}


body {
    margin: 0;
    background: var(--bg);
}


.clients-marquee {
    padding: 28px 0;
    display: grid;
    gap: 10px;
}


.row {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.row::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 var(--edge-fade), #000 calc(100% - var(--edge-fade)), transparent);
    mask-image: linear-gradient(90deg, transparent, #000 var(--edge-fade), #000 calc(100% - var(--edge-fade)), transparent);
}


.track {
    display: flex;
    width: max-content;
    gap: var(--gap);
    align-items: center;
    will-change: transform;
}

.track>.set {
    display: flex;
    gap: var(--gap)
}


/* 1セット分（全体の50%）だけ流す */
@keyframes scroll-left {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

@keyframes scroll-right {
    from {
        transform: translateX(-50%);
    }

    to {
        transform: translateX(0);
    }
}


.row.rtl .track {
    animation: scroll-left var(--duration-top) linear infinite;
}

.row.ltr .track {
    transform: translateX(-50%);
    animation: scroll-right var(--duration-bottom) linear infinite;
}


.card {
    width: 160px;
    height: 78px;
    border-radius: 7px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 20px;
    flex: 0 0 auto;
}

.card img {
    max-height: 100%;
    max-width: 100%;
    object-fit: contain;
}


.container {
    max-width: 1200px;
    margin-inline: auto;
    padding-inline: 16px;
}


@media (max-width: 600px) {
    :root {
        --duration-top: 65s;
        --duration-bottom: 65s;
        --gap: 16px;
        --edge-fade: 48px;
    }

    .card {
        height: 70px;
    }
}

@keyframes bg-slider {
    0% {
        background-position: 0 0;
    }

    100% {
        background-position: -4138px 0;
    }
}
