.elementor-581 .elementor-element.elementor-element-1ab7937{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS *//* ========== Recruit Form Base ========== */
.recruit-form {
  /* ベース文字サイズ・行間（必要に応じて調整） */
  font-size: 16px;
  line-height: 1.8;
  color: #222;
  max-width: 760px;          /* 任意：フォームの最大幅 */
  margin: 0 auto;            /* 中央寄せ */
  padding: 16px;
  background: #fff;          /* 任意：背景 */
  border: 1px solid #e5e7eb; /* 枠線 */
  border-radius: 12px;       /* 角丸 */
  box-shadow: 0 2px 8px rgba(0,0,0,.04); /* 任意：薄い影 */
}

/* 見出し */
.recruit-form h1 {
  font-size: 28px;
  line-height: 1.3;
  margin: 0 0 12px;
}

/* ラベル的な<p>の余白（あなたのマークアップを尊重） */
.recruit-form p {
  margin: 10px 0;
}

/* 注意書き（<font color="red">…</font> の見た目を整える） */
.recruit-form p font[color="red"] {
  color: #d32f2f;            /* 既に赤ですが、より見やすい色味に */
  font-size: 14px;
  display: inline-block;
  margin-top: 6px;
}

/* 区切り線 */
.recruit-form hr {
  border: none;
  height: 1px;
  background: #e5e7eb;
  margin: 20px 0;
}

/* ========== 入力部品の共通スタイル ========== */
.recruit-form input[type="text"],
.recruit-form select,
.recruit-form input[type="email"],
.recruit-form input[type="tel"],
.recruit-form textarea {
  width: 100%;
  max-width: 520px;          /* 入力欄の横幅（必要なら変更） */
  box-sizing: border-box;
  font-size: 16px;
  padding: 10px 12px;
  border: 1.5px solid #cbd5e1;     /* 枠線 */
  border-radius: 10px;             /* 角丸 */
  background: #fff;
  outline: none;
  transition: border-color .2s, box-shadow .2s;
}

/* ホバー/フォーカス */
.recruit-form input[type="text"]:hover,
.recruit-form select:hover,
.recruit-form textarea:hover {
  border-color: #94a3b8;
}
.recruit-form input[type="text"]:focus,
.recruit-form select:focus,
.recruit-form textarea:focus {
  border-color: #2563eb;           /* フォーカス時の色 */
  box-shadow: 0 0 0 3px rgba(37,99,235,.15);
}

/* プレースホルダ */
.recruit-form ::placeholder {
  color: #9aa3af;
}

/* チェックボックス行の字間・余白調整 */
.recruit-form input[type="checkbox"] {
  transform: translateY(1px);
  margin-right: 6px;
}
.recruit-form p:has(input[type="checkbox"]) {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
  align-items: center;
}

/* 文字サイズのきめ細かい調整（必要に応じて） */
@media (max-width: 767px) {
  .recruit-form { font-size: 15px; }
  .recruit-form h1 { font-size: 24px; }
  .recruit-form input[type="text"],
  .recruit-form select,
  .recruit-form textarea { font-size: 15px; }
}
@media (min-width: 1024px) {
  .recruit-form { font-size: 16px; }
  .recruit-form h1 { font-size: 30px; }
}

/* ========== 送信ボタン（方法A：背景画像のボタンにする場合） ========== */
.recruit-form .recruit-submit {
  display: inline-block;
  width: 240px;                 /* 画像の横幅に合わせる */
  height: 56px;                 /* 画像の高さに合わせる */
  border: none;
  border-radius: 12px;          /* 角丸（画像が角丸なら同じに） */
  background: center / cover no-repeat url("/path/to/submit-image.png");
  cursor: pointer;
  text-indent: -9999px;         /* テキストを視覚的に隠す */
  overflow: hidden;
}
/* キーボードフォーカス可視化 */
.recruit-form .recruit-submit:focus-visible {
  outline: 3px solid rgba(37,99,235,.6);
  outline-offset: 3px;
}
/* ホバー時にわずかに拡大など（任意） */
.recruit-form .recruit-submit:hover { transform: translateY(-1px); }
.recruit-form .recruit-submit:active { transform: translateY(0); }

/* ========== 送信ボタン（方法B：input type=image を使う場合） ========== */
/* 画像の自然サイズで表示されます。必要なら display:block; などを追加 */
.recruit-form input[type="image"].submit-image {
  display: inline-block;
  width: 240px;      /* 任意で指定 */
  height: auto;
  border-radius: 12px;
}


.title-img img{
  display:block;
  width: 100%;
  height:auto;         /* アスペクト比保持 */
}/* End custom CSS */