#tfooter { background-color: #444; }
#tfooter .top { padding: 40px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.5); }
#tfooter .top .topul { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; }
#tfooter .top .topul > li:first-of-type { width: 100%; }
#tfooter .top .topul > li:last-of-type { min-width: max-content; }
#tfooter .top .topul > li:first-of-type a { display: inline-block; font-weight: 600; font-size: 30px; color: #fff; letter-spacing: -0.02em; }
#tfooter .top .topul > li .dlcont { display: flex; flex-wrap: nowrap; align-items: center; font-size: 18px; line-height: 1.42; }
#tfooter .top .topul > li .dlcont * { font-size: inherit; line-height: inherit; }
#tfooter .top .topul > li dl { display: flex; flex-wrap: nowrap; align-items: center; margin-left: 40px; }
#tfooter .top .topul > li dl dt { position: relative; min-width: max-content; padding-right: 20px; margin-right: 20px; font-weight: 500; color: #f6ab00; }
#tfooter .top .topul > li dl dt::after { display: block; content: ''; position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 1px; height: 80%; background-color: #5d5d5d; }
#tfooter .top .topul > li dl dd { color: #dfdfdf; }

#tfooter .bottom { padding: 40px 0; }
#tfooter .bottom .bottomul { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; }
#tfooter .bottom .bottomul > li:first-of-type { width: 100%; }
#tfooter .bottom .bottomul > li:last-of-type { min-width: max-content; }
#tfooter .bottom .bottomul dl { display: flex; flex-wrap: nowrap; align-items: center; }
#tfooter .bottom .bottomul dl dt { min-width: max-content; margin-right: 40px; }
#tfooter .bottom .bottomul dl dt .ft_logo { display: inline-block; }
#tfooter .bottom .bottomul dl dt .ft_logo img { display: inline-block; width: 270px; }
#tfooter .bottom .bottomul dl dd .textbox { font-weight: 500; font-size: 18px; color: #dfdfdf; line-height: 1.65; }
#tfooter .bottom .bottomul dl dd .textbox * { font-weight: inherit; font-size: inherit; color: inherit; line-height: inherit; }
#tfooter .bottom .bottomul dl dd .textbox p { display: inline-block; }
#tfooter .bottom .bottomul dl dd .textbox i { display: inline-block; padding: 0 10px; font-style: normal; }
#tfooter .bottom .bottomul dl dd .textbox p span { font-weight: normal; color: #b3b3b3; }
#tfooter .bottom .bottomul .snswrap { display: flex; flex-wrap: nowrap; justify-content: right; }
#tfooter .bottom .bottomul .snswrap a { display: inline-block; margin-left: 10px; }
#tfooter .bottom .bottomul .snswrap a img { display: inline-block; width: 65px; }

@media (max-width: 1535px) {
    #tfooter .top .topul > li dl { margin-left: calc(24px + 1vw); }
    #tfooter .top .topul > li dl dt { padding-right: 17px; margin-right: 17px; }

    #tfooter .bottom .bottomul dl dt { margin-right: calc(24px + 1vw); }
    #tfooter .bottom .bottomul dl dt .ft_logo img { width: calc(200px + 4.5vw); }
    #tfooter .bottom .bottomul .snswrap a { margin-left: 9px; }
    #tfooter .bottom .bottomul .snswrap a img { width: 55px; }
}
@media (max-width: 1279px) {
    #tfooter .top .topul > li dl dt { padding-right: 15px; margin-right: 15px; }

    #tfooter .bottom .bottomul { flex-wrap: wrap; flex-direction: column-reverse; }
    #tfooter .bottom .bottomul > li:last-of-type { min-width: initial; margin-bottom: 20px; }
    #tfooter .bottom .bottomul dl dd .textbox i { padding: 0 7px; }
    #tfooter .bottom .bottomul .snswrap a { margin-left: initial; margin: 0 6px; }
    #tfooter .bottom .bottomul .snswrap a img { width: 45px; }
}
@media (max-width: 1023px) {
    #tfooter .top .topul { display: block; }
    #tfooter .top .topul > li:last-of-type { min-width: initial; margin-top: 20px; }
    #tfooter .top .topul > li dl { width: 50%; margin-left: initial; }
    #tfooter .top .topul > li dl dt { padding-right: 12px; margin-right: 12px; }

    #tfooter .bottom .bottomul dl { display: block; }
    #tfooter .bottom .bottomul dl dt { min-width: initial; margin-right: initial; text-align: center; }
    #tfooter .bottom .bottomul dl dd { margin-top: 15px; text-align: center; }
    #tfooter .bottom .bottomul dl dd .textbox p { display: block; }
    #tfooter .bottom .bottomul dl dd .textbox br { display: none; }
    #tfooter .bottom .bottomul dl dd .textbox i { display: none; }
}
@media (max-width: 767px) {
    #tfooter .top .topul > li .dlcont { display: block; }
    #tfooter .top .topul > li dl { width: 100%; }
    #tfooter .top .topul > li dl:nth-of-type(n + 2) { margin-top: 10px; }
    #tfooter .top .topul > li dl dt br { display: none; }
    #tfooter .top .topul > li dl dd br { display: none; }

    #tfooter .bottom .bottomul .snswrap a img { width: 38px; }
}
@media (max-width: 524px) {
    #tfooter .top .topul > li dl { display: block; }
    #tfooter .top .topul > li dl dt { padding-right: initial; margin-right: initial; padding-bottom: 10px; margin-bottom: 10px; }
    #tfooter .top .topul > li dl dt::after { right: initial; left: 0; top: initial; bottom: 0; transform: translateY(0); width: 100%; height: 1px; background-color: #5d5d5d; }
    /* #tfooter .top .topul > li dl dt br { display: inline-block; }
    #tfooter .top .topul > li dl dd br { display: inline-block; } */
}