I enjoy writing my own themes, and I actually think doing it from scratch turns out a better product in the end.
That said, I’m not sure building your first theme on a client project is a good idea, and the time required to learn it would be prohibitive and would either cost you/your company or the client money for you to learn skills that (given that you’re being asked to undertake a large project like this) you probably should already have. (Not criticizing, I know how it is, just being pragmatic.) If it were a simpler project, I’d say you could pick up enough to get going on theming immediately, but with a large project like this which most likely involves user management and potentially other more complicated features, it might be tough.
Also, it depends on what features they’re looking for. Sometimes it doesn’t make sense to reinvent the wheel, and starting with something like what you’ve chosen might be more efficient anyway. The reason I prefer writing my own is that often I don’t need features that the original author built, and it can be just as time consuming (or more) to break their theme apart and pare off the extras than it is to just make exactly what the client wants from scratch. But sometimes starting with something pre-built is better, when you know the client already likes the built in features the theme provides.
I would certainly recommend using a child theme if you’re building on top of someone else’s template. While you may know not to update a template because of changes that will be overwritten, clients likely will not know that, and they will invariably click “update” when WordPress prompts them and overwrite your work.