Solution 1:

You should unnest the arrays in the inner queries:

select x.fn,
       count(elem) 
from (
         select fn, unnest(ln) as elem
         from t
         union
         select fn, unnest(ln) as elem
         from tt
     ) as x
group by x.fn

Db<>fiddle.