.sp-02 {
    display: none;
}

.other-bg {
    background-image: url("../assets/img/common/other-bg.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.race-list-pdf-item a {
    display: block;
    transition: opacity 0.3s ease;
}

.race-list-pdf-item a:hover {
    opacity: 0.6;
    cursor: pointer;
}

/* PC（1025px〜） */
@media (min-width: 1025px) {
    .bp-fv-area {
        width: 100%;
        height: auto;
        margin-top: 100px;
    }

    .campaign {
        margin: 80px 0;
    }

    .dl-fv-bg {
        width: 100%;
        height: auto;
        margin-top: 100px;
    }

    .bp-fv-cont {
        width: 100%;
        height: auto;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .dl-fv-txt {
        color: #fff;
    }

    .dl-fv-main-txt {
        font-size: clamp(20px, 3vw, 64px);
        font-weight: 700;
        color: #fff;
    }

    .race-list-cont {
        width: 100%;
        background-color: #9F0515;
        padding: 80px 0;
    }

    .limitation-cont {
        width: 100%;
    }

    .limitation-box {
        width: 100%;
        max-width: 940px;
        height: 456px;
        background-image: url("../assets/img/dl/limitation-yt-bg.png");
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
    }

    .limitation-ttl {
        font-size: clamp(18px, 2vw, 32px);
        font-weight: 500;
        margin-bottom: 16px;
    }

    .limitation-img {
        width: 60%;
        height: auto;
    }

    .race-list-cont {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .race-list-box {
        margin: 0px auto 40px;
    }


    .race-list-ttl {
        margin-bottom: 24px;
    }

    .race-list-main-ttl {
        color: #fff;
        font-size: clamp(1.625rem, 1.4583rem + 0.3472vw, 1.875rem);
    }

    .race-list-ttl-line {
        height: 1px;
        background-color: #fcfcfc;
        width: 35%;
        margin: 8px 0;
    }

    .race-list-date {
        color: #fff;
        font-size: clamp(1.25rem, 1.0833rem + 0.3472vw, 1.5rem);
    }

    .race-list-pdf-bg {
        width: 1000px;
        background-image: url("../assets/img/dl/dl-list-bg.png");
        background-repeat: no-repeat;
        background-size: 100% auto;
        background-position: top center;
        padding: 64px 100px;
    }

    .race-list-pdf {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 40px;
        margin: 0 auto;
        padding: 0px;
        max-width: calc(210px * 3 + 80px);
    }

    .race-list-pdf-item {
        flex: 0 0 210px;
        box-sizing: border-box;
        position: relative;
    }

    .pdf-date-box {
        width: 100%;
        position: relative;
    }

    .pdf-date-ttl {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-size: clamp(1.75rem, 1.5833rem + 0.3472vw, 2rem);
        color: #BA071A;
        font-weight: 600;
        text-align: center;
    }

    .pdf-content-box {
        padding: 20px 37px 62px;
        border: 1px solid #9F0515;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .pdf-content-box img {
        max-width: 100px;
    }


    .pdf-content-date {
        position: absolute;
        top: 90%;
        left: 55%;
        width: 99%;
        transform: translate(-50%, -50%);
        display: inline-block;
        background-color: #000;
        padding: 4px 16px;
        color: #fff;
        font-size: clamp(0.875rem, 0.7083rem + 0.3472vw, 1.125rem);
        font-weight: 500;
    }
}

/* タブレット（768〜1024px） */
@media (min-width: 768px) and (max-width: 1024px) {
    .bp-fv-area {
        width: 100%;
        height: auto;
        margin-top: 100px;
    }

    .dl-fv-bg {
        width: 100%;
        height: auto;
        margin-top: 100px;
    }

    .campaign {
        margin: 40px 0;
    }

    .bp-fv-cont {
        width: 100%;
        height: auto;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .dl-fv-txt {
        color: #fff;
    }

    .dl-fv-main-txt {
        font-size: clamp(20px, 3vw, 64px);
        font-weight: 700;
        color: #fff;
    }

    .race-list-cont {
        width: 100%;
        background-color: #9F0515;
        padding: 80px;
    }

    .race-list-box {
        margin: 0px auto 40px;
    }


    .race-list-ttl {
        margin-bottom: 24px;
    }

    .race-list-main-ttl {
        color: #fff;
        font-size: clamp(1.625rem, 1.4583rem + 0.3472vw, 1.875rem);
    }

    .race-list-ttl-line {
        height: 1px;
        background-color: #fcfcfc;
        width: 35%;
        margin: 8px 0;
    }

    .race-list-date {
        color: #fff;
        font-size: clamp(1.25rem, 1.0833rem + 0.3472vw, 1.5rem);
    }

    .race-list-pdf-bg {
        width: 100%;
        display: flex;
        justify-content: center;
        background-image: url("../assets/img/dl/dl-list-bg.png");
        background-repeat: no-repeat;
        background-position: top center;
        padding: 61px 0px;
        box-sizing: border-box;
        background-size: cover;
    }

    .center-box {
        width: 1140px;
        max-width: 100%;
        margin: 0 auto;
    }

    .race-list-pdf {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 40px;
        max-width: calc(174px * 3 + 45px);
    }

    .race-list-pdf-item {
        flex: 0 0 162px;
        box-sizing: border-box;
        position: relative;
    }

    .pdf-date-box {
        width: 100%;
        position: relative;
    }

    .pdf-date-ttl {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-size: clamp(1.75rem, 1.5833rem + 0.3472vw, 2rem);
        color: #BA071A;
        font-weight: 600;
        text-align: center;
    }

    .pdf-content-box {
        padding: 20px 37px 62px;
        border: 1px solid #9F0515;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .pdf-content-box img {
        max-width: 100px;
    }


    .pdf-content-date {
        position: absolute;
        top: 90%;
        left: 55%;
        width: 99%;
        transform: translate(-50%, -50%);
        display: inline-block;
        background-color: #000;
        padding: 4px 16px;
        color: #fff;
        font-size: clamp(0.875rem, 0.7083rem + 0.3472vw, 1.125rem);
        font-weight: 500;
    }
}

/* スマホ（〜767px） */
@media (max-width: 767px) {
    .bp-fv-area {
        width: 100%;
        height: auto;
        margin-top: 70px;
    }

    .dl-fv-bg {
        width: 100%;
        height: auto;
        margin-top: 70px;
    }

    .campaign {
        margin-top: 40px;
    }

    .bp-fv-cont {
        width: 100%;
        height: auto;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .vote-fv-img-area {
        width: 100%;
        max-width: 140px;
    }

    .dl-fv-txt {
        color: #fff;
    }

    .dl-fv-main-txt {
        font-size: clamp(1.5rem, 8vw, 40px);
        font-weight: 700;
        color: #fff;
    }

    .race-list-cont {
        width: 100%;
        background-color: #9F0515;
        padding: 16px;
        margin-top: 10px;
    }

    .race-list-box {
        margin: 0px auto 40px;
    }


    .race-list-ttl {
        margin-bottom: 16px;
    }

    .race-list-main-ttl {
        color: #fff;
        font-size: 18px;
    }

    .race-list-ttl-line {
        height: 1px;
        background-color: #fcfcfc;
        width: 35%;
        margin: 2px 0;
    }

    .race-list-date {
        color: #fff;
        font-size: 14px;
    }

    .race-list-pdf-bg {
        width: 100%;
        display: flex;
        justify-content: center;
        background-image: url("../assets/img/dl/dl-list-bg.png");
        background-repeat: no-repeat;
        background-position: top center;
        padding: 32px 30px;
        box-sizing: border-box;
        background-size: cover;
    }

    .center-box {
        width: 1140px;
        max-width: 100%;
        margin: 0 auto;
    }

    .race-list-pdf {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 24px;
        max-width: calc(124px * 2 + 16px);
    }

    .race-list-pdf-item {
        flex: 0 0 114px;
        box-sizing: border-box;
        position: relative;
    }

    .pdf-date-box {
        width: 100%;
        position: relative;
    }

    .pdf-date-ttl {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-size: 16px;
        color: #BA071A;
        font-weight: bold;
        text-align: center;
    }

    .pdf-content-box {
        padding: 14px 23px 50px;
        border: 1px solid #9F0515;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .pdf-content-box img {
        max-width: 100px;
    }


    .pdf-content-date {
        position: absolute;
        top: 86%;
        left: 55%;
        width: 100%;
        transform: translate(-50%, -50%);
        display: inline-block;
        background-color: #000;
        padding: 4px 2px;
        color: #fff;
        font-size: 12px;
        font-weight: 500;
    }
}