Recently I encountered an error on a CiviCRM profile page, where the reCaptcha gave me a mixed content notification. The whole site is running on https.
I solved it by adding this to the CiviCRM config.
define('FORCE_SSL_ADMIN', true); $_SERVER['HTTPS']='on'; // (provided the SSL Certificate is working correctly)
Found this here.