@charset 'utf-8';
@media all and (max-width: 640px){/* Sp */


.boxContactFormWrap{
}
.boxContactFormWrap.pageThanks{
}
/****************/
.boxContactFormNaviTb{
  display: table;
  width: 100%;
  margin-bottom: 10%;
}
.boxContactFormNaviTbc{
  position: relative;
  display: table-cell;
  width: 33.33333333%;
  height: 62px;
  padding-left: 0;
  vertical-align: middle;
  text-align: center;
  letter-spacing: 0.5rem;
  font-size: 1.25rem;
  font-size: 5.0vw;
}
.boxContactFormNaviTbc:not(:last-child):before {
  position: absolute;
  z-index: 3;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  right: -82px;
  width: 0;
  height: 0;
  border: 41px solid transparent;
  border-left: 41px solid #fff;
}
.boxContactFormNaviTbc:not(:last-child):after {
  position: absolute;
  z-index: 5;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  right: -62px;
  width: 0;
  height: 0;
  border: 31px solid transparent;
  border-left: 31px solid #eee;
}
.boxContactFormNaviTbc.current{
}
.boxContactFormNaviTbc.current:not(:last-child):after {
  position: absolute;
  z-index: 4;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  right: -62px;
  width: 0;
  height: 0;
  border: 31px solid transparent;
  border-left: 31px solid #690804;
}
.boxContactFormNaviTbc .boxCont{
}
.boxContactFormNaviTbc:not(:last-child) .boxCont:before {
  position: absolute;
  z-index: 4;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  right: -64px;
  width: 0;
  height: 0;
  border: 32px solid transparent;
  border-left: 32px solid #ccc;
}
.boxContactFormNaviTbc:not(:last-child) .boxCont:after {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  right: -73px;
  width: 0;
  height: 0;
  border: 31px solid transparent;
  border-left: 31px solid #ccc;
}
.boxContactFormNaviTbc:not(:nth-child(1)) .boxCont span{
  position: relative;
  left: 8vw;
}
/*
.boxContactFormNaviTbc .icnArrow00{
  display: none;
  position: absolute;
  z-index: 2;
  top: -1px;
  right: -25px;
}
.boxContactFormNaviTbc .icnArrow00.current{
  display: inline;
}
*/
/****************/
  .boxContactTopCom{
  margin-bottom: 10%;
  padding-top: 7%;
  text-align: center;
  }
  .boxContactTopCom .boxBaseCom {
    margin-bottom: 7%;
    font-size: 1.3rem;
    font-size: 4.3vw;
    text-align: left;
  }
  .boxContactTopCom .boxBaseCom p {
    line-height: 1.7;
  }
  .boxContactTopCom .boxContactTelnoInfo .txtCompanyName {
    display: block;
    margin-right: 0;
    margin-bottom: 3%;
    font-size: 1.35rem;
    font-size: 6.0vw;
  }
  .boxContactTopCom .boxContactTelnoInfo .txtTelno {
    margin-right: 0;
    margin-bottom: 3%;
    font-size: 2.0rem;
    font-size: 8.0vw;
    font-weight: 700;
  }
  .boxContactTopCom .boxContactTelnoInfo .txtTelno:before {
    content: '\f095';
    font-family: FontAwesome;
    display: inline-block;
    transform: rotate(15deg);
    margin-right: 2%;
    font-size: 1.8rem;
    font-size: 8.0vw;
  }
  .boxContactTopCom .boxContactTelnoInfo .txtReceptionTime,
  .boxContactTopCom .boxContactTelnoInfo .txtRegularHoliday {
    display: inline-block;
    font-size: 1.0rem;
    font-size: 4.0vw;
  }
  .boxContactTopCom .boxContactTelnoInfo .txtReceptionTime {
    margin-bottom: 2%;
  }
/****************/
.formContact .dlForm{
  display: block;
  width: 100%;
  width: 90%;
  margin: 0 auto;
  padding: 7% 0;
  font-size: 1.12rem;
  font-size: 4.3vw;
}
.formContact .dlForm.dlContSelect.typeContOneDisp,
.formContact .dlForm.dlContRadio.typeContOneDisp,
.formContact .dlForm.dlContCheckbox.typeContOneDisp {
  padding-bottom: 0;
  border-bottom: 0;
}
.formContact .dlOrgName,
.formContact dl.first{
  border-top: 0;
}
.formContact .dlCont{
  /*margin-bottom: 5%;*/
}
.formContact.modeConfirm .dlForm{
  padding: 5% 0;
}
.formContact.modeConfirm .dlForm.last{
  margin-bottom: 10%;
}
.formContact.modeConfirm .dlCont{
  margin-bottom: 0;
}
.formContact .dlForm > dt{
  overflow: hidden;
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 5px;
  padding-left: 17%;
  padding-right: 0;
  vertical-align: middle;
  font-size: 0.95rem;
  font-size: 5.0vw;
  letter-spacing: 0.1em;
  font-weight: 700;
}
.formContact.modeConfirm .dlForm > dt{
  width: 100%;
  margin-bottom: 2%;
  padding-left: 3%;
}
.formContact dt .str2{
  margin-right: -2.0em;
  letter-spacing: 2.0em;
}
.formContact dt .markRequired,
.formContact dt .markNotRequired{
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  display: inline-block;
  padding: 1% 2% 1% 2%;
  line-height: 1.0;
  letter-spacing: 0.2em;
  font-size: 0.8rem;
  font-size: 3.5vw;
  font-weight: normal;
}
.formContact dt .markRequired{
  border: 1px #de0000 solid;
}
.formContact dt .markNotRequired{
  border: 1px #e3e2e2 solid;
}
.formContact.modeConfirm dt .markRequired,
.formContact.modeConfirm dt .markNotRequired{
  display: none;
}
.formContact dt .markRequired span,
.formContact dt .markNotRequired span{
  position: relative;
  left: 0.1em;
}
.formContact .dlForm > dd{
  position: relative;
  display: block;
  width: 100%;
  vertical-align: middle;
  font-size: 4.0vw;
}
.formContact.modeConfirm .dlForm > dd{
  width: 100%;
  padding-left: 3%;
  font-size: 4.5vw;
}
.formContact .dlForm > dd .boxRadioWrap,
.formContact .dlForm > dd .boxCheckboxWrap {
  display: inline-block;
}
.formContact .dlForm > dd .radioWrap,
.formContact .dlForm > dd .checkboxWrap {
  display: inline-block;
}
.formContact dd .txtCom01{
  padding-top: 0.5%;
}
.formContact.modeConfirm dd .txtCom01{
  display: none;
}
.formContact dd .txtCaution{
  position: absolute;
  top: -7.4vw;
  right: 5%;
  display: inline-block;
  margin-left: 1%;
  letter-spacing: 0.1em;
  font-size: 0.95rem;
  font-size: 3.8vw;
  color: #aaa;
}
.formContact dd input,
.formContact dd select,
.formContact dd textarea{
  box-sizing: border-box;
  padding: 3%;
  border-radius: 0;
  font-size: 0.98rem;
  font-size: 4.5vw;
}
.formContact dd select{
  padding: 2% 2% 4% 2%;
}
:placeholder-shown{
  letter-spacing: 0.1em;
  font-size: 1.1rem;
  font-size: 4.0vw;
  font-weight: normal;
}
::-webkit-input-placeholder{
  letter-spacing: 0.1em;
  font-size: 1.1rem;
  font-size: 4.0vw;
  font-weight: normal;
}
:-moz-placeholder{
  letter-spacing: 0.1em;
  font-size: 1.1rem;
  font-size: 4.0vw;
  font-weight: normal;
}
::-moz-placeholder{
  letter-spacing: 0.1em;
  font-size: 1.1rem;
  font-size: 4.0vw;
  font-weight: normal;
}
:-ms-input-placeholder{
  letter-spacing: 0.1em;
  font-size: 1.1rem;
  font-size: 4.0vw;
  font-weight: normal;
}

.formContact dd input[type="file"]{
  padding: 0;
  border: 0;
}
.formContact dd input[name="del_attach0"]{
  border: 0;
  background: 0;
  cursor: pointer;
  font-size: 1.3rem;
}
.formContact dd label[for="del_attach0"]{
  cursor: pointer;
}
.formContact dd .ulJobcatSelect{
  margin-bottom: 25px;
}
.formContact dd .ulJobcatSelect:last-child{
  margin-bottom: 0;
}
.formContact dd .ulContSelect li{
  float: none;
  width: 100%;
  margin-bottom: 2%;
  padding-left: 1%;
  font-size: 1.13rem;
  font-size: 4.0vw;
}
.formContact dd .ulContSelect.no2 li{
  float: none;
  width: 100%;
}
.formContact dd .ulJobcatSelect li{
  float: left;
  display: inline-block;
  margin-right: 7%;
  letter-spacing: normal;
}
.formContact dd .ulJobcatSelect li{
  width: 100%;
  margin-bottom: 3%;
  margin-right: 0;
}
.formContact dd .ulContSelect li:last-child{
  margin-right: 0;
}
.formContact dd .ulContSelect li input,
.formContact dd .ulJobcatSelect li input{
  margin-right: 1%;
  vertical-align: middle;
}
.formContact dd .boxJobcatTtl{
  margin-bottom: 7px;
}
.formContact dd .boxJobcatTtl:before{
  content: '■';
  margin-right: 5px;
  margin-left: -2px;
  color: #b6daab;
}

.formContact input[name="org_name"],
.formContact input[name="my_name"],
.formContact input[name="my_name_kana"],
.formContact input[name="email"],
.formContact input[name="email2"],
.formContact input[name="telno"],
.formContact input[name="faxno"]{
  width: 100%;
}
.formContact input[name="company_name"]{
  width: 100%;
}
.formContact input[name="zipcode1"],
.formContact input[name="zipcode2"]{
  width: 80px;
  margin: 0 4px;
}
.formContact input[name="zipcode"],
.formContact select[name="pref"]{
  width: 100%;
  margin-bottom: 15px;
}
.formContact select[name="birth_year"],
.formContact select[name="birth_month"],
.formContact select[name="birth_day"]{
  width: 23%;/*70px*/
  margin-right: 2%;
}
.formContact select[name="birth_month"],
.formContact select[name="birth_day"]{
  margin-left: 1%;
}
.formContact input[name="address"],
.formContact textarea[name="cont"]{
  width: 100%;
}
.formContact textarea[name="cont"]{
  height: 180px;
}
.formContact select[name="cont_select"]{
  width: 100%;
  /*margin-bottom: 10%;*/
}
.formContact .txtInputContSelect{
  /*margin-bottom: 5%;*/
}
/***** PrivacyP *****/
.boxContactPrivacyPWrap{
  padding-top: 3%;
}
.boxContactPrivacyPWrap > .ttl{
  display: block;
  width: 90%;
  margin: 0 auto;
  padding: 0 0 3% 0;
  border-bottom: 1px #ddd solid;
  text-align: center;
  letter-spacing: 0.1em;
  font-size: 1.4rem;
  font-size: 5.5vw;
  font-weight: 700;
}

.boxPopupPrivacyP{
  display: none;
  padding: 30px 30px 0 30px;
  border: 1px #ccc solid;
  text-align: left;
}
.boxPopupPrivacyP .ttl{
  padding: 20px;
  text-align: center;
  font-size: 1.2rem;
}
.boxPopupPrivacyP .ttl2{
  padding: 30px 0 10px 0;
  font-size: 1.0rem;
  font-weight: bold;
}
.boxPopupPrivacyP ul.last{
  padding-bottom: 50px;
}
.boxPopupPrivacyP ul.last{
  padding-bottom: 5%;
}

.boxContactPrivacyPCont{
  width: 90%;
  height: 30vw;
  margin: 0 auto;
  margin-bottom: 3%;
  padding: 5% 3% 5% 3%;
  overflow-y: scroll;
  font-size: 1.0rem;
  font-size: 4.0vw;
}
.boxContactPrivacyPCont::-webkit-scrollbar{
  width: 12px;
}
.boxContactPrivacyPCont::-webkit-scrollbar-thumb{
  width: 10px;
  border-radius: 10px;
}
.boxContactPrivacyPCont p{
  margin-bottom: 5%;
}

.boxContactPrivacyP{
  width: 100%;
  padding: 3% 5%;
  margin: 0 auto;
  margin-bottom: 10%;
  vertical-align: middle;
  text-align: left;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-size: 1.05rem;
  font-size: 4.0vw;
  font-weight: 700;
}
.boxContactPrivacyP input{
  margin-right: 2%;
}
.boxContactPrivacyP a{
  display: inline-block;
  border-bottom: 1px #0d0d0d solid;
  line-height: 1.2;
}
.boxContactPrivacyP .txtExternalLink:after{
  content: '\f08e';
  font-family: FontAwesome;
  color: #0d0d0d;
}
.boxContactPrivacyP span{
  font-weight: 700;
}
/***** Btn *****/
.boxContactSubmitBtn{
  position: relative;
  margin-bottom: 7%;
  padding-top: 5%;
  text-align: center;
}
.boxContactSubmitBtn .btnSubmit{
  -webkit-appearance: none;
  padding: 5% 2% 5% 0;
  border-radius: 0;
  border: 0;
  background-image: url('./../../images/contact/contact-icn-arrow01r.png');
  background-repeat: no-repeat;
  background-position: 93% center;
  background-size: 3%;
  letter-spacing: 0.2em;
  font-size: 1.7rem;
  font-size: 6.0vw;
  font-weight: 700;
  color: #fff;
  cursor: auto;
}
.boxContactSubmitBtn .btnContact01{
  width: 90%;
  margin: 0 auto;
}
.boxContactSubmitBtn .btnContact02{
  /*position: static;
  top: 0;
  left: 0;*/
  width: 90%;
  margin: 0 auto;
}
.boxContactSubmitBtn .btnContactBack{
  /*position: static;
  top: 0;
  left: 0;*/
  width: 90%;
  margin: 0 auto;
  margin-bottom: 3%;
  padding: 5% 0 5% 2%;
  background-image: url('./../../images/contact/contact-icn-arrow01l.png');
  background-position: 7% center;
}
/***** Bottom *****/
.boxFormBottom p{
  text-align: center;
  letter-spacing: 0.1em;
  font-size: 0.98rem;
  font-size: 3.8vw;
}
/***** Error *****/
.boxFormErrorParts{
  padding: 2% 0 0 5%;
}
.boxFormErrorParts .txtErrmsg{
  font-size: 0.9rem;
  font-size: 4.0vw;
}
.boxFormErrorParts.type02 .txtErrmsg {
  font-size: 1.03rem;
  font-size: 4.0vw;
}
.icnContactCheckOk{
  position: relative;
}
.icnContactCheckOk:after {
  content: '\f00c OK';
  font-family: FontAwesome;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 2%;
  color: #0000ff;
}
.formContact .inputRstSuccess {
  border: 1px #b7e71f solid;
  background-color: #f1fdcb;
}
.formContact .dlForm > dd .boxRadioWrap.inputRstSuccess,
.formContact .dlForm > dd .boxCheckboxWrap.inputRstSuccess {
  padding: 3.5% 15% 2.5% 3%;
}
.formContact .inputRstFailed {
  border: 1px #ff0000 solid;
  background-color: #fadfdf;
}
.formContact .dlForm > dd .boxRadioWrap.inputRstFailed,
.formContact .dlForm > dd .boxCheckboxWrap.inputRstFailed {
  padding: 3.5% 15% 2.5% 3%;
}
/***** Thanks *****/
.boxContactThanks{
  width: 95%;
  margin: 0 auto;
  padding: 7% 0 0 0;
  border: 0;
}
.boxContactThanks > .ttlBase02{
  margin-bottom: 7%;
  padding-bottom: 10%;
  background-image: url('./../../images/contact/contact-border01.png'),url('./../../images/contact/contact-icn01.png');
  background-repeat: no-repeat,no-repeat;
  background-position: center bottom,10.5% 10%;
  background-size: 86%, 8%;
  text-align: center;
  letter-spacing: 0.07em;
  font-size: 1.4rem;
  font-size: 6.0vw;
  text-indent: 1.0em;
}
.boxContactThanks > .ttl{
  margin-bottom: 7%;
  text-align: center;
  line-height: 1.3;
  letter-spacing: 0.1em;
  font-size: 1.1rem;
  font-size: 5.0vw;
  font-weight: bold;
}
.boxContactThanksIn{
  width: 90%;
  margin: 0 auto;
  margin-bottom: 0;
}
.boxContactThanksIn p{
  margin-bottom: 5%;
  text-align: left;
  line-height: 1.9;
  letter-spacing: 0.1em;
  font-size: 0.98rem;
  font-size: 4.3vw;
}
/** SSL **/
  .boxSSL {
    position: relative;
    display: table;
    width: 90%;
    height: auto;
    margin: 0 auto;
    margin-bottom: 7%;
    padding-left: 19vw;
  }
  .boxSSLIn {
    display: table-cell;
    width: 100%;
    vertical-align: top;
  }
  .boxSSL .imgSSL01{
    position: absolute;
    top: 0;
    left: 0;
    width: 15vw;
    height: auto;
  }
  .boxSSL .boxBaseCom,
  .boxSSL .boxBaseCom p {
    font-size: 0.9rem;
    font-size: 3.5vw;
  }
/** /SSL **/


/* OPtion Style */
.formContact .dl02{
  display: table;
  width: 100%;
  margin-bottom: 5%;
}
.formContact .dl02.no3{
  margin-bottom: 7%;
}
.formContact .dl02 > dt{
  display: table-cell;
  width: 10%;
  vertical-align: top;
}
.formContact .dl02 > dt span{
  display: inline-block;
  writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  -webkit-writing-mode: vertical-lr;
  height: 16vw;
  padding: 0 10%;
  text-align: center;
  line-height: 1.0;
  letter-spacing: 0.05em;
  font-size: 1.1rem;
  font-size: 4.0vw;
}
.formContact .dl02 > dd{
  display: table-cell;
  width: 90%;
  padding: 0;
  vertical-align: top;
}


.boxContactThanks .boxTelno01{
  height: 22vw;
  padding-top: 1.2%;
  background-image: url('./../../images/contact/contact-thanks-bg01.png');
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 90%;
  text-align: center;
}
.boxContactThanks .boxTelno0101{
  margin-bottom: 0.5%;
}
.boxContactThanks .boxTelno0101 .txt01{
  display: inline-block;
  margin-right: 1%;
  padding: 0.5% 1%;
  border-radius: 3px;
  letter-spacing: 0.3em;
  font-size: 0.7rem;
  font-size: 3.5vw;
}
.boxContactThanks .boxTelno0101 .txt01 span{
  position: relative;
  right: -0.15em;
}
.boxContactThanks .boxTelno0101 .txt02{
  display: inline-block;
  position: relative;
  top: 2px;
  font-weight: 700;
}
.boxContactThanks .boxTelno0101 .txt02 .large{
  font-size: 1.2rem;
  font-size: 4.8vw;
}
.boxContactThanks .boxTelno0102{
  padding-right: 4%;
}
.boxContactThanks .boxTelno0102 .txtTelno{
  display: inline-block;
  padding: 0.5% 0 2% 10%;
  background-image: url('./../../images/contact/contact-icn-tel01.png');
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 12%;
  line-height: 1.0;
  font-size: 2.0rem;
  font-size: 7.0vw;
  font-weight: 700;
}



}/* /Sp */