
footer {
    background: #2b2b2b;
    margin-top: 100px;
}

.footer {
    position: relative;
    max-width: 1540px;
    padding: 61px 20px;
    margin: 0 auto;
    display: flex;
}

footer p, footer a {
    color: #c8cace;
    font-size: 1.4rem;
}

.ft_box {
    display: flex;
}

.ft_logo {
    max-width: 182px;
    display: inline-block;
}

.ft_logo img {
    width: 100%;
    max-width: 150px;
}

.ft_txt {
    padding-left: 10rem;
    display: inline-block;
}

.ft_txt .privacy {
    padding-top: 20px;
}

.ft_txt a {
    display: inline-block;
}

.ft_sns {
    position: absolute;
    right: 20px;
    bottom: 61px;
}

.ft_sns a {
    display: inline-block;
    padding: 0 5px;
}

.ft_sns img {
    width: 100%;
    max-width: 25px;
}

@media only screen and (max-width: 1024px) {
    .footer {
        flex-direction: column;
    }

    .ft_txt {
        padding: 50px 0;
    }
}

@media only screen and (max-width: 550px) {
    footer p, footer a {
        font-size: 1.65rem;
    }

    .ft_txt p > br {
        display: none;
    }
}