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

/* FooterMenu01 */
.boxFooterMenu01{
  width: 100%;
  margin: 0 auto;
  margin-bottom: 0;
}
.boxFooterMenu01LR{
  display: block;
  width: 100%;
}
.boxFooterMenu01L,
.boxFooterMenu01R{
  display: block;
  width: 100%;
  vertical-align: top;
}
.boxFooterMenu01L{
  width: 100%;
  padding-right: 0;
}
.boxFooterMenu01R{
  width: 100%;
  padding-left: 0;
}
.boxFooterMenu01L .ttl,
.boxFooterMenu01R .ttl{
  position: relative;
  margin-bottom: 0;
  padding: 4% 15% 4% 8%;
  letter-spacing: 0.1em;
}
.boxFooterMenu01L .ttl .large,
.boxFooterMenu01R .ttl .large{
  font-size: 1.25rem;
  font-size: 5.0vw;
}
.boxFooterMenu01L .ulCat,
.boxFooterMenu01R .ulCat{
  float: none;
  width: 100%;
  margin-right: 0;
}
.boxFooterMenu01L .ulCat:nth-child(2n),
.boxFooterMenu01R .ulCat:nth-child(2n){
  margin-right: 0;
}
.boxFooterMenu01L .ulCat > li,
.boxFooterMenu01R .ulCat > li{
  width: 100%;
  margin-bottom: 0;
}
.boxFooterMenu01L .ulCat > li .liTtl,
.boxFooterMenu01R .ulCat > li .liTtl{
  position: relative;
  display: inline-block;
  width: 100%;
  margin-bottom: 0;
  padding: 3% 15% 3% 8%;
  letter-spacing: 0.1em;
  font-size: 1.15rem;
  font-size: 4.5vw;
}
.boxFooterMenu01L .ulSubCat,
.boxFooterMenu01R .ulSubCat{
  display: none;
  margin-bottom: 8%;
  padding-top: 5%;
}
.boxFooterMenu01L .ulSubCat > li,
.boxFooterMenu01R .ulSubCat > li{
  margin-bottom: 3%;
  margin-left: 1.2em;
  padding-left: 8%;
  text-indent: -1.2em;
  line-height: 1.3;
}
.boxFooterMenu01L .ulSubCat > li:before,
.boxFooterMenu01R .ulSubCat > li:before{
  content: '■';
  margin-right: 5px;
  font-size: 1.0rem;
  font-size: 3.0vw;
}
.boxFooterMenu01L .icnAccordionSp,
.boxFooterMenu01R .icnAccordionSp{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 5%;
  width: 7%;
  max-width: 68px;
}
/* /FooterMenu01 */

/* FooterMenu02 */
.boxFooterMenu02{
  width: 100%;
  margin: 0 auto;
  margin-bottom: 0;
}
.boxFooterMenu02LR{
  display: block;
  width: 100%;
}
.boxFooterMenu02L,
.boxFooterMenu02R{
  display: block;
  width: 100%;
  vertical-align: top;
}
.boxFooterMenu02L{
  width: 100%;
  padding-right: 0;
}
.boxFooterMenu02R{
  width: 100%;
  padding-left: 0;
}
.boxFooterMenu02L .ttl,
.boxFooterMenu02R .ttl{
  position: relative;
  margin-bottom: 0;
  padding: 4% 15% 4% 8%;
  letter-spacing: 0.1em;
}
.boxFooterMenu02L .ttl .large,
.boxFooterMenu02R .ttl .large{
  font-size: 1.25rem;
  font-size: 5.0vw;
}
.boxFooterMenu02L .ulCat,
.boxFooterMenu02R .ulCat{
  overflow: visible;
  width: 100%;
}
.boxFooterMenu02L .ulCat > li,
.boxFooterMenu02R .ulCat > li{
  float: none;
  width: 100%;
  margin-right: 0;
  margin-bottom: 0;
}
.boxFooterMenu02L .ulCat > li:nth-child(2n),
.boxFooterMenu02R .ulCat > li:nth-child(2n){
  margin-right: 0;
}
.boxFooterMenu02L .ulCat > li .liTtl,
.boxFooterMenu02R .ulCat > li .liTtl{
  position: relative;
  display: inline-block;
  width: 100%;
  margin-bottom: 0;
  padding: 3% 15% 3% 8%;
  letter-spacing: 0.1em;
  font-size: 1.15rem;
  font-size: 4.5vw;
}
.boxFooterMenu02L .ulSubCat,
.boxFooterMenu02R .ulSubCat{
  display: none;
  margin-bottom: 8%;
  padding-top: 5%;
}
.boxFooterMenu02L .ulSubCat > li,
.boxFooterMenu02R .ulSubCat > li{
  margin-bottom: 3%;
  margin-left: 1.2em;
  padding-left: 8%;
  text-indent: -1.2em;
  line-height: 1.3;
}
.boxFooterMenu02L .ulSubCat > li:before,
.boxFooterMenu02R .ulSubCat > li:before{
  content: '■';
  margin-right: 5px;
  font-size: 1.0rem;
  font-size: 3.0vw;
}
.boxFooterMenu02L .icnAccordionSp,
.boxFooterMenu02R .icnAccordionSp{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 5%;
  width: 7%;
  max-width: 68px;
}
/* /FooterMenu02 */

/* FooterMenu03 */
.boxFooterMenu03{
  width: 100%;
  margin: 0 auto;
  margin-bottom: 0;
}
.boxFooterMenu03LR{
  display: block;
  width: 100%;
}
.boxFooterMenu03L,
.boxFooterMenu03R{
  display: block;
  width: 100%;
  vertical-align: top;
}
.boxFooterMenu03L{
  width: 100%;
  padding-right: 0;
}
.boxFooterMenu03R{
  width: 100%;
}
.boxFooterMenu03L .ttl,
.boxFooterMenu03R .ttl{
  position: relative;
  margin-bottom: 0;
  padding: 4% 15% 4% 8%;
  letter-spacing: 0.1em;
}
.boxFooterMenu03L .ttl .large,
.boxFooterMenu03R .ttl .large{
  font-size: 1.25rem;
  font-size: 5.0vw;
}
.boxFooterMenu03L .ulCat{
  display: none;
  margin-bottom: 10%;
  padding-top: 5%;
}
.boxFooterMenu03L .ulCat li{
  margin-bottom: 3%;
  padding-left: 8%;
  margin-left: 1.2em;
  text-indent: -1.2em;
}
.boxFooterMenu03L .ulCat li:before{
  content: '■';
  margin-right: 5px;
  font-size: 1.0rem;
  font-size: 4.0vw;
}
.icnFooterMenu03{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 5%;
  width: 7%;
  max-width: 68px;
  cursor: pointer;
}
.boxFooterMenu03R .ulCat{
  float: none;
  width: 100%;
  margin-right: 0;
}
.boxFooterMenu03R .ulCat.last{
  margin-right: 0;
}
.boxFooterMenu03R .ulCat > li{
  margin-bottom: 0;
}
.boxFooterMenu03R .ulCat > li .liTtl{
  position: relative;
  display: inline-block;
  width: 100%;
  margin-bottom: 0;
  padding: 3% 15% 3% 8%;
  letter-spacing: 0.1em;
  font-size: 1.1rem;
  font-size: 4.5vw;
}
.boxFooterMenu03R .ulSubCat{
  display: none;
  margin-bottom: 8%;
  padding-top: 5%;
}
.boxFooterMenu03R .ulSubCat > li{
  margin-bottom: 3%;
  margin-left: 1.2em;
  padding-left: 8%;
  text-indent: -1.2em;
  line-height: 1.3;
}
.boxFooterMenu03R .ulSubCat > li:before{
  content: '■';
  margin-right: 5px;
  font-size: 1.0rem;
  font-size: 3.0vw;
}
.boxFooterMenu03L .icnAccordionSp,
.boxFooterMenu03R .icnAccordionSp{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 5%;
  width: 7%;
  max-width: 68px;
}
/* /FooterMenu03 */


/* Sp FooterMenuSetting */
.setFooterMenuLR.boxFooterMenu01LR .ulCat > li,
.setFooterMenuLR.boxFooterMenu02LR .ulCat > li{
  border-bottom: 1px #fff solid;
}
.setFooterMenuR.boxFooterMenu03R .ulCat > li{
  border-bottom: 1px #fff solid;
}
/* /Sp FooterMenuSetting */





/****************************/
/* RecruitSearchForm0201 */
/*
.psBoxSearch0201{
  width: 90%;
  margin: 0 auto;
}
*/
.psBoxSearchLR0201{
  display: block;
  width: 100%;
  /*margin-bottom: 15%;*/
}
.psBoxSearchL0201{
  display: block;
  width: 100%;
  padding-right: 0;
  vertical-align: top;
}
.psBoxSearchLR0201.typeCol1 .psBoxSearchL0201{
  width: 100%;
  padding-right: 0;
}
.psBoxSearchLR0201.typeCol2 .psBoxSearchL0201{
  width: 100%;
  padding-right: 0;
}

.psBoxSearchR0201{
  display: block;
  width: 100%;
  padding-left: 0;
  vertical-align: top;
}
.psBoxSearchLR0201.typeCol1 .psBoxSearchR0201 {
  display: none;
}
.psBoxSearchLR0201.typeCol2 .psBoxSearchR0201 {
  display: block;
}
.psBoxSearchL0201In{
  width: 100%;
  min-height: 100%;
  margin-bottom: 10%;
  background-image: url('./../../images_sp/recruit/sp-recruit-search-bg01.png'), url('./../../images_sp/recruit/sp-recruit-search-bg02.png');
  background-repeat: no-repeat, repeat-y;
  background-position: left top, left top;
  background-size: 100% auto, 100% auto;
}
.psBoxSearchLR0201.typeCol1 .psBoxSearchL0201In{
  width: 100%;
  background-repeat: no-repeat, repeat;
  background-position: right top, left top;
}
.psBoxSearchLR0201.typeCol2 .psBoxSearchL0201In{
  width: 100%;
  background-repeat: no-repeat, repeat-y;
  background-position: left top, left top;
}
.psBoxSearchL0201In > .boxCont{
  position: relative;
  /*padding-bottom: 5%;*/
}
.psBoxSearchL0201In > .boxCont .boxTtl{
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 100%;
  padding: 5.7% 0 0 5.5%;
  line-height: 1.0;
}
.psBoxSearchL0201In > .boxCont .txtNumber{
  display: inline-block;
  width: 100%;
  line-height: 1.0;
  letter-spacing: -0.03em;
  font-size: 9.0vw;
}
.psBoxSearchL0201In > .boxCont .ttl{
  position: relative;
  top: -2.5vw;
  display: inline-block;
  width: 100%;
  padding-left: 18.5%;
  line-height: 1.0;
  letter-spacing: -0.05em;
  font-size: 1.25rem;
  font-size: 4.5vw;
}
.psBoxSearchL0201In > .boxCont .ttl2{
  margin-bottom: 3%;
  padding: 4.0% 0 6% 23%;
  line-height: 1.0;
  letter-spacing: 0.22em;
  font-size: 1.7rem;
  font-size: 5.0vw;
}
.psBoxSearchL0201In > .boxCont .ttl2 .large{
  font-size: 2.17rem;
  font-size: 7.0vw;
}

.psBoxSearchL0201In > .boxCont .boxRecruitBanner01 {
  padding: 0 5% 5% 5%;
  text-align: center;
}

.psBoxSearchL0201In > .boxCont .ulJobCat{
  padding: 0 5%;
}
.psBoxSearchL0201In > .boxCont .ulJobCat > li{
  float: none;
  width: 100%;
  margin-right: 0;
  margin-bottom: 3%;
  background-image: url('./../../images/recruit/recruit-icn-arrow02.png');
  background-repeat: no-repeat;
  background-position: 3vw center;
  background-size: 3% auto;
  letter-spacing: 0.1em;
  font-size: 1.17rem;
  font-size: 4.3vw;
  font-weight: 700;
}
.psBoxSearchL0201In > .boxCont .ulJobCat > li a{
  display: inline-block;
  width: 100%;
  padding: 3% 3% 3% 10%;
}
.psBoxSearchL0201In > .boxCont .ulJobCat > li a:hover{
  opacity: 1;
}
.psBoxSearchL0201In > .boxCont .ulJobCat > li:nth-child(2n){
  margin-right: 0;
}
.psBoxSearchR0201In{
  position: relative;
  width: 100%;
  min-height: 100%;/*105vw*/
  padding-top: 130.989583%;
  background-image: url('./../../images_sp/recruit/sp-recruit-search-bg0102.png');
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 100% auto;
}
.psBoxSearchR0201In > .boxCont{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.psBoxSearchR0201In > .boxCont .psImgSearchArea{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin-top: 0;
  margin-bottom: 3%;
}
.psBoxSearchR0201In > .boxCont .boxTtl{
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 100%;
  padding: 5.7% 0 0 4.9%;
  line-height: 1.0;
}
.psBoxSearchR0201In > .boxCont .txtNumber{
  display: inline-block;
  width: 100%;
  line-height: 1.0;
  letter-spacing: -0.03em;
  font-size: 2.7rem;
  font-size: 9.0vw;
}
.psBoxSearchR0201In > .boxCont .ttl{
  position: relative;
  top: -2.5vw;
  display: inline-block;
  width: 100%;
  padding-left: 18.5%;
  line-height: 1.0;
  letter-spacing: -0.05em;
  font-size: 1.25rem;
  font-size: 4.5vw;
}
.psBoxSearchR0201In > .boxCont .ttl2{
  padding: 4.0% 0 6% 23%;
  line-height: 1.0;
  letter-spacing: 0.22em;
  font-size: 1.7rem;
  font-size: 5.0vw;
}
.psBoxSearchR0201In > .boxCont .ttl2 .large{
  font-size: 2.17rem;
  font-size: 7.0vw;
}
/* /RecruitSearchForm0201 */

/* RecruitSearchForm0202 */
/*
.psBoxSearch0202{
  width: 90%;
  margin: 0 auto;
}
*/
.psBoxSearchLR0202{
  display: block;
  width: 100%;
  margin-bottom: 15%;
}
.psBoxSearchL0202{
  display: block;
  width: 100%;
  padding-right: 0;
  vertical-align: top;
}
.psBoxSearchR0202{
  display: block;
  width: 100%;
  padding-left: 0;
  vertical-align: top;
}
.psBoxSearchL0202In{
  width: 100%;
  min-height: 100%;
  margin-bottom: 10%;
  background-image: url('./../../images_sp/recruit/sp-recruit-search-bg01.png'), url('./../../images_sp/recruit/sp-recruit-search-bg02.png');
  background-repeat: no-repeat, repeat-y;
  background-position: left top, left top;
  background-size: cover, contain;
}
.psBoxSearchL0202In > .boxCont{
  position: relative;
  padding-bottom: 5%;
}
.psBoxSearchL0202In > .boxCont .boxTtl{
  position: absolute;
  top: 0;
  left: 5%;
  display: inline-block;
  padding: 2% 0 0 5%;
}
.psBoxSearchL0202In > .boxCont .txtNumber{
  display: inline-block;
  width: 100%;
  line-height: 1.0;
  letter-spacing: 0.12em;
  font-size: 2.7rem;
  font-size: 10.0vw;
}
.psBoxSearchL0202In > .boxCont .ttl{
  display: inline-block;
  width: 100%;
  padding-left: 0;
  letter-spacing: 0.06em;
  font-size: 1.25rem;
  font-size: 4.5vw;
}
.psBoxSearchL0202In > .boxCont .ttl2{
  padding: 9% 0 5% 37%;
  letter-spacing: 0.22em;
  font-size: 1.7rem;
  font-size: 5.5vw;
}
.psBoxSearchL0202In > .boxCont .ttl2 .large{
  font-size: 2.17rem;
  font-size: 7.5vw;
}
.psBoxSearchL0202In > .boxCont .ulJobCat{
  padding: 0 18px;
}
.psBoxSearchL0202In > .boxCont .ulJobCat > li{
  margin-bottom: 5%;
  letter-spacing: 0.1em;
  font-size: 1.17rem;
  font-size: 5.5vw;
}
.psBoxSearchL0202In > .boxCont .ulJobCat > li .btnAccordionSp{
  position: relative;
  display: inline-block;
  width: 100%;
  overflow: hidden;
}
.psBoxSearchL0202In > .boxCont .ulJobCat > li .icnAccordionSp{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  left: 88%;
  width: 10%;
  padding-bottom: 2%;
}
.psBoxSearchL0202In > .boxCont .ulJobCat > li a{
  display: inline-block;
  width: 100%;
  margin-bottom: 2%;
  padding: 2% 5% 2% 5%;
}
.psBoxSearchL0202In > .boxCont .ulJobCat > li a:hover{
  opacity: 1;
}
.psBoxSearchL0202In > .boxCont .ulJobSubCat > li{
  float: none;
  width: 100%;
  margin-right: 0;
}
.psBoxSearchL0202In > .boxCont .ulJobSubCat > li:nth-child(2n){
  margin-right: 0;
}
.psBoxSearchL0202In > .boxCont .ulJobSubCat > li a{
  display: inline-block;
  width: 100%;
  margin-bottom: 2%;
  padding: 2% 5% 2% 10%;
  background-image: url('./../../images/recruit/recruit-icn-arrow02.png');
  background-repeat: no-repeat;
  background-position: left 14px center;
}
.psBoxSearchL0202In > .boxCont .ulJobSubCat > li a:hover{
  opacity: 1;
}
.psBoxSearchR0202In{
  position: relative;
  width: 100%;
  min-height: 100%;/*105vw*/
  padding-top: 117%;
  background-image: url('./../../images_sp/recruit/sp-recruit-search-bg0102.png');
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
}
.psBoxSearchR0202In > .boxCont{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.psBoxSearchR0202In > .boxCont .psImgSearchArea{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  margin-top: 0;
  /*margin-bottom: 3%;*/
}
.psBoxSearchR0202In > .boxCont .boxTtl{
  position: absolute;
  top: 0;
  left: 3%;
  display: inline-block;
  padding: 3% 0 0 5%;
}
.psBoxSearchR0202In > .boxCont .txtNumber{
  display: inline-block;
  width: 100%;
  line-height: 1.0;
  letter-spacing: 0.08em;
  font-size: 2.7rem;
  font-size: 10.0vw;
}
.psBoxSearchR0202In > .boxCont .ttl{
  display: inline-block;
  width: 100%;
  padding-left: 0;
  letter-spacing: 0.06em;
  font-size: 1.25rem;
  font-size: 4.5vw;
}
.psBoxSearchR0202In > .boxCont .ttl2{
  padding: 3% 0 0 30%;
  letter-spacing: 0.22em;
  font-size: 1.7rem;
  font-size: 5.5vw;
}
.psBoxSearchR0202In > .boxCont .ttl2 .large{
  font-size: 2.17rem;
  font-size: 7.5vw;
}
/* /RecruitSearchForm0202 */

/***** RecSearch03 *****/
.boxRecSearch03Wrap {
}
.boxRecSearch03 {
  position: relative;
  min-height: auto;
  background-image: url('./../../images_sp/recruit/sp-recruit-search-bg0103.png'),url('./../../images_sp/recruit/sp-recruit-search-bg0103-repeat.png');
  background-repeat: no-repeat,repeat-y;
  background-position: center top,center 90.3333333%;
  background-size: 100% auto,100% auto;
  padding: 22% 0 0 0;
}
.boxRecSearch03 .ttl {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 5.8% 0 10% 3%;
  line-height: 1.0;
  font-weight: 700;
}
.boxRecSearch03 .ttl .ttlNum {
  padding-left: 2.0%;
  letter-spacing: -0.03em;
  font-size: 9.0vw;
  font-weight: 400;
}
.boxRecSearch03 .ttl .ttlJa {
  position: absolute;
  top: 15%;
  left: 22%;
  letter-spacing: 0.1em;
  font-size: 7.0vw;
}
.boxRecSearch03 .ttl .ttlEn {
  position: absolute;
  top: 50%;
  left: 22%;
  letter-spacing: normal;
  font-size: 4.5vw;
  font-style: italic;
}
.boxRecSearch0301 {
  padding: 0 5% 5% 5%;
}
.boxRecSearch0301 .ul01 {
  display: block;
}
.boxRecSearch0301 .ul01 > li {
  width: 100%;
  margin-right: 0;
  margin-bottom: 3%;
  text-align: left;
}
.boxRecSearch0301 .ul01 > li:nth-child(3n) {
  margin-right: 0;
}
.boxRecSearch0301 .ul01 > li a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 3% 0 3% 6%;
}
.boxRecSearch0301 .ul01 > li .boxBlandName {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 0;
  padding-left: 8%;
  background-image: url('./../../images/recruit/recruit-icn-arrow03.png');
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto auto;
  font-size: 4.3vw;
  font-weight: 700;
}
.boxRecSearch0301 .ul01 > li .boxBlandName > span {
  display: inline-block;
  width: 40%;
  padding-left: 0;
  background-image: none;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto auto;
}
.boxRecSearch0301 .ul01 > li .boxBlandName .boxImg {
  width: 50%;
}
.boxRecSearch0301 .ul01 > li .boxBlandName .boxImg img {

}



}/* Sp */