@charset "UTF-8";

.thumbnail-wrap .category-display { font-weight:400; font-family:"Poppins","游ゴシック Medium","Yu Gothic Medium","游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif,serif;}
.thumbnail-wrap .category-display * { font-weight:400; font-family:"Poppins","游ゴシック Medium","Yu Gothic Medium","游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif,serif;}
.thumbnail-wrap .item-01 { animation-duration:1000ms; opacity:0; animation-iteration-count:1; animation-timing-function:ease-out; animation-fill-mode:forwards; transform:translate3d(0, 40%, 0);}
.thumbnail-wrap .a.item-01 { animation-name:fade_in_up;}
.global-menu { user-select:none; overflow:visible; transition:opacity 400ms;}
.global-menu .global-menu-items { position:sticky; top:0; height:100vh;}
body.sp .global-menu .global-menu-items { height:100dvh;}
.global-menu .items-wrap { min-height:700px;}
.global-menu .scroll-bar { margin-top:5em; margin-bottom:2.5em; transform:translateX(200%);}
.gallery-content-wrap { width:100%; position:relative; z-index:1;}
.gallery-content-wrap>.copyright { width:calc(100% - 98px); margin-right:auto; margin-left:auto; padding-bottom:25px; display:none;}
.gallery-content-wrap.set { height:100vh; position:relative;}
body.sp .set.gallery-content-wrap { height:100dvh;}
.gallery-content-wrap.set>.copyright { position:absolute; left:50%; bottom:0; transform:translateX(-50%);}
.thumbnail-wrap { width:900px; min-width:748px; display:flex; flex-wrap:wrap; align-items:flex-start; align-content:flex-start; margin-right:auto; margin-left:auto; padding-top:87px; padding-bottom:87px;}
.thumbnail-wrap.out { transition:opacity 800ms; opacity:0;}
.thumbnail-wrap .item-01 { width:48.8889%; user-select:none;}
.thumbnail-wrap .item-01:nth-of-type(2n),
.thumbnail-wrap .item-01.even { margin-left:auto; animation-delay:300ms;}
.thumbnail-wrap .item-01.odd { margin-left:0; animation-delay:0ms;}
.thumbnail-wrap .item-01:nth-of-type(n+3) { padding-top:2.2222%;}
.thumbnail-wrap .item-01.head-1,
.thumbnail-wrap .item-01.head-2 { padding-top:0;}
.thumbnail-wrap .item-01.remove { display:none;}
.thumbnail-wrap .item-01 .item-inner { cursor:pointer; width:100%; overflow:hidden; float:left; display:block; position:relative; padding-top:70.7317%;}
.thumbnail-wrap .item-01 .item-inner::before { z-index:1; content:""; display:block; background-color:rgba(0,0,0,0); position:absolute; top:0; right:0; bottom:0; left:0; transition:background-color 400ms;}
.thumbnail-wrap .item-01 .item-inner .caption-01 { display:flex; z-index:1; justify-content:center; align-items:center; overflow:hidden; position:absolute; top:0; right:0; bottom:0; left:0; font-size:17px; opacity:0; transition:opacity 400ms;}
.thumbnail-wrap .item-01 .item-inner .caption-01 * { color:#fff;}
.thumbnail-wrap .item-01 .item-inner .caption-01>* { width:calc(100% - 2em); line-height:1.4118; display:block; text-align:center; letter-spacing:.05em;}
.thumbnail-wrap .item-01 .item-inner .caption-01>* .size-s { display:block; font-size:.8235em; line-height:1.7143;}
.thumbnail-wrap .item-01 figure { overflow:hidden; position:absolute; left:0; top:0; width:100%; height:100%;}
.thumbnail-wrap .item-01 img { width:100%; height:100%; position:absolute; left:0; top:0; object-fit:cover; transition:transform 400ms;}
.thumbnail-wrap .gallery-sp-header { overflow:hidden; width:0; height:0; left:0; top:0; position:absolute; padding-top:150px; user-select:none;}
.thumbnail-wrap .gallery-sp-header * { line-height:1.3;}
.thumbnail-wrap .header-items { padding-top:40px; transform:translateX(-50%); width:90vw; max-width:748px; height:0; left:50vw; bottom:0; position:absolute;}
.thumbnail-wrap .category-display { position:absolute; left:0; bottom:0; font-size:13px; padding-bottom:.3em;}
.thumbnail-wrap .category-display::before { content:""; display:block; background-color:#333; width:100%; height:.5px; left:0; bottom:.3em; position:absolute;}
.thumbnail-wrap .scroll-bar { position:absolute; right:0; top:0; height:100%;}
.gallery-modal { width:100vw; height:100vh; display:flex; justify-content:center; align-items:center; z-index:4; position:fixed; left:0; top:0; background-color:#fff; user-select:none; visibility:hidden; overflow:scroll; -ms-overflow-style:none; scrollbar-width:none; transition:opacity 1000ms; opacity:0;}
.gallery-modal::-webkit-scrollbar { display:none;}
.gallery-modal.set { visibility:visible;}
.gallery-modal.active { opacity:1;}
.gallery-modal .gallery-modal-prev,
.gallery-modal .gallery-modal-next { max-width:200px; width:8vw; height:100%; position:relative; background-color:rgba(255,255,255,0); transition:opacity 400ms; opacity:.7; cursor:pointer;}
.gallery-modal .gallery-modal-prev p,
.gallery-modal .gallery-modal-next p { max-width:40px; max-height:40px; min-width:30px; min-height:30px; width:2.3529vw; height:2.3529vw; position:absolute; top:50%; left:50%;}
.gallery-modal .gallery-modal-prev p::before,
.gallery-modal .gallery-modal-prev p::after,
.gallery-modal .gallery-modal-next p::before,
.gallery-modal .gallery-modal-next p::after { position:absolute; top:0; right:0; content:""; display:block; background-color:#b3b3b3;}
.gallery-modal .gallery-modal-prev p::before,
.gallery-modal .gallery-modal-next p::before { width:100%; height:1px; transform:scaleY(1.1);}
.gallery-modal .gallery-modal-prev p::after,
.gallery-modal .gallery-modal-next p::after { width:1px; height:100%; transform:scaleX(1.1);}
.gallery-modal .gallery-modal-prev.swiper-button-disabled,
.gallery-modal .gallery-modal-next.swiper-button-disabled { visibility:hidden;}
.gallery-modal .gallery-modal-prev { margin-right:15px; order:1;}
.gallery-modal .gallery-modal-prev p { transform:translate(-20%, -50%) rotate(-135deg);}
.gallery-modal .gallery-modal-next { margin-left:15px; order:3;}
.gallery-modal .gallery-modal-next p { transform:translate(-80%, -50%) rotate(45deg);}
.gallery-modal .gallery-modal-close { z-index:1; max-width:65px; max-height:65px; min-width:50px; min-height:50px; width:3.8235vw; height:3.8235vw; background-color:rgba(255,255,255,0); cursor:pointer; opacity:.7; transition:opacity 400ms; position:absolute; top:2.0588vw; right:2.0588vw;}
.gallery-modal .gallery-modal-close::before,
.gallery-modal .gallery-modal-close::after { width:100%; height:1px; left:0; top:50%; position:absolute; content:""; display:block; background-color:#b3b3b3;}
.gallery-modal .gallery-modal-close::before { transform:translateY(-50%) rotate(-45deg) scaleY(1.1);}
.gallery-modal .gallery-modal-close::after { transform:translateY(-50%) rotate(45deg) scaleY(1.1);}
.gallery-modal-items { max-width:1200px; max-height:1200px; margin-right:0; margin-left:0; width:calc(100% - 16vw); height:calc(100% - 16vw); flex-shrink:1; order:2;}
.gallery-modal-items .swiper-slide img { width:100%; height:100%; object-fit:contain; flex-grow:0;}

@media (min-width:900.1px) {
.global-menu { opacity:0;}
.global-menu.a { opacity:1;}
.global-menu .global-menu-items { overflow:scroll; -ms-overflow-style:none; scrollbar-width:none;}
.global-menu .global-menu-items::-webkit-scrollbar { display:none;}
}

@media (max-width:1670px) {
.thumbnail-wrap { margin-left:385px;}
}

@media (max-width:1470px) {
.gallery-modal .gallery-modal-prev { margin-right:1.0204vw;}
.gallery-modal .gallery-modal-next { margin-left:1.0204vw;}
}

@media (max-width:1365px) {
.gallery-content-wrap { display:flex; justify-content:space-between;}
.thumbnail-wrap { padding-top:6.3736%; padding-bottom:6.3736%; width:65.9341%; margin-left:28.2051%;}
}

@media (max-width:1096px) {
.gallery-content-wrap { width:99.9588%;}
.thumbnail-wrap { margin-left:28.1934%; width:68.2482%; min-width:auto;}
}

@media (max-width:900px) {
.global-menu .global-menu-items { position:absolute; left:0;}
.global-menu .scroll-bar { display:none;}
.gallery-content-wrap { display:block; min-width:100%; width:100%;}
.gallery-content-wrap>.copyright { display:block;}
.thumbnail-wrap { width:90%; max-width:748px; margin-right:auto; margin-left:auto; padding-top:170px; padding-bottom:50px;}
.thumbnail-wrap .gallery-sp-header { overflow:visible;}
.gallery-modal .gallery-modal-prev p,
.gallery-modal .gallery-modal-next p { width:3.3333vw; height:3.3333vw; min-width:15px; min-height:15px;}
.gallery-modal .gallery-modal-prev { margin-right:0.5556vw;}
.gallery-modal .gallery-modal-next { margin-left:0.5556vw;}
.gallery-modal .gallery-modal-close { width:5.5556vw; height:5.5556vw; min-width:23px; min-height:23px;}
}

@media (max-width:500px) {
.thumbnail-wrap .item-01 .item-inner .caption-01 { font-size:12px;}
.thumbnail-wrap { max-width:330px; width:76.7442%;}
.thumbnail-wrap .item-01 { width:100%;}
.thumbnail-wrap .item-01:nth-of-type(2n),
.thumbnail-wrap .item-01.even { animation-delay:0ms;}
.thumbnail-wrap .item-01:nth-of-type(n+2) { padding-top:20px;}
.thumbnail-wrap .item-01.head-2 { padding-top:20px;}
.thumbnail-wrap .item-01 .item-inner { padding-top:0; display:flex; flex-direction:column;}
.thumbnail-wrap .item-01 .item-inner::before { content:none;}
.thumbnail-wrap .item-01 .item-inner .caption-01 { margin-top:.35em; opacity:1; order:2; position:relative; top:auto; right:auto; bottom:auto; left:auto;}
.thumbnail-wrap .item-01 .item-inner .caption-01 * { color:#000;}
.thumbnail-wrap .item-01 .item-inner .caption-01>* { width:100%; text-align:left; line-height:1.3; letter-spacing:.03em;}
.thumbnail-wrap .item-01 .item-inner .caption-01>* .size-s { display:inline-block; font-size:1em; margin-left:.35em; line-height:1.3;}
.thumbnail-wrap .item-01 figure { padding-top:70.7317%; order:1; position:relative; left:auto; top:auto;}
.thumbnail-wrap .header-items { max-width:330px; width:76.7442vw;}
}

@media (max-width:430px) {
.gallery-content-wrap>.copyright { max-width:330px; width:90%;}
.thumbnail-wrap { width:90%; padding-top:calc(25.5814% + 60px); padding-bottom:11.6279%;}
.thumbnail-wrap .item-01:nth-of-type(n+2) { padding-top:6.0606%;}
.thumbnail-wrap .item-01.head-2 { padding-top:6.0606%;}
.thumbnail-wrap .gallery-sp-header { padding-top:calc(20.9302% + 60px);}
.thumbnail-wrap .header-items { width:90vw; padding-top:9.3023vw;}
}

@media (max-width:400px) {
.thumbnail-wrap .item-01 .item-inner .caption-01 { font-size:11px; margin-top:.5em;}
}

@media (max-width:330px) {
.gallery-modal .gallery-modal-close { top:1.5152vw; right:1.5152vw;}
}

@media (min-width:500.1px) and (max-width:900px) {
.thumbnail-wrap .item-01 .item-inner .caption-01 { font-size:calc(12px + (1vw - 5px) * 1.25);}
}

@media (hover:hover) and (pointer:fine) {
.thumbnail-wrap .item-01 .item-inner:hover img { transform:scale(1.1);}
.thumbnail-wrap .item-01 .item-inner:hover::before { background-color:rgba(0,0,0,
.75);}
.thumbnail-wrap .item-01 .item-inner:hover .caption-01 { opacity:1;}
.gallery-modal .gallery-modal-prev:hover,
.gallery-modal .gallery-modal-next:hover { opacity:1;}
.gallery-modal .gallery-modal-close:hover { opacity:1;}
}