@charset "utf-8";

@media screen and (max-width: 1600px) {
    body.sub-type4 .container .text-group.keyword-box .archive-list > li {width: 100%;}
    body.sub-type5 .container .text-group.keyword-box .archive-list > li{width: 100%;}
}

@media screen and (max-width: 1400px) {
    /* body.sub-type4 .container .text-group.keyword-box .archive-list > li {width: calc(100% / 2);} */
    /* body.sub-type5 .container .text-group.keyword-box .archive-list > li{width: calc(100% / 4);} */
}

@media screen and (max-width: 1024px) {

    body.sub-type4 .container {flex-direction: column;}
    body.sub-type4 .container .text-group {width: 100%;margin-right: 0;}
    body.sub-type4 .container .text-group .archive-list {display: flex;flex-wrap: wrap;}
    body.sub-type4 .container .text-group .archive-list > a {width: calc(100% / 4);}
    body.sub-type4 .container .text-group.keyword-box .archive-list > a {width: 100%;}
    /* body.sub-type5 .container .text-group.keyword-box .archive-list > li{width: calc(100% / 2);} */
    body.main main .chart-item{
        margin-right: -40px;
        margin-top: -30px;
    }
}

@media screen and (max-width: 800px) {
    body.main main .chart-item{
        padding: 0 30px 0 120px;
        width: 600px;
        margin-top: -30px;
        margin-right: 0px;
    }

    body.main main .chart-item #chart{
        width:90vh;
    }
    header .logo-box {width: 11.3rem; top: 30px;}
    header .menu-button {display: block;}

    nav {position: fixed;width: 74%;right: 0;height: 100%;flex-direction: column;justify-content: flex-start;padding-top: 10.2rem;z-index:99;transform: translateX(100%);transition-duration: .6s;transition-property: transform;}
    nav .left-box {flex-direction: column;align-items: flex-end;}
    nav .left-box h1 {align-items: flex-end;order: 1;font-size: 2.2rem;font-weight: 800;text-align: right;}
    nav .left-box h2 {align-items: flex-end;order: 2;font-size: 1.4rem;font-weight: 400;line-height: 1.6em;text-align: right;margin-top: 1.1rem;}
    nav .left-box h2::after {content:none;}
    nav .right-box {justify-content: flex-end;}
    nav .menu-list {flex-direction: column;margin-top: 7rem;}
    nav .menu-list .menu-item{margin-top: 3.7rem;}
    nav .menu-list .menu-item a {font-size: 1.6rem;margin-left: 0;color: var(--point-color);}
    nav .search-box {position: absolute;bottom: 5rem;display: flex;right: 3rem;transform: translateY(0);padding-right: 0;justify-content: flex-end;}
    nav .search-box input {color: var(--white-color);background-color: transparent;}
    nav .search-box input::placeholder{color: var(--point2-color);}
    nav .search-box .search-button{background-image: url("../images/icon-search-w.svg");}


}
@media screen and (max-width: 540px) {
    .mobile-only{display: block;}

    body.menuOpen{}
    body.menuOpen header .menu-button .bar {background-color: var(--white-color);}
    body.menuOpen{height: 100%;overflow: hidden;}
    body.menuOpen .dim{opacity: 1;pointer-events: auto;}
    body.menuOpen nav{transform: translateX(0);}
    body.menuOpen .menu-button .bar:nth-of-type(3) {width: 2.9rem;transform: rotate(-42deg);}
    body.menuOpen .menu-button .bar:nth-of-type(2) {transform: translate(100%,-50%);opacity: 0;}
    body.menuOpen .menu-button .bar:nth-of-type(1) {width: 2.9rem;transform: rotate(42deg);}

    aside {width: 23rem; 
        margin-top: 12rem;
    }
    aside .filter-box .filter-sub-item{font-size: 1.5rem;}
    aside .filter-box .filter-item > a {color:#3A1387; font-size: 1.6rem;}
    aside .filter-box .filter-sub-item> a {color: var(--off-color);font-size: 1.5rem;}
    body.main main{min-height: 100vh;}
    aside .filter-box.content-page .filter-sub-item> a{color: var(--font-color); font-weight: 400;}
    body.main main{
        padding-right: 0;
    }


    body.sub-type1 main {width: 100%;margin: 0 auto; padding: 0;}
    body.sub-type1 aside .title-box {font-size: 4rem;line-height: 1;font-weight: 400;margin-bottom: 7rem;text-align: center;}
    body.sub-type1 aside .filter-box {position: fixed;background-color: var(--white-color);width: 74%;top: 0;left: 0;height: 100%;flex-direction: column;justify-content: flex-start;padding: 0 3rem;z-index: 2;transform: translateX(-100%);transition-duration: .6s;transition-property: transform;}
    body.sub-type1 aside .filter-box .filter-list{margin-top: 3.7rem;}
    body.sub-type1 aside .filter-box .filter-header{display: flex;}
    body.sub-type1 .wrap {flex-direction: column;}
    body.sub-type1 aside {width: 100%;margin-top:12rem;}
    body.sub-type1.filterOpen aside .filter-box{transform: translateX(0);}
    body.sub-type1.filterOpen .dim2{opacity: 1;pointer-events: auto;}
    body.sub-type1 .floating.top-button{bottom: 9.2rem;}
    body.sub-type1 .floating.filter-button{opacity: 1;pointer-events: auto;}

    body.sub-type2 aside {width: 100%;order:2;margin-top: 7rem;}
    body.sub-type2 main {width: 100%;padding: 0 3rem;order:1;}
    body.sub-type2 .bottom-text{order:3;margin-top: 0rem;}
    body.sub-type2 .title-box h2 {padding: 0 20px; font-size: 2.75rem;font-weight: 600;line-height: 1.4;text-align: center;}
    body.sub-type2 .title-box p {padding: 0 20px; font-size: 1.5rem;font-weight: 400;line-height: 1.6;text-align: center; margin-top: 2rem;}

    body.sub-type3 main {width: 100%;padding: 0 3rem;order:1;}
    body.sub-type3 .title-box h2 {padding: 0 20px; font-size: 3rem;font-weight: 600;line-height: 1.4;text-align: center;}
    body.sub-type3 .title-box p {padding: 0 20px; font-size: 1.5rem;font-weight: 400;line-height: 1.6;text-align: center;}

    body.sub-type4 .container .text-group.keyword-box .archive-list > li {width: calc(100% / 2);}

    body.sub-type5 aside {width: 100%;margin-top: 5rem;}
    body.sub-type5 aside .title-box {font-size: 4rem;font-weight: 400;line-height: 1;text-align: center;margin-bottom: 0;}
    body.sub-type5 main {width: 100%;padding: 0 3rem;margin-top: 2rem;}

    .book-list {
        position: relative;
        width: 25.7rem;
        margin: 0 auto;
    }
    .book-list .book-item {
        width: 25.7rem;
        margin: 0 0 4rem;
        position: absolute;
    }

    .editor-wrap.content-page{margin-bottom: 0;}
    .editor-wrap .text-module p{font-size: 1.5rem; white-space: pre-line;}
    .gallery-module {justify-content: space-between;}
    .gallery-module .gallery-item{
        margin-right: 0;
        width: calc((100% - 1rem) / 2);
        height: max-content;
        /* position: absolute; */
        /* top:0; */
    } 
    .gallery-module .gallery-item img{
        height: auto!important;
    }


    
}

@media screen and (max-width: 375px) {
    html {
        font-size: 2.666666666666667vw;
    }

}