/* カスタムプロパディ */
header{
   --site-name-width: 80%; 
}
main .work > ul > li{
    --list-height: 80%;
}
main .work .container{
    --thumbnail-width: 70%;
    --thumbnail-height: 60%;
    --genre-width: 30%;
    --genre-height: 60%;
    --summary-height: 20%;
    --jump-width: 100%;
    --jump-height: 20%;
    --tittle-width: 40%;
    --tittle-height: 40%;
    --rank-width: 15%;
    --rank-height: 15%;
}

/* ヘッダー */
header{
    position: relative;
    width: 100%;
    height: 20%;
}
header div{
    position: absolute;
    height: 50%;
}
header .menu {
    position: relative;
    left: var(--site-name-width);
    width: calc(100% - var(--site-name-width));
}
header .site-name {
    width: var(--site-name-width);
}
header .select {
    top: 50%;
    width: 100%;
}
header .select ul{
    position: relative;
    width: 90%;
    left: 50%;
    transform: translateX(-50%);
}
header .select li{
    position: relative;
    width: calc(100%/4);
    height: 100%;
}

/* メイン */
main{
    position: relative;
    width: 100%;
    height: 80%;
}
main .genre-panel{
    position: relative;
    width: 100%;
    height: 0%;
}
main .genre-panel ul{
    position: relative;
    width: 95%;
    height: 100%;
    left: 50%;
    transform: translateX(-50%);
}
main .genre-panel li{
    position: relative;
    width: 20%;
    height: 100%;
}
main .filter-panel{
    position: relative;
    display: inline-block;
    width: 100%;
    height: 0%;
    display: flex;
    flex-wrap: wrap;
}
main .filter-panel div{
    position: relative;
    width: calc(100%/2);
    height: calc(100%/2);
}
main .filter-panel > div > div{
    position: relative;
    width: 30%;
    height: 15%;
    left: 10%;
}
main .filter-panel ul{
    position: absolute;
    width: 80%;
    height: 80%;
    left: 10%;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
}
main .filter-panel li{
    position: relative;
    height: 25%;
    cursor: pointer;
}
main .filter-panel .language li,
main .filter-panel .ng li{
    width: calc(100%/3);
}
main .filter-panel .sort li,
main .filter-panel .term li{ 
    width: calc(100%/2);
}
main .filter-panel select{
    position: absolute;
    width: 30%;
    height: 20%;
    bottom: 5%;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    align-content: center;
}
main .search-result{
    position: relative;
    width: 100%;
    height: 5%;
}
main .search-result p{
    text-align: start;
}
main .search-result p{
    position: relative;
    height: 100%;
    align-content: center;
}
main .work{
    position: relative;
    top: 0;
    width: 100%;
    height: 95%;
}
main .work > ul{
    position: absolute;
    width: 100%;
    height: 100%;
    flex-wrap: wrap;
}
main .work > ul > li{
    position: relative;
    width: 50%;
    height: var(--list-height);
    justify-items: center;
    align-content: center;
}
main .work .container {
    position: relative;
    width: 90%;
    height: 90%;
    display: flex;
    flex-wrap: wrap;
}
main .work .container .work-thumbnail{
    position: relative;
    width: var(--thumbnail-width);
    height: var(--thumbnail-height);
}
main .work .container .work-genres{
    position: relative;
    width: var(--genre-width);
    height: var(--genre-height);
}
main .work .container .work-genres li{
    position: relative;
    width: 100%;
    height: calc(100%/3);
}
main .work .container .work-summary{
    position: relative;
    width: 100%;
    height: var(--summary-height);
    display: inline-block;
}
main .work .container .work-summary p{
    width: 100%;
    height: 3em;
    line-height: 1.5;
    text-align: center;
    align-content: center;
    overflow: hidden;
    text-overflow: ellipsis;
}
main .work .container .work-jump{
    position: relative ;
    width: var(--jump-width);
    height: var(--jump-height);
}
main .work .container .work-jump li{
    position: relative;
    width: calc(100%/3);
    height: 100%;
}
main .work .container .work-rank{
    position: absolute;
    width: var(--rank-width);
    height: var(--rank-height);
}
main .work .container .work-tittle {
    position: absolute;
    width: var(--tittle-width);
    height: var(--tittle-height);
    top: 50%;
}
@media screen and (max-aspect-ratio: 4/3) {
    
    /* カスタムプロパティ */
    main .work > ul > li{
        --list-height: 70%;
    }
    main .work .container {
        --thumbnail-width: 100%;
        --thumbnail-height: 50%;
        --genre-width: 100%;
        --genre-height: 10%;
        --summary-height: 0%;
        --jump-width: 40%;
        --jump-height: 40%;
        --tittle-width: 60%;
        --tittle-height: 40%;
        --rank-width: 30%;
        --rank-height: 15%;
    }
    
    /* メイン */
    main .work .container .work-genres li{
        width: calc(100%/3);
        height: 100%;
    }
    main .work .container .work-summary{
        display: none;
    }
    main .work .container .work-jump li{
        width: 100%;
        height: calc(100%/3);
    }
    main .work .container .work-tittle {
        position: relative;
        top: 0;
    }
}

/* フッター */
footer .menu-panel{
    position: absolute;
    width: 0;
    height: 100%;
    top: 0;
    right: 0;
}
footer .menu-panel div {
    position: relative;
    width: 90%;
    height: 7%;
    left: 5%;
    margin-top: 5%;
}
footer .menu-panel ul{
    position: relative;
    width: 90%;
    height: calc(6%*4);
    left: 5%;
}
footer .menu-panel li{
    position: relative;
    width: 90%;
    height: calc(100%/4);
    left: 5%;
}
footer .menu-panel li p{
    position: relative;
    width: 80%;
}