Lots of good advice here already, but maybe I can step back and explain where that price came from.
Labor + materials + overhead + profit.
Labor is pretty obvious... some firms pay more; some pay less. Some provide health benefits; some don't. Built into the labor price is how long the job is expected to take: some firms will cut corners and reduce their labor cost and others will do everything pretty well and have higher labor costs. Some will exclude "unknown conditions" from the contract and issue you a change order that will cost you more; others will anticipate likely problems and have a little money built into the contract so that they don't have to annoy you with a flurry of change orders. (There are plenty of contractors out there that get their feet in the door with a low bid and then make a ton of extra money with change orders.)
Materials are something you'd see on comparative quotes if you got multiples. You'd see that one guy was offering 15# felt and the other was offering Grace Ice and Water Shield. That's not the whole story, though, as the price a big firm pays for shingles isn't necessarily the price that a little firm pays. And maybe the guy that's offering you a massive deal is just trying to burn through some leftovers from another job. So material choices and prices vary. You shouldn't concern yourself with what the materials cost; just be concerned with what materials are specified in your contract.
Overhead is what it costs a company to keep their doors open whether they're working or not. That's rent on the office, truck payments, certain insurances, cost of ownership of tools, licenses (if applicable), their advertising spend... the list goes on. A big company is apt to have more overhead than some dude with a truck and a couple of buddies. Be sure that the dude with a truck has liability and workman's comp, otherwise, you could be paying for his buddy that fell off the roof and crippled himself. (Top tip: ask for proof of insurance, then call the companies to verify. I know that sounds like you aren't trusting, but consider the alternative.)
Profit is what's left over at the end of the year, after the first 3 have been covered. Profit gets used to weather hard times or grow the business or buy a big stupid bro truck. You can decide for yourself whether a business deserves to make a profit, but I can assure you of two things: you want the business to be around in a few years if a warranty claim happens, and there's very little incentive for people to run businesses without profit as one of the motives. (And, I should note, some businessmen are greedy, so try to make an unreasonably high profit. Some guys do astonishingly good work in expensive markets where an unreasonably high profit is almost forced upon them so that they can keep up the veneer of exclusivity.)
So with all that in mind, how did you decide the price was too high? If you're not running that particular roofing business, you have no insight into anything other than material costs.
You might ask for a lower price and you might get a lower price, but most businesses aren't running strictly on charity, so I doubt you'd get as good a product as you would've at the original price.
If, hypothetically, roofer X was the only game in town and you needed to get the price down without compromising on quality of execution, then a productive route would be to ask what they can remove from the quote to cut the price. Cheaper materials? You haul all the tearoff? Shingle over existing? (Btw, that's usually a bad idea that gets you far less lifespan, but if you only need a roof for 5 years, it might work...)
Get a few more quotes. Try to compare apples to apples regarding materials. You might get a quote you like more.