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



.ttlBase01{
  position: absolute;
  top: 26.5vw;
  left: 50%;
  transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 70%;
  text-align: center;
}
.ttlBase01 .ttlEn,
.ttlBase01 .ttlJa{
  display: inline-block;
  width: 100%;
  line-height: 1.0;
}
.ttlBase01 .ttlJa .txtCatName{
  display: inline-block;
  padding-top: 1%;
  font-size: 1.1rem;
  font-size: 3.0vw;
}
.ttlBase01 .ttlEn{
  margin-bottom: 2%;
  letter-spacing: 0.08em;
  font-size: 3.3rem;
  font-size: 9.0vw;
  font-weight: normal;
}
.ttlBase01 .ttlJa{
  max-width: 100%;
  letter-spacing: 0.13em;
  font-size: 1.4rem;
  font-size: 4.0vw;
}

.ttlBase02{
  padding-bottom: 6%;
  margin-bottom: 10%;
  background-image: url('./../../images/company/company-border01.png');
  background-repeat: no-repeat;
  background-position: center bottom;
  text-align: center;
  line-height: 1.1;
  letter-spacing: 0.06em;
  font-size: 2.6rem;
  font-size: 10.0vw;
}
.ttlBase02.long{
  background-image: url('./../../images/recruit/recruit-s-border01.png');
}

.ttlBase03{
  margin-bottom: 10%;
  text-align: center;
  line-height: 1.7;
  letter-spacing: 0.1em;
  font-size: 1.6rem;
  font-size: 6.0vw;
}

.ttlBase04{
  margin-bottom: 5%;
  padding-bottom: 5%;
  line-height: 1.0;
  letter-spacing: 0.08em;/*0.1em*/
  font-size: 2.1rem;
  font-size: 7.0vw;/*7.5vw*/
}

.ttlBase05{
  display: block;
  margin: 0 auto;
  margin-bottom: 15%;
  padding-bottom: 0;
  background-image: url('./../../images/recruit/recruit-s-border01.png');
  background-repeat: no-repeat;
  background-position: center bottom;
  text-align: center;
}
.ttlBase05 .ttlEn{
  display: inline-block;
  padding-right: 0;
  line-height: 1.0;
  letter-spacing: 0.06em;
  vertical-align: middle;
  font-size: 2.6rem;
  font-size: 8.0vw;
}
.ttlBase05 .ttlJa{
  display: inline-block;
  width: 100%;
  margin-bottom: -20%;
  line-height: 1.0;
  letter-spacing: 0.1em;
  vertical-align: middle;
  font-size: 1.6rem;
  font-size: 5.0vw;
}

.ttlBase06{
  position: relative;
  height: 121px;
  margin-bottom: 40px;
  background-image: url('./../../images/interview/interview-s-ttl-bg01.png');
  background-repeat: no-repeat;
  background-position: left top;
}
.ttlBase06 .txtNum{
  position: absolute;
  bottom: 5px;
  left: 18px;
  font-size: 2.3rem;
}
.ttlBase06 .txtTtl{
  position: absolute;
  bottom: 15px;
  left: 83px;
  font-size: 2.3rem;
}

.ttlBase07{
  position: relative;
  margin-bottom: 7%;
  padding: 3.5% 0 3.8% 22%;
  letter-spacing: 0.1em;
  font-size: 1.7rem;
  font-size: 5.5vw;
  /* color: #fff; */
}
.ttlBase07 > .txtTtl{
  position: absolute;
  z-index: 2;
  top: 5vw;
  left: 3%;
  line-height: 1.1;
  letter-spacing: 0.1em;
  font-size: 0.85rem;
  font-size: 2.7vw;
}
.pageCareer .ttlBase07 > .txtTtl{
  top: 6.3vw;
  left: 6%;
  letter-spacing: normal;
  font-size: 0.8rem;
  font-size: 2.7vw;
}

.ttlBase07 > .txtTtl.line1{
  top: 8vw;
}
.ttlBase07 > .ttlIcn01{
  position: absolute;
  top: -3vw;
  left: 2%;
  width: 17%;
  /*mix-blend-mode: multiply;*/
}
.ttlBase08{
  margin-bottom: 7%;
  text-align: center;
  line-height: 1.0;
  letter-spacing: 0.05em;
  font-size: 1.35rem;
  font-size: 5.5vw;
  font-weight: bold;
}
.ttlBase08 span{
  display: inline-block;
  width: 100%;
  padding: 3% 0 3% 0;
}


.boxBaseCom{
  margin-bottom: 30px;
  line-height: 1.8;
  letter-spacing: 0.11em;
  font-size: 0.9rem;
  font-size: 4.0vw;
}
.boxBaseCom p{
  margin-bottom: 14px;
}
.boxBaseCom p:last-child{
  margin-bottom: 0;
}

.boxBaseSign{
  position: static;
  right: auto;
  bottom: auto;
  display: block;
  text-align: right;
}
.boxBaseSign .dlCompanyCEO dt{
  margin-bottom: 19px;
}
.boxBaseSign .imgCompanyCeoSign{
  width: 65%;
  max-width: 178px;
}

.ulBaseTop{
  overflow: hidden;
  width: 100%;
}
.ulBaseTopEntry{
  overflow: hidden;
  width: 100%;
}
.ulBaseTop.typeB{
  margin-bottom: 7%;
}
.ulBaseTop li{
  float: left;
  width: 48%;
  margin-right: 4%;
  margin-bottom: 10px;
  background-image: url('./../../images_sp/company/sp-company-icn-arrow01.png');
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 8%;
  line-height: 1.0;
  color: #fff;
}
.ulBaseTopEntry li{
  float: left;
  width: 48%;
  margin-right: 4%;
  margin-bottom: 10px;
  background-image: url('./../../images_sp/company/sp-company-icn-arrow01.png');
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 8%;
  line-height: 1.0;
  color: #fff;
}
.ulBaseTop.typeB li{
  margin-bottom: 3%;
}
.ulBaseTop li:nth-child(3n){
  margin-right: 4%;
}
.ulBaseTopEntry li:nth-child(3n){
  margin-right: 4%;
}
.ulBaseTop.typeB li:nth-child(3n){
  margin-right: 0;
}
.ulBaseTop.typeB li:nth-child(1),
.ulBaseTop.typeB li:nth-child(2),
.ulBaseTop.typeB li:nth-child(3),
.ulBaseTop.typeB li:nth-child(4),
.ulBaseTop.typeB li:nth-child(5){
  width: 100%;
  background-size: 5%;
}
.ulBaseTop li:nth-child(2n){
  margin-right: 0;
}
.ulBaseTopEntry li:nth-child(2n){
  margin-right: 0;
}
.ulBaseTop li a{
  display: inline-block;
  width: 100%;
  padding: 12px 0 12px 20px;
}
.ulBaseTopEntry li a{
  display: inline-block;
  width: 100%;
  padding: 12px 0 12px 20px;
}
.ulBaseTop.typeB li:nth-child(1) a,
.ulBaseTop.typeB li:nth-child(2) a,
.ulBaseTop.typeB li:nth-child(3) a,
.ulBaseTop.typeB li:nth-child(4) a,
.ulBaseTop.typeB li:nth-child(5) a{
  padding: 5% 20% 5% 20%;
}

.boxBaseTopWrap{
  position: static;
  height: auto;
  padding-top: 0;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
}
.boxBaseTop{
  position: relative;
  top: auto;
  left: auto;
  transform: none;
  -ms-transform: none;
  width: 100%;
  margin: 0 auto;
  padding-top: 100%;
}
.boxBaseTop .ttlBase01{
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  transform: none;
  -ms-transform: none;
  top: 25.5vw;/* 25vw*/
  width: 70%;
  min-height: auto;
  text-align: center;
}
.boxBaseTop .ttlBase01 .ttlEn{
  margin-bottom: 4%;
  font-style: normal;
}
.boxBaseTop .ttlBase01 .ttlJa{
  letter-spacing: normal;
  font-size: 1.4rem;
  font-size: 5.4vw;
}
.boxBaseTop .breadcrumb div{
  letter-spacing: 0.1em;
  color: #6f6f6f;
}
.boxBaseTop .breadcrumb a{
  color: #6f6f6f;
}
.boxBaseTop .boxBaseCom{
  position: static;
  top: auto;
  left: auto;
  margin-bottom: 0;
  padding: 5% 5%;
  font-size: 1.15rem;
  font-size: 4.0vw;
}
.boxBaseTop .ulBaseTop{
  position: static;
  top: auto;
  left: auto;
  padding: 5% 5%;
}
.boxBaseTop .ulBaseTopEntry{
  position: static;
  top: auto;
  left: auto;
  padding: 5% 5%;
}




}/* /Sp ****************/
