This blog explains the process of how to create custom content type, but to make this first you should have to create site columns.
Please refer below link for how to create Site Columns:
Now, check for a complete explanation of how to create custom content type.
Right click project name -> Add -> New Item.
Select ‘Content Type’ template which belongs in ‘Office/SharePoint’ category, set name for the column and click ‘Add’ button.
=> In next wizard page it will ask for Base content type, select Item.
=> It will be added Content type in a project, open content type by double click and create a column.
By typing some initial characters, site column name should appear in a dropdown.
=> Once you select the column, Type and Required field value will automatically set from the Site Column definition.