@charset "UTF-8";
#Wrap {
  width: 100%;
}

.sp_only {
  display: block;
}

.wrapBottom,
.wrapTop {
  width: 100%;
}

#Contents {
  padding-top: 0;
}

#lp_contents {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  list-style: none;
  padding: 0;
  margin: 0;
  color: #000;
  overflow: hidden;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 400;
}

@media only screen and (min-width: 768px), print {
  #lp_contents {
    margin: 2rem auto 6rem;
  }
  .sp_only {
    display: none;
  }
}

#lp_contents a {
  display: block;
  text-decoration: none;
  color: inherit;
}

@media only screen and (min-width: 768px), print {
  #lp_contents a:hover {
    opacity: .7;
  }
}

#lp_contents p,
#lp_contents ul,
#lp_contents ol,
#lp_contents dl {
  margin: 0;
}

#lp_contents li {
  list-style: none;
}

#lp_contents img {
  width: 100%;
  height: auto;
  position: relative;
  -webkit-backface-visibility: hidden;
}

#lp_contents span {
  display: inline-block;
}

#lp_contents video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.image_hover_bg {
  position: relative;
}

.image_hover_bg::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #fff;
}

a:hover .image_hover_bg::before {
  opacity: 1;
}

.bredlist.lp {
  min-width: auto;
  max-width: none;
  margin: 0 auto;
}

#lp_contents picture,
#lp_contents video {
  display: block;
}

#lp_contents .pc {
  display: none !important;
}

@media only screen and (min-width: 768px), print {
  #lp_contents .sp {
    display: none !important;
  }
  #lp_contents .pc {
    display: block !important;
  }
}

.fade {
  opacity: 0;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
}

.fade_in {
  opacity: 1;
}

.slide_x {
  overflow-x: hidden;
  position: relative;
}

.slide_x::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 2;
  top: 0;
  left: 0;
  -webkit-transition: all 1.2s 0s ease;
  transition: all 1.2s 0s ease;
}

.fade_on::before {
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  z-index: 1;
}

#lp_contents .slick-dots li.slick-active {
  position: relative;
}

#lp_contents .slick-dots li.slick-active button {
  content: "";
  width: 0;
  background-color: #000;
  -webkit-animation-duration: 3.8s;
          animation-duration: 3.8s;
  -webkit-animation-name: slide_bg;
          animation-name: slide_bg;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: ease-out;
          animation-timing-function: ease-out;
}

@-webkit-keyframes slide_bg {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}

@keyframes slide_bg {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}

@media screen and (min-width: 768px) and (max-width: 1400px) {
  html {
    font-size: calc(10* (100vw / 1400)) !important;
  }
}

@media screen and (max-width: 767px) {
  .sp_lp_m0 {
    margin: 0 !important;
  }
}

@media only screen and (min-width: 768px), print {
  .breadcrumb_wrap {
    width: 140rem;
    margin: auto;
  }
}

@media only screen and (min-width: 768px), print {
  #breadcrumb.edit_lp .cateList {
    margin: 0 auto 30px 120px;
  }
}

#lp_contents .slick-dots li {
  width: calc(70 *(100vw / 750));
  height: calc(4 *(100vw / 750));
  margin: 0 calc(10 *(100vw / 750));
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #B2B2B2;
}

@media only screen and (min-width: 768px), print {
  #lp_contents .slick-dots li {
    width: 3.5rem;
    height: 2px;
    margin: 0 0.5rem;
  }
}

#lp_contents .slick-dots li button {
  height: 100%;
  width: 100%;
  padding: 0;
}

#lp_contents .slick-dots li button:before {
  content: "";
  height: 100%;
  width: 100%;
}

#lp_contents .slick-dots li.slick-active button:before {
  opacity: 1;
  width: 100%;
  height: 100%;
}

#lp_contents .slick-dots {
  position: initial;
  margin-top: calc(30 *(100vw / 750));
  text-align: left;
}

@media only screen and (min-width: 768px), print {
  #lp_contents .slick-dots {
    margin-top: 1.5rem;
  }
}

#lp_contents .slick-dots li:first-of-type {
  margin-left: 0 !important;
}

#lp_contents .slick-arrow {
  display: none !important;
}

#lp_contents .slick-prev:before, #lp_contents .slick-next:before {
  display: none;
}

#lp_contents .slick-dotted.slick-slider {
  margin-bottom: 0;
}

#lp_contents .sec__tax li {
  position: relative;
  margin-right: calc(22 *(100vw / 750));
  font-family: 'Crimson Text', serif;
  font-size: calc(24 *(100vw / 750));
  letter-spacing: 0.015em;
  display: inline-block;
}

@media only screen and (min-width: 768px), print {
  #lp_contents .sec__tax li {
    font-size: 1.3rem;
    margin-right: 1.2rem;
  }
  #lp_contents .sec09__tax li {
    margin-right: 0;
  }
}

#lp_contents .sec__tax li::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #B2B2B2;
  bottom: calc(11 *(100vw / 750));
  left: 0;
}

@media only screen and (min-width: 768px), print {
  #lp_contents .sec__tax li::before {
    bottom: 0.8rem;
  }
  #lp_contents .sec__tax li.pc_m_0{
    margin-right: 0;
  }
}

#lp_contents .sec__tax li a {
  line-height: 2.15;
  display: inline;
}

#lp_contents .sec__tax li.m__0,
#lp_contents .sec__tax li:last-of-type {
  margin-right: 0;
}

#lp_contents .lp_btn a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: calc(660 *(100vw / 750));
  height: calc(124 *(100vw / 750));
  margin: calc(50 *(100vw / 750)) auto calc(40 *(100vw / 750));
  /* border: 1px solid #000; */
  text-align: center;
  font-family: 'Crimson Text', serif;
  font-size: calc(22 *(100vw / 750));
  letter-spacing: 0.002em;
  line-height: 1.54545;
}

@media only screen and (min-width: 768px), print {
  #lp_contents .lp_btn a {
    width: 60.5rem;
    height: 6.2rem;
    margin: 3.5rem auto 0;
    font-size: 1.1rem;
    line-height: 1.54545;
  }
}

#lp_contents .lp_m0 {
  margin: 0 !important;
}

@media only screen and (min-width: 768px), print {
  #lp_contents .pc_m0 {
    margin: 0 !important;
  }
}

#lp_contents .key {
  text-align: center;
  background: #f6f2e9;
}

@media only screen and (min-width: 768px), print {
  #lp_contents .key__img {
    width: 89rem;
    padding: 4rem 0 0;
    margin: auto;
  }
}

#lp_contents .key__ttl {
  margin-top: calc(123 *(100vw / 750));
  font-size: calc(44 *(100vw / 750));
  font-family: baskerville-display-pt,serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.055em;
}

@media only screen and (min-width: 768px), print {
  #lp_contents .key__ttl {
    margin-top: 6.2rem;
    font-size: 2.4rem;
    letter-spacing: 0.075em;
  }
}

#lp_contents .key__text {
  margin-top: calc(46 *(100vw / 750));
  font-size: calc(24 *(100vw / 750));
  letter-spacing: 0.00em;
  line-height: 2.16667;
}

#lp_contents .key__text:last-of-type{
  margin-top: calc(24 *(100vw / 750));
}

@media only screen and (min-width: 768px), print {
  #lp_contents .key__text {
    font-size: 1.3rem;
    margin-top: 2.1rem;
  }
}

@media only screen and (min-width: 768px), print {
  #lp_contents .sec {
    position: relative;
    width: 140rem;
    margin: 0 auto 13.5rem;
  }

  #lp_contents .key__text:last-of-type{
    margin-top: 1.2rem;
  }
}

.sec-staffCredit {
  font-family: "Crimson Text", serif;
  font-size: calc(24 *(100vw / 750));
  line-height: 1.75;
  letter-spacing: 0.025em;
  font-feature-settings: "palt";
}

.sec-staffCredit {
  text-align: center;
  margin-bottom: calc(112 *(100vw / 750));
}

@media screen and (min-width: 768px) {
  .sec-staffCredit {
    font-size: 1.2rem;
    line-height: 1.75;
  }
  
  .sec-staffCredit {
    margin-bottom: 6.5rem;
  }
}







/* mv */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .key{
    padding: calc(40 *(100vw / 750)) 0 calc(105 *(100vw / 750));
  }
}
/* pc */
@media screen and (min-width: 768px) {
  #lp_contents .key{
    padding: 0 0 5.3rem;
}
}




/* img */
/* sp */
.sticky__wrap span{
  z-index: 100;
}
@media only screen and (max-width: 767px), print {
  .sticky__wrap span{
    display: block;
    width: calc(220 *(100vw / 750));
    right: calc(10 *(100vw / 750));
    bottom: calc(30 *(100vw / 750));
  }
  .sec01__img01{
    transform: translateX(calc(10 * (100vw / 750)));
    width: calc(600 * (100vw / 750));
    margin: calc(120 * (100vw / 750)) auto calc(65 * (100vw / 750));
  }
  .sec01__img02{
    width: calc(750 * (100vw / 750));
    margin: 0 auto calc(45 * (100vw / 750));
  }
  .sec02__img01{
    width: calc(690 * (100vw / 750));
  }
  .sec02__img02{
    width: calc(690 * (100vw / 750));
  }
  .sec03__img01{
    width: calc(680 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750)) auto;
  }
  .sec03__img02{
    width: calc(750 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750));
  }
  .sec03__img03{
    width: calc(610 * (100vw / 750));
    margin: 0 auto calc(45 * (100vw / 750));
  }
  .sec04__img01{
    width: calc(700 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750)) 0;
  }
  .sec04__img02{
    width: calc(700 * (100vw / 750));
    margin: 0 0 calc(45 * (100vw / 750)) auto;
  }
  .sec05__img01{
    width: calc(750 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750)) 0;
  }
  .sec05__img02_wrap {
    width: calc(670 * (100vw / 750));
  }
  .sec05__img02{
    width: calc(670 * (100vw / 750));
    margin: 0 0 calc(45 * (100vw / 750)) 0;
  }
  .sec06__img01{
    width: calc(700 * (100vw / 750));
  }
  .sec06__img02{
    width: calc(650 * (100vw / 750));
    margin: 0 auto calc(45 * (100vw / 750));
  }
  .sec07__img01{
    width: calc(750 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750)) 0;
  }
  .sec07__img02{
    width: calc(600 * (100vw / 750));
    margin: 0 auto calc(45 * (100vw / 750));
  }
  .sec08__img01{
    width: calc(420 * (100vw / 750));
    margin: 0 calc(45 * (100vw / 750)) calc(45 * (100vw / 750)) auto;
  }
  .sec09__img01{
    width: calc(660 * (100vw / 750));
  }
  .sec09__img02{
    width: calc(660 * (100vw / 750));
  }
  .sec10__img01{
    width: calc(680 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750)) 0;
  }
  .sec10__img02{
    width: calc(610 * (100vw / 750));
    margin: 0 auto calc(45 * (100vw / 750));
  }
  .sec11__img01{
    width: calc(750 * (100vw / 750));
    margin: 0 auto calc(60 * (100vw / 750));
  }
  .sec11__img02{
    width: calc(650 * (100vw / 750));
    margin: 0 0 calc(45 * (100vw / 750)) auto;
  }
  .sec12__img01{
    width: calc(650 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750)) 0;
  }
  .sec12__img02{
    width: calc(580 * (100vw / 750));
    margin: 0 0 calc(45 * (100vw / 750)) auto;
  }
  .sec13__img01{
    width: calc(750 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750));
  }
  .sec13__img02{
    width: calc(640 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750)) auto;
  }
  .sec13__img03{
    width: calc(530 * (100vw / 750));
    margin: 0 auto calc(45 * (100vw / 750));
  }
  .sec14__img01{
    width: calc(750 * (100vw / 750));
  }
  .sec15__img01{
    width: calc(750 * (100vw / 750));
    margin: 0 auto calc(60 * (100vw / 750)) 0;
  }
  .sec15__img02{
    width: calc(660 * (100vw / 750));
    margin: 0 auto calc(45 * (100vw / 750));
  }
  .sec16__img01{
    width: calc(560 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750)) auto;
  }
  .sec16__img02{
    width: calc(700 * (100vw / 750));
    margin: 0 0 calc(45 * (100vw / 750)) 0;
  }
  .sec17__img01{
    width: calc(500 * (100vw / 750));
    margin: 0 calc(50 * (100vw / 750)) calc(45 * (100vw / 750)) auto;
  }
  .sec18__img01{
    width: calc(750 * (100vw / 750));
    margin: 0 0 calc(45 * (100vw / 750)) auto;
  }
  .sec19__img01{
    width: calc(680 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750)) 0;
  }
  .sec19__img02{
    width: calc(560 * (100vw / 750));
    margin: 0 0 calc(45 * (100vw / 750)) 0;
  }
  .sec20__img01{
    width: calc(750 * (100vw / 750));
    margin: 0 0 calc(45 * (100vw / 750)) 0;
  }
  .sec21__img01{
    width: calc(460 * (100vw / 750));
    margin: 0 0 calc(45 * (100vw / 750)) 0;
  }
  .sec22__img01{
    width: calc(680 * (100vw / 750));
    margin: 0 0 calc(60 * (100vw / 750)) 0;
  }
  .sec22__img02{
    width: calc(700 * (100vw / 750));
    margin: 0 0 calc(45 * (100vw / 750)) auto;
  }
  .sec23__img01{
    width: calc(645 * (100vw / 750));
    margin: 0 auto calc(45 * (100vw / 750));
  }

}
/* pc */
@media only screen and (min-width: 768px), print {
  .sticky__wrap span{
    display: block;
    width: 13rem;
    right: 12rem;
  }
  .sec01__img01{
    position: relative;
    transform: translateX(-14.5rem);
    width: 39.0rem;
    margin: 8rem auto 6.5rem;
    z-index: 5;
  }
  .sec01__img02{
    margin: -38rem auto 2rem;
  }
  .sec02__img01{
    transform: translateX(-6.5rem);
    width: 46rem;
    margin: 28.9rem 0 0 23rem;
  }
  .sec02__img02{
    width: 48rem;
    margin-bottom: 2rem;
  }
  .sec03__img01{
    transform: translateX(0.8rem);
    width: 50.0rem;
    margin: 0 auto 4rem;
  }
  .sec03__img02{
    width: 60.0rem;
    margin: 0 0 0 14rem;
  }
  .sec03__img03_wrap{
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-end;
    flex-direction: row-reverse;
    width: auto;
    margin: -15.2rem 14rem 18.1rem auto;
  }
  .sec03__img03{
    width: 40rem;
    margin-left: 2.5rem;
  }
  .sec04__img01{
    width: 40.0rem;
    margin: 0 0 6.0rem 15.3rem;
  }
  .sec04__img02{
    width: 40.0rem;
    margin: 0 2.5rem 0 0;
  }
  .sec05__img01{
    width: 58.5rem;
    margin: 0 auto 5rem;
  }
  .sec05__img02{
    width: 46rem;
    margin: 0 2.5rem 0 30.2rem;
  }
  .sec06__img01{
    width: 50.0rem;
  }
  .sec06__img02_wrap{
    width: 40.0rem;
    margin: 39rem 4.9rem 4.5rem 22.5rem;
  }
  .sec07__img01_wrap{
    width: 52.0rem;
    margin: 0 0 0 21rem;
  }
  .sec07__img01{
    width: 52.0rem;
    margin: 0 0 1.8rem 0;
  }
  .sec07__img02{
    width: 36.0rem;
    margin: 49.4rem 0 4.5rem 10rem;
  }
  .sec08__img01_wrap{
    width: 24.0rem;
    margin: 0 0 0 21rem;
  }
  .sec08__img01{
    margin: 0 0 2rem 0;
  }
  .sec09__img01{
    width: 38rem;
    margin: 0 0 2rem 0;
  }
  .sec09__img02{
    width: 50rem;
    margin: 19rem 8rem 0 22rem;
  }
  .sec10__img01{
    width: 48.0rem;
    margin: 0 0 1.8rem 0;
  }
  .sec10__img02{
    width: 48.0rem;
  }
  .sec11__img01{
    width: 40rem;
    margin-top: 45rem;
  }
  .sec11__img02{
    width: 50rem;
    margin: 0 0 0.9rem 0rem;
  }
  .sec12__img01{
    width: 37.0rem;
    margin: 29.3rem 0 0 0;
  }
  .sec12__img02{
    width: 46.0rem;
    margin: 0 0 1.6rem auto;
  }
  .sec13__img01{
    width: 49.0rem;
    margin: 0 auto 5rem;
  }
  .sec13__img02{
    position: absolute;
    top: 102rem;
    left: 16.5rem;
    width: 37.0rem;
  }
  .sec13__img13_wrap{
    width: fit-content;
  }
  .sec13__img03{
    width: 46.0rem;
    margin: 0 auto 2rem 77.4rem;
  }
  .sec14__slider_wrap{
    width: 46.0rem;
    margin: 0 24rem 0rem auto;
  }
  .sec15__img01_wrap{
    position: relative;
    width: 50.0rem;
    margin: 0 auto 0rem 24.3rem;
    z-index: 1;
  }
  .sec15__img01{
    position: relative;
    width: 50.0rem;
    margin: 0 auto 2rem 0;
    z-index: 1;
  }
  .sec15__img02{
    width: 46.0rem;
    margin: -44.6rem auto 4.5rem 69.7rem;
  }
  .sec16__img01{
    width: 50.0rem;
    margin: 21.8rem 0 0;
  }
  .sec16__img02{
    width: 37.0rem;
    margin: 0 0 2rem 0;
  }
  .sec17__img01_wrap{
    width: 30.0rem;
    margin: 0 17rem 4.5rem auto;
  }
  .sec17__img01{
    margin: 0 0rem 1.7rem;
  }
  .sec18__img01{
    width: 44.0rem;
    margin: -28.7rem 0 0 23rem;
  }
  .sec19__img01{
    width: 38.0rem;
    margin-top: 35.6rem;
  }
  .sec19__img02{
    width: 50rem;
    margin: 0 0 2rem 0;
  }
  .sec20__img01_wrap{
    width: 53.0rem;
    margin: 0 0 0 20rem;
  }
  .sec20__img01{
    width: 53.0rem;
    margin: 0 0 2.1rem 0;
  }
  .sec21__img01_wrap{
    width: 25.0rem;
    margin: 0 20rem 0 auto;
  }
  .sec21__img01{
    width: 25.0rem;
    margin: 0 0 1.8rem auto;
  }
  .sec22__img01{
    width: 48.0rem;
    margin: 0 0 1.8rem 0;
  }
  .sec22__img02{
    width: 48.0rem;
    margin: 0 0 2rem auto;
  }
  .sec23__img01{
    width: 43rem;
    margin: 0 auto 4.5rem;
  }
}


/* sticky__wrap */
#lp_contents{
  position: relative;
  overflow: hidden;
}
/* sp */
@media only screen and (max-width: 767px), print {
  .sticky__wrap{
    position: absolute;
    bottom: calc(10 *(100vw / 750));
    right: calc(10 *(100vw / 750));
    z-index: 100;
    opacity: 1;
  }

}
/* pc */
@media only screen and (min-width: 768px), print {
  .sticky__wrap{
    position: absolute;
    bottom: 3rem;
  }

}
.sticky__wrap.fade.fade_in{
    /* position: fixed; */
    z-index: 10;
}

/* sec 01 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec01{
    margin-bottom: calc(165 * (100vw / 750));
  }

  #lp_contents .sec__tax {
  text-align: center;
  }

  #lp_contents .sec02 .sec__tax,
  #lp_contents .sec03 .sec__tax,
  #lp_contents .sec04 .sec__tax,
  #lp_contents .sec11 .sec__tax,
  #lp_contents .sec12 .sec__tax,
  #lp_contents .sec13 .sec__tax,
  #lp_contents .sec17 .sec__tax,
  #lp_contents .sec19 .sec__tax,
  #lp_contents .sec21 .sec__tax,
  #lp_contents .sec22 .sec__tax  {
  text-align: left;
  }
  #lp_contents .sec05 .sec__tax,
  #lp_contents .sec16 .sec__tax {
  text-align: right;
  }


}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec__tax {
  text-align: center;
  }


  #lp_contents .sec04 .sec__tax,
  #lp_contents .sec07 .sec__tax,
  #lp_contents .sec08 .sec__tax,
  #lp_contents .sec17 .sec__tax,
  #lp_contents .sec19 .sec__tax,
  #lp_contents .sec20 .sec__tax,
  #lp_contents .sec21 .sec__tax,
  #lp_contents .sec22 .sec__tax  {
  position: relative;
  text-align: left;
  z-index: 10;
  }
  #lp_contents .sec01 .sec__tax,
  #lp_contents .sec02 .sec__tax,
  #lp_contents .sec03 .sec__tax,
  #lp_contents .sec06 .sec__tax,
  #lp_contents .sec10 .sec__tax,
  #lp_contents .sec12 .sec__tax,
  #lp_contents .sec13 .sec__tax,
  #lp_contents .sec14 .sec__tax, #lp_contents .sec16 .sec__tax{
  text-align: right;
  }
  #lp_contents .sec01__img02_wrap{
    width: 53rem;
    transform: translateX(70.5rem);
  }
}


/* sec 02 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec02{
    position: relative;
    padding-top: calc(65 * (100vw / 750));
    padding-bottom: calc(60 * (100vw / 750));
    margin-bottom: calc(167 * (100vw / 750));
  } 
  #lp_contents .sec02::before{
    pointer-events: none;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/bg_img__01.png) center/100% no-repeat;
    width: calc(383 * (100vw / 750));
    height: calc(1328* (100vw / 750));
  }
  #lp_contents .sec__slider_wrap.sec02__slider_wrap{
    width: calc(690 * (100vw / 750));
    margin: 0 0 0 auto;
  }
  #lp_contents .sec__slider_wrap.sec02__slider_wrap .sec__slider {
    margin-bottom: calc(45 * (100vw / 750));
  }
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec02{
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 6.0rem;
    margin-bottom: 10rem;
  } 
  #lp_contents .sec02::before{
    pointer-events: none;
    content: "";
    position: absolute;
    top: 13.5rem;
    left: 50%;
    transform: translateX(-50%);
    background: url(
    ../img/bc_pc.png) center/100% no-repeat;
    width: 100vw;
    height: 48rem;
  }
  #lp_contents .sec02__img02_wrap{
  width: 48rem;
  margin-right: 17.5rem;
  }
  .sec__slider_wrap.sec02__slider_wrap{
    width: 69.0rem;
    margin: 0 0 0 auto;
  }
  #lp_contents .sec__slider_wrap.sec02__slider_wrap .sec__slider {
    margin-bottom: 4.5rem;
  }
}


/* sec 03 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec03 {
    position: relative;
    margin-bottom: calc(167 * (100vw / 750));
  }
  .sec03__img03_wrap{
    width: calc(610 * (100vw / 750));
    margin: 0 auto 0;
  }
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec03 .sec__tax{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-end;
    transform: translateY(0.8rem);
  }
  #lp_contents .sec03 .sec__tax li{
    margin: 0;
  }
}


/* sec 04 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec04 {
    position: relative;
    margin-bottom: calc(170 * (100vw / 750));
  }
  .sec04__img02_wrap{
    width: calc(700 * (100vw / 750));
    margin: 0 0 0 auto;
  }
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec04 {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: nowrap;
    flex-direction: row;
    margin-bottom: 12rem;
  }
  .sec04__img02_wrap{
    width: 70.0rem;
    margin: 0 0 0 3rem;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-end;
  }
  #lp_contents .sec04 .sec__tax{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    transform: translateY(0.8rem);
  }
}


/* sec 05 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec05 {
    position: relative;
    padding-bottom: calc(50 * (100vw / 750));
    margin-bottom: calc(255 * (100vw / 750));
  }
  #lp_contents .sec05::before {
    pointer-events: none;
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: calc(400 * (100vw / 750));
    height: calc(1573* (100vw / 750));
    background: #fcf8f2;
  }
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec05 {
    position: relative;
    margin-bottom: 18rem;
  }
  #lp_contents .sec05::before {
    pointer-events: none;
    content: "";
    position: absolute;
    bottom: 42rem;
    left: 50%;
    transform: translateX(-50%);
    width: 100rem;
    height: 45rem;
    background: #fcf8f2;
  }
  .sec05__img02_wrap{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-end;
  }
  #lp_contents .sec05 .sec__tax{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    transform: translateY(0.8rem);
  }
}


/* sec 06 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec06 {
    position: relative;
    padding-bottom: calc(50 * (100vw / 750));
    margin-bottom: calc(120 * (100vw / 750));
  }
  #lp_contents .sec__slider_wrap.sec06__slider_wrap{
    width: calc(700 * (100vw / 750));
    margin: 0 0 0 auto;
  }
  #lp_contents .sec__slider_wrap.sec06__slider_wrap .sec__slider {
    margin-bottom: calc(60 * (100vw / 750));
  }
  
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec06 {
    position: relative;
    margin-bottom: 13.6rem;
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: flex-start;
  }
  #lp_contents .sec__slider_wrap.sec06__slider_wrap{
    width: 50rem;
    margin: 0 0 0 0;
  }
  #lp_contents .sec__slider_wrap.sec06__slider_wrap .sec__slider {
    margin-bottom: 2rem;
  }
  #lp_contents .slick-dots {
    text-align: right;
  }
}


/* sec 07 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec07 {
    position: relative;
    padding-bottom: calc(50 * (100vw / 750));
    margin-bottom: calc(120 * (100vw / 750));
  }
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec07 {
    position: relative;
    margin-bottom: 7.4rem;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
  }
}


/* sec 08 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec08 {
    position: relative;
    padding-bottom: calc(50 * (100vw / 750));
    margin-bottom: calc(115 * (100vw / 750));
  }
  
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec08 {
    margin-bottom: 15.4rem;
  }
}


/* sec 09 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec09 {
    position: relative;
    padding-bottom: calc(50 * (100vw / 750));
    margin-bottom: calc(120 * (100vw / 750));
  }
  #lp_contents .sec__slider_wrap.sec09__slider_wrap{
    width: calc(660 * (100vw / 750));
    margin: 0 auto 0;
  }
  #lp_contents .sec__slider_wrap.sec09__slider_wrap .slick-dots {
    text-align: center;
  }
  #lp_contents .sec__slider_wrap.sec09__slider_wrap .sec__slider {
    margin-bottom: calc(45 * (100vw / 750));
  }
  
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec09 {
    position: relative;
    margin-bottom: 15.8rem;
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: nowrap;
    justify-content: flex-end;
    align-items: flex-start;
  }
  #lp_contents .sec09 .sec__tax {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-end;
  }
}


/* sec 10 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec10 {
    position: relative;
    padding-top: calc(60 * (100vw / 750));
    margin-bottom: calc(170 * (100vw / 750));
  }
  #lp_contents .sec10::before {
    pointer-events: none;
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: calc(750 * (100vw / 750));
    height: calc(1680* (100vw / 750));
    background: #f9f2f1;
  }
  
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec10 {
      position: relative;
      padding: 8rem 0 0;
      margin-bottom: 15.2rem;
      display: flex;
      flex-direction: row-reverse;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: flex-start;
      gap: 4rem;
  }
  #lp_contents .sec10::before {
    pointer-events: none;
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    height: 60rem;
    background: #f9f2f1;
  }
}


/* sec 11 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec11 {
    position: relative;
    margin-bottom: calc(165 * (100vw / 750));
  }
  .sec11__img02_wrap{
    width: calc(650 * (100vw / 750));
    margin: 0 0 0 auto;
  }
  
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec11 {
      position: relative;
      margin-bottom: 20rem;
      display: flex;
      flex-direction: row-reverse;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: flex-start;
      gap: 18rem;
  }
  #lp_contents .sec11 .sec__tax{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    transform: translateY(0.8rem);
  }
}


/* sec 12 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec12 {
    position: relative;
    margin-bottom: calc(250 * (100vw / 750));
  }
  .sec12__img02_wrap{
    width: calc(580 * (100vw / 750));
    margin: 0 0 0 auto;
  }
  
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec12 {
      transform: translateX(-0.2rem);
      position: relative;
      margin-bottom: 18.1rem;
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: center;
      align-items: flex-start;
      gap: 10rem;
  }
}


/* sec 13 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec13 {
    position: relative;
    margin-bottom: calc(170 * (100vw / 750));
  }
  .sec13__img13_wrap{
    width: calc(530 * (100vw / 750));
    margin: 0 auto 0;
  }  
}
/* pc */
@media only screen and (min-width: 768px), print {
#lp_contents .sec13 {
    margin-bottom: 19.7rem;
  }
}


/* sec 14 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec14 {
    position: relative;
    margin-bottom: calc(170 * (100vw / 750));
  }
  #lp_contents .sec__slider_wrap.sec14__slider_wrap .slick-dots {
    text-align: center;
  }
  #lp_contents .sec__slider_wrap.sec14__slider_wrap .sec__slider {
    margin-bottom: calc(45 * (100vw / 750));
  }
  
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec14 {
    margin-bottom: 11.6rem;
  }
  #lp_contents .sec14 .sec__tax li.m__0{
    margin-right: 1.2rem;
  }
  #lp_contents .sec__slider_wrap.sec14__slider_wrap .slick-dots {
    text-align: right;
  }
  #lp_contents .sec__slider_wrap.sec14__slider_wrap .sec__slider {
    margin-bottom: 1.8rem;
  }
  
}


/* sec 15 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec15 {
    position: relative;
    padding-bottom: calc(50 * (100vw / 750));
    margin-bottom: calc(175 * (100vw / 750));
    background: #fdf8f2;
  }
  
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec15 {
    margin-bottom: 18.2rem;
  }
  #lp_contents .sec15::before {
    pointer-events: none;
    content: "";
    position: absolute;
    top: 18rem;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    height: 82rem;
    background: #fdf8f2;
  }
  #lp_contents .sec15 .sec__tax {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
  }
}


/* sec 16 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec16 {
    position: relative;
    margin-bottom: calc(170 * (100vw / 750));
  }
  .sec16__img02_wrap{
    width: calc(700 * (100vw / 750));
  }  
  
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec16 {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: flex-start;
    gap: 6rem;
    margin-bottom: 11.9rem;
  }
}


/* sec 17 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec17 {
    position: relative;
    padding-bottom: calc(60 * (100vw / 750));
    margin-bottom: calc(110 * (100vw / 750));
  }
  .sec17__img01_wrap{
    width: calc(500 * (100vw / 750));
    margin: 0 calc(50 * (100vw / 750)) 0 auto;
  }   
  
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec17 {
    margin-bottom: 10.6rem;
  }
}


/* sec 18 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec18 {
    position: relative;
    padding-bottom: calc(60 * (100vw / 750));
    margin-bottom: calc(175 * (100vw / 750));
  }
  
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec18 {
    margin-bottom: 18rem;
  }
  .sec18__img01_wrap{
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-end;
    justify-content: flex-start;
    gap: 2.6rem;
  }
  #lp_contents .sec18 .sec__tax{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    transform: translateY(0.8rem);
  }
}



/* sec 19 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec19 {
    position: relative;
    padding-top: calc(80 * (100vw / 750));
    margin-bottom: calc(165 * (100vw / 750));
  }
  #lp_contents .sec19::before {
    pointer-events: none;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: calc(430 * (100vw / 750));
    height: calc(1940* (100vw / 750));
    background: #f0f3f8;
  }
  .sec19__img19_wrap{
    width: calc(625 * (100vw / 750));
    margin: 0 0 0 calc(120 * (100vw / 750));
  }   
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec19 {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: flex-start;
    gap: 10rem;
    margin-bottom: 17.9rem;
    flex-direction: row-reverse;
  }
  #lp_contents .sec19::before {
    pointer-events: none;
    content: "";
    position: absolute;
    top: 10rem;
    right: 51rem;
    width: 89.4rem;
    width: calc(894* (100vw / 1400));
    height: 55rem;
    background: #f0f3f8;
  }
  #lp_contents .sec19 .sec__tax li.m__0{
    
margin-right: 1.2rem;
  }
}


/* sec 20 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec20 {
    position: relative;
    margin-bottom: calc(170 * (100vw / 750));
  }
  .sec20__img20_wrap{
    width: calc(560 * (100vw / 750));
    margin: 0 0 0 calc(120 * (100vw / 750));
  }   
}
/* pc */
@media only screen and (min-width: 768px), print {
 #lp_contents .sec20 {
    position: relative;
    margin-bottom: -7.7rem;
  }
   #lp_contents .sec22 .sec__tax li.m__0{
     
    margin-right: 1.2rem;
   }
}


/* sec 21 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec21 {
    position: relative;
    margin-bottom: calc(167 * (100vw / 750));
  }
  .sec21__img01_wrap{
    width: auto;
    margin: 0 0 0 calc(220 * (100vw / 750));
  }   
}
/* pc */
@media only screen and (min-width: 768px), print {
 #lp_contents .sec21 {
    position: relative;
    margin-bottom: 13.5rem;
  }
}


/* sec 22 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec22 {
    position: relative;
    padding-top: calc(80 * (100vw / 750));
    margin-bottom: calc(235 * (100vw / 750));
  }
  #lp_contents .sec22::before {
    pointer-events: none;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: calc(585 * (100vw / 750));
    height: calc(2410* (100vw / 750));
    background: #f8f1f8;
  }
  .sec22__img02_wrap{
    width: calc(700 * (100vw / 750));
    margin: 0 0 0 auto;
  }   
}
/* pc */
@media only screen and (min-width: 768px), print {
#lp_contents .sec22 {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: flex-start;
    gap: 4rem;
    margin-bottom: 11.4rem;
  }
  #lp_contents .sec22::before {
    pointer-events: none;
    content: "";
    position: absolute;
    top: 13.6rem;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    height: 44.9rem;
    background: #f8f1f8;
  }
}


/* sec 23 */
/* sp */
@media only screen and (max-width: 767px), print {
  #lp_contents .sec23 {
    position: relative;
    margin-bottom: calc(152 * (100vw / 750));
  }
}
/* pc */
@media only screen and (min-width: 768px), print {
  #lp_contents .sec23 {
    margin-bottom: 15.5rem;
  }
  #lp_contents .sec23 .sec__tax{
    position: absolute;
    right: 31rem;
    bottom: 0;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    transform: translateY(0.8rem);
  }
}