@media (max-width: 1280px) and (min-width: 540px) {
    #footer {
        width: 100%;
    }
}
@media (max-width: 768px) and (min-width: 540px) {
    #footer .link {
        gap: 0;
        display: grid;
        grid-template-columns: auto auto auto auto auto;
        justify-content: space-around;
    }

    #footer .vertical-sp {
        display: block !important;
    }

    #footer p {
        margin: 20px 10px;
    }
}
@media (max-width: 540px) {
    #footer .link {
        justify-content: space-between;
    }

    #footer p {
        margin: 20px 10px;
    }
    #footer {
        width: 100%;
    }

    #footer > div {
        width: 100%;
        padding: 0 10px;
    }

    #footer img {
        width: 100px;
        height: 50px;
        margin-top: 30px;
    }

    #footer p {
        margin: 10px 0;
        font-size: 1rem;
    }

    #footer .link {
        padding: 15px 5px;
    }
    #footer .link {
        gap: 0;
        display: grid;
        grid-template-columns: auto auto auto auto auto;
        justify-content: space-between;
    }
}
@media (min-width: 360px) and (max-width: 540px) {
    #footer p.sp {
        font-size: 1.55rem;
        line-height: 2.35rem; 
    }
    #footer p.sp .for-footer {
        font-size: 1.5rem;
    }
    #footer div.link a {
        font-size: 1.2rem;
    }
    #footer .link {
        gap: 10px;
    }
}
