#tfooter { background-color: #1c1c1c; }
#tfooter .top { padding: 25px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
#tfooter .top .top_items { display: flex; flex-wrap: nowrap; }
#tfooter .top .top_items a { position: relative; display: inline-block; padding: 0 10px; font-weight: 600; font-size: 16px; color: #fff; }
#tfooter .top .top_items a:first-of-type { padding-left: 0; }
#tfooter .top .top_items a::after { display: block; content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 1px; height: 80%; background-color: #3f3f3f; }
#tfooter .top .top_items a:first-of-type:after { display: none; }

#tfooter .bottom { padding: 35px 0; }
#tfooter .bottom dl { display: flex; flex-wrap: nowrap; justify-content: space-between; }
#tfooter .bottom dl dt { font-weight: 300; font-size: 16px; color: #8a8a8a; line-height: 1.56; }
#tfooter .bottom dl dt * { font-weight: inherit; font-size: inherit; color: inherit; line-height: inherit; }
#tfooter .bottom dl dt > div { display: inline-flex; margin-right: 10px; }
#tfooter .bottom dl dt > div p:first-of-type { min-width: max-content; }
#tfooter .bottom dl dt > div p span { color: #fff; }
#tfooter .bottom dl dd { min-width: max-content; }
#tfooter .bottom dl dd .sns_wrap { display: flex; flex-wrap: nowrap; }
#tfooter .bottom dl dd .sns_wrap a { display: inline-block; margin-left: 15px; }
#tfooter .bottom dl dd .sns_wrap a img { display: inline-block; width: 59px; }

@media (max-width: 1535px) {
    #tfooter .top .top_items a { font-weight: 500; font-size: 15px; }

    #tfooter .bottom dl dt { font-size: 15px; }
    #tfooter .bottom dl dd .sns_wrap a { margin-left: 12px; }
    #tfooter .bottom dl dd .sns_wrap a img { width: calc(25px + 2vw); }
}

@media (max-width: 1279px) {
    
}

@media (max-width: 1023px) {
    #tfooter .top .top_items a { padding: 0 7px; font-size: 14px; }

    #tfooter .bottom dl dt { font-size: 14px; }
    #tfooter .bottom dl dt br { display: none; }
    #tfooter .bottom dl dt br:last-of-type { display: inline-block; }
    #tfooter .bottom dl dt > div { display: flex; }
    #tfooter .bottom dl dd .sns_wrap a { margin-left: 0; margin-right: 10px; }
}

@media (max-width: 767px) {
    #tfooter .top .top_items a { padding: 0; width: 33.3333%; text-align: center; font-size: 13px; }

    #tfooter .bottom dl { flex-wrap: wrap; flex-direction: column-reverse; }
    #tfooter .bottom dl dt { width: 100%; margin-top: 20px; font-size: 13px; }
    #tfooter .bottom dl dd { width: 100%; }
    #tfooter .bottom dl dd .sns_wrap a img { width: 35px; }

    #tfooter .bottom dl dt > div { display: block; }
    #tfooter .bottom dl dt > div p { display: inline; }
}

@media (max-width: 480px) {
    #tfooter .top .top_items a { font-size: 12px; }

    #tfooter .bottom dl dt { font-size: 12px; }
}