I have a 5GB database and a 20GB transaction log (SQL Server 2005). Not sure why it is so large or what happened to make it that large, it used to be around 1/2 the size of
Er... excuse the bleeding obvious, but do you have scheduled backups with "BACKUP LOG"
If the recovery model is FULL then this needs to happen.
There are other, rare options that I'll include (not exhaustive):