@charset "UTF-8";
/*============================================================================================
      Header
=============================================================================================*/
.w_Header{
  width: 100%;
  height: 84px;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #fff;
  z-index: 100;
}
.w_Header.js_show{
  box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.2);
}
.Header{
  width: 100%;
  padding: 0 30px;
}
.Head_logo{
  width: 160px;
}
.Head_btn{
  width: 334px;
  height: 45px;
  color: #fff;
	background-color: #DE0023;
  border-color: #DE0023;
}
.Head_btn:hover{
	background-color: #fff;
	color: #DE0023;
}
.Head_btn a{
  padding: 0 20px 0 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.Head_btn::after{
	background-image: url(../img/ic_tab_wh.png);
}
.Head_btn:hover::after{
	background-image: url(../img/ic_tab_red.png);
}
@media (max-width: 768px){
  .w_Header{
    position: static;
  }
  .Header{
    padding: 0;
  }
  .Head_btn{
    width: 100%;
    height: 70px;
    position: fixed;
    left: 0;
    bottom: 0;
    border-radius: 0;
    z-index: 1000;
  }
}
@media (max-width: 576px){
  .w_Header{
    height: 22.4vw;
  }
  .Head_logo{
    width: 42.6vw;
  }
  .Head_btn{
    height: 9.46vh;
    min-height: 70px;
  }
}

/*============================================================================================
      Contents
=============================================================================================*/
.w_Main{
  width: 100%;
  height: 67.5vw;
  max-height: 570px;
  position: relative;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.2);
}
.Main_grp {
  font-size: 5rem;
  height: 3em;
  margin: auto;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 10;
}
.Main_ttl,
.Main_txt{
  color: #fff;
  font-size: inherit;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  text-shadow: 0px 0px 8px rgba(0,0,0,0.5);
  letter-spacing: 0.2em;
}
.Main_txt{
  font-size: 3rem;
  margin-top: 0.5em;
}
.Main_mov{
  width: 100%;
  height: 100%;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  margin: auto;
  z-index: -1;
  object-fit: cover;
  object-position: center center;
}
.contents_btn_tyuto {
  color: #fff;
  background-color: #DE0023;
  border-color: #DE0023;
}
.contents_btn_tyuto:hover{
	background-color: #fff;
	color: #DE0023;
}
.contents_btn_tyuto::after{
	background-image: url(../img/ic_tab_wh.png);
}
.contents_btn_tyuto:hover::after{
	background-image: url(../img/ic_tab_red.png);
}

@media (max-width: 1200px){
  .Main_mov{
    width: auto;
    height: 120%;
  }
}
@media (max-width: 1010px){
  .w_Main{
    height: 56vw;
    max-height: 56vw;
  }
}
/*    デバイスが横向きの場合の記述
=====================================================*/
@media (orientation: landscape) and (max-width: 767px){
  .Main_mov{
    width: 110%;
    height: auto;
  }
}
@media (max-width: 576px){
  .w_Main{
    max-height: initial;
  }
  .Main_grp{
    font-size: 3.5rem;
    height: 5em;
  }
  .Main_txt{
    font-size: 2rem;
    margin-top: 1em;
  }
  .Main_scroll{
    color: #fff;
    font-size: 1.8rem;
    text-align: center;
    width: 5em;
    height: 3em;
    position: absolute;
    right: 0;
    left: 0;
    bottom: 6vw;
    margin: auto;
    z-index: 2;
    text-shadow: 0px 0px 8px rgba(0,0,0,0.5);
  }
  .Main_scroll_arrow::before{
    width: 8px;
    height: 8px;
    display: block;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
    transform-origin: bottom;
    right: 0;
    left: 0;
    bottom: -10px;
    right: 10px;
    margin: auto;
  }
  .Main_mov{
    width: auto;
    height: 102%;
    top: 50%;
  }
}

/*    Btn
=====================================================*/
.Btn_item{
  max-width: calc(50% - 15px);
  margin-right: 30px
}
.Btn_item:last-of-type{
  margin-right: 0;
}
.Btn_item_lg01,
.Btn_item_lg02{
  height: 84px;
}
.Btn_item_lg01{
  width: calc(25% - 15px);
  max-width: calc(25% - 15px);
}
.Btn_item_lg02{
  width: calc(50% - 15px);
  max-width: calc(50% - 15px);
}
.Btn_item_lg01 a,
.Btn_item_lg02 a{
  padding: 0 20px 0 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media (max-width: 992px){
  .Btn_item_lg01{
    width: calc(50% - 15px);
    max-width: calc(50% - 15px);
  }
  .Btn_item_lg02{
    /* width: 100%;
    max-width: 100%; */
    /* margin-top: 20px; */
  }
}
@media (max-width: 768px){}
@media (max-width: 576px){
  .Btn_item{
    max-width: 100%;
    margin: 0 auto  5.3vw;
  }
  .Btn_item:last-of-type{
    margin-bottom: 0;
  }
  .Btn_item_lg01,
  .Btn_item_lg02{
    width: 100%;
    max-width: 100%;
    height: auto;
  }
  .Btn_item_lg01 a,
  .Btn_item_lg02 a{
    padding: 20px 40px 18px 20px;
  }
}

/*    Recruit
=====================================================*/
.Rct{}
.Rct_box{
  padding: 50px 95px 80px;
  border: 4px solid #107E78;
  border-top-right-radius: 10px;
  border-top-left-radius: 10px;
}
.Rec_btn{
  width: 48.37%;
  text-align: left;
  margin-bottom: 20px;
}
.Rec_btn:nth-last-of-type(1),
.Rec_btn:nth-last-of-type(2){
  margin-bottom: 0;
}
.Rct_all{
  padding: 22px 0;
  background-color: #107E78;
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 10px;
}
.Rct_all_btn{
  color: #DE0023;
  margin: auto;
}
@media (max-width: 768px){
  .Rct_box{
    padding: 40px 30px;
  }
}
@media (max-width: 576px){
  .Rct{
    width: 100%;
    max-width: 100%;
  }
  .Rct_box{
    border: 4px solid #107E78;
    border-radius: 0;
    padding-top: 13.3vw;
    padding-bottom: 13.3vw;
    padding-right: calc(5.3vw - 4px);
    padding-left: calc(5.3vw - 4px);
  }
  .Rec_btn,
  .Rec_btn:nth-last-of-type(2){
    width: 100%;
    margin: 0 0 20px;
  }
  .Rct_all{
    border-radius: 0;
  }
  .Rct_all_btn{
    width: 89.4vw;
  }
}


/*    Truck
=====================================================*/
.Truck_img{
  width: 255px
}
.Truck_txt{
  width: calc(100% - 285px)
}
@media (max-width: 576px){
  .Truck_img{
    width: 100%;
    margin-bottom: 20px;
  }
  .Truck_txt{
    width: 100%;
  }
}

/*    Message
=====================================================*/
.w_Msg{
  padding: 100px 0;
  background: rgba(0, 0, 0, 0.8);
}
.Msg_txt{
  color: #fff;
  text-align: center;
}
@media (max-width: 768px){
  .w_Msg{
    padding: 30px 0;
  }
  .Msg_txt{
    text-align: left;
  }
}
/*============================================================================================
      Footer
=============================================================================================*/
.w_Footer{
  padding: 30px;
  background-color: #107E78;
}
.Footer{
  margin: 0 auto;
}
.Foot_logo{
  width: 255px;
  display: block;
}
.Foot_txt{
  color: #fff;
  font-size: 1.4rem;
}
.Foot_copy{
  color: #9CD1CE;
  font-size: 1.2rem;
  text-align: right;
}
@media (max-width: 1110px){
  .Footer{
    padding: 0 40px;
  }
}
@media (max-width: 768px){
  .Footer{
    padding: 0;
  }
  .Foot_logo{
    margin: 0 auto;
  }
  .Foot_txt{
    text-align: center;
  }
  .Foot_copy{
    text-align: center;
    margin-top: 2.5em;
  }
}