footer {
    width: 100%;
    box-sizing: border-box;
    background-color: var(--bg-color);
}

footer .footer-main {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    max-width: var(--default-width);
    margin: 0 auto;
    padding: 4rem 0;
    gap: 4rem;
    flex-wrap: wrap;
}

footer .footer-main .footer-logo .logo {
    font-size: 2.8rem;
    font-weight: bold;
    display: flex;
    align-items: center;
}

footer .footer-main .footer-logo .footer-slogan {
    font-size: 1.4rem;
    margin-top: 0.5rem;
    color: #666666;
}

footer .footer-main .footer-logo .logo .logo-ter {
    color: var(--logo-ter-color);
}

footer .footer-main .footer-logo .logo .logo-sier {
    color: var(--logo-sier-color);
}

footer .footer-main .footer-section {
    min-width: 18rem;
}

footer .footer-main .footer-section h4 {
    margin-bottom: 1rem;
    font-size: 1.6rem;
    color: var(--footer-head-color);
}

footer .footer-main .footer-section ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

footer .footer-main .footer-section ul li {
    margin-bottom: 0.6rem;
}

footer .footer-main .footer-section ul li a {
    font-size: 1.3rem;
    text-decoration: none;
    color: var(--footer-text-color);
}

footer .footer-main .footer-section ul li a:hover {
    color: var(--footer-text-hover-color);
}

footer .footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.5rem 0;
    border-top: 0.1rem solid #55555533;
    max-width: var(--default-width);
    margin: 0 auto;
    flex-wrap: wrap;
}

footer .footer-bottom p {
    margin: 0;
    font-size: 1.4rem;
}

footer .footer-social a {
    margin-left: 1.2rem;
    font-size: 1.6rem;
    color: inherit;
}

footer .footer-social a:hover {
    color: var(--text-hover-color);
}