/*reset*/
* {margin: 0;padding: 0;box-sizing: border-box;}
a {text-decoration : none}
ul, ol {list-style : none}
img {vertical-align : middle;max-width:100%;}
h1, h2, h3, h4, h5, h6 {font-weight: normal;font-size: 1em;}
.grecaptcha-badge { visibility: hidden; }

/*common class*/
.bold {font-weight: bold;}
.fs14{font-size:14px;}
.small{font-size:0.8rem;}
.red{color:#c00;}

.tac {text-align: center !important;}
.tar {text-align: right !important;}
.tal {text-align: left !important;}
.fl {float: left;}
.fr {float: right;}
.mb12 {margin-bottom:12px !important;}
.mb25 {margin-bottom:25px !important;}
.mb50 {margin-bottom:50px !important;}
.mb100{margin-bottom:100px !important;}
.mb200{margin-bottom:200px !important;}

.serif{
font-family: hiragino-mincho-pron,"游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}


.cb{clear:both;}
.pr{position:relative;}
.w100p{width:100%;}
.w960{max-width:960px;}
.w640{max-width:640px;}
.bc{margin-left:auto; margin-right:auto;}

.pc_show{display:block;}
.sp_show{display:none;}

.cf:after {
    content:" ";
    display:block;
    clear:both;
}

.flex{
display:flex;
justify-content: space-between;
}
.flex_rev{
display:flex;
flex-direction: row-reverse;
justify-content: space-between;
}
.col2{
width:48%;
}
.col3{
width:30%;
}


/*tag*/
html {
font-family: hiragino-mincho-pron,"游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
font-size : 16px;
line-height : 1.6;
letter-spacing: 0.1em;
color: #000;
height:100%;
scroll-behavior: smooth;
}
body{
height:100%;
background:url("images/body_bg.png") #eee;
}

article{
max-width:900px;
margin:0px auto;
padding:50px 20px 50px 20px;
background:#fff;
}
section{
margin-bottom:100px;
text-align:center;
}
article p{
margin-bottom:1em;
}
ol{
margin-left:2em;
list-style: decimal;
}

/*contents*/
header{
display:flex;
justify-content: center;
align-items: center;
height:100%;
width:100%;
background:url("images/home_bg.jpg") center center no-repeat;
background-size: cover;
}
.header .wrap{
position:relative;
width:100%;
}
.home_logo{
margin-bottom:50px;
text-align:center;
}
h1{
color:#2e3192;
font-size:36px;
text-align:center;
letter-spacing: 0.2em;
}

h3{
text-align:center;
color:#2e3092;
font-size:24px;
margin-bottom:25px;
}
h4{
font-size:18px;
text-decoration: underline;
margin-bottom:0.5em;
}
.greeting{
font-size:1.3rem;
line-height:2;
}
.description{
display:inline-block;
text-align:left;
font-size:18px;
}
.recruit{
display:inline-block;
border:2px solid #c00;
background:#fee;
font-size:18px;
font-weight:bold;
padding:10px 20px;
text-align:center;
}
.vehicle{
display:grid;
grid-template-columns: 300px 300px;
justify-content: center;
gap:25px;
}
.vehicle li{
text-align:center;
}
table{
border:none;
border-collapse: collapse
}
td{
vertical-align:top;
padding:0px 10px 0px 0px;
}

footer{
font-family: "Helvetica Neue", "Helvetica", Arial, sans-serif;
text-align:center;
font-size:12px;
padding-bottom:25px;
}

/*scroll*/
.scroll {
  position: absolute;
  text-align:center;
  bottom:20px;
  width:50px;
  margin:0 auto;
  left:0;
  right:0;
}

.chevron {
  position: absolute;
  width: 50px;
  height: 4px;
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5);
  animation: move 3s ease-out infinite;
}

.chevron:first-child {
  animation: move 3s ease-out 1s infinite;
}

.chevron:nth-child(2) {
  animation: move 3s ease-out 2s infinite;
}

.chevron:before,
.chevron:after {
  content: ' ';
  position: absolute;
  top: 0;
  height: 100%;
  width: 51%;
  background: #2e3192;
}

.chevron:before {
  left: 0;
  transform: skew(0deg, 40deg);
}

.chevron:after {
  right: 0;
  width: 50%;
  transform: skew(0deg, -40deg);
}

@keyframes move {
  25% {
    opacity: 1;

  }
  33% {
    opacity: 1;
    transform: translateY(30px);
  }
  67% {
    opacity: 1;
    transform: translateY(40px);
  }
  100% {
    opacity: 0;
    transform: translateY(55px) scale3d(0.5, 0.5, 0.5);
  }
}

.scroll p {
  display: block;
  margin-top: 0px;
  padding-top:60px;
  font-family: "Helvetica Neue", "Helvetica", Arial, sans-serif;
  font-size: 15px;
  color: #2e3192;
  text-align:center;
}

@keyframes pulse {
  to {
    opacity: 1;
  }
}

@media screen and (max-width : 900px) {


}


@media screen and (max-width : 640px) {

/*common*/
.fs12{font-size:10px !important;}
.fs14{font-size:12px !important;}
.fs16{font-size:14px !important;}
.fs18{font-size:16px !important;}
.fs21{font-size:18px !important;}
.fs24{font-size:21px !important;}
.fs30{font-size:27px !important;}
.fs36{font-size:32px !important;}
.fs48{font-size:42px !important;}

.pc_show{display:none;}
.sp_show{display:block;}
.flex,.flex_rev{display:block;}
.col2,.col3{width:100%;margin-bottom:50px;}
.col2:last-child, .col3:last-child{margin-bottom:0px;}


/*tag*/
html{font-size:14px;}
section{margin-bottom:50px;}
/*contents*/
.home_logo{
width:60%;
margin:0 auto 50px auto;
}
h1{font-size:24px;}
h3{font-size:18px;}
td{
vertical-align:top;
padding:0px 5px 0px 0px;
}

.description{font-size:16px;}
.greeting{
font-size:1.3rem;
line-height:2;
}
.recruit{
font-size:14px;
}
.vehicle{
grid-template-columns: 300px;
}
footer{font-size:9px;}

}