Ok, I would like to recommend you have a tech specialist do this at location but here is how I use to do it.
First, you need dns services, that is for the domainname and the various names in the domain like
www.domain.com should work. Either you get QuickDNS from
www.menandmice.com which is in fact just an interface for controlling the built in dns server of OSX (even the OS X clients work), or you let someone do dns service for you, your isp for example.
Second, you need mailservice. One option most people in this forum would through at you is OS X Server. As a administrator of various mailservers through time I can't recommend that. I would go with Communigate Pro, it's at
www.stalker.com. That will cost you 500$ for 50 users. You can download it and try it out and buy the license whenever you are ready. This server gives you alot of benefits over OSX Server, first is decent support. Second is proper documentation.
Third, you needed a Web server. I would go with OSX Client for this purpose. Just head over to System Prefs and enable web sharting and you are up and running.
You will also need a Firewall, since that will protect your variuos servers, and make life easier. Either you use a Mac HW for this, with two network cards, or you buy a finished product. It's what I recommend you.
Both Communigate Pro and Personal Web Sharing can be used on the same server computer, but I would recommend you to use one per task, if one computer goes down , it will only render one service down, not both.
Then you need backup etc etc but I will leave that over for you.