Have you given the user any other roles at all or just the new roles?
In order to give the user basic access to Sitecore you will usually need to give them the Sitecore Client Authoring & Sitecore Client Users roles too.
There is more info on OOTB roles and what they do here:
Also I'd recommend using the Access Viewer to check the access of your role once you have set it up:
There is more info on how to use this here:
Also bear in mind inheritance and how this it is automatically applied to child items, from the link below:
By default, an item inherits the access rights that are assigned to
the items that are higher up the content tree (the ancestors). For
example, a security administrator can configure the security settings
of a single item and all the items that are lower down the content
tree (the descendants) automatically inherit the same settings.
However, if there is an item that should not inherit any security
settings from its ancestors, you can use the Inheritance access right
to deny the item the right to inherit the security settings.
Depending on what permissions are being inherited you may need to break inheritance to your item to get permissions to work as you want.
More info here: