@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
.main_inner {
  overflow-x: hidden;
}
#breadcrumbs {
  width: 140rem;
  margin-inline: auto;
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  ベーススタイル
///////////////////////////////////////////////////////////////////////////////////////
*/

.lp-barbour_250220 {
  --color-white: #fff;
  --color-black: #000;
  --color-brown: #c09a5d;
  --color-green: #305334;
  --font-noto: "Noto Sans JP", sans-serif;
  --font-source: "source-han-sans-japanese", sans-serif;
  --font-en: var(--font-f37-ginger);
  --font-ja: var(--font-noto);
  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-black: 900;
  --column_1: 1;
  --column_2: 2;
  --column_3: 3;
  --column_4: 4;
  /* font-feature-settings: "palt"; */
  font-feature-settings: normal;
  overflow: clip;
}
.lp-barbour_250220 {
  font-family: var(--font-noto);
  color: var(--color-black);
  font-weight: var(--fw-regular);
}

/* ●CSSで表示非表示を切り替える
.hidden-mobile
.hidden-desktop 
*/
  
/*
///////////////////////////////////////////////////////////////////////////////////////
  アニメーション
///////////////////////////////////////////////////////////////////////////////////////
*/

/* その場でフェード(js不使用) */
.fadein {
  opacity: 0;
  animation: fadein .7s ease forwards;
  animation-delay: 3.5s;
}
@keyframes fadein {
  100% {  opacity: 1;}
}

/* 下から上にフェードイン */
.jsFade {
  opacity: 0;
  transform: translateY(20px);
}
.jsFade.isActive {
  opacity: 1;
  transform: translateY(0px);
  transition: all .7s;
}
.jsFade.delay01.isActive {
  transition-delay: 0.5s;
}

/* 右方向からスライドイン */
.jsFade.slide_right {
  /* opacity: 1; */
  transform: translateX(20px);
}
.jsFade.slide_right.isActive {
  /* opacity: 1; */
  transform: translateX(0px);
  transition: all .7s;
}
.jsFade.slide_right.delay01.isActive {
  transition-delay: 1s;
}

/* 左方向からスライドイン */
.jsFade.slide_left {
  /* opacity: 1; */
  transform: translateX(-20px);
}
.jsFade.slide_left.isActive {
  /* opacity: 1; */
  transform: translateX(0px);
  transition: all .7s;
}
.jsFade.slide_left.delay01.isActive {
  transition-delay: 1s;
}

/* その場でフェード */
.jsFade.jsFade_spot {
  opacity: 0;
  transform: unset;
}
.jsFade.jsFade_spot.isActive {
  opacity: 1;
  transition: all .7s;
  transform: unset;
}
.jsFade.jsFade_spot.delay01.isActive {
  transition-delay: 0.5s;
}

/* .fadeInUp ---------------------------------------*/
.fadeInUp.active {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  visibility: visible ;
}

@keyframes fadeInUp{
  0% {
    opacity: 0;
    -webkit-transform: translateY(1em);
    -ms-transform: translateY(1em);
    transform: translateY(1em);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

@media screen and (max-width: 767px) {
  .fadeInUp_sp{
    opacity: 0;
    visibility: hidden;
    transition: opacity 1s, visibility 1s;
  }
  .fadeInUp_sp.active {
    opacity: 1;
    visibility: visible;
  }

}


/*
///////////////////////////////////////////////////////////////////////////////////////
  main_area
///////////////////////////////////////////////////////////////////////////////////////
*/
.main_area {
  width: 128rem;
  margin: 0 auto 6rem;
}
.main_area_img {
  margin-bottom: 6rem;
}
.main_area_ttl {
  font-family: var(--font-f37-ginger);
  font-size: 2.8rem;
  text-align: center;
  margin-bottom: 6rem;
  font-weight: var(--fw-bold);
}
.main_area_movie {
  width: auto;
  height: 100%;
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  lp_inner_area
///////////////////////////////////////////////////////////////////////////////////////
*/
.lp_inner_area {
  width: 100rem;
  margin: 0 auto;
}
.lp_img_100 {
  width: 100rem;
  margin: 0 auto 6rem;
}
.text_wrap {
  font-size: 2rem;
  line-height: 1.9;
  width: 100rem;
  margin: 0 auto 6rem;
}
.lp_img_64 {
  width: 64rem;
}
.lp_img_64.img_left {
  /* margin-right: auto; */
}
.lp_img_64.img_right {
  margin-left: auto;
}
.text_ttl {
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
  margin-top: -2rem;
  margin-bottom: 4rem;
}
.flex_base {
  display: flex;
  margin-bottom: 6rem;
  align-items: flex-end;
}
.credit_text {
  font-size: 1.8rem;
  line-height: 2;
}
.credit_text span {
  text-decoration: underline;
  text-decoration-color: #acacac;
  text-underline-offset: 5px;
}
.credit_text01 {
  margin-left: 2rem;
}
.lp_img_04_left {
  width: 34rem;
  margin-right: 2rem;
}
.credit_text02 {
  /* display: flex; */
  /* justify-content: flex-start; */
}
.credit_text03.hidden-mobile {
  /* display: flex; */
  width: 15rem;
  margin-left: auto;
}
.credit_text03.hidden-desktop {
  display: none;
}
.credit_text04 {
  margin-top: 2rem;
}
.credit_text05 {
  margin-left: 2rem;
}
.lp_img_03 {

}
.lp_img_04 {
  margin-top: -10rem;
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  about_area
///////////////////////////////////////////////////////////////////////////////////////
*/
.about_area {
  width: 100rem;
  margin: 12rem auto;
}
.about_text {
  font-size: 1.8rem;
  line-height: 2.111;
  margin-bottom: 6rem;
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  all_button
///////////////////////////////////////////////////////////////////////////////////////
*/
.all_button {
  width: 40rem;
  background: var(--color-black);
  color: var(--color-white);
  border: solid 1px var(--color-black);
  margin: 0 auto 24rem;
  text-align: center;
  font-size: 2rem;
  padding: 1.4rem 0;
  transition: 0.3s;
}
.all_button:hover {
  color: var(--color-black);
  background: var(--color-white);
}


/*
///////////////////////////////////////////////////////////////////////////////////////
  SP
///////////////////////////////////////////////////////////////////////////////////////
*/
@media screen and (max-width: 767px) {
/*
///////////////////////////////////////////////////////////////////////////////////////
  main_area
///////////////////////////////////////////////////////////////////////////////////////
*/
.main_area {
  width: 100%;
  margin: 0 auto calc(0* (100vw /750));
  padding-bottom: calc(60* (100vw /750));
}
.main_area_img {
  margin-bottom: calc(60* (100vw /750));
}
.main_area_ttl {
  font-size: calc(28* (100vw /750));
  line-height: 1.5;
  margin-bottom: calc(0* (100vw /750));
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  lp_inner_area
///////////////////////////////////////////////////////////////////////////////////////
*/
.lp_inner_area {
  width: 100%;
  margin: 0 auto;
}
.lp_img_100 {
  width: 100%;
  margin: 0 auto calc(60* (100vw /750));
}
.text_wrap {
  font-size: calc(18* (100vw /750));
  width: calc(650* (100vw /750));
  margin: 0 auto calc(60* (100vw /750));
}
.lp_img_64 {
  width: calc(650* (100vw /750));
  margin: 0 auto;
}
.text_ttl {
  font-size: calc(18* (100vw /750));
  margin-top: calc(-20* (100vw /750));
  margin-bottom: calc(40* (100vw /750));
  line-height: 1.9;
}
.flex_base {
  margin-bottom: calc(60* (100vw /750));
}
.credit_text {
  font-size: calc(16* (100vw /750));
  line-height: 1;
  margin-top: calc(20* (100vw /750));
  text-align: center;
}
.credit_text01 {
  margin-left: 0;
}
.credit_text02 {
  /* display: block; */
}
.credit_text03.hidden-desktop {
  display: block;
}
.credit_text04 {
  margin-top: calc(20* (100vw /750));
}
.credit_text05 {
  margin-left: 0;
}
.lp_img_04 {
  margin-top: 0;
}


/*
///////////////////////////////////////////////////////////////////////////////////////
  about_area
///////////////////////////////////////////////////////////////////////////////////////
*/
.about_area {
  width: calc(650* (100vw /750));
  margin: calc(120* (100vw /750)) auto;
}
.about_text {
  font-size: calc(18* (100vw /750));
  line-height: 2;
  margin-bottom: calc(60* (100vw /750));
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  all_button
///////////////////////////////////////////////////////////////////////////////////////
*/
.all_button {
  width: calc(400* (100vw /750));
  margin: 0 auto calc(380* (100vw /750));
  font-size: calc(20* (100vw /750));
  padding: calc(13* (100vw /750)) 0;
}

}



/* movie bg */
.lp-barbour_250220 .movieBg {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 100vw;
  height: auto;
  z-index: -1;
  overflow: hidden;
  display: none;
}
.lp-barbour_250220 .movieBg.on {
  display: block;
}
.lp-barbour_250220 .movieBg__wrap img {
  width: 100%;
  height: 100vh;
}
.lp-barbour_250220 .movieBg__wrap--cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 130vh;
  background: #fff;
  background-repeat: repeat-y;
  background-size: 100vw 25px;
  opacity: 0.85;
}

.bg_wrap {
  margin-top: -40rem;
}
.topics {
  background: #fff;
}
.bg_white {
  background: #fff;
  padding-bottom: 40rem;
}
@media screen and (max-width: 768px) {
  .lp-barbour_250220 .movieBg.hidden-mobile {
    display: none !important;
  }
  .lp-barbour_250220 .movieBg.hidden-desktop {
    display: block !important;
  }
  .lp-barbour_250220 .movieBg__wrap {
    position: relative;
  }
  .lp-barbour_250220 .movieBg__wrap video {
    width: auto;
    height: 100vh;
  }

  .bg_wrap {
    margin-top: 0;
  }
  .bg_white {
    padding-bottom: 0;
  }

  .credit_text span {
    text-underline-offset: 2px;
  }
    
}
