html {
    scroll-behavior: smooth;
}

#customer .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
}
#customer small {
    font-weight: 700;
    font-size: 1.6rem;
    letter-spacing: -0.03em;
    color: #006ffb;
}
#customer h1 {
    margin-top: 1rem;
    font-weight: 700;
    font-size: 4.4rem;
    letter-spacing: -0.03em;
    color: #121212;
}
#customer .wrapper {
    margin-top: 8rem;
}
#customer #link-list {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 1rem;
}
#customer #link-list a {
    background: #f2f4f8;
    display: grid;
    place-items: center;
    padding: 0 1.7rem;
    height: 44px;
    border-radius: 22px;
    font-weight: 500;
    font-size: 1.6rem;
    letter-spacing: -0.03em;
    color: #121212;
}
#customer #link-list a.active {
    background: #0076ff;
    font-weight: 700;
    color: #fff;
}
#customer h2 {
    scroll-margin-top: calc(var(--headerHeight) + var(--bannerHeight, 0px) + 3rem);
    margin-top: 6rem;
    align-self: flex-start;
    font-weight: 700;
    font-size: 2rem;
    color: #121212;
}
#customer h2:first-of-type {
    scroll-margin-top: calc(var(--headerHeight) + var(--bannerHeight, 0px) + 2rem);
    margin-top: 3rem;
}
#customer ul {
    margin-top: 2rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, auto));
    align-self: stretch;
    justify-content: space-between;
    gap: 2.4rem;
}
#customer li {
    border-radius: 5px;
    border: solid 1px #e5e8eb;
    position: relative;
    transition: 0.15s ease-out;
    transform: translate(0px, 0px);
}
#customer li img {
    width: calc(100% + 2px);
    aspect-ratio: 90/71;
}
#customer li em {
    position: absolute;
    bottom: 22px;
    left: 0;
    display: block;
    width: 100%;
    text-align: center;
    font-size: 1.4rem;
}
#customer li:last-child {
    margin-right: auto;
}
#customer li:hover {
    border-color: #366cf0;
    box-shadow: 0 6px 15px 0 rgba(173, 173, 173, 0.35);
    transform: translate(-1px, -1px);
}

@media (max-width: 660px) {
    #customer h1 {
        font-size: 2.7rem;
        text-align: center;
    }
    #customer .wrapper {
        margin-top: 3rem;
    }
    #customer .wrapper::-webkit-scrollbar {
        display: none;
    }
    #customer #link-list {
        width: 430px;
        gap: 0.6rem;
    }
    #customer #link-list a {
        padding: 0 1rem;
        height: 34px;
        border-radius: 17px;
        font-size: 1.5rem;
    }
    #customer ul {
        grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
        gap: 1.6rem;
    }
}
@media (max-width: 462px) {
    #customer .wrapper {
        width: 100%;
        overflow-x: auto;
        position: relative;
        overscroll-behavior-x: none;
        --scrollLeft: 0;
    }
    #customer .wrapper::before, #customer .wrapper::after {
        content: "";
        position: absolute;
        top: 50%;
        width: 3rem;
        height: 100%;
        pointer-events: none;
        transform: translateX(var(--scrollLeft)) translateY(-50%);
        opacity: 0;
        transition: opacity 0.2s;
    }
    #customer .wrapper::before {
        background-image: linear-gradient(90deg, rgb(255, 255, 255), rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0));
        left: -1px;
    }
    #customer .wrapper::after {
        background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.7), rgb(255, 255, 255));
        right: -1px;
    }
    #customer .wrapper.left::before, #customer .wrapper.right::after {
        opacity: 1;
    }
}