@charset "utf-8";
/* CSS Document */

.btn0 {
  display: inline-block;
  line-height: 1;
  padding: 12px 50px 15px;
  border-radius: 30px;
  background-color: #000;
  color: #fff;
  text-decoration: none;
  font-size: 18px;
  position: relative;
}
.btn1 {
  display: inline-block;
  line-height: 1;
  padding: 12px 50px 15px 30px;
  border-radius: 30px;
  background-color: #707070;
  color: #fff;
  text-decoration: none;
  font-size: 22px;
  position: relative;
}
.btn1:before {
  content: "";
  position: absolute;
  right: 15px;
  top: 18px;
  width: 10px;
  height: 10px;
  border: 1px solid;
  border-color: #ffffff #ffffff transparent transparent;
  transform: rotate(45deg);
}
.btn1.black {
  background-color: #000;
}
@media print, screen and (max-width: 959px) {
  .btn0 {
    font-size: 16px;
  }
  .btn1 {
    font-size: 18px;
  }
  .btn1:before {
    top: 16px;
  }
}
.btn2 {
  display: inline-block !important;
  line-height: 1;
  padding: 2px 20px 5px 30px !important;
  border-radius: 20px;
  background-color: #707070;
  color: #fff !important;
  text-decoration: none;
  font-size: 19px;
  position: relative;
  font-family: "Playfair Display", serif;
}
.btn2:before {
  content: "";
  position: absolute;
  left: 10px;
  top: calc(50% - 3px);
  width: 6px;
  height: 6px;
  border: 1px solid;
  border-color: #ffffff #ffffff transparent transparent;
  transform: rotate(45deg);
}

.font_ptn1 {
  font-size: 24px;
}
@media print, screen and (max-width: 959px) {
  .font_ptn1 {
    font-size: 20px;
  }
}

.ul_tabmenu {
  display: flex;
  position: relative;
  margin-bottom: 36px;
  overflow: hidden;
}
.ul_tabmenu:before {
  content: "";
  display: block;
  border-bottom: solid 1px #cbcbcb;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  z-index: 2;
}
.ul_tabmenu li a {
  padding: 5px 15px;
  display: inline-block;
  background-color: #fff;
  color: #000;
  font-size: 22px;
  font-family: "Playfair Display", serif;
  text-decoration: none;
  position: relative;
  z-index: 1;
}
.ul_tabmenu li a.current {
  z-index: 3;
  border-left: solid 1px #cbcbcb;
  border-top: solid 1px #cbcbcb;
  border-right: solid 1px #cbcbcb;
}
@media print, screen and (max-width: 959px) {
  .ul_tabmenu li a {
    padding: 3px 9px;
    font-size: 16px;
  }
}
.tabbox {
  height: 0;
  opacity: 0;
  overflow: hidden;
  transition: 1.5s;
}
.tabbox.current {
  height: auto;
  width: 100%;
  height: auto;
  opacity: 1;
}

.ul_photomenu:after {
  content: "";
  display: block;
  clear: both;
}
.ul_photomenu li {
  float: left;
  width: calc(50% - 20px);
  margin-right: 20px;
  line-height: 2.6;
}
.ul_photomenu li a {
  text-decoration: none;
  color: #707070;
  font-size: 18px;
  background-image: url(../images/footer/icon-alw.svg);
  background-repeat: no-repeat;
  background-size: 6px auto;
  background-position: right;
  padding-right: 20px;
  padding-bottom: 2px;
}
@media print, screen and (max-width: 959px) {
  .ul_photomenu li {
  }
  .ul_photomenu li a {
    padding: 0;
    font-size: 16px;
    background-image: none;
  }
}

.ul_list1 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.ul_list1 li {
  width: calc(33.3% - 22px);
  margin: 0 10px 30px 10px;
  max-width: 300px;
}
.ul_list1 li a {
  text-decoration: none;
  color: #707070;
  display: block;
  transition: 0.3s;
}
.ul_list1 li a:hover {
}
.ul_list1 li .img_box {
  width: 100%;
  padding-bottom: 66.66%;
}
.ul_list1 li .p01 {
  font-size: 20px;
  margin-top: 12px;
  min-height: 64px;
}
.ul_list1 li .p02 {
  font-size: 16px;
  margin-top: 12px;
}
@media print, screen and (max-width: 959px) {
  .ul_list1 li {
    width: 100%;
    margin-left: 0px;
    margin-right: 0px;
  }
  .ul_list1 li:last-child {
    margin-bottom: 0px;
  }
  .ul_list1 li .p01 {
    font-size: 20px;
  }
  .ul_list1 li .p02 {
    font-size: 16px;
  }
}
@media print, screen and (max-width: 727px) {
  .ul_list1 li .p01 {
    min-height: inherit;
  }
}

.ul_list2 {
  border-top: solid 1px #707070;
}
.ul_list2 li {
}
.ul_list2 li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-decoration: none;
  color: #707070;
  transition: 0.3s;
  padding: 15px 40px 13px 0px;
  border-bottom: solid 1px #707070;
  position: relative;
}
.ul_list2 li a:before {
  content: "";
  position: absolute;
  right: 10px;
  top: calc(50% - 5px);
  width: 10px;
  height: 10px;
  border: 1px solid;
  border-color: #707070 #707070 transparent transparent;
  transform: rotate(45deg);
}

.ul_list2 li a .p01 {
  width: 100%;
  color: #000;
  font-size: 16px;
  line-height: 1.5;
}
.ul_list2 li a .p02 {
  width: 100%;
  line-height: 1.5;
}

.box_gallery ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.box_gallery ul li {
  width: calc(33.33% - 20px);
  position: relative;
  overflow: hidden;
  margin-bottom: 30px;
}
.box_gallery ul li:before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 133.33%;
}
.box_gallery ul li img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.box_gallery ul li a {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media print, screen and (max-width: 959px) {
  .box_gallery ul li {
    width: calc(50% - 7px);
    max-width: 300px;
  }
}

.photo_item_list {
  display: block;
}
@media print, screen and (min-width: 960px) {
  .photo_item_list li.-data {
    padding-bottom: 16rem;
    margin-bottom: 103px;
  }
}
.photo_item_list li {
  position: relative;
  margin: 0 auto 135px;
}
.photo_item_list li:last-child {
  margin-bottom: 0;
}
.photo_item_list li:after {
  content: "";
  display: block;
  clear: both;
}
.photo_item_list li .img_box {
  width: 615px;
}
.photo_item_list li .img_box:before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 65.04%;
}
.photo_item_list li .movie_box {
  position: relative;
  width: 566px;
  padding: 3rem;
}
.photo_item_list li .movie_box::before,
.photo_item_list li .movie_box::after {
  content: "";
  position: absolute;
  border: 2px solid #cdbd70;
}
.photo_item_list li .movie_box::before {
  top: 1.5rem;
  right: 1.5rem;
  bottom: 1rem;
  left: 1rem;
}
.photo_item_list li .movie_box::after {
  top: 1rem;
  right: 1rem;
  bottom: 1.5rem;
  left: 1.5rem;
  z-index: -1;
}
.photo_item_list li .movie_wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  border-right: 1px solid #fff;
}
.photo_item_list .movie_box iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.photo_item_list li .info_box {
  background-color: #f9f8f3;
  padding: 20px 15px;
  width: 394px;
  position: absolute;
  bottom: -50px;
  right: 0px;
}
.photo_item_list li .info_box.-data {
  bottom: auto;
}
.photo_item_list li .info_box.-fosset {
  top: 6rem;
  bottom: auto;
}
@media print, screen and (min-width: 960px) {
  .photo_item_list li .info_box.-data {
    top: 30px;
  }
  .photo_item_list .br_sp {
    display: none;
  }
}
.photo_item_list li .info_box .p01 {
  font-size: 36px;
  font-family: "Playfair Display", serif;
  color: #000;
}
.photo_item_list li .info_box .p01_sub {
  font-size: 20px;
  padding-left: 1rem;
}
.photo_item_list li .info_box .p02 {
  font-size: 12px;
  color: #000;
}
.photo_item_list li .info_box .p03 {
  font-size: 16px;
  color: #000;
  margin-top: 20px;
}
.photo_item_list li .info_box .detail {
  display: block;
  font-size: 12px;
  color: #000;
  margin-bottom: 8px;
}
.photo_item_list li .info_box .detail.-caution {
  color: #f54337;
}
@media print, screen and (max-width: 959px) {
  .photo_item_list li {
    max-width: 615px;
    margin-bottom: 66px;
  }
  .photo_item_list li .img_box {
    width: 100%;
  }
  .photo_item_list li .info_box {
    width: 95%;
    right: -5%;
    top: -30px;
    bottom: auto;
    position: relative;
    float: right;
  }
  .photo_item_list li .info_box .p01 {
    font-size: 30px;
  }
  .photo_item_list li .info_box .p02 {
    font-size: 10px;
  }
  .photo_item_list li.-fosset {
    display: flex;
    flex-direction: column;
  }
  .photo_item_list li.-fosset .movie_box {
    order: 2;
  }
  .photo_item_list li.-fosset .info_box {
    top: -30px;
  }
  .photo_item_list li .movie_box {
    width: 100%;
    padding: 2rem;
  }
  .photo_item_list li .movie_box::before {
    top: 1rem;
    right: 1rem;
    bottom: 0.5rem;
    left: 0.5rem;
  }
  .photo_item_list li .movie_box::after {
    top: 0.5rem;
    right: 0.5rem;
    bottom: 1rem;
    left: 1rem;
  }
  .photo_item_list .html5-video-player {
    background: #fff !important;
  }
}

.p_listtop {
  font-family: "Playfair Display", serif;
  font-size: 30px;
  color: #000;
  margin-bottom: 30px;
}

.pageNation {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 50px;
}
.pageNation span,
.pageNation a {
  width: 46px;
  height: 46px;
  line-height: 46px;
  text-align: center;
  border-radius: 50%;
  background-color: #000;
  color: #fff;
  margin: 10px 10px;
}
.pageNation a {
  text-decoration: none;
  background-color: #8a8a8a;
}

.main_copy_title {
  font-family: "Noto Serif JP", serif;
  font-size: 40px;
  text-align: center;
  color: #000;
}
.main_copy_text {
  font-family: "Noto Serif JP", serif;
  font-size: 16px;
  color: #000;
}
@media print, screen and (max-width: 959px) {
  .main_copy_title {
    font-size: 28px;
  }
}

.dl_info {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.dl_info dt {
  width: 150px;
  border-bottom: solid 1px #707070;
  padding: 15px 0;
}
.dl_info dd {
  width: calc(100% - 150px);
  border-bottom: solid 1px #707070;
  padding: 15px 0 15px 20px;
}
.dl_info dd span {
  display: inline-block;
  padding: 3px 10px 5px;
  line-height: 1.1em;
  border-radius: 20px;
  background-color: #707070;
  color: #fff;
  margin: 0px 5px 20px 0px;
}

.flex1 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 55px;
}
.flex1 a {
  margin: 12px 25px;
}

.p_big {
  text-align: center;
  margin: 20px 0 55px;
  font-size: 100px;
  font-family: "Playfair Display", serif;
  line-height: 1;
}

.p_waku1 {
  font-size: 23px;
  padding: 20px 20px;
  margin: 35px auto;
  text-align: center;
  border: solid 3px #000000;
  border-radius: 10px;
}

.ul_sitemap > li {
  color: #000;
  line-height: 1.5;
  padding-bottom: 20px;
}
.ul_sitemap > li > a {
  text-decoration: none;
  color: #000;
}
.ul_sitemap > li > ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 15px 0 0 15px;
}
.ul_sitemap > li > ul > li {
  width: 50%;
  line-height: 1.5;
  padding-bottom: 15px;
}
.ul_sitemap > li > ul > li > a {
  text-decoration: none;
  color: #707070;
}

.slick-wrap {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
}
.slick-wrap .slick-main {
  opacity: 0;
  transition: all 1s;
}
.slick-wrap .slick-main.active {
  opacity: 1;
}

.slick-main .slick-slide {
  margin: 0 60px;
}

.slick-wrap .slick-main .item {
}

.slick-wrap .slick-main .item img {
  width: 100%;
  height: auto;
}
.slick-wrap .slick-next,
.slick-wrap .slick-prev {
  width: 40px;
  height: 40px;
}
.slick-wrap .slick-next:before,
.slick-wrap .slick-prev:before {
  color: #eb996a;
  font-size: 40px;
  opacity: 0.9;
}
.slick-wrap .slick-prev {
  z-index: 1;
  left: calc(15% - 20px);
}
.slick-wrap .slick-prev::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 10px);
  left: calc(50%);
  width: 20px;
  height: 20px;
  border: 1px solid;
  border-color: #707070 #707070 transparent transparent;
  transform: rotate(225deg);
}
.slick-wrap .slick-next {
  z-index: 1;
  right: calc(15% - 20px);
}
.slick-wrap .slick-next::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(50% - 10px);
  right: calc(50%);
  width: 20px;
  height: 20px;
  border: 1px solid;
  border-color: #707070 #707070 transparent transparent;
  transform: rotate(45deg);
}

.slick-wrap .slick-slide {
  transition: opacity 0.3s;
}
.slick-wrap .slick-slide:not(.slick-current) {
  opacity: 0.6;
}
.slick-dots {
  bottom: -30px !important;
}
.slick-dots li button:before {
  font-size: 28px !important;
}
.slick-wrap .slick-main .item a {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

@media print, screen and (max-width: 959px) {
  .slick-initialized .slick-slide {
    margin: 0;
  }
  .slick-wrap .slick-prev {
    left: 5%;
  }
  .slick-wrap .slick-next {
    right: 5%;
  }
  .slick-wrap .slick-main .item img.btn {
    width: 33.33%;
    height: 4.6%;
    top: auto !important;
    bottom: 14%;
    left: 50% !important;
    -webkit-transform: translate(-50%, 0%);
    -moz-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
  }
}

/*HOME　固有*/

body#home #section1 .tabbox {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
body#home #section1 .box_l {
  width: calc(50% - 15px);
}
body#home #section1 .box_r {
  width: calc(50% - 15px);
  text-align: center;
}
body#home #section1 .box_r .img_box {
  height: 100%;
}
body#home #section1 .p01 {
  text-align: center;
  font-size: 22px;
  color: #000;
  margin-bottom: 52px;
}
@media print, screen and (min-width: 960px) {
  body#home #section1 .box_l {
    min-height: 370px;
  }
}
@media print, screen and (max-width: 959px) {
  body#home #section1 .box_l {
    width: 100%;
  }
  body#home #section1 .box_r {
    width: 100%;
    display: none;
  }
  body#home #section1 .p01 {
    font-size: 18px;
    margin-bottom: 30px;
  }
}

body#home #section3 {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-bottom: 140px;
}
body#home #section3 .box_l {
  width: calc(100% - 436px);
  position: relative;
}
body#home #section3 .box_r {
  width: 400px;
  text-align: center;
}
body#home #section3 .box_l .btn2 {
  position: absolute;
  top: 25px;
  right: 0px;
}
@media print, screen and (max-width: 959px) {
  body#home #section3 .box_l {
    width: 100%;
  }
  body#home #section3 .box_r {
    width: 100%;
    max-width: 400px;
    margin: 50px auto 0;
  }
  body#home #section3 .box_l .btn2 {
    top: 10px;
  }
}

body#home #section4 {
  padding: 0px 0;
  text-align: center;
}

body#home #section5 ul {
  display: bloc;
  margin-top: 20px;
}
body#home #section5 ul li {
  width: calc(50% - 80px);
  max-width: 400px;
}
body#home #section5 ul li a {
  display: block;
  text-decoration: none;
  color: #707070;
}
body#home #section5 ul li:nth-child(1) {
  margin-top: 270px;
  float: left;
}
body#home #section5 ul li:nth-child(2) {
  float: right;
}
body#home #section5 ul li:nth-child(3) {
  margin-top: 270px;
  float: right;
}
body#home #section5 ul li:nth-child(4) {
  margin-top: 270px;
  float: left;
}
body#home #section5 ul li .img_box {
  width: 100%;
  padding-bottom: 100%;
}
body#home #section5 ul li h3 {
  margin-top: 28px;
  font-size: 40px;
  margin-bottom: 0;
}
body#home #section5 ul li .p01 {
  margin-top: 28px;
  font-size: 20px;
}
body#home #section5 ul li .p02 {
  margin-top: 28px;
}
@media print, screen and (max-width: 959px) {
  body#home #section5 ul li {
    width: 100%;
    float: none !important;
    margin-top: 100px !important;
    margin-left: auto;
    margin-right: auto;
  }
}

#section6 h2 {
  margin-bottom: 2rem;
}
#section6 .subTitle {
  display: inline-block;
  font-size: 20px;
  font-family: Noto Sans JP, sans-serif;
  color: #707070;
  padding: 0 1rem;
}
#section6 .movie_box {
  position: relative;
  width: 100%;
  padding: 5rem;
}
#section6 .movie_box::before,
#section6 .movie_box::after {
  content: "";
  position: absolute;
  border: 2px solid #cdbd70;
}

#section6 .movie_box::before {
  top: 1.5rem;
  right: 1.5rem;
  bottom: 1rem;
  left: 1rem;
}
#section6 .movie_box::after {
  top: 1rem;
  right: 1rem;
  bottom: 1.5rem;
  left: 1.5rem;
  z-index: -1;
}
#section6 .movie_wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#section6 .movie_box iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media print, screen and (max-width: 959px) {
  #section6 .subTitle {
    display: none;
  }
  #section6 .movie_box {
    padding: 3rem;
  }
}

/*aboutページ固有*/
body#about h2 {
  text-align: center;
}
body#about .mv {
}

body#about #section1 {
  padding-bottom: 0;
}
body#about #section1 .main_copy_title {
  color: #000;
  margin: 90px auto 0;
}
body#about #section1 .main_copy_text {
  margin: 80px auto 0;
}
@media print, screen and (max-width: 959px) {
  body#about #section1 .main_copy_title {
    color: #000;
    margin: 45px auto 0;
  }
  body#about #section1 .main_copy_text {
    margin: 40px auto 0;
  }
}
body#about #section1 .ul_list1 {
  margin-top: 60px;
}
body#about #section1 .ul_list1 .p01 {
  font-family: "Playfair Display", serif;
  font-size: 28px;
  color: #000;
  min-height: inherit;
}
body#about #section1 .ul_list1 li {
  position: relative;
  padding-bottom: 40px;
  margin-bottom: 60px;
  width: 300px;
}
body#about #section1 .ul_list1 li a {
  display: inline-block;
  color: #fff;
  position: absolute;
  right: 0px;
  bottom: 0px;
}
@media print, screen and (max-width: 959px) {
  body#about #section1 .ul_list1 li {
    margin-bottom: 40px;
  }
}

body#about #section3 .dl_info,
body#about #section3 .flex1 {
  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
}
body#about #section3 .flex1 a {
  width: 220px;
  text-align: center;
}
body#about #section3 .dl_info dd {
}
@media print, screen and (max-width: 619px) {
  body#about #section3 .dl_info {
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
    position: relative;
  }
  body#about #section3 .dl_info dt {
    width: 100%;
    border-bottom: none;
    padding: 15px 20px 0 10px;
  }
  body#about #section3 .dl_info dd {
    width: 100%;
    padding: 0 20px 15px 20px;
  }
  body#about #section3 .dl_info dd span {
    margin-bottom: 10px;
  }
}
body#about #section3 .googlemap {
  position: relative;
  width: 100vw;
  height: 650px;
  left: 50%;
  transform: translateX(-50%);
  margin-top: 70px;
}
body#about #section3 .googlemap iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

/*撮影メニュー（ウェブページ）固有*/
body#infoWebpage {
}
body#infoWebpage h1 {
  text-align: center;
  position: relative;
  color: #000000;
  margin-bottom: 85px;
  font-size: 20px;
}
body#infoWebpage h1:before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #d5d5d5;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
}
body#infoWebpage h1 span.jp {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  display: inline-block;
  background-color: #fff;
  padding: 0 15px;
}
body#infoWebpage h1 span.en {
  font-family: "Playfair Display", serif;
  display: block;
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 14px;
  font-weight: normal;
}
body#infoWebpage h2 {
  text-align: center;
}
body#infoWebpage h2.midasi2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
}
body#infoWebpage p.p_midasi_en {
  text-align: center;
  font-size: 50px;
  font-family: 'Playfair Display', serif;
  color: #000;
  font-weight: normal;
  line-height: 1.3;
}
@media print, screen and (max-width: 959px) {
  body#infoWebpage h1 {
    margin-bottom: 101px;
  }
  body#infoWebpage h2.midasi2 {
    font-size: 16px;
  }
  body#infoWebpage p.p_midasi_en {
    font-size: 30px;
  }
}
body#infoWebpage #section1 {
  padding-top: 37px;
  border-bottom: solid 1px #d5d5d5;
  padding-bottom: 143px;
}
body#infoWebpage #section1 .main_copy_title {
  color: #000;
  width: 90%;
  max-width: 960px;
  margin: 0 auto;
}
body#infoWebpage #section1 .main_copy_text {
  width: 90%;
  max-width: 960px;
  margin: 43px auto 0;
}
body#infoWebpage #section1 .youtube_box {
	margin:50px auto 0;
	width:90%;
	max-width:700px;
	position:relative;
}
body#infoWebpage #section1 .youtube_box:before {
	content:"";
	display:block;
	padding-bottom:56.25%;
}
body#infoWebpage #section1 .youtube_box iframe {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
@media print, screen and (max-width: 959px) {
  body#infoWebpage #section1 {
    padding-top: 23px;
  }
}

body#infoWebpage #section2 {
  padding-top: 100px;
}
body#infoWebpage #section2 .box_l {
  float: left;
  width: calc(50% - 27.5px);
}
body#infoWebpage #section2 .box_r {
  float: right;
  width: calc(50% - 27.5px);
}
body#infoWebpage #section2 .box_r .p_title {
  font-size: 26px;
  margin: 50px 0 31px;
}
body#infoWebpage #section2 .box_r .p_title:nth-child(1) {
  margin-top: 0px;
}
@media print, screen and (max-width: 959px) {
  body#infoWebpage #section2 {
    padding-top: 70px;
  }
  body#infoWebpage #section2 .box_l {
    float: none;
    width: 100%;
  }
  body#infoWebpage #section2 .box_r {
    float: none;
    width: 100%;
  }
  body#infoWebpage #section2 .box_r .p_title {
    font-size: 22px;
    margin: 52px 0 30px;
  }
  body#infoWebpage #section2 .box_r .p_title:nth-child(1) {
    margin-top: 41px;
  }
}

.box_campaign {
  text-align: center;
  max-width: 550px;
  margin: 0 auto;
}
.box_plan {
  text-align: center;
  max-width: 550px;
  margin: 0 auto;
}

.photoCategories .photoCategories_list {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
.photoCategories .photoCategories_list > li {
  width: calc(100% / 6 - 10px);
  margin: 0 10px 10px 0;
}
.photoCategories .photoCategories_list > li > a {
  position: relative;
  display: block;
  width: 100%;
  text-align: center;
  padding: 10px 0;
  color: #fff;
  background-color: #cbcbcb;
  border-radius: 4px;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;

  text-decoration: none;
  font-size: 14px;
  line-height: 1;
}

.photoCategories .photoCategories_list > li > a.current {
  background-color: #444444;
}

.photoCategories .photoCategories_list > li > a:before {
  content: "";
  display: block;
  border: 4px solid #fff;
  border-color: transparent transparent transparent #fff;
  border-radius: 2px;
  position: absolute;
  top: 50%;
  left: 5px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.photoCategories .photoCategories_list > li > a:hover {
  background-color: #444444;
}
@media print, screen and (max-width: 959px) {
  .photoCategories .photoCategories_list {
    justify-content: space-between;
  }
  .photoCategories .photoCategories_list > li {
    width: calc(100% / 2 - 10px);
    margin: 0 0 10px 0;
  }
}

.photoNote {
  padding: 0 0 40px;
  font-weight: bold;
  text-align: center;
}

.photoList {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.photoList .photoList_item {
  position: relative;
  width: 240px;
  border: 1px solid #ccc;
  margin: 5px;
}

.photoList .photoList_item > a {
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.photoList .photoList_item > a:hover {
}

.photoList .photoList_item > a:hover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.photoList .photoList_image {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.photoList .photoList_image > img {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  position: relative;
  -webkit-transform: scale(1);
  transform: scale(1);
}

@media print, screen and (max-width: 959px) {
  .photoList {
    width: 100%;
  }
  .photoList .photoList_item {
    width: calc(25% - 10px);
  }
}

#main_blog {
  max-width: 960px;
  width: 90%;
  margin: 0 auto;
  font-family: "Noto Sans JP", sans-serif;
}
.blog2col {
  display: flex;
  justify-content: space-between;
}
.blog2col .blog2col_left {
  width: 65.625%;
}
.blog2col .blog2col_right {
  width: calc(34.375% - 30px);
}
.blog2col .blog2col_right .box_sticky {
  position: sticky;
  top: 170px;
}
@media print, screen and (max-width: 959px) {
  .blog2col .blog2col_right .box_sticky {
    top: 60px;
  }
}
@media print, screen and (max-width: 768px) {
  .blog2col .blog2col_left {
    width: 100%;
  }
  .blog2col .blog2col_right {
    display: none;
  }
}
.blog2col .blog2col_right .top_link a {
  display: block;
  border: 1px solid #707070;
  padding: 10px 15px;
  text-decoration: none;
  color: #707070;
  font-size: 15px;
}
#main_blog .mokuji > ol {
  padding-left: 0px;
  margin-top: 10px;
  counter-reset: num;
  list-style-type: none;
}
#main_blog .mokuji > ol > li {
  margin-bottom: 10px;
  font-size: 15px;
  line-height: 1.4;
  padding-left: 20px;
  position: relative;
}
#main_blog .mokuji > ol > li::before {
  counter-increment: num;
  content: counter(num);
  margin-right: 10px;
  font-size: 15px;
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}
#main_blog .mokuji > ol > li > ol {
  margin-top: 10px;
  padding-left: 10px;
  counter-reset: num2;
  list-style-type: none;
}
#main_blog .mokuji > ol > li > ol > li {
  margin-bottom: 10px;
  font-size: 15px;
  line-height: 1.4;
  padding-left: 30px;
  position: relative;
}
#main_blog .mokuji > ol > li > ol > li::before {
  counter-increment: num2;
  content: counter(num) "-" counter(num2);
  margin-right: 10px;
  font-size: 15px;
  font-weight: bold;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
}
.blog2col .blog2col_right .mokuji {
  border: 1px solid #707070;
  padding: 10px 15px;
  margin-top: 15px;
}
.blog2col .blog2col_right .mokuji .title {
  font-size: 15px;
  color: #5A5A5A;
  font-weight: bold;
  margin: 0;
}
.blog2col .blog2col_right .mokuji ol li a {
  color: #5A5A5A;
  font-size: 15px;
  text-decoration: none;
  text-align: justify;
}
#main_blog h1 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 40px;
  text-align: justify;
  margin-bottom: 10px;
}
#main_blog .box_time {
  margin-bottom: 50px;
  text-align: right;
}
#main_blog .box_time p {
  display: inline-block;
  font-size: 14px;
  margin-left: 10px;
}
@media print, screen and (max-width: 959px) {
  #main_blog h1 {
    font-size: 32px;
    margin-bottom: 40px;
  }
}
@media print, screen and (max-width: 768px) {
  #main_blog h1 {
    font-size: 24px;
    margin-bottom: 30px;
  }
}
#main_blog .main_img_bottom {
  margin-top: 20px;
}

#main_blog .blog_entry_body .mokuji {
  margin-top: 40px;
  padding: 20px 20px;
  background-color: #F6F6F6;
}
#main_blog .blog_entry_body .mokuji .title {
  font-size: 24px;
  color: #5A5A5A;
  font-weight: bold;
  margin: 0;
}
#main_blog .blog_entry_body .mokuji ol li {
  padding-left: 25px;
}
#main_blog .blog_entry_body .mokuji ol li li {
  padding-left: 40px;
}
#main_blog .blog_entry_body .mokuji li::before {
  font-size: 20px;
}
#main_blog .blog_entry_body .mokuji a {
  color: #5A5A5A;
  font-size: 20px;
  text-decoration: none;
}
@media print, screen and (max-width: 768px) {
  #main_blog .blog_entry_body .mokuji {
    margin-top: 30px;
  }
  #main_blog .blog_entry_body .mokuji .title {
    font-size: 20px;
  }
  #main_blog .blog_entry_body .mokuji a {
    font-size: 16px;
  }
}
#main_blog .blog_entry_back {
  margin-top: 30px;
  margin-bottom: 85px;
  text-align: center;
}
#main_blog .box_red {
  background-color: #FFEBF6;
  padding: 20px 20px;
  font-size: 20px;
  margin: 1em 0 1em;
}
#main_blog .box_red .midasi {
  font-size: 24px;
  font-weight: bold;
}
#main_blog .box_red ul {
  list-style: disc;
  padding-left: 25px;
  margin-top: 10px;
}
@media print, screen and (max-width: 768px) {
  #main_blog .blog_entry_back {
    margin-top: 20px;
    margin-bottom: 40px;
  }
  #main_blog .box_red {
    font-size: 18px;
  }
  #main_blog .box_red .midasi {
    font-size: 20px;
  }
}

#main_blog .blog_entry_body h2,
#main_blog .blog_entry_body h3,
#main_blog .blog_entry_body h4 {
  font-family: "Noto Sans JP", sans-serif;
  margin-bottom: 20px;
}
#main_blog .blog_entry_body h2 {
  margin: 50px 0 30px;
  font-size: 28px;
  color: #3D3D3D;
  font-weight: bold;
  position: relative;
}
@media print, screen and (max-width: 768px) {
  #main_blog .blog_entry_body h2 {
    margin: 30px 0 30px;
  }
}
#main_blog .blog_entry_body h2:before {
  content: "";
  display: block;
  width: 100%;
  height: 6px;
  background-color: #D8D8D8;
  position: absolute;
  bottom: -10px;
  left: 0;
}
#main_blog .blog_entry_body h2:after {
  content: "";
  display: block;
  width: 25%;
  height: 6px;
  background-color: #8F8F8F;
  position: absolute;
  bottom: -10px;
  left: 0;
}
#main_blog .blog_entry_body h3 {
  margin: 45px 0 20px;
  font-size: 24px;
  color: #3D3D3D;
  font-weight: bold;
}
@media print, screen and (max-width: 768px) {
  #main_blog .blog_entry_body h3 {
    margin: 30px 0 15px;
  }
}
#main_blog .blog_entry_body p {
  margin: 1em 0 1em;
}
#main_blog .blog_entry_body .box1 {
  margin: 20px 0;
  border: 1px solid #707070;
  display: flex;
  justify-content: center;
  position: relative;
}
#main_blog .blog_entry_body .box1 a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#main_blog .blog_entry_body .box1 .img_box{
  width: 25%;
}
#main_blog .blog_entry_body .box1 .img_box img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#main_blog .blog_entry_body .box1 .box_r{
  width: 75%;
}
#main_blog .blog_entry_body .box1 .box_r p{
  margin: 0;
  line-height: 1.3;
  text-align: justify;
  font-size: 14px;
}
#main_blog .blog_entry_body .box1 .box_r .p1{
  margin: 0;
  background-color: #707070;
  color: #fff;
  padding: 5px 10px;
  font-size: 15px;
  position: relative;
}
#main_blog .blog_entry_body .box1 .box_r .p1:before{
  content: "";
  display: block;
  line-height: 1;
  width: 10px;
  height: 10px;
  border: 2px solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%) translateX(-100%) rotate(45deg);
}
#main_blog .blog_entry_body .box1 .box_r .p2{
  padding: 10px 10px 5px;
  font-size: 15px;
  font-weight: bold;
}
#main_blog .blog_entry_body .box1 .box_r .p3{
  padding: 5px 10px 10px;
}


#main_blog .author_box {
  margin-top: 70px;
  padding: 15px 15px;
  background-color: #F6F6E1;
  display: flex;
  justify-content: center;
  gap: 20px;
}
#main_blog .main_img + .author_box {
  margin-top: 20px;
}
#main_blog .author_box .box_l {
  width: 16%;
}
#main_blog .author_box .box_l img {
  border-radius: 50%;
}
#main_blog .author_box .box_r {
  width: calc(84% - 20px);
}
#main_blog .author_box .box_r .author_name {
  font-size: 17px;
  font-weight: bold;
}
#main_blog .author_box .box_r .author_profile {
  font-size: 15px;
}
@media print, screen and (max-width: 768px) {
  #main_blog .author_box {
    margin-top: 40px;
  }
}
#main_blog .midasi_list {
  margin-top: 60px;
  text-align: center;
  padding: 15px 0;
  background-color: #F6F6F6;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-weight: bold;
}
@media print, screen and (max-width: 768px) {
  #main_blog .midasi_list {
    margin-top: 40px;
    margin-bottom: 20px;
  }
}
#main_blog .midasi_cate {
  font-size: 20px;
  font-weight: bold;
  font-family: "Noto Sans JP", sans-serif;
  margin: 25px 0 0 0;
}
#main_blog .ul_blog_list {
  margin-top: 0px;
  margin-left: 1em;
}
#main_blog .ul_blog_list li {
  border-bottom: 1px dashed #ccc;
}
#main_blog .ul_blog_list li a {
  display: block;
  padding: 15px 40px 15px 0;
  color: #3D3D3D;
  font-size: 16px;
  text-decoration: none;
  font-family: "Noto Sans JP", sans-serif;
  position: relative;
}
#main_blog .ul_blog_list li a:before {
  content: "";
  display: block;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background-color: #EBEBEB;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
#main_blog .ul_blog_list li a:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  color: #616161;
  width: 8px;
  height: 8px;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%) translateX(-100%) rotate(45deg);
}
#main_blog .ul_blog_list li a .title {
  font-weight: bold;
  font-size: 17px;
  text-align: justify;
}
#main_blog .ul_blog_list li a .excerpt {
  font-size: 15px;
  margin-top: 5px;
  text-align: justify;
}

.blogEntryList {
  box-sizing: border-box;
  margin: 0 auto 30px;
}

@media only screen and (max-width: 768px) {
  .blogEntryList {
    width: 90%;
  }
}

@media print, screen and (min-width: 769px) {
  .blogEntryList {
    width: 100%;
    max-width: 960px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
}

.blogEntryList > .item {
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}

@media only screen and (max-width: 768px) {
  .blogEntryList > .item {
    border-bottom: 1px solid #eee;
    padding-bottom: 30px;
    margin-bottom: 30px;
  }
  .blogEntryList > .item:last-child {
    margin-bottom: 0;
  }
}

@media print, screen and (min-width: 769px) {
  .blogEntryList > .item {
    width: 240px;
    margin: 15px 0;
    border-right: 1px solid #ddd;
  }
  .blogEntryList > .item:nth-child(4n + 1) {
    border-left: 1px solid #ddd;
  }
}

@media print, screen and (min-width: 769px) and (max-width: 960px) {
  .blogEntryList > .item:nth-child(3n + 1) {
    border-left: 1px solid #ddd;
  }
}

.blogEntryList > .item > a {
  display: block;
  width: 100%;
  height: 100%;
  transition: all 0.4s;
  text-decoration: none;
  color: #707070;
}

@media only screen and (max-width: 768px) {
  .blogEntryList > .item > a {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
  }
}

.blogEntryList > .item > a:hover {
  text-decoration: none;
  background-color: #f9f9f9;
  opacity: 0.8;
}

@media print, screen and (min-width: 769px) {
  .blogEntryList > .item > a:hover .thumb > img {
    transform: translate(-50%, -50%) scale(1.05);
  }
}

@media only screen and (max-width: 768px) {
  .blogEntryList > .item .thumb {
    width: 30%;
  }
}

@media print, screen and (min-width: 769px) {
  .blogEntryList > .item .thumb {
    width: 240px;
    height: 174px;
    overflow: hidden;
    position: relative;
    z-index: 1;
  }
}

@media print, screen and (min-width: 769px) {
  .blogEntryList > .item .thumb > img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1);
    transition: transform 0.4s;
  }
}

.blogEntryList > .item .info {
  box-sizing: border-box;
}

@media only screen and (max-width: 768px) {
  .blogEntryList > .item .info {
    width: 68%;
    padding: 0 10px 5px;
  }
}

@media print, screen and (min-width: 769px) {
  .blogEntryList > .item .info {
    padding: 15px 12px;
  }
}

.blogEntryList > .item .info .ttl {
  font-size: 88%;
  font-weight: bold;
  line-height: 1.45;
}

.blogEntryList > .item .info .desc {
  font-size: 81%;
  line-height: 1.45;
  text-align: justify;
}

.blogEntryList > .item .date {
  display: block;
  font-weight: normal;
  font-family: arial, sans-serif;
  text-align: right;
  margin: 8px 0;
}

.blogEntryList > .item .category {
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 2;
  display: inline-block;
  padding: 2px 4px;
  background-color: #707070;
  color: #fff;
  font-size: 11px;
  font-weight: normal;
  border-radius: 3px;
}

@media only screen and (max-width: 768px) {
  .blogEntryList > .item .label_new {
    width: auto;
    height: auto;
    padding: 2px 4px;
    margin-right: 5px;
  }
}

@media print, screen and (min-width: 769px) {
  .blogEntryList > .item .label_new {
    position: absolute;
    top: 162px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
  }
}

.breadclumbs_box {
  position: relative;
  width: 95%;
  max-width: 960px;
  margin: -30px auto 65px;
}
ul.breadclumbs {
  display: flex;
}
@media print, screen and (max-width: 768px) {
  .breadclumbs_box {
    margin: -60px auto 30px;
  }
  ul.breadclumbs {
    overflow-x: scroll;
    word-break: keep-all;
    white-space: nowrap;
  }
}
ul.breadclumbs li {
  list-style-type: none;
  font-size: 14px;
  color: #A1A1A1;
}
ul.breadclumbs li::after {
  content: " » ";
  margin: 0 8px;
}
ul.breadclumbs li:last-child::after {
  content: none;
}
ul.breadclumbs li a {
  color: #A1A1A1;
  font-size: 14px;
  text-decoration: none;
}

.no_kiji {
  padding: 40px 0;
  text-align: center;
}

.blog_entry .under {
  background: linear-gradient(transparent 50%, #ffeb52 70%);
}

.blog_entry .important-points {
  border: 2px dashed #ca7e69;
  padding: 20px;
  border-radius: 10px;
  background-color: #fffefd;
  max-width: 600px;
  margin: 20px auto;
}
.blog_entry .important-points .title {
  display: inline-block;
  padding: 5px 10px;
  font-weight: bold;
  background-color: #d39383;
  color: #fff;
  border-radius: 5px;
  margin-bottom: 10px;
  font-size: 1rem;
}
.blog_entry .important-points ul {
  list-style: none;
  padding: 0;
  margin: 15px 0 0 0;
}
.blog_entry .important-points ul li {
  margin-bottom: 10px;
  padding-left: 20px;
  position: relative;
  font-size: 0.95rem;
}
.blog_entry .important-points ul li::before {
  content: "①";
  position: absolute;
  left: 0;
  color: #d39383;
  font-weight: bold;
}
.blog_entry .important-points ul li:nth-child(2)::before {
  content: "②";
}
.blog_entry .important-points ul li:nth-child(3)::before {
  content: "③";
}
.blog_entry .important-points ul li:nth-child(4)::before {
  content: "④";
}
.blog_entry .important-points ul li:nth-child(5)::before {
  content: "⑤";
}
@media (max-width: 600px) {
  .blog_entry .important-points {
      padding: 15px;
  }
  .blog_entry .important-points .title {
      font-size: 0.9rem;
  }
  .blog_entry .important-points ul li {
      font-size: 0.9rem;
  }
}