@charset "utf-8";
html{
    scroll-behavior: smooth;
}
body{
    width:100vw;
    background-color: #777777;
}

.notosansjp {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;
}

.museomoderno {
    font-family: "MuseoModerno", sans-serif;
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;
}

.fontWeightBold{
    font-weight: bold;
}

h1,h2,h3{
    text-align: center;
    margin-top: 0;
    margin-bottom: 0;
}

p{
    text-align: center;
    margin-bottom: 0;
    font-size: 1rem;
}

ul{
    text-align: center;
    margin-bottom: 0;
    padding-left: 0;
}

li{
    list-style: none;
    font-size: 2rem;
}

a{
    text-decoration: none;
    margin-bottom: 0;
}
.fontColor1{
    color:#FFAC58;
}
.fontColor2{
    color:#FFDDB4;
}
.fontColor3{
    color:#F1F1F1;
}
.fontColor4{
    color:#BFBFBF;
}

.backGroundColor1{
    background-color:#FFAC58;
}
.backGroundColor2{
    background-color:#FFDDB4;
}
.backGroundColor3{
    background-color:#F1F1F1;
}
.backGroundColor4{
    background-color:#BFBFBF;
}

header{
    width:100vw;
    height:100vh;
    padding-top: 3rem;
    position:relative;
}

header h1{
    background-color: #F1F1F1;
    width: 85%;
    font-size: 5rem;
    position:absolute;
    top:2rem;
    left:2rem;
}

header p{
    position:absolute;
    bottom:2rem;
    left:2rem;
    font-size: 7rem;
    font-weight: bold;
    line-height:1.0;
}
section{
    position:relative;
    width:100vw;
    height:100vh;
    padding:3rem;
}
#works h2{
    padding-top: 2vh;
    padding-bottom: 2vh;
    font-size: 3rem;
    font-weight: bold;
}
#about h2,#about h3{
    padding-top:2vh;
    padding-bottom: 2vh;
    font-size: 3rem;
    font-weight: bold;
}

#about a{
    color: #FFDDB4;
    text-decoration: underline;
}
#about p{
    font-size: 1.2rem;
    line-height: 2.0;
    letter-spacing: 0.2rem;
    text-align: left;
}
footer{
    width: 100vw;
}
footer p{
    padding-top:3vh;
    padding-bottom:4vh;
}

footer p small{
    font-size: 0.5rem;
}

/*矢印が回転するアニメーション*/
.linkTop{
    position:fixed;
    bottom: 4vh;
    right: 4vh;
    z-index: 100;
    width: 1.5rem;
    height: 1.5rem;
    animation:rotationX 3s linear infinite;
    visibility:hidden;
}
@keyframes rotationX{
    0%{transform: rotateX(0);}
    100%{transform: rotateX(360deg);}
}
.linkTopVisible{
    visibility:visible;
}

#linkWorks{
    margin:0 auto;
    width:85%;
}

.listItem{
    margin:8vh auto;
    border: #FFAC58 4px double;
    border-radius: 1rem;
    color: #FFAC58;
    opacity: 0;
    visibility:hidden;
    transition:all 2s;
    transform:translateY(150px);
}

.visibleItem{
    translation:4s all;
    opacity:1;
    visibility: visible;
    transform:translateY(0);
}
#linkWorks li a{
    margin:auto;
    display: block;
    width: 80%;
    height: 4rem;
}
/*レスポンシブ対応*/
@media screen and (min-width: 600px) {
    header{
        height: 100vh;
    }
    header h1{
        text-align: center;
        width:calc(100%/10*5);
    }
    header p{
        text-align:right;
        bottom:0;
        right:2rem;
    }
    .onlySP{
        display: none;
    }
    .flexBox,#linkWorks{
        width:100%;
        display:flex;
        justify-content: space-between;
    }
    .box{
        width:45%;
    }
    #linkWorks a{
        width:30%;
    }
}
