body,
html,
.section-container {
    margin: 0;
    width: 100%;
    font-family: "Noto Sans JP", serif;
}

@font-face {
    font-family: "neko";
    src:
      url("../fonts/nekoshippo_font.ttf") format("truetype");
}
  
.fixed{
    position: fixed;
}

.fixed{
    position: absolute;
}


section {
    display: block;
    position: relative;
    height: 100vh;
    width: 100vw;   
    overflow: hidden; 

}

.top-movie{
    filter:brightness(50%);
}

a[href="https://www.instagram.com/NEKO_TAIL_BM/"]{
    text-decoration: none;
    padding: 15px 20px;
    border-radius: 5px;
    background-color: rgb(234, 248, 253);
}

a[href="https://www.instagram.com/NEKO_TAIL_BM/"] span{
    display: inline-block;
    /* height: 30px; */
    padding-left: 5px;
    font-family: "Poppins", sans-serif;  
    font-weight: 500;  
    line-height: 30px;
}

a[href="https://www.instagram.com/NEKO_TAIL_BM/"] img{
    width: 30px;
    height: 30px;
    transform: translateY(7px);
}

.center{
    text-align: center;
}

.section-01-desc{           
    filter: blur(50px);
    /* margin-top: 70vh; */
    margin: 70vh auto 0 auto;
    text-align: center;
    font-family: 'nekoshippo', sans-serif !important;
}

.section-02-background-01{    
    filter: blur(10px);
}

.section-background {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}

.section-background img{
    position: absolute; 
}

.section-01-background-01{
    object-fit: contain;   
}

.section-content {
    position: absolute;
    top: 0px;
    left: 0px;
}

.batch-label{
    display: inline-block;
    padding: 4px 8px;
    border-radius: 3px;
    font-family: 'Poppin', sans-serif;
}

.bg-black{
    background: #030303;
}

.bg-blue{
    background: #0f2a32;
}

.font-blue{
    color: #2a3052;
}

.opacity-0{
    opacity: 0.0;
}

.bg-white{
    background: #f7f7f7;
}

.font-white{
    color: #f7f7f7;
}

.font-black{
    color: #030303;
}

.section-01-background{
    filter: blur(10px) grayscale(0.4);
}

.img-object-fit-cover{
    object-fit: cover;
}

.img-object-fit-contain{
    object-fit: contain;
}

.img-object-fit-fill{
    object-fit: fill;
}

.img-width-max{
    width: 100%;
}

.img-position-center{
    object-position: center;    
}

.auto-margin{
    margin: auto;
}

.img-height-max{
    height: 100%;
}

.section-space-01{
    position: relative;
}

.display-block{
    display: block;
}

.circle{
    object-fit: cover;
}

.ito-ito{
    width: 100%;   
    height: 100%;
    filter: brightness(30%);
    object-fit: cover;
    object-position: top;
    /* transform: translateY(-50%); */    
}

.section-space-01-grad{
    position: absolute;
    top:0;
    height: 40%;
    width: 100%;
    background: linear-gradient(white, transparent);
}

.section-02-grad{
    position: absolute;
    top:0;
    height: 90%;
    width: 100%;
    background: linear-gradient(white, transparent);
}


.spacer-h{
    height: 20px;
    width: 20px;
}

.section-space-01-white{
    position: absolute;
    top:0;
    height: 100%;
    width: 100%;
    background: white;
}

.section-03{   
    width: 100vw;
}

.font-neko{
    font-family: 'neko';
}

.section-03 .section-content{
    width: 100%;
    height: 100%;
    position: relative;
    margin: 0;
}

.section-03-image-01{
    width: 100%;
}

.top-movie{
    width: 100vw;
    height: 100vh;
    object-position: center;
    object-fit: cover;
}

h3{
    margin-top: 0;
    margin-bottom: 0;
}

@media screen and (max-width: 768px) {
    .section-content {
        margin: auto 20px;
        width: calc(100% - 40px);
    }

    .section-01-background-01{
        width: 300px;
        height: 300px;  
        bottom: -10px;
        right: 10px;
    }

    .section-03{   
        height: 490px;
    }

    .section-03 .section-content{
        margin: auto 20px;
        width: calc(100% - 40px);
    }

    .pc {
        display: none;
    }

    .sp-img-width-max{      
        width: 100%;          
    }

    .sp-img-height-max{
        height: 100%;    
    }

    .sp-img-max{
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .circle{
        width: 80px;
        height: 80px;
        border-radius: 40px;
    }

    .sp-flex{
        display: flex;
    }

    .sp-flex-child-2{
        width: 70%;
    }    

    .sp-margin-left-none{
        margin-left: 0 !important;
    }
}


@media screen and (min-width: 769px) and (max-width: 1024px) {
    .sp {
        display: none;
    }

    .section-content {
        margin: auto 20px;
        width: calc(100% - 40px);
    }

    .section-03 .section-content{
        margin: auto 20px;
        width: calc(100% - 40px);
    }

    .section-01-background-01{
        width: 100%;
        height: 100%;  
        top: 30vh;
        left: 10vw;
    }

    .pc-img-width-max{      
        width: 100%;             
    }

    .pc-center{
        margin-top: 20px;
        text-align: center;
    }

    .pc-img-height-max{
        height: 100%;  
    }

    .pc-80{
        width: 80%;
    }

    .pc-img-max{
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .pc-flex{
        display: flex;
    }

    .pc-flex-child-2{
        width: calc(50% - 20px);
        margin: 10px;
    }

    .circle{
        width: 300px;
        height: 300px;
        border-radius: 150px;
    }

}

@media screen and (min-width: 1025px) {
    .sp {
        display: none;
    }

    .section-content {
        margin: 50px 10%;
        width: 80%;
    }

    .section-01-background-01{
        width: 100vw;
        height: 100vw;  
        top: 0px;
        left: 0px;
    }

    .pc-img-width-max{
        width: 100%;   
    }

    .pc-img-height-max{      
        height: 100%;              
    }

    .pc-80{
        width: 80%;
    }    

    .pc-img-max{
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .section-03{
        width: 80%;
        margin: auto 10%;
    }

    .section-03 .section-content{
        margin: auto 20px;
        width: calc(100% - 40px);
    }

    .pc-flex{
        display: flex;
    }

    .pc-center{
        margin-top: 20px;
        text-align: center;
    }

    .circle{
        width: 300px;
        height: 300px;
        border-radius: 150px;
    }

    .pc-flex-child-2{
        width: calc(50% - 20px);
        margin: 10px;
    }
}