.tabContent{
    display: flex;
    flex-wrap: wrap;
}
.tabContent::after{
content: "";
display: block;
width: 100%;
height: 0;
order: -1;
background: #666;
}
.tabContent .tabContent__label{
margin-right: 8px;
padding: 3px 12px;
flex: 1;
order: -1;
color: #aaa;
border-width: 0px 0 5px 0;
border-style: solid;
border-color: #ececec;
cursor: pointer;
}
.tabContent .tabContent__label:nth-last-of-type(1){ margin-right: 0; }
.tabContent input {
display: none;
}
.tabContent .tabContent__main{
width: 100%;
height: 0;
overflow: hidden;
opacity: 0;
}
.tabContent input:checked + .tabContent__label{
color: #666;
border-width: 0 0 5px 0;
border-color: #999;
}
.tabContent input:checked + .tabContent__label + .tabContent__main{
overflow: auto;
margin: 15px 0;
height: auto;
transition: 1s opacity;
opacity: 1;
}

/*ARTWORKS*/
/*Photoswipe*/
/* スマホ版でも矢印表示 */
/* no arrows on touch screens */
.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
    visibility:visible ; 
}
.gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 10px;
}
figure {
    display: flex;
    margin-block: 0;
    margin-inline: 0;
}

/* ------------------------------------
  Thumbnail
------------------------------------- */
.img-thumb {
    display: flex;
    position: relative;
    width: 100%;
    height: 140px;
    overflow: hidden;
    align-items: center;
 }
 .img-thumb img {
    width: 100%;
    height: 140px;
    object-fit: cover;
    transition: .5s all ease;
    filter: grayscale(.7);
 }
 .img-thumb img:hover {
    opacity: 0.4;
    border-radius: 20px;
 }
/*caption*/
.img-thumb figcaption {
    position: absolute;
    top: 41%;
    left: 0;
    z-index: -1;
    width: 100%;
    height: auto;
    text-align: center;
    color: #000;
 }
.img-thumb figcaption p {
    font-size: 1.2em;
    margin: 0;
}
/* 拡大時チラつき防止 */
.pswp__img--placeholder {
    opacity: 0;
}

.fade {
    opacity: 0;
    animation-name: fade;
    animation-duration: 1.1s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
    animation-delay: 0.3s;
}
@keyframes fade {
    0% {
        opacity: 0;
    }
    100% {
    opacity: 1;
    }
}

@media only screen and (min-width: 1024px) { /* PC */
    .gallery {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }
    .img-thumb {
        height: 190px;
    }
    .img-thumb img {
        height: 190px;
    }
}