@charset "utf-8";

/*----------------------------------------
    .contact_section
----------------------------------------*/
.contact_section .o-red {
	color: #ff0000;
	clear: both;
}
.contact_section .title_main {
	text-align: center;
}
.contact_section .title_main .inner {
	padding-top: 76px;
	padding-bottom: 50px;
}
.contact_section .title_main .main_text {
	font-size: 1.6rem;
    line-height: 2.1;
	padding-top: 47px;
	font-weight: 500;
}
.contact_section .matters_attention {
	padding: 59px 0 63px 0;
	background-color: #fafafa;
}
.contact_section .matters_attention h2 {
	font-size: 2.4rem;
	text-align: center;
  font-weight: 500;
	padding-bottom: 28px;
}
.contact_section .matters_attention .matters_list {
	padding-left: 20px;
}
.contact_section .matters_attention .matters_list li {
	font-size: 1.2rem;
	line-height: 1.85;
	list-style: decimal;
	padding-left: 10px;
}
.contact_section .matters_attention .marked_words {
	font-size: 1.4rem;
	text-align: center;
	padding: 40px 0 27px 0;
}
.contact_section .matters_attention .agree_button {
	text-align: center;
}
.contact_section .matters_attention .agree_button label {
	font-size: 1.6rem;
	font-weight: 500;
}
.contact_section .matters_attention .agree_button input[type=checkbox] {
	display: none;
}
.contact_section .matters_attention .agree_button input[type=checkbox] + span {
	display: inline-block;
	width: 28px;
	height: 28px;
	vertical-align: middle;
	margin-right: 12px;
	background: url(/jp/contact/img/ico-checkbox.jpg) no-repeat 0 0;
	background-size: cover;
}
.contact_section .matters_attention .agree_button input[type=checkbox]:checked + span {
	background: url(/jp/contact/img/ico-checkbox_sprite.jpg) no-repeat 0 0;
	background-size: cover;
}
.contact_section .must {
	display: inline-block;
	width: 30px;
	font-size: 1.1rem;
	color: #ffffff;
	text-align: center;
	padding: 1px 0;
	background-color: #bf1a20;
	border-radius: 2px;
	margin-left: 10px;
}
.contact_section .privacy {
	color: #0014ff;
	border-radius: 2px;
	text-decoration: underline;
}
.contact_section .form_content {
	padding: 49px 0 82px 0;
}
.contact_section .form_content .marked_words {
	font-size: 1.6rem;
	text-align: center;
	padding: 5px 0 53px 0;
	font-weight: 500;
}
.contact_section .form_list dl {
	display: table;
	box-sizing: border-box;
	width: 100%;
}
.contact_section .form_list dl dt,
.contact_section .form_list dl dd {
	display: table-cell;
	box-sizing: border-box;
}
.contact_section .form_list dl dt {
	width: 290px;
	vertical-align: top;
	padding: 29px 0 25px 28px;
	background-color: #f5f5f5;
	border-bottom: 1px solid #e0e0e0;
	font-weight: 500;
}
 .contact_section .form_list dl.name dt {
	border-top: 1px solid #e0e0e0;
}
.contact_section .form_list dl dd {
	border-bottom: 1px solid #eeeeee;
}
 .contact_section .form_list dl.name dd {
	border-top: 1px solid #eeeeee;
}
.contact_section .form_list dl dt {
	font-size: 1.6rem;
}
.contact_section .form_list dl dt::after {
	clear: both;
	content: "";
	display: block;
}
.contact_section .form_list dl dt .table_text,
.contact_section .form_list dl dt .must {
	display: block;
	float: left;
}
.contact_section .form_list dl dt .must {
	margin-top: 3px;
}
.contact_section .form_list dl dt .text_small {
	display: block;
	font-size: 1.4rem;
}
.contact_section .form_list dl dd {
	color: #757575;
	vertical-align: middle;
	padding: 4px 22px 0 28px;
}
.contact_section .form_list dl.contact_textarea dd {
	padding: 24px 22px 18px 28px;
}
.contact_section .form_list dl dd .behind {
	margin-left: 30px;
}
.contact_section .form_list dl dd .prompt_text {
	font-size: 1.2rem;
}
.contact_section .form_list dl dd input,
.contact_section .form_list dl dd textarea {
	width: 100%;
	padding: 10px;
	border: 1px solid #e0e0e0;
	border-radius: 2px;
}
.contact_section .form_list dl dd input {
	height: 45px;
}
.contact_section .form_list dl dd textarea {
	height: 400px;
	resize: none;
}
.contact_section .form_list dl .note_text{
	display: inline-block;
	width: 40px;
}
.contact_section .form_list dl .note_text.long {
	width: 100px;
}
.contact_section .form_list dl.name dd input,
.contact_section .form_list dl.phonetic_name dd input {
	width: 240px;
}
.contact_section .form_list dl.industry select {
	width: 290px;
	height: 45px;
	font-size: 1.6rem;
	padding: 10px 20px;
	border: 1px solid #e0e0e0;
	color: #757575;
}
.contact_section .form_list dl.industry option {
	color: #000;
}
.contact_section .form_list dl.industry .placeholder_text {
	color: #757575;
}
.contact_section .form_list dl.zip_code input,
.contact_section .form_list dl.phone_number input,
.contact_section .form_list dl.fax input {
	width: 290px;
}
.contact_section .form_list dl .ligature {
	position: relative;
	display: inline-block;
	width: 40px;
}
.contact_section .form_list dl .ligature::after {
	position: absolute;
	content: "";
	width: 10px;
	height: 1px;
	background-color: #333333;
	top: -4px;
	left: 50%;
	margin-left: -5px;
}
.contact_section .form_list dl.email input,
.contact_section .form_list dl.email_confirm input {
	width: 290px;
}
.contact_section .form_list dl .sign {
	display: inline-block;
	width: 40px;
	text-align: center;
}
.contact_section .form_list dl input.last_input {
	margin-right: 22px;
}
.contact_section .form_btn_list {
	padding-top: 60px;
	text-align: center;
}
.contact_section .form_btn_list input {
	position: relative;
	width: 240px;
	font-size: 1.6rem;
	color: #ffffff;
	padding: 19px 0 17px 0;
	background: url(/jp/contact/img/bg-submit_btn.jpg) right 16px center no-repeat #bf1a20;
	border: 1px solid #bf1a20;
	box-shadow: none;
	border-radius: 4px;
	margin: 0 20px;
	cursor: pointer;
}
.contact_section .form_btn_list input:hover {
	opacity: 0.7;
}
.contact_section .form_btn_list .back_btn {
	color: #212121;
	background: url(/jp/contact/img/bg-back_btn.png) right 14px center no-repeat #ffffff;
	border: 1px solid #212121;
}
.contact_section .form_list.confirm_form  dd {
	font-size: 1.6rem;
	color: #333333;
}
@media screen and (max-width: 1120px){
.contact_section .form_list dl.name dd input,
.contact_section .form_list dl.phonetic_name dd input {
	width: 30%;
}
.contact_section .form_list dl.email input,
.contact_section .form_list dl.email_confirm input {
	width: 36%;
}
}
@media screen and (max-width: 979px){
.contact_section .form_list dl dt {
	width: 270px;
    padding-left: 16px;
}
.contact_section .form_list dl .note_text{
	width: 35px;
}
.contact_section .form_list dl .ligature {
	width: 30px;
}
.contact_section .form_list dl input.last_input {
	margin-right: 10px;
}
.contact_section .form_list dl.email input,
.contact_section .form_list dl.email_confirm input {
	width: 32%;
}
}
/*----------------------------------------
    .thank_section
----------------------------------------*/
.thank_title {
	padding: 46px 0 24px 0;
	border-bottom: 1px solid #eeeeee;
}
.thank_title .small_main_title {
	font-size: 2.2rem;
	text-align: center;
}
.thank_title .small_main_title span {
	display: block;
	font-size: 1.6rem;
	font-weight: normal;
}
.thank_section .thank_content {
	text-align: center;
}
.thank_section .thank_content h2,
.form_content h2 {
	font-size: 3.4rem;
	font-weight: normal;
	text-align: center;
	padding: 49px 0 41px 0;
}
.form_content h2 {
	padding: 0 0 46px 0;
}
.thank_section .thank_text {
	font-size: 1.6rem;
	line-height: 2.15;
}
.thank_section .btn_home {
	width: 240px;
	text-align: center;
	margin: 52px auto 119px auto;
}
.thank_section .btn_home a {
	display: block;
	font-size: 1.6rem;
    color: #ffffff;
	padding: 17px 16px 19px 16px;
	background-color: #bf1a20;
	border-radius: 4px;
}
.thank_section .btn_home a span {
	display: block;
	background: url(/jp/contact/img/bg-submit_btn.jpg) right center no-repeat;
}