I'd suggest checking Google Webmaster Tools for duplicate content issues. You'll specifically want to make sure that you're page titles are unique for each different page, and that the meta descriptions are unique as well.
If Google believes the pages to be duplicates, it will likely relegate them to their supplementary index, which is why you see them for site: searches, but not regular searches.
A good way to confirm if that's the case is to search for a very unique and long string that appears on a page you're investigating, and do a quoted Google search for it, something like ["at domain.com we strive to provide the highest quality product available online"], anything that's unlikely to show up on other pages on the internet. If you're page doesn't show up, chances are quite high that it's been relegated to the supplementary index. If that's the case, you'll want to fix up your duplicate content issues and submit a reconsideration request to Google (which can take several weeks).