Walk-a-thon raises money for charities