@charset 'UTF-8';

/*
HEADER
================================================ */

header {
    background:rgba(128, 128, 128, 0.7);
}

header {
    /* padding: 1rem 0; */
    position: fixed;
    width: 100%;
    z-index: 10;
    height: 10vh;
}

header {
    background:rgba(128, 128, 128, 0);
}

/* ナビゲーションメニュー名 */
.main-nav li#nav-about {
    a:after {
        content:"WORKS";
        text-align: center;
    }
}

.main-nav li#nav-about:hover {
    a:after {
        content:"業務内容";
    }
}

.main-nav li#nav-zeb {
    a:after {
        content:"ZEB";
    }
}

.main-nav li#nav-zeb:hover {
    a:after {
        content:"ZEB";
    }
}

.main-nav li#nav-products {
    a:after {
        content:"PRODUCTS";
    }
}

.main-nav li#nav-products:hover {
    a:after {
        content:"実績一覧";
    }
}

.main-nav li#nav-company {
    a:after {
        content:"COMPANY";
    }
}

.main-nav li#nav-company:hover {
    a:after {
        content:"会社情報";
    }
}

.main-nav li#nav-recruit {
    a:after {
        content:"RECRUIT";
    }
}

.main-nav li#nav-recruit:hover {
    a:after {
        content:"採用情報";
    }
}

.main-nav li#nav-contact {
    a:after {
        content:"CONTACT";
    }
}

.main-nav li#nav-contact:hover {
    a:after {
        content:"問い合わせ";
    }
}

.main-nav li#nav-news {
    a:after {
        content:"NEWS";
    }
}

.main-nav li#nav-news:hover {
    a:after {
        content:"NEWS";
    }
}

.headerLogo img {
    /* height: 10vh; */
    height: 6vh;
    padding-top:1vh;
    padding-left:1vw;
    background-size: cover;
    background-position: left;
}

header .wrapper {
    display: flex;
    justify-content: space-between;
    padding: 0;
}

header a {
    color: var(--white);
    height:min-content;
    font-size: 1rem;
}

#header {
    display: flex;
    justify-content: center;
    height:70vh;
}

.main-nav {
    width: 0;
    position: absolute;
    z-index: 2;
    top: 50px;
    right: 0;
    overflow: hidden;
    transition: .5s;
}
.main-nav li {
    text-align: center;
    margin: 2rem 0;
}
.main-nav a {
    display: block;
}
.main-nav.open-menu {
    width: 70%;
    background:rgba(128, 128, 128, 0.7);
}

/*
SP SIZE
*/
@media (max-width:767px) {

    .top-container {
        height: 100vh;
        width: 100%;
    }

    .headerLogo img {
        /* height: 10vh; */
        height: 6.5vh;
        padding-top:2vh;
        padding-left:2vw;
    }

    .btn-menu {
        position: relative;
        top: 10px;
        right: 20px;
        /* width: 50px;
        height: 50px; */
        width: 40px;
        height: 40px;
        border: 1px solid rgba(128, 128, 128, 0.5);
        background:#2F4535;
        opacity: 0.7;
        color: var(--white);
        border-radius: 5px;
        padding: .7rem 1rem;
        z-index:100;
    }
    
    .btn-menu span{
        display: inline-block;
        transition: all .4s;
        position: absolute;
        /* left: 14px; */
        left: 11px;
        height: 3px;
        border-radius: 5px;
        background: #fff;
        width: 45%;
      }
    
    .btn-menu span:nth-of-type(1) {
        /* top:15px; */
        top:11px;
    }
    
    .btn-menu span:nth-of-type(2) {
        /* top:23px; */
        top:18px;
    }
    
    .btn-menu span:nth-of-type(3) {
        /* top:31px; */
        top:25px;
    }
    
    .btn-menu.active span:nth-of-type(1) {
        /* top: 15px; */
        top:11px;
        /* left: 14px; */
        left:9px;
        transform: translateY(6px) rotate(-45deg);
        width: 60%;
    }
    
    .btn-menu.active span:nth-of-type(2) {
        opacity: 0;
    }
    
    .btn-menu.active span:nth-of-type(3){
        /* top: 30px; */
        top:25px;
        /* left: 14px; */
        left:9px;
        transform: translateY(-8px) rotate(45deg);
        width: 60%;
    }
}
/*
TABLET SIZE
================================================ */
@media (min-width: 800px) {
    /* Header */
    .btn-menu {
        display: none;
    }
    .main-nav {
        width: 80%;
        position: static;
        display: flex;
        justify-content: center;
        padding: 0rem 0.8rem 0rem 0.8rem;
        /* position: relative; */
        /* transform: translate(-50%, -50%); */
    }

    .main-nav li {
        /* margin: 0.5rem 0.5rem 0.5rem 0.5rem; */
        margin:0;
        position: relative;
        /* text-align: center; */
        font-size: .8rem;
        width: 14vw;
        color:var(--white);
    }

    .main-nav li:hover {
        background-color: #2F4535;
        a {
            color: #AFECB0;
        }
    }

    .main-nav li>a {
        /* margin:0 auto; */
        position: absolute;
        padding: 0;
        text-align: center;
        top:50%;
        left:50%;
        line-height: 100%;
        transform: translate(-50%, -50%);
    }

    #header {
        position: fixed;
        width: 100%;
        z-index: 10;
        /* height: 10vh; */
        height: 7vh;
        /* padding-left:10vw; */
        opacity: 0;
        transform: translateY(-100px);
        overflow: hidden;
    }
    
    #header {
        background:rgba(128, 128, 128, 0.7);
    }

    headerLogo a {
        height: 5vh;
    }

    #header.UpMove{
        animation: UpAnime .5s forwards;
    }
    
    @keyframes UpAnime{
      from {
        opacity: 1;
        transform: translateY(0);
      }
      to {
        opacity: 0;
        transform: translateY(-100px);
      }
    }
    
    #header.DownMove{
        animation: DownAnime 0.5s forwards;
    }
    @keyframes DownAnime{
      from {
        opacity: 0;
        transform: translateY(-100px);
      }
      to {
          opacity: 1;
        transform: translateY(0);
      }
    }
    
    #header-btn{
        position: fixed;
        top: .5rem;
        right: 3rem;
        z-index: 20;
    }

    .btn-menu span {
        height: 0px;
    }
    
    .openbtn{
        position: relative;
        background:#2F4535;
        opacity: 0.7;
        cursor: pointer;
        /*
        width: 50px;
        height:50px;
        */
        width: 40px;
        height:40px;
        border-radius: 5px;
    }
    
    /*ボタン内側*/
    .openbtn span{
        display: inline-block;
        transition: all .4s;
        position: absolute;
        /* left: 14px; */
        left: 11px;
        height: 3px;
        border-radius: 2px;
        background: #fff;
        width: 45%;
      }
    
    
    .openbtn span:nth-of-type(1) {
        /* top:15px; */
        top:11px;
    }
    
    .openbtn span:nth-of-type(2) {
        /* top:23px; */
        top:18px;
        height:3.2px;
    }
    
    .openbtn span:nth-of-type(3) {
        /* top:31px; */
        top:25px;
    }
    
    .openbtn.active span:nth-of-type(1) ,
    .openbtn.active span:nth-of-type(3){
        /* top: 23px; */
        top: 18px;
    }
}

@media (min-width: 1200px) {
    .btn-menu {
        display: none;
    }
    .btn-menu span {
        height: 0px;
    }
    .main-nav li {
        font-size:1rem;
        width: 12vw;
    }
}

@media (min-width: 1600px) {
    .btn-menu {
        display: none;
    }
    .btn-menu span {
        height: 0px;
    }
    .btn-menu span {
        display: none;
    }
    .main-nav li {
        font-size:1.2rem;
        width: 10vw;
    }
}
