@charset "utf-8";

.gjs-dashed .modal {
    opacity: 1 !important;
    position: relative;
    display: block;
}

.gjs-dashed .menuMain {
    grid-template-columns: repeat(1, 1fr) !important;
}

.gjs-dashed .intModal01 {
    transform: translate(0, 0%) !important;
}

.gjs-dashed .modal-dialog-centered {
    min-height: auto !important;
}

.gjs-dashed .inModalImgBox {
    width: 100%;
    margin: 0 auto 0 auto;
    max-width: 400px;
}

.contents01 {
    z-index: auto;
}

/* カテゴリ */

.gallery-cate-box section {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, 1fr);
}

.firstBox:first-child {
    display: flex;
}

.firstBox {
    display: none;
}

.gallery-btn {
    width: 100%;
    height: 60px;
    padding: 9px 15px 10px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(16px, calc(1rem + ((1vw - 3.75px) * 0.2589)), 20px);
    font-weight: 500;
    letter-spacing: 0;
    color: var(--base-body-color);
    border: 1px solid var(--base-body-color);
    transition: all .3s;
}

.gallery-btn:hover {
    color: var(--base-body-color);
    background: var(--gray03);
}

.galleryCateBox .is-active {
    background: var(--gray03);
    color: var(--base-body-color);
    transition: all .3s;
}

/* メイン */

.gallery-box section {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

.gallery-img {
    aspect-ratio: 4/5;
    overflow: hidden;
}

.gallery-img img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
    transition: all .3s;
}

.modal-inner .gallery-img img {
    object-fit: contain;
    background: var(--gray03);
}

.gallery-main-img {
    cursor: pointer;
}


.gallery-main-img:hover img {
    transform: scale(1.1);
}

.gallery-main-img>img+.noImg,
.gallery-detail-main-img>img+.noImg {
    display: none;
}

.modal {
    background: #00000060;
}

.modal-wrapper {
    position: absolute;
    top: 10px;
    right: 10px;
    bottom: 10px;
    left: 10px;
    overflow-y: auto;
    max-width: 800px;
    margin: auto;
    background: var(--white);
}

.modal-wrapper::-webkit-scrollbar {
    width: 10px;
    /* 横幅 */
}

.modal-wrapper::-webkit-scrollbar-thumb {
    background: var(--primary);
    /* ハンドルの色 */
}

.modal-wrapper::-webkit-scrollbar-track {
    background: var(--gray03);
    /* 背景色 */
}

.modal-box {
    position: relative !important;
    width: 100%;
    max-width: 800px;
    padding: 25px 10px;
}

.modalCloseBtn {
    position: fixed;
    top: 3%;
    right: 5%;
    z-index: 1;
    aspect-ratio: 1/1;
    width: 45px;
    background: url(/system_panel/uploads/images/modaal_close.svg)no-repeat center /contain;
    cursor: pointer;
    transition: all .3s;
}

.modalCloseBtn:hover {
    transform: scale(1.1);
}

.modal-inner {
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
}

.gallery-detail-main-img {
    width: 100%;
}

.gallery-detail-pdf {
    width: 100%;
    margin: 0 auto;
}

.gallery-detail-pdf:hover {
    background: var(--gray03);
}

.gallery-detail-pdf::after {
    display: none;
}

.gallery-detail-img-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.gallery-detail-youtube {
    width: 100%;
    aspect-ratio: 16/9;
    overflow: hidden;
}

.gallery-detail-youtube iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/*  ページャー */

.webgene-pagination {
    width: 100%;
    grid-column: 1/3;
}

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:768px) {

    .gallery-cate-box section {
        gap: 10px;
        grid-template-columns: repeat(4, 1fr);
    }

    .gallery-box section {
        grid-template-columns: repeat(4, 1fr);
    }

    .modal-box {
        padding: 45px 10px;
    }

    .modal-wrapper {
        top: 25px;
        right: 25px;
        bottom: 25px;
        left: 25px;
    }

    .modal-inner {
        gap: 25px;
    }

    .gallery-detail-img-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .modalCloseBtn {
        width: 50px;
        top: 4%;
    }
  
    /*  ページャー */

    .webgene-pagination {
        grid-column: 1/5;
    }


}

/* min-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:992px) {

    .modalCloseBtn {
        right: calc((100vw - 800px) / 2 + 20px);
    }

}

/* min-width: 992px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1024px) {

    .gallery-cate-box section {
        gap: 15px 25px;
    }

    .gallery-box section {
        gap: 25px;
    }
  
}

/* min-width: 1024px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1800px) {

    .modalCloseBtn {
        top: 38px;
    }

}

/* min-width: 1800px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */