@charset "UTF-8";

/* 2023/7/8 広橋追加 */
.gallery_archive dd a {
  transition: color 0.3s ease;
}
.gallery_archive dd a:hover {
  color: #1336e6;
  text-decoration: underline;
}
.gallery_co-bg {
  background: #f5f5f5;
  margin: 5vw 0;
}
.gallery_co-bg .btn_1 {
  transition: 0.3s ease;
}
.gallery_co-bg .co_business article:focus .btn_1 {
  color: #ffffff;
  background: #1336e6;
  border-color: #1336e6;
}
.gallery_co-bg .co_business article:hover .btn_1 {
  color: #ffffff;
  background: #1336e6;
  border-color: #1336e6;
}
.gallery_co-bg .co_business article:focus .btn_1::before {
  color: #ffffff;
  background: #1336e6;
  background: url(../img/common/icon_arrow-1-white.png) no-repeat center / 100%;
}
.gallery_co-bg .co_business article:hover .btn_1::before {
  color: #ffffff;
  background: #1336e6;
  background: url(../img/common/icon_arrow-1-white.png) no-repeat center / 100%;
}
@media screen and (max-width: 1480px) {
  .gallery_co-bg {
    margin: 6.5vw 0;
  }
}
@media screen and (max-width: 780px) {
  .gallery_co-bg {
    margin: 15vw 0;
  }
}

/** -- 詳細ページ -- **/
.gallery_blog .single_content {
  margin: 100px auto 120px;
  width: 900px;
}

.gallery_blog article h2 {
  font-size: 42px;
  line-height: 1.4;
  margin-bottom: 50px;
}

/** image **/
.gallery_blog article .image {
  margin-bottom: 70px;
}

.gallery_blog article .image img {
  border-radius: 30px;
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.gallery_blog article .image .main_img {
  height: 710px;
  width: 710px;
}

.gallery_blog article .image .sub_img {
  margin-left: auto;
  width: 170px;
}

.gallery_blog article .image .sub_img li {
  cursor: pointer;
  height: 170px;
}

.gallery_blog article .image .sub_img li + li {
  margin-top: 10px;
}

/** detail **/
.gallery_blog article .detail {
  margin-bottom: 30px;
}

.gallery_blog article .detail .exp {
  padding-right: 35px;
  width: 50%;
}

/*.gallery_blog article .detail .exp p {
  font-weight: bold;
}*/

.gallery_blog article .detail .spec {
  border-left: dashed 1px #4c4948;
  padding-left: 50px;
  width: 50%;
}

.gallery_blog article .detail .spec h3 {
  font-size: 18px;
}

.gallery_blog article .detail .spec p {
  margin-bottom: 20px;
}

.gallery_blog article .detail .spec li span {
  font-weight: bold;
  margin-right: 20px;
}

/** to_list **/
.gallery_blog .to_list .btn_1 {
  margin: 0 auto;
}

@media screen and (max-width: 1480px) {
  .gallery_blog .single_content {
    margin: 8vw auto 0;
    width: 65vw;
  }

  .gallery_blog article h2 {
    font-size: 3vw;
    margin-bottom: 4vw;
  }

  /** image **/
  .gallery_blog article .image {
    margin-bottom: 5.5vw;
  }

  .gallery_blog article .image img {
    border-radius: 2vw;
  }

  .gallery_blog article .image .main_img {
    height: 51vw;
    width: 51vw;
  }

  .gallery_blog article .image .sub_img {
    width: 12vw;
  }

  .gallery_blog article .image .sub_img li {
    height: 12vw;
  }

  .gallery_blog article .image .sub_img li + li {
    margin-top: 1vw;
  }

  /** detail **/
  .gallery_blog article .detail {
    margin-bottom: 2.4vw;
  }

  .gallery_blog article .detail .exp {
    padding-right: 3vw;
  }

  .gallery_blog article .detail .spec {
    padding-left: 3.5vw;
  }

  .gallery_blog article .detail .spec h3 {
    font-size: 1.3vw;
  }

  .gallery_blog article .detail .spec p {
    margin-bottom: 1.4vw;
  }

  .gallery_blog article .detail .spec li span {
    margin-right: 1.4vw;
  }
}

@media screen and (max-width: 780px) {
  .gallery_blog .single_content {
    margin: 12vw 6vw 3vw;
    width: auto;
  }

  .gallery_blog article h2 {
    font-size: 5.4vw;
    margin-bottom: 4vw;
  }

  /** image **/
  .gallery_blog article .image {
    margin-bottom: 5.5vw;
  }

  .gallery_blog article .image img {
    border-radius: 4vw;
  }

  .gallery_blog article .image .main_img {
    height: 88vw;
    width: 100%;
  }

  .gallery_blog article .image .sub_img {
    display: flex;
    margin-top: 3vw;
    width: 100%;
  }

  .gallery_blog article .image .sub_img li {
    height: 21.25vw;
    width: 21.25vw;
  }

  .gallery_blog article .image .sub_img li + li {
    margin-left: 1vw;
    margin-top: 0;
  }

  /** detail **/
  .gallery_blog article .detail {
    margin-bottom: 6vw;
  }

  .gallery_blog article .detail .exp {
    padding-bottom: 6vw;
    padding-right: 0;
    width: 100%;
  }

  .gallery_blog article .detail .spec {
    border-left: none;
    border-top: dashed 1px #4c4948;
    padding-left: 0;
    padding-top: 6vw;
    width: 100%;
  }

  .gallery_blog article .detail .spec h3 {
    font-size: 3.8vw;
  }

  .gallery_blog article .detail .spec p {
    margin-bottom: 4vw;
  }

  .gallery_blog article .detail .spec li span {
    margin-right: 4vw;
  }
}

/** -- 一覧ページ -- **/
.gallery_archive .cat_list dl {
  align-items: center;
  margin-right: -30px;
}

.gallery_archive .cat_list dl + dl {
  margin-top: 30px;
}

.gallery_archive .cat_list dt {
  font-weight: bold;
  width: 120px;
}

.gallery_archive .cat_list dd {
  border-left: dashed 1px #4c4948;
  padding-left: 30px;
  width: calc(100% - 120px);
}

.gallery_archive .cat_list dd a {
  display: block;
  margin-right: 30px;
}

/** item_list **/
.gallery_archive .item_list h2 {
  font-size: 42px;
  line-height: 1.4;
  margin-bottom: 50px;
}

.gallery_archive .list {
  margin: 0 -23px;
}

.gallery_archive .list article {
  margin: 0px 23px 3.64vw;
  position: relative;
  width: calc(33.3333% - 46px);
}

.gallery_archive .list article:nth-last-child(-n + 3) {
  margin-bottom: initial;
}

.gallery_archive .list article a.link_area {
  display: block;
}

.gallery_archive .list article a.tag_link_btn {
  display: block;
  background-color: #f5f5f5;
  border-radius: 30px;
  font-size: 12px;
  margin-bottom: 5px;
  margin-right: 5px;
  padding: 0 10px;
}

.gallery_archive .list article figure {
  margin-bottom: 20px;
  padding-top: 100%;
  position: relative;
  transition: 0.3s ease;
}

.gallery_archive .list article .link_area:hover figure {
  transform: scale(0.98);
}

.gallery_archive .list article figure img {
  border-radius: 30px;
  object-fit: cover;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.gallery_archive .list article h3 {
  font-size: 18px;
  line-height: 1.6;
  margin-bottom: 5px;
  transition: color 0.3s ease;
}

.gallery_archive .list article .link_area:hover h3 {
  color: #1336e6;
}

.gallery_archive .list article h3.blue_txt {
  color: #1336e6;
}

.gallery_archive .list article p.exp {
  line-height: 1.6;
}

.gallery_archive .list article .cat {
  border-top: dashed 1px #4c4948;
  margin-top: 20px;
  padding-top: 20px;
}

.gallery_archive .list article dl + dl {
  margin-top: 10px;
}

.gallery_archive .list article dt {
  font-size: 12px;
  font-weight: bold;
  width: 70px;
}

.gallery_archive .list article dd {
  width: calc(100% - 70px);
}

.gallery_archive .list article dd p {
  background-color: #f5f5f5;
  border-radius: 30px;
  font-size: 12px;
  margin-bottom: 5px;
  margin-right: 5px;
  padding: 0 10px;
}

@media screen and (max-width: 1480px) {
  .gallery_archive .cat_list dl {
    margin-right: -2.2vw;
  }

  .gallery_archive .cat_list dl + dl {
    margin-top: 2.2vw;
  }

  .gallery_archive .cat_list dt {
    width: 8.4vw;
  }

  .gallery_archive .cat_list dd {
    padding-left: 2.2vw;
    width: calc(100% - 8.4vw);
  }

  .gallery_archive .cat_list dd a {
    margin-right: 30px;
  }

  /** item_list **/
  .gallery_archive .item_list h2 {
    font-size: 3vw;
    margin-bottom: 3.6vw;
  }

  .gallery_archive .list {
    margin: 0 -1.6vw;
  }

  .gallery_archive .list article {
    margin: 0 1.6vw 3vw;
    width: calc(33.3333% - 3.2vw);
  }

  .gallery_archive .list article figure {
    margin-bottom: 1.4vw;
  }

  .gallery_archive .list article:hover figure {
    transform: scale(0.98);
  }

  .gallery_archive .list article figure img {
    border-radius: 2vw;
  }

  .gallery_archive .list article h3 {
    font-size: 1.3vw;
    margin-bottom: 0.3vw;
  }

  .gallery_archive .list article .cat {
    margin-top: 1.4vw;
    padding-top: 1.4vw;
  }

  .gallery_archive .list article dl + dl {
    margin-top: 0.8vw;
  }

  .gallery_archive .list article dt {
    font-size: 0.85vw;
    width: 5.2vw;
  }

  .gallery_archive .list article dd {
    width: calc(100% - 5.2vw);
  }

  .gallery_archive .list article dd p {
    border-radius: 2vw;
    font-size: 0.85vw;
    margin-bottom: 0.3vw;
    margin-right: 0.3vw;
    padding: 0 0.8vw;
  }

  .gallery_archive .list article a.tag_link_btn {
    border-radius: 2vw;
    font-size: 0.85vw;
    margin-bottom: 0.3vw;
    margin-right: 0.3vw;
    padding: 0 0.8vw;
  }
}

@media screen and (max-width: 1000px) {
  .gallery_archive .list article dt {
    width: 6.4vw;
  }

  .gallery_archive .list article dd {
    width: calc(100% - 6.4vw);
  }
}

@media screen and (max-width: 780px) {
  .gallery_archive .cat_list dl {
    border-bottom: dashed 1px #4c4948;
    display: block;
    margin-right: 0;
    padding-bottom: 3vw;
  }

  .gallery_archive .cat_list dl + dl {
    margin-top: 3vw;
  }

  .gallery_archive .cat_list dt {
    background: url("../img/common/icon-plus.png") no-repeat right 0 top 50% /
      5vw;
    cursor: pointer;
    font-size: 4.2vw;
    width: auto;
  }

  .gallery_archive .cat_list dt.open {
    background-image: url("../img/common/icon-minus.png");
  }

  .gallery_archive .cat_list dd {
    border: none;
    display: none;
    margin-top: 2vw;
    padding-left: 0;
    width: auto;
  }

  .gallery_archive .cat_list dd a {
    margin-right: 0;
  }

  /** item_list **/
  .gallery_archive .item_list h2 {
    font-size: 5.4vw;
    margin-bottom: 8vw;
  }

  .gallery_archive .list {
    margin: 0;
  }

  .gallery_archive .list article {
    margin: 0;
    width: 100%;
  }

  .gallery_archive .list article + article {
    margin-top: 12vw;
  }

  .gallery_archive .list article figure {
    margin-bottom: 4vw;
  }

  .gallery_archive .list article figure img {
    border-radius: 4vw;
  }

  .gallery_archive .list article h3 {
    font-size: 4.2vw;
    margin-bottom: 2vw;
  }

  .gallery_archive .list article .cat {
    margin-top: 4vw;
    padding-top: 5vw;
  }

  .gallery_archive .list article dl + dl {
    margin-top: 3vw;
  }

  .gallery_archive .list article dt {
    font-size: 3.8vw;
    width: 23vw;
  }

  .gallery_archive .list article dd {
    width: calc(100% - 23vw);
  }

  .gallery_archive .list article dd p {
    border-radius: 4vw;
    font-size: 3.8vw;
    margin-bottom: 2vw;
    margin-right: 2vw;
    padding: 0 3.5vw;
  }

  .gallery_archive .list article a.tag_link_btn {
    border-radius: 4vw;
    font-size: 3.8vw;
    margin-bottom: 2vw;
    margin-right: 2vw;
    padding: 0 3.5vw;
  }
}
