/* お問い合わせフォーム（/contact/{consult,web,graphic,movie,interview}/ 共通）
   フォームの中身は、フォーム用 Worker (dock) が採用管理 (contact.medical-design.co.jp、CI4 の custom テンプレート) の
   HTML を #ts-public-form に差し込んだもの。クラス名は採用管理側のもの (contact__gr / contact__th / contact__td、
   必須の印 .required「※」、ボタン .btn / .link-prev) で、ここではそれに当てる。採用管理側の HTML は変えない。
   入力・確認・完了は同じ URL で、今どの画面かは .js-form_content の _form_input / _form_confirm / _form_finish で分かる。
   見た目はサイト基調（ダーク #333 ＋ ライムグリーン #a7da30、表は .swipe_table、
   選択肢は見積シミュレーターのピル型）に合わせる。 */

/* ===== 画面ごとの出し分け（シェル側のリード文・完了の案内） ===== */
.contact_page .contact_only_confirm,
.contact_page .contact_only_finish{
	display: none;
}
.contact_page:has(._form_confirm) .contact_only_confirm,
.contact_page:has(._form_finish) .contact_only_finish{
	display: block;
}
.contact_page:has(._form_confirm) .contact_only_input,
.contact_page:has(._form_finish) .contact_only_input{
	display: none;
}

/* Worker を通らずに開いたとき (シェルのまま) の案内 */
.contact_page .contact_form_unavailable{
	padding: 1.6em 1.4em;
	border: 1px solid #dbe7c0;
	border-radius: 10px;
	background: #f4f7ec;
	line-height: 1.8;
}

/* ===== リード文・注意事項 ===== */
.contact_page .information_area{
	line-height: 1.9;
	margin-bottom: 2.5em;
}
.contact_page .information_area p{
	margin: 0 0 1em;
}
.contact_page .information_area .h4{
	font-weight: 700;
	font-size: 1.15rem;
	color: #333333;
	margin: 1.6em 0 .6em;
	padding-left: .6em;
	border-left: 5px solid #a7da30;
	line-height: 1.4;
}
.contact_page .information_area ul{
	margin: 0 0 1.5em;
	padding: 1.1em 1.3em 1.1em 2.4em;
	list-style: disc;
	background: #f4f7ec;
	border: 1px solid #dbe7c0;
	border-radius: 10px;
}
.contact_page .information_area li{
	margin: .35em 0;
	padding-left: 0;
	line-height: 1.8;
}
.contact_page .information_area li::before{
	content: none;
}
.contact_page .information_area_note{
	font-size: .95rem;
	color: #555555;
}

/* ===== 必須マーク ===== */
.contact_page .cf_req{
	display: inline-block;
	flex-shrink: 0;
	margin-left: .6em;
	padding: .15em .55em;
	border-radius: 4px;
	background: #d64747;
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: .05em;
	vertical-align: middle;
}
.contact_page .information_area_note .cf_req{
	margin: 0 .4em;
	/* vertical-align:middle だと和文の字面より下に寄るため持ち上げる */
	position: relative;
	top: -.12em;
}

/* ===== 進行ステップ（入力→確認→完了） ===== */
.contact_page .contact_steps{
	display: flex;
	justify-content: center;
	gap: 48px;
	margin: 2.5em 0 2em;
	padding: 0;
	list-style: none;
}
.contact_page .contact_steps li{
	position: relative;
	display: flex;
	align-items: center;
	gap: .6em;
	flex: 0 1 200px;
	margin: 0;
	padding: .8em 1em;
	border: 2px solid #cccccc;
	border-radius: 10px;
	background: #ffffff;
	color: #999999;
	font-weight: 700;
	line-height: 1.4;
	justify-content: center;
}
.contact_page .contact_steps li::marker{
	content: none;
}
.contact_page .contact_steps li::before{
	content: none;
}
.contact_page .contact_steps li:not(:last-child)::after{
	content: "";
	position: absolute;
	top: 50%;
	right: -32px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #bbbbbb;
	border-right: 2px solid #bbbbbb;
	transform: translateY(-50%) rotate(45deg);
}
.contact_page .contact_steps .num{
	font-family: "Outfit", sans-serif;
	font-size: 1.2em;
	letter-spacing: .05em;
	/* Outfit の数字は和文より字面が上に寄るため、右の「入力」等と字面の上下をそろえる */
	position: relative;
	top: .05em;
}
.contact_page .contact_steps li.is-current{
	border-color: #333333;
	background: #333333;
	color: #ffffff;
	box-shadow: 4px 4px 0 #b1d856;
}
.contact_page .contact_steps li.is-current .num{
	color: #a7da30;
}
/* 確認・完了画面ではシェルの「01 入力」の強調を外し、02 / 03 を強調する */
.contact_page:has(._form_confirm) .contact_steps li.is-current,
.contact_page:has(._form_finish) .contact_steps li.is-current{
	border-color: #cccccc;
	background: #ffffff;
	color: #999999;
	box-shadow: none;
}
.contact_page:has(._form_confirm) .contact_steps li.is-current .num,
.contact_page:has(._form_finish) .contact_steps li.is-current .num{
	color: inherit;
}
.contact_page:has(._form_confirm) .contact_steps li:nth-child(2),
.contact_page:has(._form_finish) .contact_steps li:nth-child(3){
	border-color: #333333;
	background: #333333;
	color: #ffffff;
	box-shadow: 4px 4px 0 #b1d856;
}
.contact_page:has(._form_confirm) .contact_steps li:nth-child(2) .num,
.contact_page:has(._form_finish) .contact_steps li:nth-child(3) .num{
	color: #a7da30;
}

/* ===== アラート（入力エラー・セッション切れ。dock と採用管理が出す .alert） ===== */
.contact_form .alert{
	margin: 0 0 1.5em;
	padding: 1em 1.3em;
	border: 1px solid #e3b4b4;
	border-radius: 10px;
	background: #fdf2f2;
	color: #9b2c2c;
	line-height: 1.7;
}
.contact_form .alert h5{
	margin: 0 0 .3em;
	font-size: 1rem;
	font-weight: 700;
}
.contact_form .alert p{
	margin: 0;
}
/* 項目ごとの入力エラー。採用管理は欄の下に .alert.alert-danger.alert-sm を出すので、箱にせず赤文字にし、欄の枠を赤くする */
.contact_form .contact__td .alert{
	margin: .5em 0 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	color: #d64747;
	font-size: 14px;
	line-height: 1.6;
}
.contact_form .privacy_box .alert{
	margin-top: .8em;
	text-align: center;
}
.contact_form .contact__td:has(> .alert) .form-control,
.contact_form .contact__td:has(> .alert) .custom-select{
	border-color: #d64747;
	background-color: #fff8f8;
}
.contact_form .invalid-feedback,
.contact_form .text-danger{
	display: block;
	margin: .5em 0 0;
	color: #d64747;
	font-size: 14px;
	line-height: 1.6;
}

/* 管理画面の説明文 (header_html) */
.contact_form .header_html_area{
	margin: 0 0 2em;
	line-height: 1.9;
}
.contact_form .header_html_area hr{
	display: none;
}

/* ===== 入力欄の表（1 項目 = .contact__gr。表の外枠は先頭と末尾の行に付ける） ===== */
.contact_form .contact__gr:not(.contact__gr-submit){
	display: flex;
	margin: 0;
	padding: 0;
	border: 2px solid #333333;
	border-top: 1px solid #bbbbbb;
	border-bottom: 0;
	background: #ffffff;
	min-width: 0;
}
/* 先頭の行 (前に .contact__gr が無い行) */
.contact_form .contact__gr:not(.contact__gr ~ .contact__gr){
	border-top: 2px solid #333333;
	border-radius: 10px 10px 0 0;
}
/* 末尾の行 (直後が送信ボタンの行。入力画面では直後が同意欄 .privacy_box の行) */
.contact_form .contact__gr:has(+ .contact__gr-submit),
.contact_form .contact__gr:has(+ .privacy_box){
	border-bottom: 2px solid #333333;
	border-radius: 0 0 10px 10px;
}
.contact_form .contact__gr:not(.contact__gr ~ .contact__gr):has(+ .contact__gr-submit){
	border-radius: 10px;
}
/* 角の丸みに見出し列の背景がはみ出して枠線を隠すので、先頭と末尾の行は中身を角で切る */
.contact_form .contact__gr:not(.contact__gr ~ .contact__gr),
.contact_form .contact__gr:has(+ .contact__gr-submit),
.contact_form .contact__gr:has(+ .privacy_box){
	overflow: hidden;
}
.contact_form .contact__th{
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex: 0 0 33%;
	box-sizing: border-box;
	padding: 1.1em 1.2em;
	background: #f3f3f3;
	border-right: 1px solid #bbbbbb;
	font-weight: 700;
	line-height: 1.5;
}
.contact_form .contact__th label{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .6em;
	margin: 0;
}
.contact_form .contact__td{
	flex: 1 1 auto;
	min-width: 0;
	box-sizing: border-box;
	padding: 1.1em 1.4em;
}
/* 見出しの無い行 (同意欄・説明文) は見出し列を出さない */
.contact_form .contact__th:empty{
	display: none;
}
.contact_form .annotation{
	margin: 0 0 .6em;
	font-size: 14px;
	font-weight: 400;
	color: #666666;
	line-height: 1.6;
}
.contact_form .contact__th .annotation{
	margin: .5em 0 0;
}

/* 必須の印。採用管理は「※」を出すので、静的版と同じ「必須」の札に見せる */
/* 「※」は font-size: 0 で消し、札は ::after に描く (札の寸法は .cf_req と同じ。em を親に置くと 0 になるため ::after に持たせる) */
.contact_form .required{
	display: inline-flex;
	flex-shrink: 0;
	margin-left: .6em;
	font-size: 0;
	line-height: 0;
	letter-spacing: 0; /* 親の字間 (px で継承) が消した「※」に残って札が広がるため */
	vertical-align: middle;
}
.contact_form .required::after{
	content: "必須";
	display: inline-block;
	padding: .15em .55em;
	border-radius: 4px;
	background: #d64747;
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: .05em;
}

/* テキスト・テキストエリア・セレクト（採用管理の .form-control / .custom-select） */
.contact_form input[type="text"],
.contact_form input[type="tel"],
.contact_form input[type="email"],
.contact_form input[type="url"],
.contact_form input[type="number"],
.contact_form textarea,
.contact_form select{
	display: block;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: .7em .9em;
	border: 1px solid #bbbbbb;
	border-radius: 6px;
	background: #ffffff;
	color: #333333;
	font: inherit;
	font-size: 16px; /* iOS のフォーカス時ズームを防ぐため 16px 未満にしない */
	line-height: 1.6;
	transition: border-color .15s, box-shadow .15s;
}
.contact_form textarea{
	min-height: 12em;
	resize: vertical;
}
.contact_form select{
	width: auto;
	min-width: 14em;
	max-width: 100%;
	padding-right: 2.6em;
	appearance: none;
	-webkit-appearance: none;
	background: #ffffff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23333' stroke-width='2'/%3E%3C/svg%3E") right 1em center / 12px 8px no-repeat;
	cursor: pointer;
}
.contact_form input::placeholder,
.contact_form textarea::placeholder{
	color: #aaaaaa;
}
.contact_form input[type="text"]:focus,
.contact_form input[type="tel"]:focus,
.contact_form input[type="email"]:focus,
.contact_form input[type="url"]:focus,
.contact_form input[type="number"]:focus,
.contact_form textarea:focus,
.contact_form select:focus{
	outline: none;
	border-color: #333333;
	box-shadow: 0 0 0 3px rgba(167, 218, 48, .55);
}
/* 確認用の再入力欄 (mt-4) */
.contact_form .text_frame + .text_frame,
.contact_form .mt-4{
	margin-top: .8em;
}
/* 単位つきの入力 (input-group) */
.contact_form .input-group{
	display: flex;
	align-items: center;
	gap: .6em;
	max-width: 100%;
}
.contact_form .input-group .input-group-text{
	white-space: nowrap;
}

/* チェックボックス・ラジオ（見積シミュレーターと同じピル型。採用管理の .icheck-primary 1 つが選択肢 1 つ） */
.contact_form .contact__td .form-group{
	display: flex;
	flex-wrap: wrap;
	gap: .6em .8em;
	margin: 0;
}
.contact_form .icheck-primary{
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: .45em;
	margin: 0;
	padding: .5em 1.1em;
	border: 1px solid #d5d5d5;
	border-radius: 999px;
	background: #f7f7f7;
	line-height: 1.5;
	transition: border-color .15s, background .15s;
}
.contact_form .icheck-primary label{
	margin: 0;
	cursor: pointer;
}
.contact_form .icheck-primary:hover{
	border-color: #a7da30;
}
.contact_form .icheck-primary:has(input:checked){
	border-color: #a7da30;
	background: #f4f9e6;
	font-weight: 700;
}
.contact_form input[type="checkbox"],
.contact_form input[type="radio"]{
	width: 1.1em;
	height: 1.1em;
	margin: 0;
	accent-color: #a7da30;
	cursor: pointer;
}
/* ラジオは accent-color だと明るい緑に対して Chrome が中の丸を黒っぽく描くので、自前で描く */
.contact_form input[type="radio"]{
	flex-shrink: 0;
	box-sizing: border-box;
	border: 1px solid #999999;
	border-radius: 50%;
	background: #ffffff;
	appearance: none;
	-webkit-appearance: none;
}
.contact_form input[type="radio"]:checked{
	border: 2px solid #a7da30;
	background: #a7da30;
	box-shadow: inset 0 0 0 2px #ffffff;
}
.contact_form input[type="checkbox"]:focus-visible,
.contact_form input[type="radio"]:focus-visible{
	outline: 2px solid #333333;
	outline-offset: 2px;
}

/* 「その他」の自由入力（採用管理の .row > .col-auto + .col） */
.contact_form .contact__td .row{
	display: flex;
	align-items: center;
	gap: .8em;
	margin: .9em 0 0;
}
/* 確認画面の単位つきの値 (.row > .col-auto「3」+ .col-auto「本」) は .row が先頭に来る */
.contact_form .contact__td > .row:first-child{
	margin-top: 0;
}
.contact_form ._form_confirm .contact__td > .row:first-child{
	gap: .3em;
}
.contact_form .contact__td .row .col-auto{
	flex-shrink: 0;
	white-space: nowrap;
}
.contact_form .contact__td .row .col{
	flex: 1 1 auto;
	min-width: 0;
}

/* 年月日の選択 */
.contact_form .date_input_area{
	display: flex;
	flex-wrap: wrap;
	gap: .6em;
}
.contact_form .date_input_area .input-group select{
	min-width: 6em;
}

/* ===== 個人情報の取扱いへの同意（採用管理の agree 項目 = .card） ===== */
.contact_form .contact__gr:has(.card){
	display: block;
	border: 0;
	background: transparent;
	margin-top: 2.5em;
}
.contact_form .privacy_box .contact__td{
	padding: 0;
}
/* 採用管理が style 属性で上下 4em の余白を付けるため */
/* 採用管理の HTML は Font Awesome のアイコン (読み込んでいない) なので、同じ形を CSS で描く */
.contact_form .privacy_box a i.fa-external-link-alt{
	display: inline-block;
	width: .85em;
	height: .85em;
	margin-left: 0;
	vertical-align: -.05em;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23333' stroke-width='1.6'%3E%3Cpath d='M12.5 9v4.5h-10v-10H7M9.5 2h4.5v4.5M14 2 7.5 8.5'/%3E%3C/svg%3E") 50% 50% / contain no-repeat;
}
.contact_form .privacy_box .contact__td > div[style]{
	margin: 0 !important;
}
.contact_form .card{
	padding: 1.6em 1.4em;
	border: 1px solid #dbe7c0 !important; /* 採用管理が style 属性で枠色を付けるため */
	border-radius: 10px;
	background: #f4f7ec;
	text-align: center;
}
.contact_form .card-header{
	margin: 0 0 1em;
	font-weight: 700;
}
.contact_form .card-header label{
	margin: 0;
}
.contact_form .card .annotation{
	margin: 0 0 1em;
	font-size: inherit;
	color: inherit;
	line-height: 1.8;
}
.contact_form .card .btn-outline-danger{
	display: inline-flex;
	align-items: center;
	gap: .45em;
	padding: .7em 1.6em;
	border: 1px solid #d5d5d5;
	border-radius: 999px;
	background: #ffffff;
	font-weight: 700;
	cursor: pointer;
}
.contact_form .card .btn-outline-danger:has(input:checked){
	border-color: #a7da30;
	background: #f4f9e6;
}
.contact_form .card .icheck-danger{
	display: inline-flex;
	align-items: center;
	gap: .45em;
}
.contact_form .card .icheck-danger label{
	margin: 0;
	cursor: pointer;
}

/* サイト共通の .btn (common.scss) が付ける左の丸矢印を、採用管理の .btn (送信・同意) からは外す */
.contact_form .btn::before{
	content: none;
}

/* ===== ボタン（送信系は .black_btn と同じ黒地＋緑シャドウ、「修正する」は白地＋黒枠） ===== */
.contact_form .contact__gr-submit{
	margin: 2.5em 0 0;
}
.contact_form .button_area{
	display: flex;
	justify-content: center;
	gap: 40px;
}
.contact_form .button_area .btn{
	position: relative;
	display: inline-block;
	flex: 0 1 400px;
	width: 100%;
	max-width: 400px;
	box-sizing: border-box;
	margin: 0;
	padding: 26px 70px;
	border: 2px solid #333333;
	border-radius: 10px;
	background: #333333;
	color: #ffffff;
	box-shadow: 7px 7px 0 #b1d856;
	font: inherit;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.4;
	cursor: pointer;
	transition: .3s all;
}
.contact_form .button_area .btn::after{
	content: "";
	position: absolute;
	top: 50%;
	right: 26px;
	width: 40px;
	height: 30px;
	box-sizing: border-box;
	border: 2px solid #ffffff;
	border-radius: 50%;
	background: url(/asset/img/icon/btn_arrow_white.webp) 50% 50% / 15px 10px no-repeat;
	transform: translateY(-50%);
	transition: .3s all;
}
.contact_form .button_area .btn:hover,
.contact_form .button_area .btn:focus-visible{
	background: #a7da30;
	border-color: #a7da30;
	color: #1a1a1a;
	outline: none;
}
.contact_form .button_area .btn:hover::after,
.contact_form .button_area .btn:focus-visible::after{
	border-color: #1a1a1a;
	background-image: url(/asset/img/icon/btn_arrow.webp);
}
/* 送信中 (二重送信の防止。採用管理の inline script と同じ .submitted を付ける) */
.contact_form .button_area .btn.submitted{
	pointer-events: none;
	opacity: .6;
}
/* 「修正する」 */
.contact_form .button_area .link-prev{
	position: relative;
	flex: 0 1 260px;
	box-sizing: border-box;
	margin: 0;
	padding: 22px 30px 22px 76px;
	border: 2px solid #333333;
	border-radius: 10px;
	background: #ffffff;
	color: #333333;
	font: inherit;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.4;
	cursor: pointer;
	transition: .3s all;
}
.contact_form .button_area .link-prev::before{
	content: "";
	position: absolute;
	top: 50%;
	left: 22px;
	width: 40px;
	height: 30px;
	box-sizing: border-box;
	border: 2px solid #333333;
	border-radius: 50%;
	background: url(/asset/img/icon/btn_arrow.webp) 50% 50% / 15px 10px no-repeat;
	transform: translateY(-50%) scaleX(-1);
	transition: .3s all;
}
.contact_form .button_area .link-prev:hover,
.contact_form .button_area .link-prev:focus-visible{
	background: #f3f3f3;
	outline: none;
}
.contact_form .button_area .link-prev:hover::before,
.contact_form .button_area .link-prev:focus-visible::before{
	background-color: #a7da30;
	border-color: #a7da30;
}

/* ===== 確認画面 ===== */
.contact_page .contact_lead{
	margin: 0 0 1em;
	line-height: 1.9;
}
.contact_form ._form_confirm .contact__td{
	align-self: center;
	line-height: 1.8;
	overflow-wrap: anywhere;
}

/* ===== 完了画面（採用管理の finish_html。シェルの案内 .contact_thanks と並ぶ） ===== */
.contact_form .finish_html{
	line-height: 1.9;
}
.contact_form .finish_html:empty{
	display: none;
}

/* ===== 完了画面 ===== */
.contact_page .contact_thanks{
	max-width: 760px;
	margin: 3em auto 0;
	line-height: 1.9;
}
.contact_page .contact_thanks h2{
	margin-top: 0;
	word-break: keep-all; /* 見出しは <wbr> の位置でだけ折り返す */
}
.contact_page .contact_thanks_note{
	margin: 2em 0 0;
	padding: 1.3em 1.5em;
	border-radius: 10px;
	background: #f4f7ec;
	border: 1px solid #dbe7c0;
}
.contact_page .contact_thanks_note p{
	margin: 0;
}
.contact_page .contact_thanks .contact_thanks_tel{
	margin-top: .6em;
	font-weight: 700;
}
.contact_page .contact_thanks_tel a{
	font-family: "Outfit", sans-serif;
	font-size: 1.4em;
	letter-spacing: .04em;
}
.contact_page .contact_thanks_tel a:link,
.contact_page .contact_thanks_tel a:visited{
	color: #333333;
	text-decoration: none;
}

/* ===== タブレット以下（≤959px） ===== */
@media screen and (max-width: 959px){
	.contact_form .button_area{
		gap: 24px;
	}
	.contact_page .contact_steps{
		gap: 28px;
	}
	.contact_page .contact_steps li:not(:last-child)::after{
		right: -19px;
		width: 8px;
		height: 8px;
	}
	.contact_form .contact__th{
		flex-basis: 36%;
	}
}

/* ===== スマホ（≤767px）：見出しと入力欄を縦積みに ===== */
@media screen and (max-width: 767px){
	.contact_page .contact_steps{
		gap: 18px;
		margin: 2em 0 1.5em;
	}
	.contact_page .contact_steps li{
		flex: 1 1 0;
		flex-direction: column;
		gap: 0;
		padding: .6em .2em;
		font-size: 14px;
	}
	.contact_page .contact_steps li:not(:last-child)::after{
		right: -13px;
		width: 6px;
		height: 6px;
	}
	.contact_form .contact__gr:not(.contact__gr-submit){
		display: block;
	}
	.contact_form .contact__th{
		padding: .8em 1em;
		border-right: 0;
		border-bottom: 1px solid #dddddd;
	}
	.contact_form .contact__td{
		padding: 1em;
	}
	.contact_form select{
		width: 100%;
		min-width: 0;
	}
	/* 説明の placeholder が入力欄の幅で切れないよう小さくする */
	.contact_form input::placeholder{
		font-size: 12px;
	}
	/* 案内文の上でマスコットの靴に当たりそうなので空ける */
	.contact_page .information_area{
		padding-top: 16px;
	}
	.contact_form .card{
		padding: 1.2em 1em;
		text-align: left;
	}
	.contact_form .button_area .btn{
		padding: 22px 60px 22px 24px;
		font-size: 18px;
		text-align: left; /* 他の黒ボタンと同じ左揃え (矢印のぶん中央からずれて見えないように) */
		box-shadow: 5px 5px 0 #b1d856;
	}
	.contact_form .button_area .btn::after{
		right: 16px;
		width: 32px;
		height: 26px;
	}
	/* 確認画面：「送信する」を上、「修正する」を下に縦積み (HTML の順は 修正する → 送信する) */
	.contact_form .button_area{
		flex-direction: column-reverse;
		align-items: stretch;
		margin-bottom: 40px; /* 白カードの下端にボタンが詰まらないように */
	}
	.contact_form .button_area .btn{
		flex: none;
		max-width: none;
	}
	.contact_form .button_area .link-prev{
		flex: none;
		width: 100%;
		padding: 22px 24px 22px 64px;
		font-size: 18px;
	}
	.contact_form .button_area .link-prev::before{
		left: 16px;
		width: 32px;
		height: 26px;
	}
	.contact_page .contact_thanks{
		margin-top: 2em;
	}
	.contact_page .contact_thanks_note{
		padding: 1.1em 1em;
	}
}
