/* body */

body{
    margin: 0%;
    padding: 0%;
    box-sizing: border-box;
}

/* 固定要素 */

.site_header{
    position: fixed;
    top: 0%;
    left: 0%;
    width: 30%;
    height: 100vh;
    background-color: #070707;
}

.site_header ul{
    list-style: none;
    padding: 0;
}

.site_header li{
    margin: 10%,0%;
    padding: 1% 0%;
}

.site_header a{
    text-decoration: none;
    color: #f8f8f8;
}

.site_header a:hover{
    text-decoration: underline;
    color: #f8f8f8;
}

.site_header img{
    width: 4%;
    padding: 1% 0%;
}

.site_header_nav{
    height: 100vh;
    display: flex;
    align-items: center;
    text-align: center;
}

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

    .site_header{
        position: fixed;
        width: 100%;
        height: 8%;
        background-color: #070707;
    }
    
    .site_header ul{
        list-style: none;
        padding-left: 8%;
        padding-top: 14%;
        display: flex;
        justify-content: center;
    }
    
    .site_header li{
        padding: 0% 3%;
    }
    
    .site_header a{
        text-decoration: none;
        font-size: 3rem;
        font-weight: 300;
        color: #f8f8f8;
    }
    
    .site_header a:hover{
        text-decoration: underline;
        color: #f8f8f8;
    }

    .header_img{
        max-width: 100%;
        display: none;
    }
    
    .site_header img{
        width: 4%;
    }
    
    .site_header_nav{
        width: 100%;
        height: 8%;
        display: flex;
        align-items: center;
        text-align: center;
    }
}

/* FOOTER */

footer{
    text-align: center;
    color: #707070;
}

/* メイン要素 */

main{
    margin-left: calc(30% + 10%);
}

@media screen and (max-width:844px) {
    main{
        margin: 20% 0%;
        margin-right: 7.5%;
    }
}

/* TOP */

.top{
    margin-left: 7.5%;
    margin-top: 20%;
}

.top h1{
    font-size: 2.5rem;
    font-weight: 300;
}

.post p{
    color: #707070;
    font-size: 1rem;
    margin: 0.5% 0%;
    font-weight: 200;
}

.top_about p{
    color: #f8f8f8;
    font-size: 1.5rem;
    font-weight: 200;
}

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

    .top{
        margin-left: 7.5%;
        margin-top: 20%;
    }
    
    .top h1{
        font-size: 5rem;
        font-weight: 300;
    }
    
    .post p{
        color: #707070;
        font-size: 2rem;
        margin: 2% 0%;
        font-weight: 200;
    }
    
    .top_about p{
        color: #f8f8f8;
        font-size: 3rem;
        font-weight: 200;
        line-height: 1.5;
    }
}

/* CONTACT */

.contact{
    margin-left: 7.5%;
    margin-top: 10%;
}

.contact h1{
    font-size: 2.5rem;
    font-weight: 300;
    margin-bottom: 1%;
    line-height: 1.5;
}

.contact p{
    color: #f8f8f8;
    font-size: 1.5rem;
    font-weight: 200;
}

.contact a{
    text-decoration: none;
    color: #f8f8f8;
    font-size: 1.5rem;
    font-weight: 200;
}

.contact a:hover{
    text-decoration: underline;
    color: #f8f8f8;
}

@media screen and (max-width:844px) {
    .contact{
        margin-left: 7.5%;
        margin-top: 10%;
    }
    
    .contact h1{
        font-size: 4rem;
        font-weight: 300;
        margin-bottom: 1%;
    }
    
    .contact p{
        color: #f8f8f8;
        font-size: 3rem;
        font-weight: 200;
        line-height: 1.5;
    }

    .contact a{
        text-decoration: none;
        color: #f8f8f8;
        font-size: 3rem;
        font-weight: 200;
    }

    .contact a:hover{
        text-decoration: underline;
        color: #f8f8f8;
    }
}

/* WORKS */

.works{
    margin-top: 10%;
}

.works h1{
    margin-left: 7.5%;
    font-size: 2.5rem;
    font-weight: 300;
    padding-bottom: 5%;
}

.works_article{
    display: flex;
    justify-content: center;
    gap: 5%;
}

.works img{
    width: 100%;
}

.works_1{
    width: 40%;
}

.works_2{
    width: 40%;
}

.works h2{
    font-size: 1.5rem;
    font-weight: 200;
    color: #f8f8f8;
}

.works p{
    font-size: 1.5rem;
    font-weight: 200;
    color: #f8f8f8;
}

.works a{
    font-size: 1.5rem;
    font-weight: 200;
    color: #f8f8f8;
}

.works_link{
    margin: 3% 0%;
}

@media screen and (max-width:844px) {
    .works{
        margin-top: 10%;
    }
    
    .works h1{
        margin-left: 7.5%;
        font-size: 4rem;
        font-weight: 300;
        padding-bottom: 5%;
    }
    
    .works_article{
        display: block;
        justify-content: unset;
        gap: 5%;
        padding-left: 7.5%;
    }
    
    .works img{
        width: 100%;
    }
    
    .works_1{
        width: 70%;
        padding-bottom: 8%;
    }
    
    .works_2{
        width: 70%;
        padding-bottom: 8%;
    }
    
    .works h2{
        font-size: 3rem;
        font-weight: 200;
        color: #f8f8f8;
        line-height: 1.5;
    }
    
    .works p{
        font-size: 3rem;
        font-weight: 200;
        color: #f8f8f8;
        line-height: 1.5;
    }
    
    .works a{
        font-size: 3rem;
        font-weight: 200;
        color: #f8f8f8;
        line-height: 1.5;
    }
    
    .works_link{
        margin: 3% 0%;
    }
}

/* STUDY */

.study{
    margin: 10% 0%;
}

.study h1{
    margin-left: 7.5%;
    font-size: 2.5rem;
    font-weight: 300;
    padding-bottom: 5%;
}

.study_article{
    display: flex;
    justify-content: center;
    gap: 5%;
}

.study img{
    width: 100%;
}

.study_1{
    width: 40%;
}

.study_2{
    width: 40%;
}

.study p{
    font-size: 1.5rem;
    font-weight: 200;
    color: #f8f8f8;
}

@media screen and (max-width:844px) {
    .study{
        margin: 10% 0%;
    }
    
    .study h1{
        margin-left: 7.5%;
        font-size: 4rem;
        font-weight: 300;
        padding-bottom: 5%;
    }
    
    .study_article{
        display: block;
        justify-content: unset;
        gap: 5%;
        padding-left: 7.5%;
    }
    
    .study img{
        width: 100%;
    }
    
    .study_1{
        width: 70%;
        padding-bottom: 8%;
    }
    
    .study_2{
        width: 70%;
        padding-bottom: 8%;
    }

    .study p{
        font-size: 3rem;
        font-weight: 200;
        color: #f8f8f8;
        padding: 4% 0;
    }
}