The default apacheApache settings for /var/www meet your requirements already. You can restrict access to /var/www/private using Require group team as you suggested, by adding the missing configuration as follows.
Require directives default to RequireAny so it can usually be omitted unless you need to change it as shown in the configuration below.
Create a group.groups file like this in a suitable location for your system:
# group: memberOne memberTwo memberThree etc
team: richard david jane bill
Then just creategenerate a .password file of users and hashed passwords:
$ htpasswd -c /path/to/file/.groupspasswords richard
Enter and confirm password.
Run the same command for each group member who needs access, but omit the -c (create) flag or you'll overwrite the password file with a new blank one.
Configure your Apache directives as follows, setting the correct path to the .passwords and .groups files you created above.
<Location /private>
Options Indexes
AuthType basic
AuthName "login info required"
AuthUserFile path/to/file/.passwords
AuthGroupFile path/to/file/.groups
<RequireAll>
Require all granted
Require group team
</RequireAll>
</Location>
Restart Apache and you're done.