/* ── お問い合わせページ専用（/contact/, /contact/thanks/）───── */

/* 送信前の注意事項 */
.c-contact-notes {
  background: var(--color-bg-light);
  border-radius: var(--radius-md);
  padding: var(--spacing-lg);
  margin-bottom: var(--spacing-xl);
}
.c-contact-notes__title {
  font-weight: var(--font-weight-bold);
  margin-bottom: var(--spacing-sm);
}
.c-contact-notes__list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-sm);
  list-style: none;
}
.c-contact-notes__list li {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing-sm);
  font-size: 0.875rem;
  color: var(--color-text-secondary);
  line-height: 1.7;
}
.c-contact-notes__list .c-icon-svg { margin-top: 3px; flex-shrink: 0; }

/* ── Contact Form 7 標準マークアップへの最小スタイル ───────── */
.c-contact-form .wpcf7-form p {
  margin-bottom: var(--spacing-lg);
}
.c-contact-form .wpcf7-form label {
  display: block;
  font-weight: var(--font-weight-medium);
  margin-bottom: var(--spacing-sm);
}
.c-contact-form .wpcf7-form-control {
  width: 100%;
  padding: 12px var(--spacing-md);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  font-family: var(--font-sans-jp);
  font-size: var(--fs-body);
  background: var(--color-bg-white);
}
.c-contact-form .wpcf7-form-control:focus {
  outline: none;
  border-color: var(--color-border-focus);
}
.c-contact-form textarea.wpcf7-form-control {
  min-height: 160px;
  resize: vertical;
}
.c-contact-form .wpcf7-list-item {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  margin: 0;
  font-size: 0.875rem;
}
.c-contact-form .wpcf7-submit {
  display: block;
  width: 100%;
  min-height: 52px;
  padding: 14px 24px;
  background: var(--gradient-cta);
  color: #fff;
  border: none;
  border-radius: var(--radius-md);
  font-family: var(--font-sans-jp);
  font-size: var(--fs-cta);
  font-weight: var(--font-weight-bold);
  cursor: pointer;
  box-shadow: var(--shadow-cta);
  transition: background-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);
}
.c-contact-form .wpcf7-submit:hover {
  background: var(--color-cta-hover);
  box-shadow: var(--shadow-cta-lg);
  transform: translateY(-2px);
}
.c-contact-form .wpcf7-spinner { margin-left: var(--spacing-sm); }
.c-contact-form .wpcf7-not-valid-tip {
  color: var(--color-danger);
  font-size: 0.8125rem;
  margin-top: 4px;
}
.c-contact-form .wpcf7-response-output {
  margin-top: var(--spacing-lg);
  padding: var(--spacing-md);
  border-radius: var(--radius-sm);
  font-size: 0.875rem;
}
.c-contact-form form.invalid .wpcf7-response-output {
  border-color: var(--color-danger);
  color: var(--color-danger);
}
.c-contact-form form.sent .wpcf7-response-output {
  border-color: var(--color-success);
  color: var(--color-success);
}

/* 送信完了ページのアイコン */
.c-contact-thanks__icon {
  font-size: 3rem;
  color: var(--color-success);
  margin-bottom: var(--spacing-md);
}
.c-contact-thanks__icon .c-icon-svg { width: 1em; height: 1em; }
