@charset "UTF-8";
/* 
----------------------------------------------------------------------------

	フォーム系 共通

	お問い合わせ
	弊社へ営業提案を希望の方

--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
	フォーム系　共通
--------------------------------------------------------------------------*/
/*-------------------------------
	導入部
--------------------------------*/
.form_intro { text-align: center; }
.form_intro > p { margin: 25px 0 0 0; line-height: 2; }
.form_intro > p:first-of-type { margin: 0; }
.form_intro > p a:link, .form_intro > p a:visited { color: #c71c2f; }
.form_intro > p a:hover, .form_intro > p a:active { color: #d24959; }

.form_navi { margin: 0 auto 0; padding: 50px 0 50px; text-align: center; }
.form_navi ul { margin: 0 auto; display: flex; display: -webkit-flex; width: 100%; max-width: 1120px; flex-wrap: wrap; }
.form_navi ul li { margin: 0 10px; display: flex; display: -webkit-flex; width: calc(50% - 20px); }
.form_navi ul li a { padding: 26px 0; display: flex; display: -webkit-flex; background-color: #fff; border: 1px solid #202c5a; border-radius: 36px; width: 100%; color: #202c5a; line-height: 1; text-align: center; font-size: 18px; font-weight: 700; justify-content: center; -webkit-box-pack: center; flex-grow: 1; }
.form_navi ul li.form a span { display: inline-block; }
.form_navi ul li.form a span:after { padding: 0 30px 0 0; content: ''; }
.form_navi ul li.form a:hover, .form_navi ul li.form a:active { background-color: #202c5a; color: #fff; }
.form_navi ul li.tel a span { display: inline-block; padding: 0 20px 0 0; }
.form_navi ul li.tel a img { max-width: 176px; }
.form_navi ul li.tel a[href^="tel:"] { pointer-events: none; }

form div#mfp_hidden { height: 0; }

/*-------------------------------
	入力フォーム
--------------------------------*/
.form_area .form_type { margin: 0 auto 40px auto; font-size: 15px; }
.form_area .form_type .form_main_sbj { max-width: 1000px; }
.form_area .form_type .form_main_sbj span { margin: 0 0 65px 0; padding: 0 0 0 34px; display: inline-block; line-height: 1.2; background: url("../img/icon_all.png") no-repeat left top 5px; background-size: 17px auto; font-size: 25px; font-weight: 500; }
.form_area .form_type p.privacy { margin: 20px 0 0 0; color: #b9031e; font-size: 15px; }
.form_area .form_type p.privacy a:link, .form_area .form_type p.privacy a:visited { color: #b9031e; }
.form_area .form_type p.privacy a:active, .form_area .form_type p.privacy a:hover { color: #790007; }

#formMain #formIn .formSub { margin: 80px auto 0 auto; padding: 50px; max-width: 1100px; }
#formMain #formIn .formSub > div:first-of-type .form_sbj { margin: 0 auto 40px auto; }
#formMain #formIn .form_sbj { margin: 80px auto 40px auto; padding: 8px 13px; background: #524b49; }
#formMain #formIn .form_sbj h3, #formMain #formIn .form_sbj h4 { line-height: 1.4; color: #fff; font-size: 14px; font-weight: 500; }
#formMain #formIn section { margin: 40px auto 0 auto; display: table; width: 100%; table-layout: fixed; }
#formMain #formIn section:first-of-type { margin: 0 auto; }
#formMain #formIn section.line .fName, #formMain #formIn section.line .fValue { vertical-align: top; }
#formMain #formIn section .fName, #formMain #formIn section .fValue { display: table-cell; vertical-align: middle; }
#formMain #formIn section .fName { padding: 0 20px 0 0; vertical-align: top; position: relative; width: 280px; }
#formMain #formIn section .fName > span { padding: 0 0 2px 0; position: absolute; left: 0; width: 60px; line-height: 22px; background-color: #919191; color: #fff; font-size: 14px; font-weight: 500; text-align: center; }
#formMain #formIn section .fName h3, #formMain #formIn section .fName h4 { padding: 0 0 0 80px; line-height: 1.4; font-size: 16px; font-weight: 500; }
#formMain #formIn section .fName h3 span.att_multi, #formMain #formIn section .fName h4 span.att_multi { padding: 0; display: block; font-size: 14px; font-weight: 500; }
#formMain #formIn section .fName .c_dome { padding: 10px 0 0 0; line-height: 1.6; color: #c71c2f; font-size: 14px; font-weight: 500; }
#formMain #formIn section .fName .c_att { padding: 5px 0 0 0; line-height: 1.6; color: #000; font-size: 12px; }
#formMain #formIn section .fValue input[type="text"], #formMain #formIn section .fValue textarea { padding: 5px 15px 5px 20px; border: 1px solid #cccbc9; width: 100%; line-height: 1.8; background: #e6e6e6; color: #00000f; font-size: 14px; font-family: 'Zen Kaku Gothic New', sans-serif,'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3',Hiragino Kaku Gothic Pro,'MS Pゴシック',serif; font-weight: 400; letter-spacing: 0.1em; }
#formMain #formIn section .fValue input[type="text"]::placeholder, #formMain #formIn section .fValue textarea::placeholder { color: #999999; }
#formMain #formIn section .fValue input[type="text"] { height: 40px; }
#formMain #formIn section .fValue input[type="text"].box01 { width: 200px; }
#formMain #formIn section .fValue input[type="text"].line_half { margin: 0 0 0 5px; display: inline-block; width: calc(50% - 5px); }
#formMain #formIn section .fValue input[type="text"].line_half:first-of-type { margin: 0 5px 0 0; }
#formMain #formIn section .fValue textarea { height: 200px; resize: vertical; }
#formMain #formIn .hisu .fName > span { background-color: #005dbc; }
#formMain p.att01 { margin: 10px 0 0 0; font-size: 13px; }
#formMain p.att02 { margin: 0 0 5px 0; }
#formMain p.att03 { margin: 15px 0 5px 0; }

/*#formMain*/
/*-------------------------------
	項目選択　input
--------------------------------*/
ul.select_one { display: flex; display: -webkit-flex; flex-wrap: wrap; }
ul.select_one.col li { margin: 10px auto 0 auto; }
ul.select_one.col li:first-of-type { margin: 0 auto; }
ul.select_one.line02 li { width: 50%; }
ul.select_one.line03 li { width: 33.33%; }
ul.select_one.line04 li { width: 25%; }
ul.select_one li { display: table; width: 100%; table-layout: fixed; }
ul.select_one li:first-of-type { margin: 0; }
ul.select_one li:nth-of-type(n+2) { margin-top: 1px; }
ul.select_one li input, ul.select_one li > span { display: inline-block; vertical-align: top; }
ul.select_one li input { margin: 10px 10px 0 10px; width: 20px; }
ul.select_one li input:hover { cursor: pointer; }
ul.select_one li input[type="checkbox"], ul.select_one li input[type="radio"] { display: table-cell; }
ul.select_one li input[type="checkbox"]:checked + label, ul.select_one li input[type="radio"]:checked + label { color: #fff; background-color: #202c5a; }
ul.select_one li label { padding: 8px 5px 8px; display: table-cell; width: 100%; color: #000; background-color: rgba(255, 255, 255, 0); }
ul.select_one li label:hover { color: #fff; background-color: #202c5a; cursor: pointer; }
ul.select_one li label.mfp_checked { color: #fff; background-color: #202c5a; }
ul.select_one.bg_wh li label { background-color: #fff; }
ul.select_one.static li label { padding: 8px 5px 8px 35px; }

/*-------------------------------
	項目選択　select
--------------------------------*/
.select_entry select { padding: 0 20px; border: 1px solid #ccc; background: url("../img/select_down.png") no-repeat #fff right 20px center; background-size: 12px auto; color: #000; font-size: 14px; font-family: 'Zen Kaku Gothic New', sans-serif,'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3',Hiragino Kaku Gothic Pro,'MS Pゴシック',serif; font-weight: 400; width: 205px; height: 40px; -webkit-appearance: none; /* (Google Chrome、Safari用) */ -moz-appearance: none; /* (Firefox用) */ appearance: none; }
.select_entry select#time, .select_entry select#time1 { width: 200px; }
.select_entry select#time option[disabled=""], .select_entry select#time1 option[disabled=""] { display: none; }

/*-------------------------------
	添付ファイル送信
--------------------------------*/
.send_file_frm dl.send_item { margin: 15px 0 0 0; line-height: 0; font-size: 0; }
.send_file_frm dl.send_item:first-of-type { margin: 0; }
.send_file_frm dl.send_item dt, .send_file_frm dl.send_item dd { display: inline-block; line-height: 1.6; vertical-align: middle; }
.send_file_frm dl.send_item dt { width: 100px; font-size: 15px; }
.send_file_frm dl.send_item dd { font-size: 13px; }
.send_file_frm dl.send_item dd input { font-family: 'Zen Kaku Gothic New', sans-serif,'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3',Hiragino Kaku Gothic Pro,'MS Pゴシック',serif; }
.send_file_frm ul.send_att { margin: 25px 0 0 0; }
.send_file_frm ul.send_att li.line { font-size: 13px; }

/*-------------------------------
	個人情報の取り扱い
--------------------------------*/
#fm_privacy { margin: 50px 0 0 0; padding: 50px 0 0 0; border-top: 1px solid #cccbc9; }
#fm_privacy dl.privacy_about { margin: 0 0 15px 0; }
#fm_privacy dl.privacy_about dd { margin: 2px 0 10px 0; }
#fm_privacy dl.privacy_about dd a { color: #c71c2f; }
#fm_privacy dl.privacy_about dd a:active, #fm_privacy dl.privacy_about dd a:hover { color: #d24959; }
#fm_privacy ul.select_one li input[type="checkbox"]:checked + label, #fm_privacy ul.select_one li input[type="radio"]:checked + label { border: 1px solid #005dbc; color: #fff; background-color: #005dbc; }
#fm_privacy ul.select_one li label { border: 1px solid #919191; padding: 13px 5px 12px; color: #00000f; background-color: #fff; font-size: 17px; }
#fm_privacy ul.select_one li label:hover, #fm_privacy ul.select_one li label.mfp_checked { border: 1px solid #005dbc; color: #fff; background-color: #005dbc; }

/*-------------------------------
	送信ボタン
--------------------------------*/
#formBtn { margin: 100px 0 0 0; text-align: center; }
#formBtn button { border: none; display: inline-block; width: 100% !important; height: 75px !important; max-width: 400px !important; font-size: 17px !important; font-weight: 500 !important; font-family: 'Zen Kaku Gothic New', sans-serif,'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3',Hiragino Kaku Gothic Pro,'MS Pゴシック',serif; letter-spacing: 0.1em !important; color: #fff !important; background-color: #c71c2f !important; cursor: pointer !important; text-shadow: none !important; }
#formBtn button:hover, #formBtn button:active { background-color: #d24959 !important; text-decoration: none !important; }

/*-------------------------------
	エラーチェック共通
--------------------------------*/
#formWrap .error { text-align: center; }
#formWrap .error .check_sbj { margin: 0 0 30px 0; line-height: 1.2; color: #3281a9; font-size: 24px; font-weight: 500; text-align: center; }
#formWrap .error div { margin: 0 0 50px 0; }
#formWrap .error input { display: inline-block; width: 100%; height: 70px; max-width: 300px; border: none; cursor: pointer; background: #3281a9; color: #fff; font-size: 21px; font-family: 'Zen Kaku Gothic New', sans-serif,'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3',Hiragino Kaku Gothic Pro,'MS Pゴシック',serif; font-weight: 500; }
#formWrap .error input:hover, #formWrap .error input:active { opacity: 0.7; }
#formWrap .error .error_messe { color: #d23939; font-weight: 500; }

/*-------------------------------
	送信内容確認共通
--------------------------------*/
div#mfp_phase_confirm #mfp_phase_confirm_inner { margin: 0 auto 0; padding: 0 20px; background: #e9f2ff; max-width: 1000px; }
div#mfp_phase_confirm #mfp_phase_confirm_inner .confirm_sbj { margin: 0 auto; padding: 50px 0 25px 0; max-width: 900px; }
div#mfp_phase_confirm #mfp_phase_confirm_inner .confirm_sbj span { padding: 0 0 0 32px; display: inline-block; line-height: 1.4; background: url("../img/icon_all.png") no-repeat left top 8px; background-size: 17px auto; font-size: 25px; font-weight: 500; }
div#mfp_phase_confirm #mfp_phase_confirm_inner table#mfp_confirm_table tr th, div#mfp_phase_confirm #mfp_phase_confirm_inner table#mfp_confirm_table tr td { border-top: solid 1px #cccbc9; }
div#mfp_phase_confirm #mfp_phase_confirm_inner table#mfp_confirm_table tr:last-child th, div#mfp_phase_confirm #mfp_phase_confirm_inner table#mfp_confirm_table tr:last-child td { border-bottom: solid 1px #cccbc9; }
div#mfp_phase_confirm #mfp_phase_confirm_inner table#mfp_confirm_table tr th { color: #fff; background: #849cbb; text-align: center; }
div#mfp_phase_confirm #mfp_phase_confirm_inner table#mfp_confirm_table tr.mfp_colored { background: #fff; }
div#mfp_phase_confirm #mfp_phase_confirm_inner div.mfp_buttons { margin: 0 auto; padding: 30px 0 50px 0; font-size: 0; max-width: 900px; }
div#mfp_phase_confirm #mfp_phase_confirm_inner div.mfp_buttons button { padding: 25px 20px; font-size: 17px; max-width: 370px; }
div#mfp_phase_confirm #mfp_phase_confirm_inner div.mfp_buttons button#mfp_button_send { margin: 20px 40px 0 0; border: 1px solid #c71c2f; color: #fff; background: #c71c2f; }
div#mfp_phase_confirm #mfp_phase_confirm_inner div.mfp_buttons button#mfp_button_send:hover { border: 1px solid #d24959; color: #fff; background: #d24959; }
div#mfp_phase_confirm #mfp_phase_confirm_inner div.mfp_buttons button#mfp_button_cancel { margin: 20px 0 0 40px; border: 1px solid #919191; color: #00000f; background: #fff; }
div#mfp_phase_confirm #mfp_phase_confirm_inner div.mfp_buttons button#mfp_button_cancel:hover { border: 1px solid #919191; color: #fff; background: #919191; }

article#contact:has(table#mfp_confirm_table) .form_intro, article#contact:has(table#mfp_confirm_table) .form_type { display: none; }

/*-------------------------------
	送信完了共通
--------------------------------*/
#contact_thanks .frm { margin: 0 auto; text-align: center; max-width: 1160px; }
#contact_thanks .frm .send_msg { margin: 0 0 35px 0; line-height: 1.6; font-size: 28px; font-weight: 500; letter-spacing: 0.14em; }
#contact_thanks .frm .comment > p + p { margin: 20px 0 0 0; }
#contact_thanks .frm .contact_tel_info { margin: 65px 0 0 0; }
#contact_thanks .back_btn { margin: 100px auto 0 auto; }

/*--------------------------------------------------------------------------
	お問い合わせ系共通
--------------------------------------------------------------------------*/
#contact .form_area .form_type { margin: 0 auto; max-width: 1160px; }
#contact .form_area .form_type .form_main_sbj { margin: 0 auto; }
#contact .form_area #formMain #formIn .formSub { margin: 0 auto; padding: 0; max-width: 1160px; }
#contact .form_area #formMain #formIn .formSub .formSub_frm { margin: 0 auto; max-width: 1000px; }
#contact .form_area #formMain #formIn .formSub .formSub_frm section#fm_privacy { margin-top: 50px; }
#contact .form_area #formMain #formIn .formSub .formSub_frm section .tx_box { line-height: 0; }
#contact ul.select_one li label:hover { color: #fff; background-color: #202c5a; cursor: pointer; }
#contact ul.select_one li label.mfp_checked { color: #fff; background-color: #202c5a; }
#contact #fm_privacy ul.select_one li label:hover { border: 1px solid #202c5a; color: #fff; background-color: #202c5a; }
#contact #fm_privacy ul.select_one li label.mfp_checked { border: 1px solid #202c5a; color: #fff; background-color: #202c5a; }

/*--------------------------------------------------------------------------
	お問い合わせ
--------------------------------------------------------------------------*/
#contact.contact { background: url("../../contact/img/contact_back.jpg") no-repeat center top; background-size: auto 500px; }
#contact.contact .form_intro { padding: 0 10px; }
#contact.contact .form_intro p.hurry { margin: 0 auto; padding: 10px 5px; color: #fff; background: #005dbc; font-size: 18px; font-weight: 700; text-align: center; max-width: 400px; }
#contact.contact .form_intro .sales_att { margin: 52px auto 60px auto; padding: 15px 10px; border: 1px solid #cccbc9; background: #fff; text-align: center; max-width: 680px; }
#contact.contact .form_area { padding: 0 10px; }
#contact.contact .form_area .form_type { margin: 100px auto 0 auto; padding: 85px 0 0 0; border-top: 1px solid #cccbc9; }

/*--------------------------------------------------------------------------
	弊社へ営業提案を希望の方
--------------------------------------------------------------------------*/
#contact.contact_sales .form_intro { margin: 0 auto 90px auto; }
#contact.contact_sales .form_area #formMain #formIn .formSub .customer { margin: 40px auto 0 auto; }

/*--------------------------------------------------------------------------
	新卒採用
--------------------------------------------------------------------------*/
#contact.gr .form_area { padding: 0; }
#contact.gr .form_area .form_type { padding: 0; }

/*--------------------------------------------------------------------------
	キャリア採用
--------------------------------------------------------------------------*/
#contact.ca .form_area #formMain #formIn .formSub .customer { margin: 40px auto 0 auto; }
#contact.ca .form_area #formMain #formIn .formSub .customer section.job .fValue { line-height: 1; }
#contact.ca .form_area #formMain #formIn .formSub .customer section.job .fValue input.mfp_element_radio.mfp_element_all { display: none; }
#contact.ca .form_area #formMain #formIn .formSub .customer section.gender .fValue ul.select_one li:nth-of-type(n+2) { margin-top: 0; }

/*# sourceMappingURL=sub_form.css.map */
