/*
recruit-common
*/
.recruit h1 {
  background:url("/corporate/recruit/global-style/images/index_mv_01.jpg") center top no-repeat;
  background-size: cover;
}

@media only screen and (max-width: 767px) {
  .recruit::before {
    background:url("/corporate/recruit/global-style/images/index_mv_01.jpg") center top no-repeat;
    background-size: cover;
  }
  .recruit h1 {
	background: none;
  }
}

.recruit .write01 {
  margin-top: 50px;
  margin-bottom: 50px;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .recruit .write01 {
    margin-top: 20px;
    margin-bottom: 25px;
    font-size: 1.2rem;
  }
}

.recruit h2 {
  margin-bottom: 20px;
  font-size: 2.61rem;
  font-style: italic;
  letter-spacing: 0.15em;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .recruit h2 {
    font-size: 1.6rem;
  }
}

.recruit .imgBox {
  margin-right: auto;
  margin-bottom: 20px;
  margin-left: auto;
  width: 716px;
}

@media only screen and (max-width: 767px) {
  .recruit .imgBox {
    width: 92%;
  }
}

@media only screen and (max-width: 767px) {
  .recruit .imgBox img {
    width: 100%;
  }
}

.recruit .write02 {
  margin-bottom: 20px;
  font-size: 1.5rem;
  letter-spacing: 0.11em;
  line-height: 1.8;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .recruit .write02 {
    padding-right: 4%;
    padding-left: 4%;
    font-size: 1.2rem;
  }
}

.btn01-recruit {
  position: fixed;
  top: 50%;
  margin-top: -80px;
  right: 0;
  display: inline-block;
  text-align: center;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  z-index: 99;
}

@media only screen and (max-width: 767px) {
  .btn01-recruit {
    top: auto;
    bottom: 0;
    width: 100%;
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
  }
}

.btn01-recruit a {
  display: block;
  padding-top: 15px;
  padding-right: 15px;
  padding-bottom: 20px;
  padding-left: 15px;
  background: #de6e00;
  color: #fff;
}

@media only screen and (max-width: 767px) {
  .btn01-recruit a {
    padding-top: 13px;
    padding-right: 0;
    padding-bottom: 13px;
    padding-left: 0;
    line-height: 1.8;
  }
}

.btn01-recruit a::before {
  content: '';
  display: inline-block;
  margin-bottom: 20px;
  padding-top: 24px;
  width: 26px;
  height: 0;
  background:url("/corporate/recruit/global-style/interview/images/staff_ico_arrow_03.png") left top no-repeat;
}

@media only screen and (max-width: 767px) {
  .btn01-recruit a::before {
    margin-right: 15px;
    margin-bottom: 0;
    vertical-align: top;
  }
}

.btn01-recruit .year{
  color: #fff;
  font-size: 1.2rem;
}
.btn01-recruit a .tatenaka{
  color: #fff;
  transform: rotate(-90deg);
  display: inline-block;
}
@media only screen and (max-width: 767px) {
.btn01-recruit a .tatenaka{
  transform: none;
}
}

.bnrListBox{
	background-color: #fff;
	position: relative;
	z-index: 1;
}

.bnrList {
  display: table;
  margin-right: auto;
  margin-bottom: 95px;
  margin-left: auto;
  width: 1050px;
}

@media only screen and (max-width: 767px) {
  .bnrList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 0px;
    width: 100%;
  }
}

.bnrList li {
  position: relative;
  display: table-cell;
  padding-right: 6px;
  padding-left: 6px;
  z-index: 1;
}

@media only screen and (max-width: 767px) {
  .bnrList li {
    display: block;
    margin-right: auto;
    margin-bottom: 20px;
    margin-left: auto;
    width: 50%;
    padding: 0 10px;
  }
}

.bnrList a {
  display: block;
}

.bnrList a:hover {
  opacity: 0.7;
}

.bnrList .txtBox {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 10;
}

.bnrList .txtBox span {
  display: block;
  text-align: center;
  color: #fff;
}

.bnrList .txtBox .txt01 {
  margin-bottom: 5px;
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  font-style: italic;
}

.bnrList .txtBox .txt02 {
  font-size: 1.17rem;
  letter-spacing: 0.18em;
}

@media only screen and (max-width: 767px) {
  .bnrList img {
    width: 100%;
  }
}

.contBottom {
  position: relative;
  padding-top: 45px;
  padding-bottom: 60px;
  background: #efeded;
}

@media only screen and (max-width: 767px) {
.contBottom {
  padding: 30px 0;
}
}


.contBottom .secIn {
  position: relative;
  margin-right: auto;
  margin-left: auto;
  width: 1036px;
  z-index: 2;
}

@media only screen and (max-width: 767px) {
  .contBottom .secIn {
    width: 100%;
  }
}

.contBottom h3 {
  margin-bottom: 25px;
}

.contBottom h3 span {
  display: block;
  text-align: center;
}

.contBottom h3 .txt01 {
  margin-bottom: 10px;
  font-size: 2.8rem;
  font-style: italic;
  letter-spacing: 0.15rem;
}

@media only screen and (max-width: 767px) {
  .contBottom h3 .txt01 {
    font-size: 1.5rem;
    letter-spacing: 0.15em;
  }
}

.contBottom h3 .txt02 {
  font-size: 1.5rem;
  letter-spacing: 0.08em;
}

@media only screen and (max-width: 767px) {
  .contBottom h3 .txt02 {
    font-size: 0.95rem;
    letter-spacing: 0.08em;
  }
}

.contBottom ul {
  text-align: center;
}

.contBottom li {
  position: relative;
  display: inline-block;
  margin-right: 15px;
  margin-left: 15px;
  width: 400px;
  background: #fff;
}

@media only screen and (max-width: 767px) {
  .contBottom ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    max-width: 300px;
    margin: 0 auto;
    justify-content: space-between;
  }
  .contBottom li {
    width: 140px;
    margin: 0;
  }
}

.contBottom li a {
  display: block;
  padding-top: 38px;
  padding-bottom: 38px;
  text-align: center;
  border: 2px solid #fff;
    transition: all 0.3s;
}

@media only screen and (max-width: 767px) {
  .contBottom li a {
    padding-top: 58px;
    padding-bottom: 18px;
  }
}

.contBottom li a:hover {
  border: 2px solid #2e1813;
}

.contBottom li.item01 a::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  display: block;
  margin-left: 40px;
  padding-top: 44px;
  width: 36px;
  height: 0;
  background:url("/corporate/recruit/images/index_ico_01.png") left center no-repeat;
  background-size: contain;
}

@media only screen and (max-width: 767px) {
  .contBottom li.item01 a::before {
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    margin-top: 20px;
    margin-left: 0;
    padding-top: 28px;
    width: 23px;
  }
}

.contBottom li.item02 a::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  display: block;
  margin-left: 40px;
  padding-top: 38px;
  width: 38px;
  height: 0;
  background:url("/corporate/recruit/images/index_ico_02.png") left center no-repeat #fff;
  background-size: contain;
}

@media only screen and (max-width: 767px) {
  .contBottom li.item02 a::before {
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    margin-top: 20px;
    margin-left: 0;
    padding-top: 27px;
    width: 27px;
    height: 0;
  }
}

.contBottom li .txt01 {
  margin-right: 20px;
  font-size: 1.9rem;
  letter-spacing: 0.26em;
}

@media only screen and (max-width: 767px) {
  .contBottom li .txt01 {
    margin-right: 0;
    font-size: 1.35rem;
    text-align: center;
  }
}

.contBottom li .txt02 {
  font-size: 1.4rem;
  font-style: italic;
  letter-spacing: 0.14em;
}

.contBottom #intern-banner{
	text-align: center;
	padding-top: 45px;
}

@media only screen and (max-width: 767px) {
  .contBottom #intern-banner{
	max-width: 300px;
	margin: 0 auto;
	padding-top: 20px;
  }
}
