@charset "UTF-8";
/* ============================
   お問い合わせページ専用レイアウト
============================ */
body {
  background: rgba(234, 243, 250, 0.5019607843);
}

/* =========================================
   ヘッダー固定対策（余白を確保）
========================================= */
.contact-page {
  padding-top: 150px;
  max-width: 780px;
  margin: 0 auto;
  padding-bottom: 100px;
}

/* ============================
   見出し（会社概要ページと統一）
============================ */
.contact-label {
  text-align: center;
  color: #333;
  font-size: 20.8px;
  font-weight: 600;
  letter-spacing: 2px;
  margin-bottom: 8px;
}

.page-title {
  text-align: center;
  font-size: 48px;
  font-weight: 700;
  color: #305EBE;
  margin-bottom: 50px;
}

/* ============================
   フォーム内のラベル
============================ */
.contact-form label {
  display: block;
  font-weight: 600;
  margin-bottom: 6px;
  color: #333;
}
.contact-form {
  /* 必須マーク */
}
.contact-form .required {
  display: inline-block;
  margin-left: 10px;
  padding: 2px 8px;
  font-size: 12px;
  background: #aa0400;
  color: #fff;
  border-radius: 6px;
}
.contact-form {
  /* 任意 */
}
.contact-form .optional {
  margin-left: 10px;
  padding: 2px 8px;
  font-size: 12px;
  background: #E0E0E0;
  color: #666;
  border-radius: 6px;
}
.contact-form {
  /* ============================
     テキスト入力・テキストエリア
  ============================ */
}
.contact-form input[type=text],
.contact-form input[type=email],
.contact-form input[type=tel],
.contact-form textarea {
  width: 100%;
  padding: 18px;
  font-size: 16px;
  border-radius: 8px;
  border: none;
  margin-bottom: 28px;
  background: rgba(237, 237, 237, 0.9294117647);
}
.contact-form input[type=text]::placeholder,
.contact-form input[type=email]::placeholder,
.contact-form input[type=tel]::placeholder,
.contact-form textarea::placeholder {
  color: #999;
}
.contact-form {
  /* ============================
     チェックボックス（3列）
  ============================ */
}
.contact-form .checkbox-list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 20px;
  margin-bottom: 28px;
}
.contact-form .checkbox-list label {
  width: calc(33.33% - 15px);
  display: flex;
  align-items: center;
  font-weight: 400;
}
.contact-form .checkbox-list label input[type=checkbox] {
  margin-right: 10px;
  transform: scale(1.5);
}
.contact-form {
  /* ============================
     同意チェック
  ============================ */
}
.contact-form .policy-label {
  display: flex;
  align-items: flex-start;
  margin-top: 10px;
  margin-bottom: 20px;
  font-size: 15px;
  line-height: 1.5;
}
.contact-form .policy-label input[type=checkbox] {
  margin-right: 10px;
  transform: scale(1.5);
}
.contact-form {
  /* ============================
     ボタン
  ============================ */
}
.contact-form .button-wrapper {
  text-align: center;
}
.contact-form input[type=submit] {
  width: 50%;
  padding: 18px;
  font-size: 20px;
  font-weight: 700;
  background: #ff7b36;
  color: #fff;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  margin-top: 20px;
  transition: 0.3s;
}
.contact-form input[type=submit]:hover {
  opacity: 0.85;
}
.contact-form {
  /* ============================
     注意文（送信後の案内）
  ============================ */
}
.contact-form .note {
  margin-top: 20px;
  font-size: 14px;
  text-align: center;
  color: #666;
}