Sorry, seeing the code when I posted it there made we realise something, I was calling templates in the “store” template group that weren’t listed in the {REQUEST_URI}.
I changed the above to this and it seems to work now.
DirectoryIndex index.php index.html
# Expression Engine mod_rewrite to remove "index.php"
RewriteEngine On
Options +FollowSymLinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1
RewriteCond %{HTTPS} off
RewriteCond %{REQUEST_URI} (store|member|account|assets|campaigns|js|ajax|includes|ajax|site)
RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTPS} on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(store|member|account|assets|campaigns|js|ajax|includes|ajax|site)
RewriteRule ^(.*)$ http://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]