body{
    color: #444;
    animation-name: fade;
    animation-duration: 3s; 
}

@keyframes fade{
    0%{
      opacity: 0;
    }
    100%{
      opacity: 1;
    }
}

/*-------------header---------------------------------------------*/

header{
    width: 100%;
    height: 70px;
    position: fixed;
    font-family: Helvetica;
    display:flex;
    line-height: 70px;
    background-color: #fff;
}

.sitetitle a{
    display:flex;
    text-decoration: none;
    color: #444;
}   

header h1{
    margin-left:20px;
    font-size: 20px;
    font-weight: bold;
}

header h2{
    margin-left:20px;
    font-size: 14px;
    letter-spacing: 0.05em;
    font-weight: lighter;
}

nav{
    margin-left:auto;
    margin-right:20px;
}

nav li{
    font-size: 14px;

    letter-spacing: 0.05em;
    font-weight: lighter;
    display:inline-block;
    margin: 0 20px;
}

nav li a{
    text-decoration: none;
    color: #444;
}


@media screen and (max-width: 1024px){
    .sitetitle a{
        display:inline;
    } 

    header h1{
        margin-top:20px;
        margin-left:20px;
        font-size: 15px;
        font-weight: bold;
        line-height: 20px;
    }
    
    header h2{
        margin-left:20px;
        font-size: 11px;
        font-weight: lighter;
        line-height: 20px;
    }
}

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

    .hamburger {
        display : block;
        position: absolute;
        z-index : 3;
        right : 20px;
        top   : 15px;
        width : 42px;
        height: 42px;
        cursor: pointer;
        text-align: center;
        -webkit-transition: 0.5s all;
        -moz-transition   : 0.5s all;
        transition        : 0.5s all;
    }

    .hamburger span {
        display : block;
        position: absolute;
        height : 1px;
        right : 0px;
        background : #000;
        text-align: right;
    }
    
    .hamburger span:nth-child(1) {
        top: 10px;
        width: 30px;
    }
    .hamburger span:nth-child(2) {
        top: 20px;
        width: 20px;
    }
    .hamburger span:nth-child(3) {
        top: 30px;
        width: 10px;
    }

    /* ナビ開いてる時のボタン */
    .hamburger.active{
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
    .hamburger.active span:nth-child(1) {
        top : 16px;
        left: 6px;
        -webkit-transform: rotate(-45deg);
        -moz-transform   : rotate(-45deg);
        transform        : rotate(-45deg);
    }
    .hamburger.active span:nth-child(2) {
        top: 16px;
        width: 30px;
        -webkit-transform: rotate(45deg);
        -moz-transform   : rotate(45deg);
        transform        : rotate(45deg);
    }
    .hamburger.active span:nth-child(3) {
        opacity: 0;
    }

    nav{
        position: fixed;
        text-align: center;
        top  : 0;
        left : 0;
        color: #000;
        background: #fff;
        transform: translateX(100%);
        transition: all 0.6s;
        width: 100%;
        height: 100%;
    }
    
    nav ul{
        margin-top: 30px;
        padding: 0;
        width: 100%;
    }
      
    nav ul li {
        list-style-type: none;
        padding: 0;
        margin: 0;
        width: 100%;
    }

    nav ul li:last-child {
        padding-bottom: 0;
        border-bottom: none;
    
    }
      
    nav ul li a {
        display: block;
        color: #000;
        padding: 1em 0;
        text-decoration :none;
    }
      
      /* このクラスを、jQueryで付与・削除する */
    nav.active {
        transform: translateX(0%);
        transition: all 0.6s;
    }
}
/*-------------fotter---------------------------------------------*/

footer{
    width: 100%;
    height: 70px;
    background-color: #fff;
    text-align: center;
    font-size: 11px;
    font-family: Helvetica;
    font-weight: lighter;
}