To be honest, the shoes look a bit stripperific to me, a bit too big and clunky for a fancy restaurant.
If it were me, I'd wear a smaller heel and maybe a black skirt (I think knee-length would look best with the rest of your outfit).
I mean I can't tell if those are skinny jeans or tights but typically to a fancy restaurant ladies wear dresses or skirts, which doesn't mean you can't wear anything under that (I, for one, always wear tights or bike shorts under skirts). But since you don't have any dresses, I think a skirt would look better myself along with smaller heels.
Also, no need to be afraid of too much black, you've got a nice splash of color with your shirt. But if you choose to wear a skirt then if you have any pantyhose you could wear those and some black heels. Has a nice classy look to it, at least in my opinion.
But it really also depends on the restaurant itself, plus the occasion. Overall though, the top looks fine. But if it's an important occasion it may look like you're not trying hard enough to some people. However, I would for sure lose the shoes and go with a classy black heel if it were me, along with a knee-length black skirt. This way, you wont look like you're wearing too much black. But you can also look classy without coming off as trying to hard to do so, it's like classy casual.
I mean assuming you have a knee-length black skirt. If you do not, then I'd say wear some black slacks (if you have any) and black heels. But if you do that you may end up looking like you're on your way to a job interview or something.
Well anyway, that's just my opinion on the matter. Like I said, depends on the restaurant and the occasion also. I personally prefer to go with a classy-casual style if I'm unsure how to dress for something so that way if I end up underdressed, I still look nice enough, and if I end up overdressed then I still look like I'm not out to impress anyone. But that's me.
Either way, hope you have a good time tonight~