@charset "utf-8";
/* お問い合わせフォーム（現行 /ir/inquiry/ の ir.css からフォーム関連規則のみ抽出）。
   基準(body 62.5%=1em10px / #main p / input)は recruit-legacy/common.css。ヘッダ/フッタは site-chrome.css。
   ※フォーム本体(id/name/action/JS)は現行のまま不変。これは見た目だけ。 */

.mb-40 { margin-bottom: 40px; }

#main h1 {
  color: #313e8b;
  font-size: 3.8em;
  font-weight: normal;
  letter-spacing: 0.1em;
  margin: 142px auto 50px;
  text-align: center;
}
#main h1 span { display: block; font-size: 16px; }

#main .inner { width: 860px; margin: 0 auto 130px; text-align: center; }

.txt_cont { margin-top: 80px; text-align: left; }
.txt_cont:first-child { margin-top: 0; }
.txt_cont p { margin-top: 1em; }

/* フォーム本体レイアウト（現行 ir.css 445-490 / 523-535 相当） */
#main .contact_cont { font-size: 1.5em; text-align: left; margin-top: 40px; }
#main .contact_cont dl { padding-bottom: 15px; display: flex; }
#main .contact_cont dl:last-child { padding-bottom: 0; }
#main .contact_cont dl dt { flex-basis: 200px; color: #313F7F; font-weight: bold; }
#main .contact_cont dl dd { flex: 1 0 0%; }
#main .contact_cont dl dd input,
#main .contact_cont dl dd textarea,
#main .contact_cont dl dd select { width: 100%; }

#main .contact_btns { text-align: center; margin-top: 30px; }
#main .contact_btns input { padding: 1em; width: 10em; margin-left: 2em; cursor: pointer; }
#main .contact_btns input:first-child { margin-left: 0; }

.privacy_policy_wrapper { display: flex; flex-wrap: nowrap; padding: 1rem; background-color: #f9f9f9; border: 1px solid #d3d3d3; }
.privacy_policy_wrapper input { width: unset !important; }
.privacy_policy_checkbox { margin-right: 2rem; flex-shrink: 0; }

@media (max-width: 767px) {
  #main h1 { font-size: 2.6em; margin: 80px auto 40px; }
  #main .inner { width: auto; margin: 0 20px 60px; }
  #main .contact_cont { font-size: 1.3em; }
  #main .contact_cont dl { display: block; }
  #main .contact_cont dl dt { flex-basis: auto; margin-bottom: 4px; }
  #main .contact_btns input { width: 8em; }
}
