@charset "UTF-8";
/* CSS Document */

.container .btn a{
    
}
#mainimage{/*
    background-image: url("../index/mainimage.jpg");
    background-position: 50%;
    background-size: cover;*/
    color: #fff;
    position: relative;
    width: 100%;
    height: calc(100vh - 7em);
    overflow: hidden;
}
#mainimage video {
  position: absolute;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
left:50%;
top:50%;
-ms-transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
  z-index: -1;
}
#mainimage .filter{
  position: absolute;
  top: 0;
  left: 0;
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  background: url("../index/background.png");
  z-index: 2;
  }
#mainimage h2{
    text-align: justify;
    line-height: 1.2;
    position: absolute;
    left: 5em; 
    bottom: 5vh;
  z-index: 3;
}
#mainimage h2 .year{
    font-size: 3.5rem;
    font-weight: 600;
}
#mainimage h2 .title{
    font-weight: 900;
    font-size: 7rem;
}
#mainimage h2 .title2{
    font-weight: 900;
    font-size: 7rem;
    display: inline-block;
}
#mainimage h2 .title .char3,#mainimage h2 .title .char5{
    font-size: 5rem;
}

#message{
    padding: 8em 0;
}
#message h2, .section h3{
    font-size: 3rem;
    line-height: 1.4;
    font-weight: 600;
    
}
#message .txt{
    text-align: justify;
    padding: 2.5em 20%;
}
#message .btn{
    text-align: right;
    padding-right: 20%;
}

.section{
    position: relative;
}
.section .container{
    justify-content: space-between;
}
.section .tate{
    position: absolute;
    left: 3em;
    top: 4em;
}
.section .tate p{
  writing-mode: vertical-rl;
}
.section .tate:after{
    content: "";
    display: block;
    height: 7em;
    width: 0.8em;
    border-right: 1px solid #bebebe;
    margin-top: 2em;
}
.section .txtbox{
    text-align: justify;
}
.section h2{
    font-size: 2rem;
    font-weight: 600;
    padding-bottom: 4em;
}
.section h3{}
.section .txt{
    padding: 3em 0 4em 0; 
}

#service{
    background-color: #e4f3f8;
    padding: 5em 0 5em 5em;
}
#service .txtbox{
    width: 40%;
}
#service .images{
    width: 53%;
    position: relative;
}
#service .images .img1{
    margin-right: -4em;
    padding-left: 16%;
}
#service .images .img2{
    width: 55%;
    position: absolute;
    bottom: 20%;
    left: 0;
}
#service .images .img3{
    width: 35%;
    margin: 3em 0 0 auto;
}

.imgline img{
    width: 33.333%;
}

#features{
    padding: 6em 0 7em 5em;
}
#features .txtbox{
    width: 40%;
}
#features .images{
    width: 53%;
    position: relative;
}


#recruit{
    background-color: #e4f3f8;
    padding: 5em 0 7em 5em;
}
#recruit .txtbox{
    width: 37%;
}
#recruit .images{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    width: 50%;
    background-image: url("../index/rexruit_img.jpg");
    background-repeat:no-repeat;
    background-position: 50%;
    background-size: cover;
}


@media only screen and (max-width: 768px) {
    
#mainimage{
    height: calc(100vh - 5em);
}
#mainimage h2{
    left: 1em;
    bottom: 5vh;
}
#mainimage h2 .year{
    font-size: 3rem;
}
#mainimage h2 .title{
    font-size: 5.5rem;
}
#mainimage h2 .title2{
    font-size: 5.5rem;
    display: block;
}
#mainimage h2 .title .char3,#mainimage h2 .title .char5{
    font-size: 3.5rem;
}

#message{
    padding: 6em 0;
}
#message h2, .section h3{
    font-size: 3rem;
    text-align: left;
    
}
#message .txt{
    padding: 2.5em 0;
}
#message .btn{
    padding-right: 0;
}

.section{
}
.section .container{
    display: block;
}
.section .tate{
    position: absolute;
    left: 0em;
    top: 4em;
}
.section .tate p{
}
.section .tate:after{
}
.section .txtbox{
    text-align: justify;
}
.section h2{
    font-size: 2rem;
    padding-bottom: 3.5em;
}
.section h3{}
.section .txt{
    padding: 2em 0 3em 0; 
}

#service{
    padding: 5em 0 5em 1.5em;
}
#service .txtbox{
    width: 100%;
}
#service .images{
    width: 100%;
    position: relative;
}
#service .images .img1{
    margin-right: -1.5em;
    padding: 3em 0 0 16%;
}
#service .images .img2{
    width: 55%;
    bottom: 20%;
    left: -2em;
}
#service .images .img3{
    width: 47%;
    margin: 2em 0 0 auto;
}

.imgline img{
}

#features{
    padding: 6em 0 7em 1.5em;
}
#features .txtbox{
    width: 100%;
}
#features .images{
    width: 100%;
    padding-top: 2em;
}


#recruit{
    padding: 5em 0 0 1.5em;
}
#recruit .txtbox{
    width: 100%;
    padding-bottom: 2em;
}
#recruit .images{
    position: relative;
    top: inherit;
    right: inherit;
    bottom: inherit;
    height: inherit;
    width: 109%;
    margin: 0 -2em;
}
    
}