.contact-contents {
    width: 1155px;
    max-width: 100%;
    margin: 90px auto 0;
    padding: 0 60px;
}

.contact-table-wrap {
    /*background: #f2f2f2;*/
    padding: 55px 100% 50px;
    margin: 0 -100%;
}


.contact_table  {
	margin-top: 60px;
    width: 100%;
    max-width: 100%;
	padding: 0 20px;
    display: inline-block;
}

.contact_table tr {
    margin-bottom: 38px;
    display: block;
	width: 100%;
}

.contact_table th{
	font-size:.17rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	width: 290px;
    text-align: start;
}

.contact_table th p {
    display: inline-block;
}

.form_radio {
    width: 70%;
	 padding: 8px 0;
	 font-weight: var(--font-w-regular);
}


.contact_table td {
    width: 70.55%;
}


.contact-contents .mfp_element_radio{
    transform: scale(1.8);
    vertical-align: baseline;
	margin-right: 22px;
}

.contact-contents form#mailformpro label {
    border-radius: 3px;
    margin: 3px;
    display: inline-block;
    white-space: nowrap;
}

.contact-main .contact-contents form#mailformpro label,
.recruit-main .contact-contents form#mailformpro label{
    margin-right: 64px !important;
}

.contact-main .contact-contents form#mailformpro .agree-btn label,
.recruit-main .contact-contents form#mailformpro .agree-btn label{
    margin-right: 0 !important;
}

.form_radio p{
	font-size:.15rem;
	margin-top: 6px;
}

.mfp_element_all {
    max-width: 100%;
}

.form-width2 {
    width: 100% !important;
    max-width: 97% !important;
}

.mfp_element_all {
    font-size: .17rem;
    padding: 19px 0 19px 22px;
    border-radius: 0;
    border: solid 1px #B2B2B2;
}

.contact-contents .mfp_element_text,
.contact-contents .mfp_element_email{
	width:100%;
	max-width: 97%;
}

.contact-contents textarea {
    width: 100% !important;
	max-width: 96%;
}

.contact-textarea th{
	vertical-align: top;
}

.contact-alert p {
    font-size: .17rem;
    line-height: 2.5;
}
.contact-alert p a{
    color: #1a3f8f;
}
.contact-alert a {
    color: #C35427;
	text-decoration: underline;
}

.contact-alert td{
	display:block;
	margin-left:auto;
}

.contact-privacy-policy td{
	margin-bottom: 65px;
	margin-left:auto;
	display: block;
}

.privacy-policy__text {
    width: 100%;
    height: 360px;
    overflow: scroll;
    font-size: .14rem;
    border: 1px #B2B2B2 solid;
    padding: 12px 23px;
}

.privacy-policy__text p {
    line-height: 2;
}

.privacy_item{
	margin-bottom: 25px;
}
.privacy_head{
	margin-bottom: 5px;
	display: block;
}
.privacy_list{
	margin-top: 5px;
	list-style: none;
}
.privacy_listitem{
	margin-bottom: 5px;
	margin-left: .2rem;
	text-indent: -.2rem;
	line-height: 2;
}

.privacy-policy__text::-webkit-scrollbar {
  width: 6px;
}

.privacy-policy__text::-webkit-scrollbar-thumb {
  background-color: #A3A3A3;
  border-radius: 15px;
}



.contact-privacy-policy td > p {
    font-size: .34rem;
    font-family: "adobe-garamond-pro", serif;
    letter-spacing: 0.1em;
    margin-top: -4px;
    margin-bottom: 17px;
}

.submit-btn td{
	margin-left:auto;
	display:block
}

.common-btn__submit {
    margin: 0;
	padding: 0;
    background: #FFF;
}
.common-btn__submit::after{
	width: 20%;
}
.submit-btn input {
    background: none;
    font-size: .17rem;
    width: 400px;
    max-width: 100%;
    font-weight: var(--font-w-regular);
	padding: 29px 60px 29px 40px;
}

.contact-contents .mfp_element_file {
    font-size: .17rem;
}

#file-upload-button{
	border:none;
}

.file-button::file-selector-button {
  color: #fff;
  background: #C35427;
  border: 0;
  padding: 17px 16px;
  text-align: center;
  width:221px;
  margin-right:45px;
}

.contact-contents .mfp_element_file {
    /*display: inline-block;
    padding: 0;
    vertical-align: middle;
    border: none;
    border-radius: 0;
    box-shadow: none;
	background: none;
	color:#ADADAD;
	width: 61%;
	margin-bottom: 22px;*/
}

input::placeholder,
textarea::placeholder{  
	color: #ADADAD;
}

div#mfp_overlay{
	z-index: 111111!important;
}

div#mfp_phase_confirm h4 {
    margin-bottom: 40px !important;
    font-size: .28rem !important;
}
table#mfp_confirm_table tr th, table#mfp_confirm_table tr td {
    font-size: 14px !important;
    padding: 13px 10px !important;
}

form#mailformpro label.mfp_checked {
    padding: 0!important;
    border: 0;
    background-color: transparent!important;
    box-shadow: none!important;
	outline: 0;
}
form#mailformpro label {
    border-radius: 0!important;
    margin: 0!important;
	padding: 0!important;
    border: 0 !important;
    outline: 0;
}
form#mailformpro .form_radio label:first-of-type{
	margin-left: 8px!important;
}

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], textarea {
    border: 1px #000 solid !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}
.mfp_element_text, .mfp_element_number, .mfp_element_select-one, .mfp_element_email, .mfp_element_tel, .mfp_element_textarea, .mfp_element_date, .mfp_element_password{
	border: 1px #000 solid!important;
    box-shadow: none!important;
}
textarea{
	width: 100%!important;
    max-width: 97% !important;
    border-radius: 10px !important;
}
.contact_zip{
	width: auto!important;
}

input#mfp_element_12 {
    width: 100%;
    max-width: 100%;
}





/*リクルートフォーム*/
.contact-contents{
	overflow: hidden;
}


/*.recruit-form__notice {
    display: flex;
    justify-content: space-between;
    margin-top: 54px;
    width: 1200px;
    max-width: 100%;
    margin: 54px auto 0;
}*/

.recruit-form__notice p{
	font-size: .16rem;
}

.recruit-form__notice span,
.contact_table th span {
    color: #fff;
    background-color: #1a3f8f;
    font-size: .16rem;
    margin-right: 13px;
    padding: 6px 12px;
    line-height: 1;
    display: inline-block;
    vertical-align: middle;
    margin-top: -4px;
}

.contact-form .contact-contents {
    width: 1300px;
    margin: 70px auto 0;
    padding: 0 40px;
}

.contact-form .contact_table{
	margin-top:0;
}

.contact-form .contact-table-wrap{
	padding-top:0;
}

.contact-form .contact_table th {
    width: 228px;
}

.contact-form input[type="text"], .contact-form input[type="email"], .contact-form input[type="url"],
.contact-form input[type="password"], .contact-form input[type="search"] {
    padding: 13px 38px;
	    border-radius: 10px !important;
		border: solid 1px #999999 !important;
}

.contact-contents textarea{
border: solid 1px #999999 !important;
    max-width: 100% !important;
}

.contact-form .contact_table tr {
    margin-bottom: 46px;
    display: flex;
    align-items: center;
}

.recruit-form .contact_table .agree-btn,
.contact-form .contact_table .agree-btn{
    margin-bottom: 63px;
}

.recruit-form .contact_table .personal-information,
.contact-form .contact_table .personal-information {
    margin-bottom: 32px;
}

tbody {
    display: block;
}
#mfp_confirm_table tbody{
	display: table-row-group;
}

.contact-form  .contact_table td {
    width: 81%;
	max-width: 100%;
}

.contact-contents .mfp_element_text, .contact-contents .mfp_element_email {
    width: 100% !important;
    max-width: 100% !important;
}


.contact-form .recruit-age td{
	width:24%;
}

.contact-form form#mailformpro .recruit-age td label{
    width: 97%;
}

.contact-form .recruit-age td span{
	margin-left:10px;
}

.contact-form select {
    width: 100%;
	max-width: 100%;
    padding: 15px 33px;
    border-radius: 10px;
	border: solid 1px #999999 !important;
	color:#999999;
	background-color: #fff;
	-webkit-appearance: none;
  	appearance: none;
}

.contact-form .recruit-yubinbangou input[type="text"]{
	width:100% !important;
}


.recruit-yubinbangou td{
	width:31% !important;
}

tr.recruit-yubinbangou {
    display: flex !important;
    align-items: center;
}

th.todouhuken-th {
    width: 155px !important;
    margin-left: 64px;
}


.contact-form #mailformpro .recruit-address input[type="text"],
.recruit-address input[type="text"],
.contact-form #mailformpro input[type="email"]{
	width:100% !important;
}

.tr-company th,
.tr-busho th,
.tr-fax th,
.tr-inquiry th,
.tr-career th,
.tr-skills th,
.tr-pr th,
.tr-file th{
    margin-left: 70px;
	width: 157px !important;
}
.recruit-address th {
    /* text-align: center !important; */
    width: 157px !important;
    margin-left: 70px;
}

.personal-information__text {
    height: 237px;
    overflow-y: scroll;
    border: solid 1px #999999;
    border-radius: 10px;
    padding: 20px 20px;
	    margin-bottom: 18px;
}
.personal-information__text p,
.personal-information__text li{
	font-size:.16rem;
}


.contact-form .personal-information  th {
    display: flex;
    align-items: flex-start;
}

.contact-form .personal-information p {
    letter-spacing: initial;
    margin-top: -7px;
}

.agree-btn {
    width: fit-content !important;
    margin: 0 auto;
    font-size: .16rem;
}

.contact-form .submit-btn input {
    background-color: #003078;
    color: #fff;
    font-size: .18rem;
    border: solid 1px #003078;
}

.contact-form .submit-btn td{
	width:400px;
	max-width:100%;
	margin:0 auto;
}

.error-message {
  color: red;
  font-size: 12px;
  margin-top: 5px;
}

input[type="checkbox"] {
  transform: scale(1.8); 
  margin-right:22px;
}

.mfp_buttons {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    width: 300px;
    margin: 0 auto;
}

button#mfp_button_send {
    background-color: #003078;
    color: #fff;
    padding: 15px 0px;
	    width: 130px;
}

button#mfp_button_cancel {
    padding: 15px 0px;
    background-color: #d1d1d1;
    color: #fff;
	    width: 130px;
}

div.mfp_buttons {
    padding: 25px 0px 10px !important;
}

@media screen and (min-width:801px) and ( max-width:1000px){
.contact-contents {
    margin: 90px auto 100px;
}

.contact-main .contents-container>p {
    padding:0 20px;
}

.contact-contents .mfp_element_file {
    width: 78%;
}

}


@media screen and (max-width:890px){
	.page-title {
		background-image: url(../images/contact/sp-contact-fv.jpg);
		padding: 99px 20px 104px;
	}
	.contact-table-wrap {
		padding: 55px 100% 0;
	}
	.contact-main {
		margin-top:70px;
	}
	.footer-wrap {
        margin-top: 0;
    }
	.contact-intro {
		margin: 0 auto;
        width: calc(100% - 60px);
	    font-size: .18rem;
	}

	.contact-main .contents-container>p {
    	font-size: .14rem;
    	line-height: 2.45;
    	margin-bottom: 39px;
    	text-align: justify;
    	padding: 0 43px;
	}
	
    .contact-form .contact-contents {
        margin: 0 auto;
		padding: 0 30px;
    }
	
	.contact-main .second-heading {
    	margin-bottom: 32px;
	}

    .contact_table {
        margin-top: 30px;
        padding: 32px 0px 0px;
        display: block;
    }

	.contact_table tbody {
		width: 100%;
		display: block;
	}

	.form_radio {
		width: 100%;
	}


	.contact_table tr {
			margin-bottom: 40px;
			display: block;
			display: flex;
			flex-direction: column;
	}

	.contact_table tr:nth-of-type(n+2){
		margin-bottom: 28px;
	}

	.contact_table th {
        margin-bottom: 9px;
        text-align: start;
        font-size: .16rem;
    }
	
	.tr-company th, .tr-busho th, .tr-fax th, .tr-inquiry th, .tr-career th, .tr-skills th, .tr-pr th,
	.contact_table tr:nth-of-type(n+2) th{
        margin-left: 0;
        width: 100% !important;
	}
	
	.submit-btn{
		margin-bottom: 0;
	}

.recruit-form__notice span, .contact_table th span {
    font-size: .14rem;
    margin-right: 11px;
    padding: 5px 8px;
	margin-top: 0px;
}

.contact-form  .contact_table td {
    width: 100%;
    max-width: 100%;
}
	.form_radio{
		padding: 0;
	}
	input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], textarea,
	.form-width2 {
		max-width: 100% !important;
		width:100%!important;
		line-height: 1.5;
	}
	
	.contact-form input[type="text"], .contact-form input[type="email"], .contact-form input[type="url"], .contact-form input[type="password"], .contact-form input[type="search"] {
    padding: 10px 10px;
}

input[type="checkbox"] {
    transform: scale(1.8);
    margin-right: 10px;
}

	.contact-main .mfp_element_radio {
		margin-left: 0;
		margin-right: 15px;
		vertical-align: middle;
	}

	.contact-main form#mailformpro label {
		font-size: .14rem;
		display: block;
		margin: 0 0 18px;
	}

	.mfp_element_all {
		padding: 16px 0 21px 4px;
		font-size: .15rem;
	}

	.contact-main textarea {
		width: 100% !important;
		max-width: 98%;
		padding: 9px 3px;
	}

	.contact-textarea {
		margin-bottom: 40px !important;
	}

	.contact-alert p {
		font-size: .15rem;
	}

	.contact-privacy-policy td > p {
		font-size: .30rem;
		margin-top: -9px;
		margin-bottom: 12px;
	}

	.privacy-policy__text {
		font-size: .14rem;
		padding: 14px 12px;
	}

	.contact-privacy-policy td {
		margin-bottom: 0px;
	}

	.contact-privacy-policy {
		margin-bottom: 37px !important;
	}
	
	.common-btn__submit {
    	width: 100%;
    	border: none;
	}

	.submit-btn input {
		margin: 0 auto;
		font-size: .18rem;
		padding: 20px 0;
		display: block;
	}

	.file-button::file-selector-button {
	  padding: 17px 16px;
	  text-align: center;
	  width:100%;
	  margin:0 auto 10px;
	  display:block;
	  text-align: center;
	  border-radius: 0;
	}

    .contact-contents .mfp_element_file {
        display: block;
        width: 100%;
        max-width: 100%;
        margin-bottom: 20px;
        font-size: .14rem;
        text-align: center;
    }
	
	input#mfp_element_9, input#mfp_element_11 {
    width: 100% !important;
}

form#mailformpro .form_radio label:first-of-type {
     margin-left: 11px !important;
}
form#mailformpro .form_radio label {
        margin-left: 11px !important;
}
    form#mailformpro .form_radio label {
        margin-bottom: 10px !important;
    }
.contact_table  th span {
    margin-left: 0px;
}

.contact-form .contact_table th {
    width: 100%;
}

.recruit-yubinbangou td {
    width: 100% !important;
}

.recruit-yubinbangou td:first-of-type{
	margin-bottom:28px;
}

.contact-form select {
    padding: 10px 10px;
}

.contact-form .personal-information  th {
    display: flex;
    align-items: baseline;
}




.personal-information__text p, .personal-information__text li {
    font-size: .15rem;
    margin-top: 0px !important;
    margin-bottom: 10px;
    line-height: 1.8;
}

.personal-information__text {
    height: 300px;
    margin-top: 5px;
}

.recruit-form .contact_table .personal-information, .contact-form .contact_table .personal-information {
    margin-bottom: 20px;
}

.recruit-form .contact_table .agree-btn, .contact-form .contact_table .agree-btn {
    margin-bottom: 25px;
}

.submit-btn {
    margin-bottom: 0 !important;
}
input,textarea,select,option{
	font-size:16px!important
}
}