/* CF7・確認アドオンの基本表示をこのフォーム内に移し、無効化後も外観を保つ。 */
.kanaphil-contact .screen-reader-response {
  position: absolute; overflow: hidden; clip: rect(1px, 1px, 1px, 1px);
  height: 1px; width: 1px; margin: 0; padding: 0; border: 0;
}
.kanaphil-contact .wpcf7-form-control-wrap { position: relative; }
.kanaphil-contact .wpcf7-not-valid-tip { font-size: 1em; display: block; }
.kanaphil-contact .wpcf7c-force-hide { display: none !important; }
.kanaphil-contact .wpcf7c-conf { color: black; }
.kanaphil-contact input[type="email"] { direction: ltr; }
.kanaphil-contact .wpcf7-response-output {
  display: none; margin: 2em 0.5em 1em; padding: 0.2em 1em; border: 2px solid #00a0d2;
}
.kanaphil-contact form.sent .wpcf7-response-output { border-color: #46b450; }
.kanaphil-contact form.failed .wpcf7-response-output { border-color: #dc3232; }
.kanaphil-contact form.spam .wpcf7-response-output { border-color: #f56e28; }
.kanaphil-contact form.invalid .wpcf7-response-output { border-color: #ffb900; }
.kanaphil-contact .ajax-loader {
  visibility: hidden; display: inline-block; background-color: #23282d; opacity: 0.75;
  width: 24px; height: 24px; border: none; border-radius: 100%; padding: 0;
  margin: 0 24px; position: relative;
}
.kanaphil-contact form.submitting .ajax-loader { visibility: visible; }
.kanaphil-contact .ajax-loader::before {
  content: ''; position: absolute; background-color: #fbfbfc; top: 4px; left: 4px;
  width: 6px; height: 6px; border: none; border-radius: 100%; transform-origin: 8px 8px;
  animation: kanaphil-contact-spin 1000ms linear infinite;
}
@keyframes kanaphil-contact-spin { to { transform: rotate(360deg); } }
@keyframes kanaphil-contact-blink { 50% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
  .kanaphil-contact .ajax-loader::before { animation: kanaphil-contact-blink 2000ms linear infinite; }
}
