What you need is charge is for your time.
Be as precise as you possibly can in determining exactly what is requested/required and what it will take to produce it. I always factor into my fee determination the time a reasonably competent Access developer could do the job. One should charge for learning on-the-job unless the customer agrees to it in advance.
I would suggest a detailed requirements document, approved by your customer, and periodic sign-offs by your customer to be certain that you remain on-target and are meeting his expectations. Otherwise, your completing your project will be a target which is continuously moving and you'll never get done.
Fixed price contracts always work better for the custmer. They know exactly what it's going to cost. 40% up front, 40% on delivery and 10% upon completion is reasonable. If your customer doesn't have or know all his requirement and can't determine until the project is in progress, charge an hourly fee and a fixed percentage profit. Otherwise, you will be bidding a price for someting that isn't "cast in concrete" and accordingly work a lot of hours for free.
Severaly years ago, I big a job which I estimated would require 4 man months of work. It took 6, so I had to eat two. The deal was still good for me because I made money and the customer was ultimately satisfied. I just didn't spend enough time determining all the requirements in advance.
Good luck.