@charset "UTF-8";
/* nav hover
----------------------------------------- */

/* genelal base
----------------------------------------- */
#header {
background-image: url("images/bk_general_head.jpg");
background-position: center;
background-repeat: no-repeat;
background-size: cover;
}
#Error #header,
.Noheader #header {
position: absolute;
position: fixed;
background-image: none;
}
.container {
margin-right: auto;
margin-left: auto;
}
select {
width: 100%;
outline: none;
border: none;
background: none transparent;
-webkit-appearance: button;
-moz-appearance: button;
appearance: button;
}
select::-ms-expand {
display: none;
}
select:-moz-focusring { 
color: transparent; 
text-shadow: 0 0 0 #828c9a;
}
#contentsTitle .title {
text-align: center;
color: #365d4b;
}
#contentsTitle .title .En {
margin-bottom: 20px;
padding-right: 0.1em;
padding-left: 0.2em;
line-height: 1.5;
display: inline-block;
font-family: "futura-pt", sans-serif;
background: -moz-linear-gradient(0deg, rgba(240,234,220,1) 40%, rgba(255,255,255,0) 40%);
background: -webkit-linear-gradient(0deg, rgba(240,234,220,1) 40%, rgba(255,255,255,0) 40%);
background: linear-gradient(0deg, rgba(240,234,220,1) 40%, rgba(255,255,255,0) 40%);
letter-spacing: 0.1em;
position: relative;
}
#contentsTitle .title .Jp {
margin-right: auto;
margin-bottom: 25px;
margin-left: auto;
display: block;
letter-spacing: 0.1em;
}

/* breadCrumbs
----------------------------------------- */
#breadCrumbs .wrap {
margin-right: auto;
margin-left: auto;
width: 90%;
display: block;
}
#breadCrumbs .wrap a {
margin-top: 0.5em;
margin-bottom: 0.5em;
display: inline-block;
}

/* Form
----------------------------------------- */
.formTable {
margin-top: 80px;
width: 100%;
}
.formTable tr {
display: block;
}
.formTable th {
padding-bottom: 0.5em;
width: 100%;
display: flex;
}
.formTable th label {
color: #365d4b;
order: 2;
}
.formTable th .required {
order: 1;
}
.formTable input,
.formTable textarea,
.auth-captcha input[type="text"] {
padding: 0.4em 1em;
border: 1px solid #acacac;
border-radius: 5px;
transition: all 0.5s;
}
.formTable input[type="text"]:focus,
.formTable textarea[type="text"]:focus { 
border: 1px solid #acacac;
box-shadow: 0 0 3px #0B687D;
}
.formTable select {
margin-bottom: 20px;
padding: 0.6em 1em;
display: block;
border: 1px solid #acacac;
border-radius: 5px;
}
.submit {
padding-top: 30px;
}
.submit input[type="submit"],
.submit input[type="reset"] {
margin-right: auto;
margin-left: auto;
padding: 1em;
display: block;
font-weight: 400;
text-align: center;
transition: all .3s;
}
.submit input[type="submit"] {
margin-bottom: 40px;
background-color: #7d9b19;
border: 0;
border-radius: 5px;
color: #ffffff;
}
.submit input[type="submit"]:hover {
background: #7d9b19;
border: 0;
}
.submit .button[type="reset"]  {
background-color: rgba(204,20,75,0.3);
border: 0;
border-radius: 5px;
}
.submit #BtnMessageBack:hover,
.submit .button[type="reset"]:hover {
background: #f2f2f2;
border: 0;
}
.auth-captcha {
margin-bottom: 40px;
text-align: center;
}
.auth-captcha-image {
margin-right: auto;
display: block;
}
#MailMessageAuthCaptcha {
line-height: 2;
}
.formTable .required {
margin-right: 0.5em;
padding-right: 1em;
padding-left: 1em;
background-color: #365d4b;
color: #ffffff;
}
.formTable .normal {
margin-right: 0.5em;
padding-right: 1em;
padding-left: 1em;
background-color: #acacac;
color: #ffffff;
}
.mail-description {
color: #365d4b;
text-align: center;
}
.mail-description ul {
margin-top: 1em;
margin-left: 1em;
}
.mail-description ul li {
margin-left: 1em;
list-style-type: disc;
}
#MessageBox {
padding: 1em;
border: 1px solid #d7004a;
border-radius: 5px;
}
.formTable .error-message,
.auth-captcha .error-message {
color: #d7004a;
}


.contentCheck .formTable td {
}


/* original select
---------------------- */
#RowMessageEntryNameKana1 .col-input,
#RowMessageName1 .col-input {
display: flex;
flex-wrap: nowrap;
justify-content: space-between;
}
#RowMessageEntryNameKana1 .col-input > span,
#RowMessageName1 .col-input > span {
width: 48%;
}
#RowMessageEntryTel1 .col-input {
display: inline-flex;
}
#RowMessageEntryTel1 .col-input > span {
display: inline-flex;
}
#RowMessageEntryTel1 .col-input input {
width: 90%!important;
}
#RowMessageEntryTel1 .mail-after-attachment {
margin-left: 5px;
margin-right: 5px;
}
#RowMessageEntryJob select {
width: auto;
min-width: 48%;
display: inline-block;
}
#RowMessageEntryDob .col-input {
display: inline-flex;
flex-wrap: nowrap;
justify-content: space-between;
align-items: baseline;
}
#RowMessageEntryDob .col-input > span {
display: inline-flex;
align-items: baseline;
}
#RowMessageEntryDob .col-input > span:nth-last-child(n+2) {
margin-right: 1em;
}
#RowMessageEntryDob .mail-after-attachment {
margin-left: 5px;
margin-right: 5px;
}
#RowMessageEntryResume .col-input,
#RowMessageEntryCv .col-input {
position: relative;
}
#RowMessageEntryResume input,
#RowMessageEntryCv input {
width: 100%;
}


/* PolicyCheck
---------------------- */
#RowMessagePolicyCheck {
text-align: center;
}
#RowMessagePolicyCheck .required {
display: none;
}
#FieldMessagePolicyCheck {
display: inline-block;
}
#FieldMessagePolicyCheck > .checkbox {
display: inline-block;
color: #365d4b;
}
#FieldMessagePolicyCheck input[type=checkbox] {
margin: 0;
padding: 0;
background: none;
border: none;
border-radius: 0;
outline: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
#FieldMessagePolicyCheck > div.checkbox input[type="checkbox"] {
cursor: pointer;
position: relative;
}
#FieldMessagePolicyCheck > div.checkbox input[type="checkbox"]::before,
#FieldMessagePolicyCheck > .checkbox input[type="checkbox"]::after {
content: "";
display: inline-block;
transition: all .3s;
}
#FieldMessagePolicyCheck > .checkbox input[type="checkbox"]::before {
width: 39px;
height: 39px;
border: 1px solid #dbdbdb;
border-radius: 100px;
}
#FieldMessagePolicyCheck > .checkbox input[type="checkbox"]::after {
margin: auto;
width: 18px;
height: 10px;
border-bottom: 3px solid #dbdbdb;
border-left: 3px solid #dbdbdb;
transform: rotate(-45deg);
position: absolute;
top: 23%;
right: 0;
left: 0;
}
#FieldMessagePolicyCheck > .checkbox input[type="checkbox"]:checked::before {
background-color: #7d9b19;
border: 1px solid #7d9b19;
}
#FieldMessagePolicyCheck > .checkbox input[type="checkbox"]:checked::after {
border-bottom: 3px solid #ffffff;
border-left: 3px solid #ffffff;
}
#FieldMessagePolicyCheck > .checkbox label {
position: relative;
}
#FieldMessagePolicyCheck > .checkbox label::after {
content: "";
margin-left: 0.2em;
width: 1.2em;
height: 1.2em;
display: inline-block; 
background-image: url("images/ic_morelink.svg");
background-repeat: no-repeat;
background-position: center;
background-size: contain;
filter: brightness(0) saturate(100%) invert(30%) sepia(38%) saturate(379%) hue-rotate(100deg) brightness(97%) contrast(93%);
vertical-align: sub;
}


/* 404 not found
----------------------------------------- */
#Error #header {
background: none;
min-height: 0;
}
#Error #main {
padding-top: 100px;
background-image: url("images/bk_contents_gr.jpg");
background-position: top;
background-repeat: repeat;
background-size: 100%;
}
#Error .error {
text-align: center;
}
#Error h1 {
text-align: center;
color: #f0eadc;
letter-spacing: 0.2em;
}
#Error .error a {
margin-right: auto;
margin-left: auto;
padding-right: 1em;
padding-left: 1em;
display: block;
color: #365d4b;
font-weight: 500;
background-color: #f0eadc;
border-radius: 100px;
letter-spacing: 0.1em;
}

/* Entryform
----------------------------------------- */
#Contact .formAttention h2 {
color: #7d9b19;
font-size: min(6vw,50px);
text-align: center;
}
#Contact .formAttention .txtBlk {
color: #7d9b19;
text-align: center;
}

/* Maintenance
----------------------------------------- */
#Maintenance #header {
margin-bottom: 100px;
}
#Maintenance #main {
margin-bottom: 150px;
}
#Maintenance #contentsTitle {
margin-right: auto;
margin-bottom: 50px;
margin-left: auto;
width: 80%;
text-align: center;
}
#Maintenance .container {
margin-right: auto;
margin-left: auto;
width: 80%;
text-align: center;
}



/* KYOUTSU END // PC BASE ==================== */
@media only screen and (min-width: 1160px){	

body{
    margin-top: 0 !important;
}
    #Contact #header{
        position: relative;
    }
    #Policy #header {
        position: relative;
    }
/* header
============================================== */
#header {
min-height: 319px;
position: fixed;

}
#header .headerWrap {
min-height: 100px;
height: 100px;
}
#Error #header,
.Noheader #header {
min-height: 0;
}

/* genelal base
============================================== */
.container {
width: 1160px;
}
#contentsTitle .title .En {
font-size: min(6vw,55px);
}
#contentsTitle .title .Jp {
font-size: min(6vw,19px);
}

/* breadCrumbs
============================================== */
#breadCrumbs .wrap {
margin-right: auto;
margin-left: auto;
width: 1160px;
}

/* contact
============================================== */
#contact .wrapper {
text-align: center;
}
#contact .container {
margin: 2em auto;
display: inline-block;
text-align: left;
}

/* form
============================================== */
#Contact #contentsTitle {
margin-bottom: 63px;
}
.general form {
margin-bottom: 150px;
font-size: min(6vw,18px);
}
.formTable tr {
margin-bottom: 2em;
width: 100%;
}
.formTable th {
padding-right: 20px;
text-align: left;
position: relative;
}
.formTable td {
display: block;
}
.formTable input {
margin-right: 0.5em;
width: 80%;
}
.formTable input,
.formTable textarea,
.auth-captcha input[type="text"] {
width: 100%;
}
.formTable input[type="text"] {
line-height: 2;
}
.formTable td input[type="radio"],
.formTable td input[type="checkbox"] {
width: auto;
vertical-align: inherit;
}
.auth-captcha {
display: flex;
flex-wrap: wrap;
}
.auth-captcha span:first-of-type {
width: 25%;
}
.auth-captcha .auth-captcha-image {
min-width: 300px;
}
#MailMessageAuthCaptcha {
margin-left: auto;
width: 75%;
}
.auth-captcha .error-message {
margin-left: auto;
width: 75%;
text-align: left;
}
.submit input[type="submit"],
.submit input[type="reset"] {
padding: 20px;
width: 50%;
line-height: 1.2;
font-size: min(6vw, 32px);
letter-spacing: 0.1em;
}
/* original select
====================== */
#RowMessageEntryResume .mail-before-attachment,
#RowMessageEntryCv .mail-before-attachment {
position: absolute;
top: -2em;
right: 0;
}

/* PolicyCheck
====================== */
#FieldMessagePolicyCheck > .checkbox {
font-size: min(6vw, 25px);
vertical-align: bottom;
}
#FieldMessagePolicyCheck > .checkbox label {
padding-bottom: 5px;
}

/* genelalForm
============================================== */
.generalForm {
margin-bottom: 200px;
}
.generalForm .contentsWrap {
width: 1160px;
}

/* 404 not found
============================================== */
#Error .wrapper {
padding-bottom: 190px;
}
#Error h1 {
margin-bottom: 100px;
font-size: min(6vw,34px);
}
#Error .error a {
max-width: 424px;
font-size: min(6vw,35px);
}







}/* PC END // SP BASE |||||||||||||||||||||||||||||| */
@media only screen and (max-width: 1159px){

/* general base
|||||||||||||||||||||||||||||||||||||||||||||||||||| */
#header {
margin-bottom: 40px;
min-height: 80px;
}
.container {
text-align: center;
}
#contentsTitle {
text-align: center;
}
#contentsTitle .title .En {
font-size: min(10vw,55px);
}
#contentsTitle .title .Jp {
font-size: min(10vw,18px);
}
.contentWrap {
display: inline-block;
width: 90%;
text-align: left;
}
.genelal .pageTitle {
width: 100%;
}

/* form
|||||||||||||||||||||||||||||||||||||||||||||||||||| */
.general form {
margin-bottom: 100px;
}
.mailForm {
width: 90%;
margin: 0 auto;
}
.manual {
margin-right: auto;
margin-left: auto;
width: 90%
}
.manual p {
margin-top: 1em;
display: inline-block;
}
.formTable tr {
margin-bottom: 0.8em;
width: 100%;
}
.formTable th {
padding: 0.5em;
width: 100%;
text-align: left;
}
.formTable td {
padding: 0.5em;
width: 100%;
display: block;
}
.formTable td input[type="tel"],
.formTable td input[type="email"],
.formTable td input[type="text"],
.formTable td textarea { 
width: 100%;
display: block;
}
.formTable td input[type="text"] {
line-height: 2;
}
#MailMessageIndexForm input[type="submit"], 
#MailMessageIndexForm input[type="reset"] {
width: 80%;
line-height: 1.2;
font-size: min(6vw, 28px);
letter-spacing: 0.1em;
}
.auth-captcha .auth-captcha-image {
min-width: 40%;
display: inline-block;
vertical-align: middle;
}
#MailMessageAuthCaptcha {
margin-right: auto;
margin-left: auto;
width: 60%;
display: inline-block;
}
/* original select
|||||||||||||||||||| */
#RowMessageEntryResume th,
#RowMessageEntryCv th {
padding-bottom: 1.8em;
}
#RowMessageEntryResume .mail-before-attachment,
#RowMessageEntryCv .mail-before-attachment {
position: absolute;
top: -2em;
right: 0;
}

/* PolicyCheck
|||||||||||||||||||| */
#FieldMessagePolicyCheck > .checkbox input[type="checkbox"]::after {
top: 19%;
}
#FieldMessagePolicyCheck > div.checkbox input[type="checkbox"] {
vertical-align: middle;
}
#FieldMessagePolicyCheck > .checkbox {
line-height: 1.5;
font-size: min(8vw, 20px);
}

#FieldMessagePolicyCheck > .checkbox {
font-size: min(6vw, 20px);
vertical-align: bottom;
}
#FieldMessagePolicyCheck > .checkbox label {
padding-bottom: 5px;
}

/* genelalForm
|||||||||||||||||||||||||||||||||||||||||||||||||||| */
.generalForm {
padding-top: 15%;
padding-bottom: 15%;
}
.generalForm .contentsWrap {
width: 90%;
}
.generalForm h1 {
margin-bottom: 10px;
}

/* 404 not found
|||||||||||||||||||||||||||||||||||||||||||||||||||| */
#Error .wrapper {
padding-bottom: 100px;
}
#Error h1 {
margin-bottom: 50px;
font-size: min(6vw,32px);
}
#Error .error a {
max-width: 424px;
font-size: min(6vw,28px);
}




}/* SP END |||||||||||||||||||||||||||||||||||||||| */