/* ---------------------------------------
  .category_page
-----------------------------------------*/
.category_page .cat_ttl .info_box {
  padding: 30px 40px;
  border: solid 1px #C6C4C4;
  border-radius: 0.5rem;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .category_page .cat_ttl .info_box {
    margin-top: 2rem;
    padding: 1.5rem 2rem;
  }
}
.category_page .cat_ttl .info_box p {
  line-height: 160%;
}
@media screen and (max-width: 767px) {
  .category_page .cat_ttl .info_box p {
    font-size: 1.4rem;
  }
}
.category_page .cat_ttl .info_box .info_link {
  margin-top: 1rem;
}
.category_page .cat_ttl .info_box .info_link a {
  color: #06724E;
  text-decoration: underline;
}
.category_page .cat_ttl .info_box .strong {
  font-weight: 700;
}

/* ---------------------------------------
  #news
-----------------------------------------*/
#news {
  margin-top: 140px;
}
@media screen and (max-width: 767px) {
  #news {
    margin-top: 4rem;
  }
}

/* ---------------------------------------
  .content_sec_bg
-----------------------------------------*/
.content_sec_bg {
  margin-top: 21.8390804598vw;
  padding-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .content_sec_bg {
    margin-top: 16rem;
    padding-bottom: 4rem;
  }
}
.content_sec_bg .content_sec_icon {
  top: -8.6206896552vw;
}
@media screen and (max-width: 767px) {
  .content_sec_bg .content_sec_icon {
    width: 17rem;
    top: -5.1rem;
  }
}

/* ---------------------------------------
  #spot
-----------------------------------------*/
#spot {
  padding-top: 80px;
}
@media screen and (max-width: 767px) {
  #spot {
    margin-top: 6rem;
  }
}
#spot .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0 30px;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  #spot .list {
    margin-top: 4rem;
    gap: 1.5rem 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#spot .list li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#spot .list li .img_box {
  padding: 0 15px;
}
@media screen and (max-width: 767px) {
  #spot .list li .img_box {
    padding: 0;
    width: 70%;
    margin: 0 auto;
  }
}
#spot .list li .txt_box {
  padding: 0 20px;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  #spot .list li .txt_box {
    padding: 0;
    margin-top: 2rem;
  }
}
#spot .list li .txt_box .ttl {
  font-size: 2.2rem;
  font-weight: 700;
  color: #06724E;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #spot .list li .txt_box .ttl {
    font-size: 2rem;
  }
}
#spot .list li .txt_box .caption {
  font-weight: 700;
  margin-top: 1rem;
  line-height: 180%;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #spot .list li .txt_box .caption {
    font-size: 1.4rem;
  }
}
#spot .list li .txt_box .txt {
  margin-top: 1rem;
  font-size: 1.4rem;
  line-height: 180%;
}
@media screen and (max-width: 767px) {
  #spot .list li .txt_box .txt {
    font-size: 1.2rem;
  }
}
#spot .expression_box {
  margin-top: 80px;
}
@media screen and (max-width: 767px) {
  #spot .expression_box {
    margin-top: 6rem;
  }
}
#spot .expression_box .ex_ttl {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  #spot .expression_box .ex_ttl {
    font-size: 2rem;
  }
}
#spot .expression_box .ex_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  #spot .expression_box .ex_list {
    margin-top: 2rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (min-width: 768px) {
  #spot .expression_box .ex_list dt,
  #spot .expression_box .ex_list dd {
    border-top: dashed 1px #D9D9D9;
    border-bottom: dashed 1px #D9D9D9;
  }
}
#spot .expression_box .ex_list dt {
  width: 22.9%;
  padding: 40px 0;
  font-family: "Montserrat", serif;
  font-size: 2.8rem;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 767px) {
  #spot .expression_box .ex_list dt {
    width: 100%;
    border-top: dashed 1px #D9D9D9;
    padding: 2rem 0;
    font-size: 2.5rem;
  }
}
#spot .expression_box .ex_list dt.spring {
  color: #F99DC9;
}
#spot .expression_box .ex_list dt.summer {
  color: #06724E;
}
#spot .expression_box .ex_list dt.autumn {
  color: #998675;
}
#spot .expression_box .ex_list dt.winter {
  color: #222;
}
#spot .expression_box .ex_list dd {
  width: 77.1%;
  padding: 40px 30px;
}
@media screen and (max-width: 767px) {
  #spot .expression_box .ex_list dd {
    border-top: dashed 1px #D9D9D9;
    width: 100%;
    padding: 2rem 0;
  }
}
#spot .expression_box .ex_list dd .ttl {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 160%;
}
@media screen and (max-width: 767px) {
  #spot .expression_box .ex_list dd .ttl {
    font-size: 1.6rem;
  }
}
#spot .expression_box .ex_list dd .txt {
  font-size: 1.4rem;
  line-height: 180%;
  margin-top: 1rem;
}

/* ---------------------------------------
  #rental
-----------------------------------------*/
#rental {
  margin-top: 140px;
}
@media screen and (max-width: 767px) {
  #rental {
    margin-top: 7rem;
  }
}
#rental .ttl {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  #rental .ttl {
    font-size: 1.6rem;
    margin-top: 4rem;
  }
}
#rental .txt {
  margin-top: 1rem;
  line-height: 180%;
  text-align: center;
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  #rental .txt {
    text-align: left;
  }
}