.phptp_sec .wrap{
    display: flex;
    flex-flow: wrap;
    gap: 2rem;
}
.phptp_sec .wrap a {
    width: calc(100% / 3 - 1.35rem);
}
.phptp_sec .wrap a img{
    object-fit: cover;
    height: 273px;
}
.phptp_sec .wrap a.is-hidden{
    display: none;
}
.photo-load-more-wrap{
    text-align: center;
    margin-top: 2rem;
}
.photo-load-more{
    border-radius: 3.125rem;
    background: #4C3B30;
    border: 1px solid #4C3B30;
    padding: 0.5625rem 2.1875rem;
    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 100%;
    cursor: pointer;
}
.photo-load-more:hover{
    color: #4C3B30;
    background: #FFF;
}
@media screen and (max-width: 780px) {
    .phptp_sec .wrap{
    gap: 1rem;
}
.phptp_sec .wrap a {
    width: calc(100% / 2 - 0.5rem);
}
.phptp_sec .wrap a img {
    height: 125px;
}
}

/* FancyBox caption styling for photo page */
.fancybox-title-outside-wrap{
    color: #000 !important;
    background: transparent !important;
    text-align: center;
    font-size: 0.95rem;
    font-weight: 500;
    margin-top: 1rem !important;
    padding: 0 1rem;
}
.fancybox-title-outside-wrap .child{
    color: #000 !important;
    background: #FFF !important;
    border: 1px solid #D9D9D9;
    border-radius: 0.5rem;
    display: inline-block;
    padding: 0.75rem 1rem;
    min-width: 60%;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
    line-height: 1.6;
}
.fancybox-title-over-wrap{
    background: transparent !important;
    color: #000 !important;
}
.fancybox-inner {
    height: auto !important;
}
.fancybox-title-over-wrap {
    position: relative!important;
}