@charset "UTF-8";


/*================================================
/ single-photogallery
================================================*/

#previous_next_post,
#article{
  border:none;
}
#post_meta_bottom{
  margin:30px 0 0 0;
}
@media screen and (max-width:550px) {
  .home #left_col, .archive #left_col #page_header.photogallary{
    margin:0 20px;
  }
}

/*================
/ リスト表示
================*/
.photo_g-gallery{
  display:grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap:30px 30px;
}
.photo_g-gallery > *:not(.popin_recommend_new){
  transition: all .3s;
  border:1px solid #ddd;
}
.photo_g-gallery > .popin_recommend_new {
  transition: all .3s;
}
.photo_g-gallery > * img{
  display: block;
  width:100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.photo_g-gallery > *:hover{
  opacity: 0.7;
}
.photo_g-single .navtop{
  margin: 50px 0 ;
}
.photo_g-single .navtop a{
  border:2px solid black;
  display: block;
  margin:0 auto;
  width:70%;
  padding: 16px 10px;
  text-align: center;
  font-weight: bold;
}

#page_header.photogallary .headline{
  /*font-family: sans-serif;
  border:none;
  font-size: 28px;*/
  padding-bottom:15px;
}
#page_header.photogallary .headsub{
  font-size: 26px;
  padding-bottom:0px;
  margin: 20px 0 0 0;
  font-family: 'Yu Mincho', 'YuMincho', 'Hiragino Mincho ProN', serif;
}
#page_header.photogallary .update{
  color :#999;
  font-size:12px;
  margin: 10px 0;
}
#page_header.photogallary .update .sub{
  display: inline-block;
  padding-left:10px;
  margin-left:10px;
  border-left:1px solid #999;
  display: none;
}
#page_header.photogallary .title{
  font-size:20px;
}
@media screen and (max-width:1200px) {
  #page_header.photogallary .photo_g-protectedwrap,
  #page_header.photogallary .headsub,
  #page_header.photogallary .update,
  #page_header.photogallary .headline{
    padding-left:14px;
  }
  #page_header.photogallary .update .sub{
    display: inline-block;
  }
}
@media screen and (max-width:770px) {
  #article.photogallery{
    padding:0;
  }
  .photo_g-gallery{
    gap:0px;
  }
  #page_header.photogallary .headsub{
    font-size: 20px;
  }
  .photo_g-gallery > * img{
    aspect-ratio: 1 / 1;
  }  
  #page_header.photogallary{
/*    padding-left:0;*/
    padding:0;
  }
  .photo_g-single .navtop{
    margin: 30px  0;
  }
  .photo_g-single .navtop a{
    width:80%;
  }
  .photo_g-gallery > *{
    margin:-0.5px;
  }
}


/*================
/ single 表示
================*/
.photo_g-single .image{
  background-color: #f5f5f5;
  display: flex;
  align-items: center;
  position: relative;
  margin:0 0 20px 0;
}
.photo_g-single .image a:hover .photo_g-arrow{
  opacity: 0.5;
}
.photo_g-single .image img{
  display: block;
  width:100%;
  aspect-ratio: 16 / 9;
/*  aspect-ratio: 4 / 3;*/
  object-fit: contain;
}
.photo_g-single .caption{
  text-align: left;
  display: block;
  margin: 10px 0 0 0;
  line-height: 1.6;
}
.photo_g-single .index{
  text-align: center;
}
.photo_g-single .index .count{
  display: inline-block;
  background: black;
  color:white;
  padding: 4px 8px;
  margin: 20px 0 0 0;
}
.photo_g-single-nav{
  margin: 50px 0 0 0;
}
.photo_g-single-nav ul{
  display: flex;
  justify-content: space-between;
}
.photo_g-single-nav li{
}
.photo_g-single-nav li .inner{
  display: block;
  text-align: center;
}
.photo_g-single-nav li .inner > a{
  display: flex;
  align-items: flex-end;
}
.photo_g-single-nav li .inner > a:hover img{
  opacity: 0.5;
}
.photo_g-single-nav li .inner > a:hover .photo_g-arrow{
  opacity: 0.5;
}
.photo_g-single-nav li .inner img{
  width:100%;
  max-width:250px;
  display: block;
  aspect-ratio: 20 / 13;;
  object-fit: cover;
  transition: all .3s;
}
.photo_g-single-nav li .inner .photo_g-arrow{
  margin-bottom:20px;
}
.photo_g-single-nav li:first-child .inner .photo_g-arrow{
  margin-right:15px;
}
.photo_g-single-nav li:last-child .inner .photo_g-arrow{
  margin-left:15px;
}
.photo_g-single-nav li .inner .label{
  display: block;
  text-align: center;
  margin:0 0 20px 0;
}
.photo_g-single-nav li:last-child .inner{
  margin-left:auto;
}

.page_navi.-photogallery{
  margin: 50px 0 0 0;
}
.page_navi.-photogallery .count{
  display: block;
  text-align: center;
  margin:0 0 30px 0;
}
.photo_g-protectedwrap{
  margin: 10px 0 0 0;
}
.photo_g-protected{
  background: #ff0000;
  color:white;
  display: inline-block;
  padding:2px 6px;
}
.headline + .photo_g-protected{
  margin-top:10px;
}
@media screen and (max-width:770px) {
  .photo_g-single-nav{
    margin-top:20px;
  }
  .photo_g-single-nav li .inner img{
    max-width:120px;
  }
  .photo_g-single-nav li .inner .photo_g-arrow{
    margin-bottom:0px;
  }
  .photo_g-single .image .photo_g-arrow{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    opacity: 0.6;
  }
  .photo_g-single .image .photo_g-arrow.-next{
    right:0;
  }
  .photo_g-single-nav li:first-child .inner .photo_g-arrow{
    margin-right:12px;
  }
  .photo_g-single-nav li:last-child .inner .photo_g-arrow{
    margin-left:12px;
  }
  .photo_g-single-nav li .inner .label{
    margin-bottom:8px;
  }
  .page_navi.-photogallery{
    margin: 30px 0 0 0;
  }
  .page_navi.-photogallery .count{
    margin-bottom:25px;
  }
}

/*================
/ arrow
================*/
.photo_g-arrow{
  display: block;
  width:40px;
  height:110px;
  background: black;
  color:white;
  position: relative;
  transition: all .3s;
}
.photo_g-arrow:before{
  content:'';
  display: block;
  width:16px;
  height:16px;
  border-right:2px solid white;
  border-bottom: 2px solid white;
  position: absolute;
  top:50%;
  left:50%;
}
.photo_g-arrow.-next:before{
  transform:translate( -80% ,-50%) rotate(-45deg) ;
}
.photo_g-arrow.-prev:before{
  transform:translate( -20% ,-50%) rotate(-225deg) ;
}
@media screen and (max-width:770px) {
  .photo_g-arrow{
    width:30px;
    height:80px;
  }
  .photo_g-arrow:before{
    width:12px;
    height:12px;
  }
}


/*================================================
/ archive-photogallery
================================================*/

.post_list.-gallery{}
.-photogallery
.post_list.-gallery .item .image{
  width:auto;
  height:auto;
}
.post_list.-gallery .item .image img{
  display: block;
  width:100%;
  aspect-ratio: 20 / 13;
  object-fit: cover;
}
.post_list.-gallery .item .title a{
  font-family: sans-serif;
  font-size:16px;
  padding-top:10px;
  font-weight: bold;
}
.post_list.-gallery article{
  margin-bottom:20px;
}
@media screen and (max-width:770px) {
  .post_list.-gallery{
    margin-bottom:30px;
  }
  .post_list.-gallery .item{
    display: flex;
    width:100%;
    padding:14px;
    margin:0 !important;
    border-bottom:1px solid #ddd;
  }
  .post_list.-gallery .item .image{
    max-width:100px;
    margin-right:14px;
  }
  .post_list.-gallery .item .title{
    flex:1;
    font-size:14px;
  }
  .post_list.-gallery .item .title a{
    padding:0;
  }
  .post_list.-gallery .item .image img{
    aspect-ratio: 1 / 1;
  }
}
@media screen and (max-width: 550px) {
  .post_list.-gallery{
    margin-bottom:0px;
  }
}


.photo_g-protected{
  background: #ff0000;
  color:white;
  font-size:12px;
  display: inline-block;
  padding:3px 6px;
  font-family: sans-serif;
}

.full-width-item {
  grid-column: span 3; /* 3列分のスペースを確保 */
  text-align: center;
}