/* ===============================================
  * COMMON *
=============================================== */
:root {
  --spacer-xxs: 1.5rem;
  --spacer-xs: 2rem;
  --spacer-s: 1.8rem;
  --spacer-m: 4rem;
  --spacer-l: 5rem;
  --spacer-xl: 6rem;
  --padding-horizontal: 5.2%;
  --transition-duration: 1.5s;
}

/* .header .header__inner {
  background: linear-gradient(to bottom, transparent, #FFFC9D 0, #FFFC9D 0%, transparent);
} */

@media (min-width: 769px) {
  :root {
    --spacer-xxs: 3rem;
    --spacer-xs: 4rem;
    --spacer-s: 3rem;
    --spacer-m: 8rem;
    --spacer-l: 10rem;
    --spacer-xl: 12rem;
    --padding-horizontal: min(4.54%, 5rem);
  }
}

/* html {
  scroll-behavior: smooth;
} */

/* :where(.main-area) :target {
  scroll-margin-top: var(--header-height, 0px)
} */

/*疑似要素でbg_box全体に画像を配置*/

body {
  background-color: #FFFC9D;
}

/* body::before {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(../img/sp/content_bg01.png);
  background-position: center top;
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  z-index: -1;
} */

/* .main-area.lp {
  padding-top: 154px;
} */

/* .bg_box01::before {
  background-image: url(../img/sp/content_bg01.png);
}

.bg_box02::before {
  background-image: url(../img/sp/content_bg02.png);
}

.bg_box03::before {
  background-image: url(../img/sp/content_bg03.png);
} */

/* body {
  position: relative;
  height: 100%;
  margin: 0 auto;
} */


.sp_only {
  display: block;
}

.pc_only {
  display: none;
}

.li_block {
  display: block;
  width: 100%;
}

.header[data-header-theme="light"].c-active,
.header[data-header-theme="dark"] {
  background: transparent;
}

.main-area.lp {
  padding-top: 50px;
  margin-bottom: 0 !important;
}

.lp_area img {
  width: 100%;
  height: auto;
}

.mainVisual {
  position: relative;
}

.lp_area .slick-slide {
  height: fit-content;
}

.slider-container {
  position: relative;
}

.main-container {
  font-family: "ryo-text-plusn", serif;
  font-weight: 400;
  font-style: normal;
  color: #250D00;
  /* background-color: #FFFC9D; */
}

.main-container .nav li.active p {
  color: #fff;
}

.main-container .nav li.active {
  background-color: #90964C;
}

.main-container .nav li a {
  width: 100%;
}

.mucha_font {
  font-family: var(--font-en);
}

.font_en {
  font-family: "adobe-garamond-pro", serif;
}

/*
 * Text
 */

/* pc */
.mainVisual {
  margin-bottom: 13rem;
}

body,
html {
  height: 100%;
  margin: 0 auto;
}

@media (max-width: 1400px) and (min-width: 768px) {
  html {
    font-size: calc(10 * (100vw / 1400));
  }
}

#Foot {
  position: relative;
  z-index: 99999;
}


/* ===============================================
  * アニメーション - 1 *
=============================================== */
/* ===========### SP ###=========== */
  /* 普通フェード */
  .main-container .js_fade {
    opacity: 0;
    transition-duration: 1s;
    transition: ease-in, opacity 2500ms, transform 1000ms;
  }

  .main-container .js_fade.active {
    opacity: 1;
    transform: translateY(0%);
  }

  /*** 追従ナビゲーション ***/
  .target {
    transition: opacity 300ms;
    position: fixed;
    top: auto;
    right: -7.5%;
    bottom: 11.7%;
    left: auto;
    z-index: 999;
    visibility: hidden;
    opacity: 0;
  }

  .target ul {
    display: flex;
    width: calc(180* (100vw /375));
    flex-direction:column-reverse;
  }

  .target ul li {
    width: calc(180* (100vw /375));
  }

  .target ul li:nth-of-type(1) {
    margin-top: calc(-20*(100vw / 375));
  }

  .target ul li:nth-of-type(2) {
    margin-top: calc(-20*(100vw / 375));
  }

  .target ul li:nth-of-type(3) {
    margin-top: 0;
  }

  .target.is-hidden {
    visibility: visible;
    opacity: 1;
    transition: .3s;
  }

  .menu_button {
    margin: 0!important;
    width: calc(100* (100vw /375));
    position: fixed;
    top: auto;
    right: 4%;
    bottom: 1.8%;
    left: auto;
    z-index: 999;
  }

  .menu_button .accordion__buttonText {
    margin: 0!important;
  }

  .js_fade {
    opacity: 0;
    transition-duration: 1s;
    transition: ease-in, opacity 2500ms, transform 1000ms;
  }
  
  .js_fade.active {
    opacity: 1;
  }

/* ===========### PC ###=========== */
@media screen and (min-width: 767px) {
  /*** 追従ナビゲーション ***/
  .target {
    position: fixed;
    top: auto;
    right: 13.3%;
    bottom: 3.6%;
    left: auto;
    z-index: 999;
    visibility: hidden;
    opacity: 0;
  }

  .target ul {
    display: flex;
    width: 66rem;
    flex-direction: row-reverse;
  }

  .target ul li {
    width: 22rem;
  }

  .target.is-hidden {
    visibility: visible;
    opacity: 1;
    transition: .3s;

  }

  .menu_button {
    width: 12.2rem;
    position: fixed;
    top: auto;
    right: 2.7%;
    bottom: 3.8%;
    left: auto;
    z-index: 999;
  }

  .target ul li:nth-of-type(1),
  .target ul li:nth-of-type(2) {
    margin: 0;
  }
}



/* ===============================================### 
SP
###=============================================== */
.main-container {
  color: #250D00;
}

/************** accordion **************/
.js-accordion {
  margin-top: calc(30* (100vw /375));
  margin-bottom: calc(70* (100vw /375));
}

.accordion__accordionMoreContent {
  display: none;
}

.accordion__buttonText {
  display: none;
  text-decoration: underline;
  margin: calc(12* (100vw/375)) auto 0;
  cursor: pointer;
  text-align: center;
}

.accordion__buttonText.is-active {
  display: block;
}

.spOnly.accordion__buttonText {
  font-family: "adobe-garamond-pro", serif;
  font-style: normal;
  font-size: calc(14 * (100vw / 375));
  color: #743C1D;
  font-weight: 400;
  text-align: center;
}

.accordion__text {
  margin-top: 0;
  margin-bottom: 0;
  color: #743C1D;
}


/************** common **************/
.sec_box {
  margin: 0 auto;
  width: calc(350* (100vw /375));
}

.img_box {
  width: 100%;
}

/*** ttl_box ***/
.ttl_box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: calc(10* (100vw /375));
  color: #743C1D;
}

.ttl_box h3 {
  font-size: calc(72* (100vw /375));
  letter-spacing: 0.02em;
  line-height: 1;
  width: max-content;
  font-family: "vincente", serif;
  font-weight: 700;
  font-style: normal;
}

.ttl_box .sub_ttl {
  font-size: calc(16* (100vw /375));
  letter-spacing: 0.08em;
  line-height: 1;
  font-family: "ryo-text-plusn", serif;
  font-weight: 400;
  font-style: normal;
}

.ttl_box .limited_text {
  font-size: calc(42* (100vw /375));
  letter-spacing: 0.02em;
  line-height: 1;
  width: max-content;
  font-family: "vincente", serif;
  font-weight: 700;
  font-style: normal;
  position: relative;
  z-index: 2;
}

.ttl_box .limited_text p {
  margin-bottom: calc(-8* (100vw /375));
  padding: 0 calc(13* (100vw /375));
  position: relative;
  z-index: 2;
}

.ttl_box .limited_text::before{
  content: '';
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  height: 1px;
  width: calc(266* (100vw /375));
  top: 65%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(../img/sp/border.svg);
  z-index: 1;
}

/*** sec_text ***/
.sec_text {
  font-family: "ryo-text-plusn", serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.08em;
  color: #743C1D;
}

.sec_text01 {
  font-size: calc(18* (100vw /375));
  line-height: 1.77;
  text-align: center;
}

.sec_text02 {
  font-size: calc(14* (100vw /375));
  line-height: 2.28;
} 

.sec_text03 {
  margin-top: calc(16* (100vw /375));
  font-size: calc(12* (100vw /375));
  line-height: 1;
} 

/*** sec_tax ***/
.sec_tax {
  margin: 0 0 calc(32* (100vw /375));
  display: flex;
  flex-wrap: wrap;
  font-family: "ryo-text-plusn", serif;
  font-weight: 400;
  font-style: normal;
  gap: calc(12* (100vw /375)) calc(1* (100vw /375));
  letter-spacing: 0.08em;
}

.sec_tax li {
  font-size: calc(14* (100vw /375));
  text-decoration: underline;
  width: max-content;
  color: #743C1D;
  letter-spacing: 0.08em;
}

.sec_tax li.tax_name {
  font-size: calc(18* (100vw /375));
  text-decoration: none;
  width: 100%;
  line-height: 1.77;
  letter-spacing: 0.08em;
}

.limited_box {
  margin-bottom: calc(13* (100vw /375));
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  font-family: "ryo-text-plusn", serif;
  font-weight: 400;
  font-style: normal;
  width: calc(90*(100vw / 375));
  height: calc(30*(100vw / 375));
  font-size: calc(14 * (100vw / 375));
  letter-spacing: .08em;
  line-height: 1;
  border: 1px solid #743C1D;
  color: #743C1D;
}


/************** mainVisual **************/
.mainVisual {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 0 0;
  position: relative;
  z-index: 1;
  background-color: #FFFC9D;
}

.mainVisual .slick {
  pointer-events: none;
}

.mainVisual .ttl_box {
  margin: 0 auto;
  padding-bottom: calc(50* (100vw /375));
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: calc(30 * (100vw /375)) 0;
  align-items: center;
  padding-top: calc(105* (100vw /375));
  background: url(../img/sp/mv_bg.png) no-repeat bottom / 100%;
}

.mainVisual h2 {
  width: calc(296* (100vw /375));
}

.mainVisual .day_box {
  width: calc(210* (100vw /375));
}


/************** sec01 **************/
.sec01 {
  text-align: center;
  background-color: #fff;
  position: relative;
  z-index: 1;
}

.sec01 .text_box {
  margin: 0 auto;
  font-family: "ryo-text-plusn", serif;
  font-weight: 400;
  font-style: normal;
  /* pointer-events: none; */
}

.sec01 .text_box.slide .box {
  position: relative;
  height: calc(727* (100vw /375));
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.sec01 .text_box.slide .box01 {
  background: url(../img/sp/sec01_bg.png) center/100% no-repeat;
}

.sec01 .text_box.slide .box02 {
  background: url(../img/sp/sec01_bg02.png) center/100% no-repeat;
}

.sec01 .text_box.slide .box {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
}

.sec01 h3 {
  margin-bottom: 0;
  font-size: calc(20* (100vw /375));
  letter-spacing: 0.08em;
  line-height: 1.6;
}

.sec01 .mv_text {
  margin-bottom: 0;
  font-size: calc(14* (100vw /375));
  letter-spacing: 0.08em;
  line-height: 2.28;
  color: #250D00;
}

.sec01 .mv_text .accordion__text {
  color: #250D00;
}

.sec01 .btn03 {
  margin: calc(46*(100vw / 375)) auto 0;
  width: calc(310*(100vw / 375));
}


/************** sec02 **************/
.sec02 {
  padding: calc(106* (100vw /375)) 0 calc(19* (100vw /375));
  position: relative;
  z-index: 2;
  background-color: #FFFC9D;
}

.sec02 .ttl_box {
  margin: 0 auto calc(40* (100vw /375));
}

/*** sec_box01 ***/
.sec02 .sec_box01 {
  margin: 0 auto calc(43* (100vw /375));
}

.sec02 .sec_box01 .img_big_box {
  margin-bottom: calc(36* (100vw /375));
}

/*** sec_box02 ***/
.sec02 .sec_box02 {
  margin: 0 auto calc(51* (100vw /375));
}

.sec02 .sec_box02 .imgBox {
  margin: 0 auto calc(32* (100vw /375));
  width: calc(340* (100vw /375));
}

.sec02 .sec_box02 .sec_text02 {
  margin: 0 auto;
}

/*** sec_box03 ***/
.sec02 .sec_box03 .img_big_box {
  margin-bottom: calc(39* (100vw /375));
}

/*** sec_box04 ***/
.sec02 .sec_box04 .img_big_box {
  margin-bottom: calc(46* (100vw /375));
}

.sec02 .sec_box04 .sub_box .text_box:nth-of-type(1) .sec_text02 {
  margin-bottom: calc(41* (100vw /375));
}

/*** sec_box05 ***/
.sec02 .sec_box05 .img_big_box {
  margin-bottom: calc(37* (100vw /375));
}


/************** sec03 **************/
.sec03 {
  background: #FFCC84;
  padding: calc(103* (100vw /375)) 0 calc(21* (100vw /375));
  position: relative;
  z-index: 3;
}

.sec03 .ttl_box {
  margin: 0 auto calc(40* (100vw /375));
}

/*** sec_box01 ***/
.sec03 .sec_box01 {
  margin: 0 auto calc(51* (100vw /375));
}

.sec03 .sec_box01 .imgBox {
  margin-bottom: calc(51* (100vw /375));
}


/************** sec04 **************/
.sec04 {
  background: #FFFC9D;
  padding: calc(106* (100vw /375)) 0 calc(86* (100vw /375));
  position: relative;
  z-index: 4;
}

.sec04 .ttl_box .limited_text {
  background: #FFFC9D;
}

.sec04 .ttl_box {
  margin: 0 auto calc(40* (100vw /375));
}

/*** sec_box01 ***/
.sec04 .sec_box01 {
  margin: 0 auto calc(72* (100vw /375));
}

.sec04 .sec_box01 .img_big_box {
  margin-bottom: calc(37* (100vw /375));
}

.sec04 .sec_box01 .sub_box .sec_text02  {
  margin-bottom: calc(35* (100vw /375));
}

/*** sec_box02 ***/
.sec04 .sec_box02 {
  margin: 0 auto calc(51* (100vw /375));
}

.sec04 .sec_box02 .img_big_box {
  margin-bottom: calc(39* (100vw /375));
}

/*** sec_box03 ***/
.sec04 .sec_box03 {
  margin: 0 auto calc(51* (100vw /375));
}

.sec04 .sec_box03 .img_big_box {
  margin-bottom: calc(37* (100vw /375));
}

/*** sec_box04 ***/
.sec04 .sec_box04 {
  margin: 0 auto calc(51* (100vw /375));
}

.sec04 .sec_box04 .imgBox {
  margin-bottom: calc(45* (100vw /375));
}

/*** sec_box05 ***/
.sec04 .sec_box05 {
  margin: 0 auto calc(51* (100vw /375));
}

.sec04 .sec_box05 .img_big_box {
  margin-bottom: calc(74* (100vw /375));
}

.sec04 .btn01 {
  margin: calc(-19*(100vw / 375)) auto 0;
  width: calc(332*(100vw / 375));
}


/************** sec05 **************/
.sec05 {
  background: #FFE4D3;
  padding: calc(106* (100vw /375)) 0 calc(87* (100vw /375));
  position: relative;
  z-index: 5;
}

.sec05 .ttl_box .limited_text {
  background: #FFE4D3;
}

.sec05 .ttl_box {
  margin: 0 auto calc(36* (100vw /375));
  gap: calc(6*(100vw / 375)) 0;
}

.sec05 .ttl_box .sub_ttl {
  text-align: center;
  line-height: 1.5;
  font-family: "adobe-garamond-pro", serif;
}

/*** sec_box01 ***/
.sec05 .sec_box01 {
  margin: 0 auto calc(65* (100vw /375));
}

.sec05 .sec_box01 .sec_tax {
  margin: 0 0 calc(24*(100vw / 375));
}

.sec05 .sec_box01 .imgBox {
  margin-bottom: calc(35* (100vw /375));
  pointer-events: none;
}

.sec05 .sec_text02:nth-of-type(2) {
  margin-top: calc(63* (100vw /375));
}

.sec05 .sec_text02:nth-of-type(3) {
  margin-top: calc(7* (100vw /375));
}

.sec05 .btn02 {
  margin: calc(80*(100vw / 375)) auto 0;
  width: calc(310*(100vw / 375));
}




/* ===============================================### 
PC用デザイン
###=============================================== */
@media screen and (min-width: 767px) {
  .sp_only {
    display: none;
  }
  
  .pc_only {
    display: block;
  }

  .main-area.lp {
    padding-top: 43px;
  }

  /*疑似要素でcontent全体に画像を配置*/
  /* body::before {
    content: "";
    display: block;
    background: url(../img/pc/content_bg01.png) center/100% no-repeat;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
    width: 100%;
    height: 100vh;
    position: fixed;
    z-index: -1;
    pointer-events: none;
  } */

  .js-accordion {
    margin: 0;
  }

  .sec_box .imgBox {
    width: 44rem;
  }
  
  .accordion__text span.pc_only {
    display: contents;
  }


  /************** common **************/
  .sec_box {
    margin: 0 auto;
    width: 120rem;
  }

  .sec_box .text_box {
    width: 70rem;
    height: max-content;
  }

  /*** ttl_box ***/
  .ttl_box {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 1.3rem 0;
  }

  .ttl_box h3 {
    font-size: 9.2rem;
    letter-spacing: 0.02em;
    line-height: 1;
  }

  .ttl_box .sub_ttl {
    font-size: 1.6rem;
    letter-spacing: 0.08em;
    line-height: 1;
  }

  .ttl_box .limited_text {
    font-size: 4.2rem;
    letter-spacing: 0.02em;
    line-height: 1;
    position: relative;
    z-index: 2;
  }

  .ttl_box .limited_text p {
    margin-bottom: -1rem;
    padding: 0 1.3rem;
    position: relative;
    z-index: 2;
  }

  .ttl_box .limited_text::before{
    height: 1px;
    width: 34rem;
    top: 65%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    background-image: url(../img/pc/border.svg);
  }

  /*** sec_text ***/
  .sec_text {
    letter-spacing: 0.08em;
  }

  .sec_text01 {
    font-size: 2.2rem;
    line-height: 1.818;
    text-align: left;
  }

  .sec_text02 {
    font-size: 1.4rem;
    line-height: 2.28;
  } 

  .sec_text03 {
    margin-top: 1.6rem;
    font-size: 1.2rem;
    line-height: 1;
  } 

  /*** sec_tax ***/
  .sec_tax {
    margin: 0 0 3.2rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1.9rem .1rem;
    letter-spacing: 0.08em;
  }

  .sec_tax li {
    font-size: 1.4rem;
    text-decoration: underline;
    letter-spacing: 0.08em;
  }

  .sec_tax li.tax_name {
    font-size: 2rem;
    text-decoration: none;
    width: 100%;
    line-height: 1;
    letter-spacing: 0.08em;
  }

  .limited_box {
    margin-bottom: 1.9rem;
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    width: 9.0rem;
    height: 3.0rem;
    font-size: 1.4rem;
    letter-spacing: .08em;
    line-height: 1;
  }


  /************** mainVisual **************/
  .mainVisual {
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    gap: 0;
    position: relative;
    z-index: 1;
    background-color: #FFFC9D;
  }

  .mainVisual .ttl_box {
    margin: 0 auto;
    padding-top: calc(193* (100vw /1440));
    padding-bottom: 0;
    width: calc(640* (100vw /1440));
    display: flex;
    flex-direction: column;
    gap: 4rem 0;
    align-items: center;
    background: url(../img/pc/mv_bg.png) no-repeat center / 100%;
  }

  .mainVisual h2 {
    width: calc(404* (100vw /1440));
  }

  .mainVisual .imgBox {
    width: calc(800* (100vw /1440));
  }

  .mainVisual .day_box {
    width: calc(240* (100vw /1440));
  }


  /************** sec01 **************/
  .sec01 {
    text-align: center;
    background-color: #fff;
  }

  .sec01 .text_box {
    margin: 0 auto;
  }

  .sec01 .text_box.slide .box {
    padding: 0;
    height: 61.7rem;
  }

  .sec01 .text_box.slide .box01 {
    background: url(../img/pc/sec01_bg.png) center/100% no-repeat;
  }
  
  .sec01 .text_box.slide .box02 {

    background: url(../img/pc/sec01_bg02.png) center/100% no-repeat;
  }

  .sec01 .text_box.slide .box02 h3 {
    padding-top: .7rem;
  }

  .sec01 .text_box.slide .box {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
  }

  .sec01 h3 {
    margin-bottom: 0;
    font-size: 2.8rem;
    letter-spacing: 0.08em;
    line-height: 1;
  }

  .sec01 .mv_text {
    margin: 5.1rem 0 0;
    font-size: 1.6rem;
    letter-spacing: 0.08em;
    line-height: 2;
  }

  .sec01 .btn03 {
    margin: 5.2rem auto 0;
    width: 33.4rem;
  }


  /************** sec02 **************/
  .sec02 {
    padding: 11.7rem 0 11.3rem;
    position: relative;
    z-index: 2;
    background-color: #FFFC9D;
  }

  /*** sec_box01 ***/
  .sec02 .sec_box01 {
    margin: 0 auto 8.6rem;
    width: 100rem;
    display: grid;
    grid-template-columns: 1fr;
  }

  .sec02 .ttl_box {
    margin: 16rem 0 0 ;
    grid-column: 1/2;
    grid-row: 1/2;
  }

  .sec02 .sec_box01 .img_big_box {
    margin-bottom: 0;
    grid-column: 2/3;
  }

  .sec02 .sec_box01 .sec_text01 {
    margin: 33.2rem 0 0;
    grid-column: 1/2;
    grid-row: 1/2;
    width: max-content;
    height: max-content;
  }

  /*** sec_box02 ***/
  .sec02 .sec_box02 {
    margin: 0 auto 9.1rem;
  }

  .sec02 .sec_box02 .imgBox {
    margin: 0 auto 5.2rem;
    width: 50rem;
  }

  .sec02 .sec_box02 .sec_text02 {
    margin: 0 auto;
    text-align: center;
  }

  /*** sec_box03 ***/
  .sec02 .sec_box03 {
    margin: 0 auto 9.4rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .slick-dotted.slick-slider {
    width: 100%;
  }

  .sec02 .sec_box03 .text_box {
    margin-top: 0;
  }

  .sec02 .sec_box03 .img_big_box {
    margin-bottom: 0;
  }

  .sec02 .sec_box03 .img_big_box {
    margin-bottom: 0;
  }

  /*** sec_box04 ***/
  .sec02 .sec_box04 {
    margin: 0 auto 9.4rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row-reverse;
  }

  .sec02 .sec_box04 .img_big_box {
    margin-bottom: 0;
  }

  .sec02 .sec_box04 .sub_box .text_box:nth-of-type(1) .sec_text02 {
    padding-bottom: 2rem;
    margin-bottom: 3rem;
    border-bottom: 1px solid #743C1D;
  }

  /*** sec_box05 ***/
  .sec02 .sec_box05 {
    margin: 0 auto 9.4rem;
    margin-bottom: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
  }

  .sec02 .sec_box05 .img_big_box {
    margin-bottom: 0;
  }


  /************** sec03 **************/
  .sec03 {
    background: #FFCC84;
    padding: 12.3rem 0 12rem;
    position: relative;
    z-index: 3;
  }

  .sec03 .ttl_box {
    margin: 0 auto 7.9rem;
    align-items: center;
  }

  /*** sec_box01 ***/
  .sec03 .sec_box01 {
    margin: 0 auto 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row-reverse;
  }

  .sec03 .sec_box01 .imgBox {
    margin-bottom: 0;
  }


  /************** sec04 **************/
  .sec04 {
    background: #FFFC9D;
    padding: 12.6rem 0 10.6rem;
    position: relative;
    z-index: 4;
  }

  .sec04 .ttl_box .limited_text {
    background: #FFFC9D;
  }

  .sec04 .ttl_box {
    margin: 0 auto 7.9rem;
    align-items: center;
  }

  /*** sec_box01 ***/
  .sec04 .sec_box01 {
    margin: 0 auto 4rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row-reverse;
  }

  .sec04 .sec_box01 .img_big_box {
    margin-bottom: 5.4rem;
  }

  .sec04 .sec_box01 .sub_box .sec_text02  {
    margin-bottom: 2.6rem;
  }

  .sec04 .sec_box01 .sub_box .sec_text02 {
    padding-bottom: 2.6rem;
    border-bottom: 1px solid #743C1D;
  }

  .sec04 .sec_box01 .sub_box .text_box:last-child .sec_text02 {
    border-bottom: none;
  }

  /*** sec_box02 ***/
  .sec04 .sec_box02 {
    margin: 0 auto 9.4rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
  }

  .sec04 .sec_box02 .img_big_box {
    margin-bottom: 0;
  }

  /*** sec_box03 ***/
  .sec04 .sec_box03 {
    margin: 0 auto 9.7rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row-reverse;
  }

  .sec04 .sec_box03 .img_big_box {
    margin-bottom: 0;
  }

  /*** sec_box04 ***/
  .sec04 .sec_box04 {
    margin: 0 auto 9.6rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
  }

  .sec04 .sec_box04 .imgBox {
    margin-bottom: 0;
  }

  /*** sec_box05 ***/
  .sec04 .sec_box05 {
    margin: 0 auto 5.1rem;
  }

  .sec04 .sec_box05 .img_big_box {
    margin-bottom: 0;
  }

  .sec04 .btn01 {
    margin: -1.9rem auto 0;
    width: 33.2rem;
  }


  /************** sec05 **************/
  .sec05 {
    background: #FFE4D3;
    padding: 12.7rem 0 10.7rem;
    position: relative;
    z-index: 5;
  }

  .sec05 .ttl_box .limited_text {
    background: #FFE4D3;
  }

  .sec05 .ttl_box {
    margin: 0 auto 7.6rem;
    gap: 1rem 0;
    align-items: center;
  }

  .sec05 .ttl_box .sub_ttl {
    text-align: center;
    line-height: 1.5;
  }

  /*** sec_box01 ***/
  .sec05 .sec_box01 {
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row-reverse;
    width: 100rem;
  }

  .sec05 .sec_box01 .sec_tax li.tax_name {
    line-height: 1.8;
  }

  .sec05 .sec_box01 .sec_tax {
    margin: 0 0 3.2rem;
  }

  .sec05 .sec_box01 .imgBox {
    margin-bottom: 0;
  }

  .sec05 .sec_box01 .text_box {
    width: max-content;
  }

  .sec05 .sec_text02:nth-of-type(2) {
    margin-top: 6.3rem;
  }

  .sec05 .sec_box02 {
    margin: 5.2rem auto 0;
    width: 73rem;
  }

  .sec05 .btn02 {
    margin: 8.0rem auto 0;
    width: 31.0rem;
  }


} 






/* ===============================================
*   dots*
=============================================== */
@media screen and (min-width: 768px) {
  .lp_area .slide_dots_box .slide-dots {
    display: flex;
    justify-content: center;
    gap: 5.0rem;
    position: absolute;
    left: -3.9rem;
    right: 0;
    margin: auto;
    width: auto;
    height: 3.6rem;
    margin-top: 2.0rem;
  }

  .slide_dots_box .slide-dots button {
    display: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
    border: none;
    background-color: transparent;
  }

  /* それぞれのドット */
  .slide_dots_box .slide-dots li {
    cursor: pointer;
    position: relative;
  }

  .slide_dots_box .slide-dots li::before {
    content: "";
    position: absolute;
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    width: 4.0rem;
    height: .2rem;
    top: 0;
    left: 0;
    transition: background-image .5s ease;
    border: 1px solid #743C1D;
  }

  /* 今表示してるスライドのドット */
  .slide_dots_box .slide-dots li.slick-active::before {
    content: "";
    position: absolute;
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    width: 4.0rem;
    height: .2rem;
    top: 0;
    left: 0;
    transition: background-image .5s ease;
    border: 1px solid #743C1D;
    background-color: #743C1D;
  }

  .slide_dots_box .slide-dots li:last-child {
    margin-right: 0;
  }
}

@media (max-width: 768px) {
  .lp_area .slide_dots_box .slide-dots {
    display: flex;
    justify-content: center;
    gap: calc(50*(100vw / 375));
    position: absolute;
    left: calc(-39*(100vw / 375));
    right: 0;
    margin: auto;
    width: auto;
    height: calc(36*(100vw / 375));
    margin-top: calc(20*(100vw / 375));
  }

  .slide_dots_box .slide-dots button {
    display: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
    border: none;
    background-color: transparent;
  }

  /* それぞれのドット */
  .slide_dots_box .slide-dots li {
    cursor: pointer;
    position: relative;
  }

  .slide_dots_box .slide-dots li::before {
    content: "";
    position: absolute;
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    width: calc(40 * (100vw / 375));
    height: calc(4 * (100vw / 375));
    top: 0;
    left: 0;
    transition: background-image .5s ease;
    border: 1px solid #743C1D;
  }

  /* 今表示してるスライドのドット */
  .slide_dots_box .slide-dots li.slick-active::before {
    content: "";
    position: absolute;
    display: inline-block;
    background-repeat: no-repeat;
    background-size: contain;
    width: calc(40 * (100vw / 375));
    height: calc(4 * (100vw / 375));
    top: 0;
    left: 0;
    transition: background-image .5s ease;
    border: 1px solid #743C1D;
    background-color: #743C1D;
  }

  .slide_dots_box .slide-dots li:last-child {
    margin-right: 0;
  }
}


/* ===============================================### 
footer  
###=============================================== */
/************** sp **************/
@media screen and (max-width: 767px) {
  .footer {
    background-color: unset;
    background: url(../img/sp/footer_bg.jpg) no-repeat center / 100%;
    position: relative;
    z-index: 999999;
  }

  .footer::after,
  .footer::before {
    display: none;
  }

  .footer, .footer .footer-inner a {
    color: #743C1D;
  }

  .footer .mailMagazine__btn a {
    background-color: #EBEBEB;
    border: 1px solid #583822;
  }

  .footer input, .footer .selectLanguage__btn button {
    color: #583822;
  }

  .footer .mailMagazine__form input {
    border: 1px solid #AC9182;
    /* color: #AC9182; */
  }

  .footer .mailMagazine__form input::placeholder {
    color: #AC9182;
  }


  /************** logo **************/
  .footer .footer-logo {
    position: relative;
    width: calc(89*(100vw / 375));
    height: calc(33* (100vw /375));
  }

  .footer .footer-logo a {
    display: block;
    position: relative;
    z-index: 99;
    width: calc(89* (100vw /375));
    height: calc(33* (100vw /375));
  }

  .footer .footer-logo img {
    display: none;
  }

  .footer .footer-logo::before {
    content: '';
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    width: calc(89* (100vw /375));
    height: calc(33* (100vw /375));
    background-image: url(../img/logo-footer_mucha_brown.svg);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  /************** sns **************/
  .footer .footer-snsWrap__icon li {
    position: relative;
  }

  .footer .footer-snsWrap__icon li a {
    display: block;
    position: relative;
    z-index: 99;
  }

  .footer .footer-snsWrap__icon li img {
    display: none;
  }

  .footer .footer-snsWrap__icon li::before {
    content: '';
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
  }

  .footer .footer-snsWrap__icon--x::before {
    width: calc(13* (100vw /375));
    height: calc(13* (100vw /375));
    background-image: url(../img/icon_sns_x_brown.png);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .footer .footer-snsWrap__icon--x a {
    width: calc(13* (100vw /375));
    height: calc(13* (100vw /375));
  }

  .footer .footer-snsWrap__icon--instagram::before {
    width: calc(14* (100vw /375));
    height: calc(13* (100vw /375));
    background-image: url(../img/icon_sns_instagram.svg);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .footer .footer-snsWrap__icon--instagram a {
    width: calc(14* (100vw /375));
    height: calc(13* (100vw /375));
  }

  .footer .footer-snsWrap__icon--line::before {
    width: calc(15* (100vw /375));
    height: calc(14* (100vw /375));
    background-image: url(../img/icon_sns_line.svg);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .footer .footer-snsWrap__icon--line a {
    width: calc(15* (100vw /375));
    height: calc(14* (100vw /375));
  }

  .footer .footer-snsWrap__icon--facebook::before {
    width: calc(7* (100vw /375));
    height: calc(14* (100vw /375));
    background-image: url(../img/icon_sns_face_book.svg);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .footer .footer-snsWrap__icon--facebook a {
    width: calc(7* (100vw /375));
    height: calc(14* (100vw /375));
  }
}
/************** pc **************/
@media screen and (min-width: 768px) {
  .footer {
    background-color: unset;
    background: url(../img/pc/footer_bg.jpg) no-repeat center / 100%;
  }

  .footer::after,
  .footer::before {
    display: none;
  }

  .footer, .footer .footer-inner a {
    color: #743C1D;
  }

  .footer .mailMagazine__btn a {
    background-color: #EBEBEB;
    border: 1px solid #583822;
  }

  .footer input, .footer .selectLanguage__btn button {
    color: #583822;
  }

  .footer .mailMagazine__form input {
    border: 1px solid #AC9182;
    /* color: #AC9182; */
  }

  .footer .mailMagazine__form input::placeholder {
    color: #AC9182;
  }


  /************** logo **************/
  .footer .footer-logo {
    position: relative;
    width: 8.9rem;
    height: 3.3rem;
  }

  .footer .footer-logo a {
    display: block;
    position: relative;
    z-index: 99;
    width: 8.9rem;
    height: 3.3rem;
  }

  .footer .footer-logo img {
    display: none;
  }

  .footer .footer-logo::before {
    content: '';
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    width: 8.9rem;
    height: 3.3rem;
    background-image: url(../img/logo-footer_mucha_brown.svg);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  /************** sns **************/
  .footer .footer-snsWrap__icon li {
    position: relative;
  }

  .footer .footer-snsWrap__icon li a {
    display: block;
    position: relative;
    z-index: 99;
  }

  .footer .footer-snsWrap__icon li img {
    display: none;
  }

  .footer .footer-snsWrap__icon li::before {
    content: '';
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
  }

  .footer .footer-snsWrap__icon--x::before {
    width: 1.3rem;
    height: 1.3rem;
    background-image: url(../img/icon_sns_x_brown.png);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .footer .footer-snsWrap__icon--x a {
    width: 1.3rem;
    height: 1.3rem;
  }

  .footer .footer-snsWrap__icon--instagram::before {
    width: 1.4rem;
    height: 1.3rem;
    background-image: url(../img/icon_sns_instagram.svg);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .footer .footer-snsWrap__icon--instagram a {
    width: 1.4rem;
    height: 1.3rem;
  }

  .footer .footer-snsWrap__icon--line::before {
    width: 1.5rem;
    height: 1.4rem;
    background-image: url(../img/icon_sns_line.svg);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .footer .footer-snsWrap__icon--line a {
    width: 1.5rem;
    height: 1.4rem;
  }

  .footer .footer-snsWrap__icon--facebook::before {
    width: .7rem;
    height: 1.4rem;
    background-image: url(../img/icon_sns_face_book.svg);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  .footer .footer-snsWrap__icon--facebook a {
    width: .7rem;
    height: 1.4rem;
  }
}
/* ===============================================### 
footer  
###=============================================== */






/* ===============================================
  * アニメーション - 2 *
=============================================== */
/* ===========### SP ###=========== */
  /*** sticky ***/
  .sticky_box {
    position: sticky;
  }

  .sec01 {
    top: 0;
  }

  .sec02 {
    top: calc(-4000* (100vw /375));
  }

  .sec03 {
    top: calc(-500* (100vw /375));
  }

  .sec04 {
    top: calc(-4000* (100vw /375));
  }

  .sec05 {
    top: 0;
  }

/* ===========### PC ###=========== */
@media screen and (min-width: 767px) {
  /*** sticky ***/
  .sticky_box {
    position: sticky;
  }

  .sec01 {
    top: 0;
  }

  .sec02 {
    top: -280rem;
  }

  .sec03 {
    top: -35rem;
  }

  .sec04 {
    top: -250rem;
  }

  .sec05 {
    top: 0;
  }
}


/* ===============================================### 
Matsui add
###=============================================== */
.atrBgAll {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: -1;
  background-size: cover;
  background-position: center top;
}

.artBg01 {
  background-image: url(../img/sp/content_bg01.png);
}

.artBg02 {
  background-image: url(../img/sp/content_bg02.png);
}

.artBg03 {
  background-image: url(../img/sp/content_bg01.png);
}

.artBg04 {
  background-image: url(../img/sp/content_bg03.png);
}

@media screen and (min-width: 767px) {
  .artBg01 {
    background-image: url(../img/pc/content_bg01.png);
  }
  
  .artBg02 {
    background-image: url(../img/pc/content_bg02.png);
  }
  
  .artBg03 {
    background-image: url(../img/pc/content_bg01.png);
  }
  
  .artBg04 {
    background-image: url(../img/pc/content_bg03.png);
  }

}
/* ===============================================### 
Matsui add
###=============================================== */
  /* 普通フェード */
  .main-container .js_imgFadeInV2 {
    opacity: 0;
    transition-duration: 1s;
    transition: ease-in, opacity 2500ms, transform 1000ms;
  }

  .main-container .js_imgFadeInV2.active {
    opacity: 1;
    transform: translateY(0%);
  }



  .sec_box .img_big_box {
    position: relative;
    width: calc(350* (100vw /375));
    overflow: hidden;
  }

  /* .sec_box .img_anime_box {
    width: calc(350* (100vw /375));
    height: calc(430* (100vw /375));
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
  }

  .img_anime_box {
    position: relative;
    overflow: hidden;
  }

  .img_anime_box a {
    width: 100%;
    position: absolute;
    left: 0;
    top: 0
  }

  .img_anime_box a.js_imgFadeIn {
    transform: translate3d(100%,0,0);
    transition: transform .6s cubic-bezier(.28,.11,.32,1);
  }
  
  .img_big_box .clip_figure.js_imgFadeInV2 {
    transform: translate3d(100%,0,0);
    transition: transform .6s cubic-bezier(.28,.11,.32,1);
    transition-delay: .4s;
  }
  
  .img_anime_box a.js_imgFadeIn:nth-of-type(1) {
    transition-delay: .7s;
  }
  .img_anime_box a.js_imgFadeIn:nth-of-type(2) {
    transition-delay: 1s;
  }
  .img_anime_box a.js_imgFadeIn:nth-of-type(3) {
    transition-delay: 1.3s;
  }
  .img_anime_box a.js_imgFadeIn:nth-of-type(4) {
    transition-delay: 1.5s;
  }
  .img_anime_box a.js_imgFadeIn:nth-of-type(5) {
    transition-delay: 1.8s;
  }
  
  .img_anime_box a.js_imgFadeIn.imgAnimated {
    transform: translateZ(0);
  }

  .img_big_box .clip_figure.js_imgFadeInV2.imgAnimated {
    transform: translateZ(0);
  } */

  @media screen and (min-width: 767px) {
    .sec_box .img_big_box {
      width: 44rem;
    }
  
    /* .sec_box .img_anime_box {
      width: 44rem;
      height: 54rem;
    }   */
  }

  
  .imgBox .slide {
    opacity: 0;
    transition: opacity .3s linear;
  }


  .imgBox .slide.slick-initialized {
    opacity : 1 ;
  }

  .sec05 .sec_text02 a {
    text-decoration: underline;
  }