I followed the instructions of SelArom Dot Net Tutorial - Customizing the Model with Regions and Fields and found out that I need to use new region to add fields or specify custom region attribute above custom field.
public class HomePage : Page<HomePage>
{
[Region(Title = "General", Icon = "fas fa-pen")]
public GeneralHomePageRegion General { get; set; }
}
public class GeneralHomePageRegion
{
[Field(Title = "Caption", Description = "Max 50 characters")]
public StringField Title { get; set; }
}