What is the best way to indicate to a user a required set of inputs associated to an optional question prompt?

I have a feeling this will be duplicated (sorry), however, I've not been able to find a topic specific to this.

The scenario we are challenged with is trying to make it clear to a user that answering a question is optional, however, if they choose to respond, a specific set of inputs is required as a part of that response. An simple example of this may be asking a user for their address, which they skip doing completely, but if they do choose to answer we want to require them to provide at least city, state, and zip.

Our standard so far has been to indicate each prompt with "(required)" if you have to answer the questions. If our question was required it would looks something like this.

What is your home address? (required)
[___________] Address 1
[___________] Address 2
[___________] City*
[___________] State*
[___________] Zip*

The only difference for our option question where they don't have to answer at all is the following and the concern is it's misleading with the "City, Stage, and Zip" inputs still flagged as required.

What is your home address?
[___________] Address 1
[___________] Address 2
[___________] City*
[___________] State*
[___________] Zip*

The proposed solution at the moment is to flag the fields as required with an "*" as soon as the user starts answering any 1 of the 5 inputs, so they would all appear as optional until some data entry started. This appears logical and then feels over engineered at the same time and am hoping to learn what others may have done.