body {
  font-size: 16px;
}

#form {
  margin-bottom: 100px !important;
}
#form span {
  color: red;
  font-size: 10px;
}

.info,
.policy-menu,
.official-link {
  width: 400px;
  margin: 50px auto;
}

form label {
  display: block;
  margin-top: 30px;
  margin-bottom: 5px;
}

.contact h1 {
  font-size: 70px;
}
.contact h2 {
  color: black;
  font-size: 30px;
}

.item-input {
  width: 400px;
}

.radio-btn label {
  margin-top: 0;
  display: inline;
  margin-right: 10px;
}

textarea {
  width: 400px;
  height: 150px;
}

.error {
  color: red;
}

input.item-btn {
  margin-right: 2px;
}

input.form-btn {
  border: 0 !important;
  background-color: rgb(235, 235, 235);
  padding: 2px 5px;
  margin-top: 10px;
}

input,
select,
textarea {
  border-radius: 0 !important;
  border: solid 2px rgb(177, 177, 177) !important;
  border-right: solid 5px rgb(177, 177, 177) !important;
  border-bottom: solid 5px rgb(177, 177, 177) !important;
}

.form-item2 {
  background-color: rgb(235, 235, 235);
  padding: 10px 10px;
  margin-bottom: 10px;
}
.form-item2 label {
  margin-top: 0;
}

.b-flex {
  display: flex;
  align-items: center;
  margin-top: 20px;
}
.b-flex .form-btn {
  border: solid 2px rgb(177, 177, 177) !important;
  border-right: solid 3px rgb(177, 177, 177) !important;
  border-bottom: solid 3px rgb(177, 177, 177) !important;
  background-color: white;
  padding: 2px 5px;
  margin-top: 10px;
  margin-right: 20px;
}

.mail {
  text-decoration: underline;
  color: black;
  margin-top: 5px;
}

.form-btn2 {
  display: inline;
  border: solid 2px rgb(177, 177, 177) !important;
  border-right: solid 3px rgb(177, 177, 177) !important;
  border-bottom: solid 3px rgb(177, 177, 177) !important;
  background-color: white;
  padding: 5px 10px;
  margin-right: 20px;
  color: black;
  font-size: 16px;
}

.home {
  margin-top: 30px;
}

.item-input {
  display: block !important;
  overflow-wrap: break-word;
}

.msg {
  padding-right: 20px;
}

.policy-menu {
  width: 700px;
  justify-content: center;
}

.info,
.policy-menu,
.official-link {
  justify-content: center;
}

@media (max-width: 800px) {
  .contact h1 {
    font-size: 60px;
  }
  .info,
  .policy-menu,
  .official-link {
    width: 90%;
  }
  textarea {
    width: 90%;
  }
  .item-input {
    width: 90%;
  }
  /*
  .info,
  .policy-menu,
  .official-link {
      justify-content: left;
  }*/
}
@media (max-width: 500px) {
  .contact h1 {
    font-size: 50px;
  }
}/*# sourceMappingURL=contact.css.map */
/* =========================================================
   お問い合わせ 刷新デザイン（.cpage スコープ）
   ========================================================= */
.cpage { --acc-from:#3aa0ff; --acc-to:#2bd4d4; max-width:1080px; margin:0 auto; padding:0 5% 110px;
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",Meiryo,sans-serif; }
/* ヒーローバナー（全幅） */
.cpage__firstview { width:100%; max-width:1080px; margin:24px auto 34px; }
.cpage__firstview img { width:100%; height:300px; object-fit:cover; border-radius:20px; display:block; }
@media (max-width:700px){ .cpage__firstview img { height:160px; border-radius:14px; } }
.cpage__head { text-align:center; margin:0 0 50px; }
.cpage__en { font-size:13px; font-weight:800; letter-spacing:.24em; margin:0 0 10px;
  background:linear-gradient(90deg,var(--acc-from),var(--acc-to)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent; }
.cpage__title { font-size:clamp(26px,4vw,38px); font-weight:800; margin:0 0 14px; color:#14141a; }
.cpage__lead { color:#5a5a66; font-size:15px; line-height:1.9; margin:0; }
.cpage__note { max-width:720px; margin:20px auto 0; font-size:13px; color:#8a8a96; line-height:1.95; }
.cpage__note a { color:var(--acc-to); font-weight:700; text-decoration:none; }
.cpage__note a:hover { text-decoration:underline; }

/* 情報ストリップ（ライト・横並び3カード） */
.cpage__info { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; max-width:860px; margin:0 auto 22px; }
.cinfo { background:#f6f7fa; border:1px solid #ececf2; border-radius:16px; padding:22px 24px; text-align:center; }
.cinfo__label { display:block; font-size:11px; font-weight:800; letter-spacing:.16em; margin:0 0 8px;
  background:linear-gradient(90deg,var(--acc-from),var(--acc-to)); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent; }
.cinfo__val { font-size:14.5px; font-weight:800; color:#14141a; word-break:break-all; text-decoration:none; }
a.cinfo__val:hover { color:var(--acc-to); }
.cinfo__note { max-width:860px; margin:0 auto 40px; text-align:center; font-size:12.5px; color:#8a8a96; line-height:1.85; }

/* フォームカード（中央・ライト） */
.cpage__formwrap { max-width:720px; margin:0 auto; background:#fff; border:1px solid #e7e7ee; border-radius:22px; padding:44px 44px; box-shadow:0 16px 44px rgba(20,30,70,.07); }
.cpage .form-item { margin:0 0 24px; }
.cpage .item-label { display:block; font-size:13.5px; font-weight:800; margin:0 0 9px; color:#14141a; }
.cpage .item-label span { color:#ff5f6e; margin-left:4px; font-size:12px; }
/* 刷新：アイコン付き塗りボックス型。フォーカスでアクセント枠＋発光 */
.cpage .cfield { position:relative; }
.cpage .cfield__icon { position:absolute; left:17px; top:17px; width:21px; height:21px; color:#9aa6bd; pointer-events:none; transition:color .2s ease, transform .2s ease; }
.cpage .cfield:focus-within .cfield__icon { color:var(--acc-to); transform:scale(1.08); }

.cpage .item-input, .cpage .textarea { width:100%; border:2px solid transparent !important; border-radius:14px !important;
  padding:16px 18px 16px 48px; font-size:16px; background:#f5f8fd; color:#14141a; font-family:inherit;
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.cpage .textarea { min-height:190px; resize:vertical; line-height:1.9; }
.cpage .cfield--area .cfield__icon { top:18px; }

.cpage .item-input:focus, .cpage .textarea:focus { outline:none; background:#fff;
  border:2px solid var(--acc-to) !important; box-shadow:0 10px 28px rgba(46,160,255,.16); }
.cpage .item-input::placeholder, .cpage .textarea::placeholder { color:#aab2c4; }

/* ラジオ → チップ */
.cpage .radio-btn { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.cpage .radio-btn br { display:none; }
.cpage .radio-btn input[type=radio] { position:absolute; opacity:0; width:0; height:0; }
.cpage .radio-btn label { cursor:pointer; display:flex; align-items:center; justify-content:center; text-align:center;
  width:100%; min-height:52px; padding:8px 12px; box-sizing:border-box; border:1.5px solid #e2e4ec; border-radius:14px;
  font-size:13.5px; font-weight:700; line-height:1.3; color:#5a5a66; background:#fff; transition:all .2s ease; margin:0; }
.cpage .radio-btn label:hover { border-color:var(--acc-to); }
.cpage .radio-btn input[type=radio]:checked + label { border-color:transparent; color:#fff;
  background:linear-gradient(135deg,var(--acc-from),var(--acc-to)); box-shadow:0 8px 20px rgba(46,160,255,.28); }
.cpage .radio-btn input[type=radio]:focus-visible + label { box-shadow:0 0 0 4px rgba(43,212,212,.2); }

/* 送信ボタン */
.cpage .form-btn { display:flex; align-items:center; justify-content:center; width:100%; height:60px; margin-top:6px;
  border:none; border-radius:999px; cursor:pointer; font-size:16px; font-weight:800; color:#fff;
  background:linear-gradient(135deg,var(--acc-from),var(--acc-to)); box-shadow:0 14px 30px rgba(46,160,255,.32);
  transition:transform .2s ease, box-shadow .2s ease; -webkit-appearance:none; appearance:none; }
.cpage .form-btn:hover { transform:translateY(-3px); box-shadow:0 20px 42px rgba(46,160,255,.42); }

@media (max-width:860px) {
  .cpage { padding:60px 5% 80px; }
  .cpage__grid { grid-template-columns:1fr; gap:22px; }
  .cpage__formwrap { padding:30px 22px; }
  .cpage__info { grid-template-columns:1fr; gap:12px; }
  .cpage .radio-btn { grid-template-columns:repeat(2,1fr); }
}

/* お問い合わせ：プライバシーポリシー同意リンク */
.cpage__agree { margin: 18px 0 16px; font-size: 12.5px; color: #8a8a96; line-height: 1.8; text-align: center; }
.cpage__agree a { color: var(--acc-to); font-weight: 700; text-decoration: underline; }

/* ===== 確認画面（CONFIRM）：入力内容の表示ボックス＆ボタン ===== */
.cpage .item-value {
  width: 100%;
  border: 1.5px solid #e2e4ec;
  border-radius: 12px;
  padding: 14px 16px;
  background: #f7f9fc;
  font-size: 15px;
  line-height: 1.8;
  color: #14141a;
  word-break: break-word;
}
.cpage .item-value--msg { min-height: 140px; white-space: pre-wrap; }

/* 確認画面のボタン列（戻る／送信する） */
.cpage__btns { display: flex; gap: 14px; margin-top: 6px; }
.cpage__btns .form-btn { flex: 1; width: auto; margin-top: 0; text-decoration: none; }
/* 「戻る」はアウトライン（ゴースト）スタイル */
.cpage .form-btn--ghost {
  background: #fff;
  color: var(--acc-to);
  border: 1.5px solid #d8e6f5;
  box-shadow: none;
}
.cpage .form-btn--ghost:hover {
  background: #f3f9ff;
  transform: translateY(-3px);
  box-shadow: 0 12px 26px rgba(46,160,255,.16);
}

@media (max-width:520px) {
  .cpage__btns { flex-direction: column-reverse; }
}
