#tfooter { padding: 60px 0; border-top: 1px solid #dfdfdf; }
#tfooter dl { display: flex; flex-wrap: nowrap; }
#tfooter dl dt a { display: inline-block; font-weight: 600; font-size: 20px; color: #000; }
#tfooter dl dt span { display: inline-block; margin-right: 23px; font-weight: 600; font-size: 16px; color: #515151; line-height: 1.56; }
#tfooter dl dd { position: relative; padding-left: 60px; min-width: max-content; }
#tfooter dl dd p { position: relative; top: 50%; transform: translateY(-50%); display: flex; flex-wrap: nowrap; align-items: center; }
#tfooter dl dd p img { display: block; width: 42px; margin-right: 10px; }
#tfooter dl dd p span { display: block; font-weight: 700; font-size: 25px; color: #1f5399; }

@media (max-width: 1660px) {
    #tfooter dl dt a { font-size: 18px; }
    #tfooter dl dt span { margin-right: 20px; }
    #tfooter dl dd { padding-left: calc(40px + 1vw); }
    #tfooter dl dd p img { width: 40px; }
}
@media (max-width: 1230px) {
    #tfooter dl dt a { font-size: 17px; }
    #tfooter dl dt span { font-size: 15px; }
    #tfooter dl dd p img { width: 37px; }
}
@media (max-width: 767px) {
    #tfooter dl { flex-wrap: wrap; flex-direction: column-reverse; }
    #tfooter dl dt { width: 100%; padding-top: 15px; }
    #tfooter dl dt a { margin-bottom: 10px; }
    #tfooter dl dt span { display: block; font-weight: 500; font-size: 14px; }
    #tfooter dl dt span:last-of-type { margin-top: 10px; }
    #tfooter dl dt br { display: none; }
    #tfooter dl dd { width: 100%; min-width: initial; padding-left: 0; padding-bottom: 15px; border-bottom: 1px solid #ddd; }
    #tfooter dl dd p { top: 0; transform: translateY(0); }
}