@charset "UTF-8";

.LB1102 {

  --font_en-01: "big-caslon-fb", serif;
  --font_en-02: "neue-haas-grotesk-display", sans-serif;
  --font_jp: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  color: #000;
  text-align: center;
}

.main-inner {
  /* margin-top: 8rem; */
  width: 100% !important;
}

html {
  font-size: 62.5%;
  box-sizing: border-box;
}

@media (max-width: 1400px) and (min-width: 768px) {
  html {
    font-size: 0.7142857143vw;
  }
}

@media only screen and (min-width: 1401px) {
  html {
    font-size: 62.5%;
  }
}

@media screen and (max-width: 767px) {
  .header__navBody+.category__navBody {
    display: none;
  }

  .pc {
    display: none !important;
  }

  .main-area.lp {
    overflow: unset;
  }

}

@media only screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

.LB1102 {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic", "メイリオ", sans-serif;
  width: 100%;
  font-feature-settings: normal;
}

.LB1102 li {
  list-style: none;
}

.LB1102 img,
.LB1102 svg {
  position: relative;
  width: 100%;
  height: auto;
  z-index: 1;
}

.LB1102 picture,
.LB1102 span {
  display: block;
}

.LB1102 .heading {
  position: relative;
  width: 100%;
  margin: 0 auto;
}

.LB1102 .heading::before {
  content: "";
  position: absolute;
  background: url(../img/mv_bg.jpg) center/contain no-repeat;
  width: 100%;
  height: calc(685* (100vw / 750));
  left: 50%;
  transform: translateX(-50%);
  top: calc(14* (100vw / 750));
  z-index: -1;
}

.LB1102 .heading_ttl {
  padding-top: calc(85* (100vw / 750));
  width: calc(460* (100vw / 750));
  margin: auto;
}

.LB1102 .heading_sub_ttl {
  position: relative;
  font-size: calc(30* (100vw / 750));
  letter-spacing: 0;
  line-height: 1;
  text-align: center;
  padding-top: calc(40* (100vw / 750));
}

.LB1102 .heading_sub_ttl::before {
  content: "";
  position: absolute;
  background: #B68E4C;
  width: calc(420* (100vw / 750));
  height: calc(2* (100vw / 750));
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(-15* (100vw / 750));
}

.LB1102 .heading_txt {
  font-size: calc(26* (100vw / 750));
  letter-spacing: 0.025em;
  line-height: 2.2692307692;
  text-align: center;
  padding-top: calc(87* (100vw / 750));
}

.LB1102 section,
.contnet_img {
  position: relative;
}

.js_fade {
  position: relative;
  background: #fff;
}

.sec .sec_inner {
  position: relative;
}

.sec .sec_inner::before {
  content: "";
  position: absolute;
  z-index: -1;
}

.LB1102 .content_txt {
  position: relative;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic", "メイリオ", sans-serif;
  line-height: 1.9231;
  letter-spacing: 0.05em;
  text-align: left;
  font-feature-settings: normal;
  font-size: calc(24* (100vw / 750));
}

/* ▽_____________ credit ______________▽ */
.LB1102 .credit_block {
  position: absolute;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}

.LB1102 .credit_block::after {
  content: "";
  width: 100%;
}

.LB1102 .credit_block::before {
  content: "";
  order: 2;
  width: 100%;
}

.LB1102 .credit_block li {
  font-family: "neue-haas-unica", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(24* (100vw / 750));
  line-height: 1.9166666;
  letter-spacing: 0.04em;
  text-align: end;
  white-space: nowrap;
}


@media screen and (min-width: 768px) {
  .LB1102 .heading {
    width: 89rem;
  }

  .LB1102 .heading::before {
    background: url(../img/mv_bg_pc.jpg) center/contain no-repeat;
    height: 37.9rem;
    top: 0.4rem;
    transform: translateX(-51.7%);
  }

  .LB1102 .heading_ttl {
    padding-top: 7.4rem;
    width: 34.8rem;
  }

  .LB1102 .heading_sub_ttl {
    font-size: 1.7rem;
    padding-top: 1.4rem;
    left: -0.4rem;
  }

  .LB1102 .heading_sub_ttl::before {
    width: 23.8rem;
    height: 1px;
    bottom: -0.7rem;
  }

  .LB1102 .heading_txt {
    font-size: 1.5rem;
    letter-spacing: 0.08em;
    line-height: 2.2666666667;
    padding-top: 4.8rem;
    font-feature-settings: "pkna";
  }

  .LB1102 .content_txt {
    line-height: 1.9230769231;
    font-size: 1.3rem;
    letter-spacing: 0.07em;
  }

  .LB1102 .credit_block {
    position: relative;
    margin-top: 2.4rem;
    flex-direction: row;
    gap: 0 1rem;
  }

  .LB1102 .credit_block li {
    font-size: 1.2rem;
    line-height: 1.9166666;
  }
}




/* ▽_____________ sec01 ______________▽ */
@media screen and (max-width: 767px) {
  .LB1102 .img01 {
    width: calc(590* (100vw / 750));
    margin: calc(180* (100vw / 750)) 0 0 auto;
  }

  .LB1102 .img02 {
    margin: calc(-86* (100vw / 750)) 0 0 0;
  }

  .LB1102 .img02 .img_inner {
    width: calc(470* (100vw / 750));
  }

  .LB1102 .img02 .credit_block {
    align-items: flex-end;
    top: calc(405* (100vw / 750));
    right: calc(40* (100vw / 750));
  }

  .LB1102 .content_txt_wrap {
    width: calc(620* (100vw / 750));
    margin: calc(102* (100vw / 750)) auto 0;
  }

  .LB1102 .sec01 .content_list.__2 h3 {
    width: calc(244* (100vw / 750));
  }

  .LB1102 .content_txt_wrap .content_txt {
    margin-top: calc(60* (100vw / 750));
    left: calc(-4* (100vw / 750));
  }

  .LB1102 .img03 {
    width: calc(650* (100vw / 750));
    margin: calc(87* (100vw / 750)) auto 0;
  }

  .LB1102 .img03 .img_inner {
    width: calc(500* (100vw / 750));
    margin-left: auto;
  }

  .LB1102 .img03 .credit_block {
    top: calc(496* (100vw / 750));
    left: calc(0* (100vw / 750));
    align-items: flex-start;
  }

  .LB1102 .img04 {
    width: calc(650* (100vw / 750));
    margin: calc(30* (100vw / 750)) auto 0;
  }
}

.item_wrap {
  position: relative;
  margin-top: calc(100* (100vw / 750));
  padding-top: calc(57* (100vw / 750));
}

.item_wrap::before {
  content: "";
  position: absolute;
  width: calc(710* (100vw / 750));
  height: calc(718* (100vw / 750));
  background: rgba(196, 191, 184, 0.2);
  top: calc(0* (100vw / 750));
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}

.item_wrap h4 {
  width: calc(400* (100vw / 750));
  margin: auto;
}

.item_wrap .js-slider {
  width: calc(626* (100vw / 750));
  margin: calc(40* (100vw / 750)) auto 0;
}

@media screen and (max-width: 767px) {
  .item_wrap .js-slider_item {
    width: calc(312* (100vw / 750));
    /* margin: 0 calc(10* (100vw / 750)); */
  }

  .item_wrap .js-slider_item .item_img {
    width: calc(290* (100vw / 750));
    margin: auto;
  }

  .sec01 .js-slider_item span {
    letter-spacing: -0.015em !important;
    left: calc(-2* (100vw / 750)) !important;
  }
}


.item_wrap .item_name {
  font-family: "neue-haas-unica", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic", "メイリオ", sans-serif;
  font-size: calc(22* (100vw / 750));
  letter-spacing: 0.04em;
  line-height: 1.6;
  text-align: center;
  font-feature-settings: "palt";
  margin: calc(12* (100vw / 750)) auto 0;
}

.item_wrap .item_name span {
  position: relative;
  white-space: nowrap;
  left: calc(-5* (100vw / 750));
  letter-spacing: 0.02em;
}

.item_wrap .prev-arrow,
.item_wrap .next-arrow {
  position: absolute;
  width: calc(20* (100vw / 750));
  top: calc(228* (100vw / 750));
}

.item_wrap .prev-arrow {
  left: calc(-11* (100vw / 750));
}

.item_wrap .next-arrow {
  right: calc(-11* (100vw / 750));
}

@media screen and (min-width: 768px) {
  .sec_inner {
    display: grid;
    width: 110rem;
    margin: auto;
  }


  /* ▽_____________ sec01 ______________▽ */
  .LB1102 .sec01 {
    margin-top: 11.8rem;
  }

  .LB1102 .sec01 .sec_inner {
    grid-template-columns: 16.5rem 61.7rem auto;
    grid-template-rows: 67.3rem 3.2rem auto;
  }

  .LB1102 .sec01 .content_list.__1 {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    grid-area: 1/2/2/3;
    width: 77rem;
  }

  .LB1102 .sec01 .content_list.__1 .contnet_img {
    width: 38rem;
  }

  .LB1102 .sec01 .content_list.__1 .credit_block {
    position: relative;
    flex-direction: row;
  }

  .LB1102 .sec01 .content_list.__2 {
    grid-area: 2/3/3/4;
  }

  .LB1102 .sec01 .content_list.__2 h3 {
    width: 19.7rem;
    position: relative;
    left: 0.4rem;
  }

  .LB1102 .content_txt_wrap .content_txt {
    margin-top: 4.8rem;
  }

  .LB1102 .sec01 .content_list.__3 {
    display: flex;
    justify-content: space-between;
    grid-area: 3/1/5/3;
    width: 73.4rem;
  }

  .LB1102 .img03 {
    width: 38.4rem;
  }

  .LB1102 .img04 {
    margin-top: 14rem;
    width: 34rem;
  }


  /* ▽_____________ item_wrap ______________▽ */
  .LB1102 .item_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6rem;
    margin: 8rem auto 0;
    padding-right: 2rem;
    padding-top: 3.6rem;
  }

  .item_wrap::before {
    width: 120rem;
    height: 40rem;
    top: 0;
  }

  .item_wrap h4 {
    width: 23rem;
    margin: 0;
  }

  .item_wrap .js-slider {
    display: flex;
    justify-content: space-between;
    width: 79rem;
    margin: 0;
  }

  .item_wrap .js-slider_item {
    width: 19rem;
    margin: 0;
  }

  .item_wrap .item_name {
    font-size: 1.2rem;
    margin: 1.6rem auto 0;
  }

  .item_wrap .item_name span {
    left: -0.3rem;
  }
}










/* ▽_____________ sec2 ______________▽ */
@media screen and (max-width: 767px) {
  .LB1102 .sec02 {
    margin-top: calc(382* (100vw / 750));
  }

  .LB1102 .sec02 h3 {
    position: absolute;
    width: calc(408 * (100vw / 750));
    top: calc(-223* (100vw / 750));
    left: calc(28* (100vw / 750));
  }

  .LB1102 .img05 {
    width: calc(600* (100vw / 750));
    margin-left: auto;
  }

  .LB1102 .img06 {
    width: calc(650* (100vw / 750));
    margin: calc(30* (100vw / 750)) auto 0;
  }

  .LB1102 .img06 .img_inner {
    width: calc(500* (100vw / 750));
  }

  .LB1102 .img06 .credit_block {
    align-items: flex-end;
    top: calc(588* (100vw / 750));
    right: 0;
  }

  .LB1102 .sec02 .content_list.__2 {
    width: calc(580* (100vw / 750));
    margin: calc(100* (100vw / 750)) auto 0;
  }

  .LB1102 .row_credit {
    flex-direction: row;
    align-items: flex-start;
    gap: 0 calc(14* (100vw / 750));
    margin: calc(16* (100vw / 750)) 0 0 0;
    position: relative;
  }

  .LB1102 .sec02 .content_txt_wrap {
    width: calc(574* (100vw / 750));
    margin: calc(-8* (100vw / 750)) auto 0;
  }

  .LB1102 .sec02 .item_wrap {
    padding-top: calc(59* (100vw / 750));
    margin-top: calc(160* (100vw / 750));
  }
}

@media screen and (min-width: 768px) {
  .LB1102 .sec02 {
    margin-top: 16.5rem;
  }

  .LB1102 .sec02 h3 {
    position: absolute;
    width: 32.9rem;
    top: 20.7rem;
    left: 7.5rem;
  }

  .LB1102 .sec02 .sec_inner {
    width: 120rem;
    grid-template-columns: 46rem 1rem auto;
    grid-template-rows: 44rem 34.6rem auto;
  }

  .LB1102 .sec02 .content_list.__1 {
    display: flex;
    justify-content: space-between;
    width: 74rem;
    grid-area: 1/2/2/3;
  }

  .LB1102 .img05 {
    width: 40rem;
  }

  .LB1102 .img06 {
    width: 33rem;
    margin-top: 14.7rem;
  }

  .LB1102 .sec02 .content_list.__1 .credit_block li:nth-child(n+3) {
    order: 1;
  }

  .LB1102 .sec02 .content_list.__2 {
    width: 41rem;
    grid-area: 2/1/4/2;
  }

  .LB1102 .sec02 .content_list.__2 .credit_block li:nth-child(n+3) {
    order: 1;
  }

  .LB1102 .sec02 .content_list.__3 {
    grid-area: 3/3/4/4;
  }

  .LB1102 .sec02 .item_wrap {
    margin-top: 7.7rem;
  }
}




/* ▽_____________ sec03 ______________▽ */
@media screen and (max-width: 767px) {
  .LB1102 .sec03 {
    margin-top: calc(197* (100vw / 750));
  }

  .LB1102 .sec03 .content_list.__1 {
    width: calc(640* (100vw / 750));
    margin: auto;
  }

  .LB1102 .sec03 .content_list.__2 {
    width: calc(670* (100vw / 750));
    margin-top: calc(93* (100vw / 750));
  }

  .LB1102 .img09 {
    width: calc(520* (100vw / 750));
  }

  .LB1102 .img10 {
    width: calc(450 * (100vw / 750));
    margin: calc(30* (100vw / 750)) 0 0 auto;
  }

  .LB1102 .sec03 .content_txt_wrap {
    margin-top: calc(104* (100vw / 750));
  }

  .LB1102 .sec03 h3 {
    width: calc(375* (100vw / 750));
  }

  .LB1102 .sec03 .content_list.__4 {
    width: calc(700* (100vw / 750));
    margin-top: calc(86* (100vw / 750));
  }

  .LB1102 .sec03 .content_list.__4 .img_inner {
    width: calc(600* (100vw / 750));
  }

  .LB1102 .sec03 .content_list.__4 .credit_block {
    top: calc(648* (100vw / 750));
    right: 0;
    align-items: flex-end;
  }

  .LB1102 .img12 {
    width: calc(480* (100vw / 750));
    margin: calc(30* (100vw / 750)) 0 0 auto;
  }

  .LB1102 .img13 {
    width: calc(470* (100vw / 750));
    margin: calc(30* (100vw / 750)) 0 0 calc(50* (100vw / 750));
  }
}

@media screen and (min-width: 768px) {
  .LB1102 .sec03 {
    margin-top: 16.5rem;
  }

  .LB1102 .sec03 .sec_inner {
    width: 120rem;
    grid-template-columns: 22.4rem 10.6rem 29rem 27rem auto;
    grid-template-rows: 25.8rem 65.4rem 23.2rem 29.8rem auto;
  }

  .LB1102 .sec03 h3 {
    position: absolute;
    width: 30.3rem;
    top: 76.1rem;
    left: 15.4rem;
  }

  .LB1102 .sec03 .content_list.__1 {
    width: 42rem;
    grid-area: 1/2/2/3;
  }

  .LB1102 .sec03 .content_list.__2 {
    position: relative;
    width: 31rem;
    grid-area: 2/5/3/6;
  }

  .LB1102 .img10 {
    position: absolute;
    width: 32rem;
    bottom: -22.5rem;
    left: -27rem;
    z-index: 1;
  }

  .LB1102 .sec03 .content_list.__3 {
    grid-area: 4/4/5/6;
  }

  .LB1102 .sec03 .content_list.__4 {
    width: 41rem;
    grid-area: 3/1/4/2;
  }

  .LB1102 .sec03 .content_list.__5 {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    width: 74rem;
    grid-area: 5/3/7/4;
  }

  .LB1102 .img12 {
    width: 41rem;
  }

  .LB1102 .img13 {
    width: 32rem;
    margin-top: 20rem;
  }
}






/* ▽_____________ sec04 ______________▽ */
@media screen and (max-width: 767px) {
  .LB1102 .sec04 {
    margin-top: calc(305* (100vw / 750));
  }

  .LB1102 .sec04 h3 {
    position: absolute;
    width: calc(272 * (100vw / 750));
    top: calc(-147* (100vw / 750));
    right: calc(20* (100vw / 750));
  }

  .LB1102 .sec04 .content_list.__1 {
    width: calc(630* (100vw / 750));
    margin: auto;
  }

  .LB1102 .sec04 .content_list.__1 .credit_block {
    bottom: calc(-156* (100vw / 750));
    left: 0;
    align-items: flex-start;
  }

  .LB1102 .sec04 .content_list.__2 {
    display: flex;
    flex-direction: column;
    margin: calc(90* (100vw / 750)) 0 0 auto;
    width: calc(450* (100vw / 750));
  }

  .LB1102 .sec04 .content_list.__3 {
    width: calc(700* (100vw / 750));
    margin-top: calc(100* (100vw / 750));
  }

  .LB1102 .sec04 .content_list.__3 .img_inner {
    width: calc(540* (100vw / 750));
  }

  .LB1102 .sec04 .content_list.__3 .credit_block {
    top: calc(603* (100vw / 750));
    right: 0;
    align-items: flex-end;
  }

  .LB1102 .sec04 .content_list.__4 {
    width: calc(620* (100vw / 750));
    margin: calc(30* (100vw / 750)) 0 0 auto;
  }

  .LB1102 .sec04 .content_list.__4 .content_txt {
    margin-top: calc(60* (100vw / 750));
  }

  .LB1102 .sec04 .item_wrap {
    margin-top: calc(88* (100vw / 750));
    padding-top: calc(65* (100vw / 750));
  }

  .LB1102 .sec04 .item_wrap::before {
    height: calc(760* (100vw / 750));
  }

  .LB1102 .sec04 .item_wrap .prev-arrow,
  .LB1102 .sec04 .item_wrap .next-arrow {
    top: calc(246* (100vw / 750));
  }



  .LB1102 .all_item_btn {
    width: calc(674* (100vw / 750));
    margin: calc(236* (100vw / 750)) auto calc(195* (100vw / 750));
  }
}

@media screen and (min-width: 768px) {
  .LB1102 .sec04 {
    margin-top: 16.6rem;
  }

  .LB1102 .sec04 .sec_inner {
    width: 120rem;
    grid-template-columns: 17rem 17rem 37.6rem auto;
    grid-template-rows: 19.8rem 56.4rem 43rem auto;
  }

  .LB1102 .sec04 h3 {
    position: absolute;
    width: 22rem;
    top: 5.7rem;
    right: 7rem;
  }

  .LB1102 .sec04 .content_list.__1 {
    width: 41.4rem;
    grid-area: 1/2/2/3;
  }

  .LB1102 .sec04 .content_list.__2 {
    display: flex;
    flex-direction: column;
    width: 30.4rem;
    grid-area: 2/4/4/5;
  }

  .LB1102 .sec04 .content_list.__3 {
    width: 41rem;
    grid-area: 3/1/5/2;
  }

  .LB1102 .sec04 .content_list.__3 .credit_block li:nth-child(n+3) {
    order: 1;
  }

  .LB1102 .sec04 .content_list.__4 {
    display: flex;
    align-items: center;
    gap: 5.3rem;
    grid-area: 4/3/5/5;
  }

  .LB1102 .img18 {
    width: 35rem;
  }

  .LB1102 .sec04 .content_list.__4 .content_txt {
    top: -0.4rem;
  }

  .LB1102 .all_item_btn {
    width: 42rem;
    margin: 15.6rem auto 15rem;
  }
}








.LB1102 .sec_inner::before {
  width: calc(710* (100vw / 750));
  height: calc(3328* (100vw / 750));
  border: calc(2* (100vw / 750)) solid #EAE6DA;
  left: 50%;
  transform: translateX(-50%);
  top: calc(240* (100vw / 750));
}

.LB1102 .sec02 .sec_inner::before {
  height: calc(3162* (100vw / 750));
  border: calc(2* (100vw / 750)) solid #C4BFB8;
  top: calc(-60* (100vw / 750));
}

.LB1102 .sec03 .sec_inner::before {
  height: calc(5245* (100vw / 750));
  border: calc(2* (100vw / 750)) solid #8C9999;
  top: calc(-40* (100vw / 750));
}

.LB1102 .sec04 .sec_inner::before {
  height: calc(4021* (100vw / 750));
  border: calc(2* (100vw / 750)) solid #E0D8C6;
  top: calc(-60* (100vw / 750));
}

@media screen and (min-width: 768px) {
  .LB1102 .sec_inner::before {
    width: 120rem;
    height: 109rem;
    border: 1px solid #EAE6DA;
    top: 12.7rem;
  }

  .LB1102 .sec02 .sec_inner::before {
    width: 106rem;
    height: 64.5rem;
    border: 1px solid #C4BFB8;
    top: 33.8rem;
  }

  .LB1102 .sec03 .sec_inner::before {
    width: 106rem;
    height: 177rem;
    border: 1px solid #8C9999;
    top: 8rem;
  }

  .LB1102 .sec04 .sec_inner::before {
    width: 106rem;
    height: 144rem;
    border: 1px solid #E0D8C6;
    top: 12.7rem;
  }

}

/***************************** section-06 *****************************/

/***************************** animation *****************************/
.LB1102 .js_fade,
.LB1102 .js_d_fade {
  visibility: hidden;
  opacity: 0;
  transform: translate(0, 40px);
  transition: all ease 1.5s;
}

.LB1102 .js_fade.active,
.LB1102 .js_d_fade.active {
  visibility: visible;
  opacity: 1;
  transform: translate(0, 0);
}

.LB1102 span.js_fade.active,
.LB1102 span.js_d_fade.active {
  opacity: 0.5;
}

/***************************** animation *****************************/