@charset "utf-8";
/*post css*/
#post #post_body .center {
  text-align: center!important;
  justify-content: center!important;
}
#post #post_body .bgc-white {
  background: #fff!important;
}
#post #post_body .inner {
  padding: 50px!important;
}

#post #post_body .wrap {
  padding-bottom: 100px;
}
#post #post_body .lead_txt {
  margin: 0 0 60px!important;
}
#post #post_body h2 {
  text-align: center;
  color: var(--mainColor);
  font-size: 36px;
  line-height: 1.6em;
  font-weight: 500;
  margin: 0 0 50px;
}
#post #post_body h3 {
  color: var(--mainColor);
  font-size: 28px;
  line-height: 1.6em;
  font-weight: 500;
  margin: 0 0 30px;
}
#post #post_body h4 {
  color: var(--mainColor);
  font-size: 18px;
  line-height: 1.6em;
  font-weight: 600;
  margin: 0 0 20px;
}
/* 2025/09/16追加ここから */
#post #post_body h3 ~ h3 {
  margin-block-start: 50px;
}
#post #post_body h4 ~ h4 {
  margin-block-start: 20px;
}
/* 2025/09/16追加ここまで */
#post #post_body h3.border,
#post #post_body h4.border {
  padding: 0 0 10px;
  border-bottom: 1px solid var(--mainColor);
}
#post #post_body h3.l-border,
#post #post_body h4.l-border {
  padding-left: .5em;
  border-left: solid 5px var(--mainColor);
}
#post #post_body h4.b-border,
#post #post_body h5.b-border {
  display: inline-block;
  margin-bottom: .5em;
  border-bottom: dashed 3px var(--mainColor);
}
#post #post_body p {
  color: var(--mainColor);
  font-size: 16px;
  line-height: 1.8em;
  margin: 0;
  padding: 0;
}
#post #post_body p.txt-sml {
  font-size: 14px;
  line-height: 1.6em;
}
#post #post_body p.caption {
  color: var(--mainColor);
  font-size: 14px;
  line-height: 1.6em;
  margin: 5px 0 0 0;
  padding: 0;
}

#post #post_body .section {
  width: 100%;
  margin: 0;
  padding: 0;
}
#post #post_body .section + .section {
  margin-top: 100px;
}
#post #post_body .half_box-pc,
#post #post_body .half_box-pc-sp {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 50px;
}
#post #post_body .half_box-pc > div,
#post #post_body .half_box-pc-sp > div {
  width: calc((100% - 50px)/2);
}
#post #post_body .half_box-pc + .half_box-pc,
#post #post_body .half_box-pc-sp + .half_box-pc-sp {
  margin-top: 65px;
}

#post #post_body table {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}
#post #post_body table tr {
  width: 100%;
  border-bottom: 1px solid var(--mainColor);
}
#post #post_body table tr th,
#post #post_body table tr td {
  font-size: 14px;
  line-height: 1.8em;
  text-align: left;
  vertical-align: middle;
}
#post #post_body table tr th {
  width: 25px;
}
#post #post_body table tr td {
  padding: 10px;
}
#post #post_body table tr td:nth-child(2) {
  width: 100px;
  text-align: center;
}
/* 2025/09/16追加ここから */
#post #post_body table.price {
  margin-inline: 0 auto;
  width: auto;
}
#post #post_body table.price:not(:last-child) {
  margin-block-end: 20px;
}
#post #post_body table.price caption {
  text-align: left;
}
#post #post_body table.price tr th,
#post #post_body table.price tr td {
  font-size: 14px;
  line-height: 1.8em;
  text-align: left;
  padding: 10px;
  vertical-align: middle;
}
#post #post_body table.price tr th {
  width: auto;
}
#post #post_body table.price tr td:nth-child(2) {
  width: auto;
  text-align: left;
}
/* 2025/09/16追加ここまで */
#post #post_body .btn_box {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 0;
}
#post #post_body .btn_box + .btn_box {
  margin-top: 50px;
}
#post #post_body .btn_box .btn_list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 20px;
}
#post #post_body .btn_box h4 {
  width: 100%;
  font-size: 18px;
  line-height: 2em;
  font-weight: 600;
  margin-bottom: 20px;
}
#post #post_body .btn_box p {
  width: 100%;
  font-size: 14px;
  line-height: 1.8em;
  font-weight: 600;
}
#post #post_body .btn_box .btn_list + p {
  margin-top: 20px;
}
#post #post_body .btn_box.center .btn_list {
  justify-content: center;
}
#post #post_body .btn_box.center h4,
#post #post_body .btn_box.center p {
  text-align: center;
}
#post #post_body .btn_box .btn_list a {
  display: flex;
  width: calc((100% - 20px)/2);
  max-width: 520px;
  height: 80px;
  background: #F0F0DC;
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  color: var(--mainColor);
  font-size: 16px;
  line-height: 1.6em;
  font-weight: normal;
  position: relative;
}
#post #post_body .btn_box .btn_list a.arrow:after {
  content: '';
  width: 21px;
  height: 9px;
  background: url(../images/icon/arrow.svg) no-repeat center / contain;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translate(0,-50%);
  transition: .3s;
}
#post #post_body .btn_box .btn_list a.arrow:hover:after {
  right: 10px;
}
#post #post_body .btn_box .btn_list a.gold {
  background: var(--ColorGold);
  color: #fff;
}
#post #post_body .btn_box .btn_list a.basic {
  background: var(--mainColor);
  color: #fff;
}
#post #post_body .btn_box .btn_list a.basic.arrow:after,
#post #post_body .btn_box .btn_list a.gold.arrow:after {
  background: url(../images/icon/arrow-wht.svg) no-repeat center / contain;
}
#post #post_body .btn_box .btn_list a.link:after {
  content: '';
  width: 14px;
  height: 14px;
  background: url(../images/icon/link.svg) no-repeat center / contain;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translate(0,-50%);
}
#post #post_body .btn_box .btn_list a.basic.link:after,
#post #post_body .btn_box .btn_list a.gold.link:after {
  background: url(../images/icon/link-wht.svg) no-repeat center / contain;
}

#post #post_body .clr_box {
  background: #F0F0DC;
  width: 100%;
  padding: 50px;
}
#post #post_body .clr_box.gray {
  background: #EBEBEB;
}
#post #post_body .img img {
  border-radius: 10px;
}
/* 2025/09/16追加ここから */
#post #post_body .img img ~ img {
  margin-block-start: 20px;
}
/* 2025/09/16追加ここまで */
#post #post_body .txt_img {
  display: flex;
  flex-wrap: wrap;
  gap: 50px;
  justify-content: center;
}
#post #post_body .txt_img.reverse-pc,
#post #post_body .txt_img.reverse-pc-sp {
  flex-direction: row-reverse;
}
#post #post_body .txt_img.a-center {
  align-items: center;
}
#post #post_body .txt_img .img {
  width: 31.3%;
}
#post #post_body .txt_img .txt {
  width: calc(68.7% - 50px);
}
#post #post_body .gallery {
  width: 100%;
  max-width: 905px;
  margin: 0 auto;
  padding-bottom: 70px;
}
#post #post_body .gallery .slider {
  width: 100%;
  margin: 0 0 15px;
  position: inherit;
}
#post #post_body .gallery .thumbnail {
  position: relative;
}
#post #post_body .gallery .slider .slick-slide,
#post #post_body .gallery .thumbnail .slick-slide {
  margin: 0 7.5px;
}
#post #post_body .gallery .slick-arrow {
  top: unset;
  bottom: 0;
  transform: translate(0,0);
}
#post #post_body .gallery .slick-arrow.slick-prev {
  left: 50%;
  transform: translate(calc(-100% - 10px), 0);
}
#post #post_body .gallery .slick-arrow.slick-next {
  right: 50%;
  transform: translate(calc(100% + 10px), 0);
}
#post #post_body .gallery.slide-one {
  padding-bottom: 0;
}
#post #post_body .gallery.slide-one .thumbnail {
  display: none;
}



#post #post_body p + table {
  margin-top: 30px;
}
#post #post_body .btn_box + .btn_box {
  margin-top: 50px;
}
#post #post_body p + .btn_box,
#post #post_body table + .btn_box,
#post #post_body div + .btn_box,
#post #post_body p + .clr_box,
#post #post_body table + .clr_box,
#post #post_body div + .clr_box,
#post #post_body .clr_box + .clr_box {
  margin-top: 100px;
}

/* ========================================================================================================
   1349px以下
   ========================================================================================================*/
@media screen and (max-width: 1349px) {
}


/* ========================================================================================================
   999px以下
   ========================================================================================================*/
@media screen and (max-width: 999px) {  
}


/* ========================================================================================================
   767px以下
   ========================================================================================================*/
@media screen and (max-width: 767px) {
  #post #post_body .sp-left,
  #post #post_body .center.sp-left,
  #post #post_body .center .sp-left {
    text-align: left!important;
  }
  #post #post_body .img img {
    border-radius: 6px;
  }
  #post #post_body .wrap {
    padding-bottom: 80px;
  }
  #post #post_body .half_box-pc {
    gap: 40px;
  }
  #post #post_body .half_box-pc > div {
    width: 100%;
  }
  #post #post_body .half_box-pc-sp {
    gap: 20px;
  }
  #post #post_body .half_box-pc-sp > div {
    width: calc((100% - 20px)/2);
  }
  #post #post_body .txt_img.reverse-pc {
    flex-direction: row;
  }
  #post #post_body .half_box-pc + .half_box-pc,
  #post #post_body .half_box-pc-sp + .half_box-pc-sp {
    margin-top: 50px;
  }
  #post #post_body .txt_img {
    gap: 30px;
  }
  #post #post_body .section + .section {
    margin-top: 60px;
  }
  #post #post_body .lead_txt {
    font-size: 14px!important;
    margin: 0 0 40px!important;
  }
  #post #post_body h2 {
    font-size: 24px;
    margin: 0 0 40px;
  }
  #post #post_body h3 {
    font-size: 20px;
  }
  #post #post_body h4 {
    font-size: 16px;
    margin-bottom: 15px;
  }
  #post #post_body .btn_box h4 {
    font-size: 16px;
  }
  #post #post_body p,
  #post #post_body ul {
    font-size: 14px;
  }
  #post #post_body .clr_box,
  #post #post_body .inner {
    padding: 40px 20px!important;
  }
  #post #post_body .btn_box .btn_list a {
    width: 100%;
    height: 60px;
    border-radius: 6px;
    font-size: 14px;
  }
  #post #post_body .btn_box .btn_list + p {
    margin-top: 10px;
  }
  #post #post_body .btn_box .btn_list a.arrow:after {
    width: 14px;
    height: 6px;
    right: 15px;
  }
  #post #post_body .btn_box .btn_list a.link:after {
    right: 15px;
  }
  #post #post_body table tr th, #post #post_body table tr td {
    font-size: 12px;
  }
  #post #post_body table tr td:nth-child(2) {
    width: 60px;
  }
  #post #post_body .txt_img .img {
    gap: 20px;
  }
  #post #post_body .txt_img .txt,
  #post #post_body .txt_img .img {
    width: 100%;
  }
  #post #post_body p.txt-sml,
  #post #post_body p.caption,
  #post #post_body p.caption {
    font-size: 12px;
    line-height: 1.6em;
  }
  
}
/* ========================================================================================================
   499px以下
   ========================================================================================================*/
@media screen and (max-width: 499px) {

}