@charset "UTF-8";

html {font-size: 62.5%;}

* {-webkit-box-sizing: border-box;box-sizing: border-box;}

#Contents .slick-prev.slick-arrow {display: none !important;} 
#Contents .slick-next.slick-arrow {display: none !important;}
#Contents .slick-dots li.slick-active button:before {background-color: #9F8645;content: "";border-radius: 0px;}
#Contents .slick-dots li button:before {background-color: #DDD5BE;content: "";border-radius: 0px;opacity: 1 !important;}
/* #Contents .slick-dots {display: block !important;} */
#Contents .main-inner video,svg ,#Contents img{width: 100%;height: auto;}
#Header,#Foot {display: block;}
#Wrap {width: 100%;overflow-x: hidden;}
body .main-area {margin-top: -39px;}
/* ====================================================================
                                  ⬇︎ animation ⬇︎
==================================================================== */

#Contents .scrollFade.done {opacity: 1;transform: translate(0, 0);}
#Contents .scrollFade {opacity: 0;transform: translateY(100px);transition: all 1s;}
#Contents .fade {transition: all 3s;opacity: 0;visibility: hidden;transform: translate(0px, 0px);}
#Contents .fadein {opacity: 1;visibility: visible;transform: translate(0px, 0px);} 
/*#Contents .loadFade{animation:fadeIn ease 2s;} 
@keyframes fadeIn{
    from{opacity: 0;}
    to{opacity: 1; }
}*/
#Contents .loadFade{opacity: 0;transform: translateY(100px);transition: all 1s;}
#Contents .loadFade.done{opacity: 1;transform: translate(0, 0);}
#Contents .scrollFadeBg{position: relative;}
#Contents .scrollFadeBg::before {content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 20;
}
.scrollFadeBg.done::before{width: 0 !important;}
.scrollFadeBg::before{transition: all 1s;}


#Contents .first-ttlBlock::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 20;
}
#Contents .loadFade.done::after{width: 100% !important;}
#contents .loadFade::after {width: 0;transition: all .6s;}

/* ====================================================================
                                  ⬆︎ animation ⬆︎
==================================================================== */


/* ====================================================================
                                  ⬇︎ for all ⬇︎
==================================================================== */
.main-container {
    width: 100%;
    max-width: 120rem;
    margin: 0 auto;
    margin-top: 8.5rem;
    font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic', 'メイリオ', sans-serif;
    font-feature-settings: "palt";
    color: #000000;
    line-height: 2;
}
#Contents .relative{
  position: relative;
}   

#Contents h2{font-family: roboto-condensed, sans-serif;font-weight: 400;font-style: normal;color: #000000;}
#Contents h3{font-family: adobe-garamond-pro, serif;font-weight: 600;font-style: normal;color: #000000;}
#Contents h4{font-family: futura-pt, sans-serif;font-weight: 400;font-style: normal;color: #000000;}

#Contents .textUp.loadFade.done2{
  opacity: 1;
  transform: translate(0, 0);
  transition-delay: .2s;
  animation-fill-mode: forwards;
}

/* ====================================================================
                                  ⬆︎ for all ⬆︎
==================================================================== */

.main-area .main-inner {
  margin: auto !important;
  width: 100vw;
  max-width: 100%;
}




/* for pc */
@media only screen and (min-width: 600px) {

  /* ====================================================================
                                  ⬇︎ LP Area ⬇︎ 
==================================================================== */
body .main-area {
  margin-top: -66px;
}

body .main-area .sidebar-area {
  margin-top: 66px;
}
/* ====================================================================
                              ⬆︎ LP Area ⬆︎
==================================================================== */ 

    #Contents .slick-dots li.slick-active button:before {width: 6rem;height: .6rem;}
    #Contents .slick-dots li button:before {width: 6rem;height: .6rem;}
    #Contents .slick-dots li {width: 6rem !important;height: 1rem !important;margin: 0 .5rem !important;}
    #Contents .slick-dots {left: 0rem;bottom: -3.5rem !important;text-align: center;}
    #Contents .slick-dotted.slick-slider{margin-bottom: 5rem;}
  
    .main-area::after {margin: 0 auto !important;}
    .spOnly{display: none;}
    .pcOnly{display: inline-block;}


    #Contents {
        width: 100%;
         /* background-image: url(../img/page_pc.jpg); */
        background-size: 1400px;
        background-repeat: no-repeat;
        background-position-x: center;
        background-position-y: 114px;
    } 
    .main-container {
        width: 100%;
        max-width: 140rem;
        margin: 0 auto;
        font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic', 'メイリオ', sans-serif;
        font-feature-settings: "palt";
        line-height: 2;
        /* opacity: 0.6; */
    }

  
    #Contents h2{
        font-size: 6rem;
        line-height: 1;
        letter-spacing: 0.04em;
    }
    
    #Contents h3{
        font-size: 3.6rem;
        line-height: 1.05;
        letter-spacing: 0.035em;

    }
    
    #Contents h4{
        font-size: 2rem;
        line-height: 2.5;
        letter-spacing: 0.05em;
    }

    #Contents .lp-text{
      font-size: 1.5rem;
      letter-spacing: 0.12em;
      line-height: 2;
    }

    #Contents .contentsCredit{
      font-size: 1rem;
      line-height: 1.6;
      letter-spacing: 0.08em;
      margin-top: 1rem;
    }

    #Contents .flexItem{display: flex;width: 100%;margin: auto;justify-content:flex-start;flex-wrap: wrap;}
    #Contents .row-reverse{flex-flow: row-reverse;}  

    #Contents .slick-slide .spOnly{
        display: none;
    }

    #Contents .creditPostion{
      margin-left: 1rem;
    }

    #Contents .textUp.scrollFade.done{
      transition-delay: .2s;
    }

/* ====================================================================
                                  firstView
==================================================================== */

#Contents .firstview .ttl{
  width: 34.4rem;
  padding-top: 2.6rem;
  margin-left: auto;
  margin-right: auto;
}
#Contents .firstview .lp-text{
  text-align: center;
  margin-top: 3.2rem;
  font-size: 1.4rem;
  letter-spacing: 0.17em;
  line-height: 2.15;
}


/* ====================================================================
                                  section1
==================================================================== */

#Contents .sec1{ 
  margin-top: 8.2rem;
} 
#Contents .sec1 .imgBlock.__01{
  width: 53rem;
  margin-left: 20rem;
}
#Contents .sec1 .flexblock1{
  width: 33rem;
  margin-left: 30rem;
}
#Contents .sec1 .flexblock2{
  width: 42rem;
  margin-top: -45rem;
  margin-left: 15rem;
}
#Contents .sec1 .flexItem{
  margin-top: 6rem;
}
#Contents .sec1 .lp-text{
  margin-top: 2.4rem;
}
#Contents .sec1 .textUp{
  position: absolute;
  bottom: 1.6rem;
  left: 0rem;
  width: 29rem;
  z-index: 99;
}

/* ====================================================================
                                  section2
==================================================================== */

#Contents .sec2{ 
  margin-top: 16.6rem;
  position: relative;
} 
#Contents .sec2 .flexblock1{
  width: 50rem;
  margin-right: 22rem;
}
#Contents .sec2 .flexblock2{
  width: 40rem;
  margin-top: 26.8rem;
  margin-right: 6rem;
}
#Contents .sec2 .lp-text{
  margin-top: 2.4rem;
}
#Contents .sec2 .textUp{
  position: absolute;
  top: 9.4rem;
  right: 0;
  width: 24.4rem;
  z-index: 99;
}

/* ====================================================================
                                  section3
==================================================================== */

#Contents .sec3{ 
  margin-top: 16.6rem;
  position: relative;
} 
#Contents .sec3 .flexblock1{
  width: 53rem;
  margin-top: 19.2rem;
  margin-left: 20rem;
}
#Contents .sec3 .flexblock2{
  width: 42rem;
  margin-left: 5rem;
}
#Contents .sec3 .imgBlock.__01{
  width: 33rem;
  margin-top: -40rem;
  margin-left: auto;
  margin-right: 24.6rem;
}
#Contents .sec3 .lp-text{
  margin-top: 2.4rem;
}
#Contents .sec3 .creditBlock{
  width: 40rem;
  margin-left: auto;
  margin-right: 17.4rem;
  display: block;
}
#Contents .sec3 .textUp{
  position: absolute;
  bottom: 1.6rem;
  right: .2rem;
  width: 30rem;
  z-index: 99;
}

/* ====================================================================
                                  section4
==================================================================== */

#Contents .sec4{ 
  margin-top: 16.6rem;
  position: relative;
} 
#Contents .sec4 .flexblock1{
  width: 40rem;
  margin-left: 29.6rem;
}
#Contents .sec4 .flexblock2{
  width: 40rem;
  margin-left: 1rem;
  text-align: right;
}
#Contents .sec4 .imgBlock.__01{
  width: 40rem;
  margin-top: -5.4rem;
  margin-left: 22.4rem;
}
#Contents .sec4 .lp-text{
  margin-top: 2.4rem;
}
#Contents .sec4 .textUp{
  position: absolute;
  bottom: 0.8rem;
  left: -.2rem;
  width: 27.4rem;
  z-index: 99;
}


/* ====================================================================
                                  button
==================================================================== */

#Contents .btw{
  width: 46rem;
  margin-top: 12.6rem;
  margin-left: auto;
  margin-right: auto;
}

/* ====================================================================
                                  staffText
==================================================================== */

/* #Contents .staffText {
    margin-bottom: 12rem;
}
#Contents .staffText p {
    text-align: center;
    font-size: 1.2rem;
    letter-spacing: 0.025em;
    line-height: 2;
    color: #865756;
} */


/* ====================================================================
                                  ブラウザー対応
==================================================================== */

/* ===== Safari  ===== */
 /* ::-webkit-full-page-media, :future, :root 
 
  #Contents .contentsCredit{
    letter-spacing: 0.08em;
  } */



/* ===== Chrome  ===== */
/* @media screen and (-webkit-min-device-pixel-ratio:0) {
  
  #Contents .contentsCredit{
    letter-spacing: 0em;
  }
} */

/* ====================================================================
                                  ブラウザー対応
==================================================================== */

/* for tablet */

@media screen and (max-width: 1200px) and (min-width: 561px) {
  html {font-size: calc(10* (100vw / 1200)) !important;}
  .main-area .main-inner {
    margin: 0 !important;
    padding: 0 !important;
  }
}


}


/* for tablet */
/* @media only screen and (min-width: 768px) and (max-width: 1279px) {
  
  
}




/* =============================================================================================================
================================================================================================================
                                  ⬇︎ SP ⬇︎
================================================================================================================
================================================================================================================*/

@media only screen and (max-width: 561px) {

#Contents {
    /* background-image: url(../img/page_sp.jpg); */
    /* background-image: url(../img/page_sp2.jpg); */
    background-size: 375px;
    background-repeat: no-repeat;
    background-position: center 0;
    background-position-y: -60px;
    /* background-position-y: 4700px; */
  }

  .main-area .main-inner {
    padding: 0 !important;
}
  #Contents .main-area, .header .nav-wrapper{
    margin-bottom: 0;
  }

.main-container {
    width: 100%;
    /* max-width: 120rem; */
    margin: 0 auto;
    padding-top: 0;
    padding-bottom: calc(1 *(100vw/750));
    font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic', 'メイリオ', sans-serif;
    font-feature-settings: "palt";
    line-height: 2;
    /* opacity: 0.6; */
    overflow: hidden; 
    }
   
    .spOnly{display: inline-block;}
    .pcOnly{display: none;}
  
    #Contents .slick-dots li.slick-active button:before {width: calc(100*(100vw/750));height: calc(10*(100vw/750));}
    #Contents .slick-dots li button:before {width: calc(100*(100vw/750));height: calc(10*(100vw/750));}
    #Contents .slick-dots li {width: calc(97*(100vw/750)) !important;height: calc(12*(100vw/750)) !important;margin: 0 calc(9*(100vw/750)) !important;}
    #Contents .slick-dots {left: calc(-2*(100vw/750)) !important;bottom: calc(-42*(100vw/750)) !important;;text-align: center;}
    #Contents .slick-dotted.slick-slider{margin-bottom: 0;}
    #Contents .slick-dots li button {width: 0 !important;height: 0 !important;padding: 0 !important;}
  
    .main-area::after {
        margin: 0 auto !important;
    }
  
    #Contents h2{
        font-size: calc(85*(100vw/750));
        line-height: 1;
        letter-spacing: 0.02em;
    }
    
    #Contents h3{
        font-size: calc(60*(100vw/750));
        line-height: 0.63;
        letter-spacing: 0.035em;
    }
    
    #Contents h4{
        font-size: calc(36*(100vw/750));
        line-height: 2.08;
        letter-spacing: 0.05em;
        margin-top: 0;
    }

    #Contents .lp-text{
      font-size: calc(22*(100vw/750));
      letter-spacing: 0.1em;
      line-height: 2;
    }

    #Contents .contentsCredit{
      font-size: calc(17*(100vw/750));
      line-height: 1.88;
      letter-spacing: 0.01em;
      margin-top: calc(8*(100vw/750));
    }

    #Contents .flexItem{
        display: block;
        width: 100%;
        margin: auto;
        justify-content: flex-start;
        flex-wrap: wrap;
    }

    #Contents .block1{
        position: relative;
    }    

    #Contents .creditPostion{
      margin-left: calc(10*(100vw/750));
    }

/* ====================================================================
                                  firstView
==================================================================== */

#Contents .firstview .ttl{
  width: calc(405*(100vw/750));
  padding-top: calc(40*(100vw/750));
  margin-left: auto;
  margin-right: auto;
}
#Contents .firstview .lp-text{
  text-align: center;
  margin-top: calc(39*(100vw/750));
  font-size: calc(22*(100vw/750));
  letter-spacing: 0.17em;
  line-height: 2;
}


/* ====================================================================
                                  section1
==================================================================== */

#Contents .sec1{ 
  margin-top: calc(68*(100vw/750));
  position: relative;
} 
#Contents .sec1 .imgBlock.__01{
  width: calc(650*(100vw/750));
  margin-right: auto;
  margin-left: auto;
}
#Contents .sec1 .flexblock1{
  width: calc(450*(100vw/750));
  margin-left: auto;
}
#Contents .sec1 .flexblock2{
  width: calc(540*(100vw/750));
  margin-top: calc(58*(100vw/750));
  margin-left: calc(50*(100vw/750));
}
#Contents .sec1 .flexItem{
  margin-top: calc(60*(100vw/750));
}
#Contents .sec1 .lp-text{
  margin-top: calc(50*(100vw/750));
}
#Contents .sec1 .textUp{
  position: absolute;
  left: 0;
  bottom: calc(22*(100vw/750));
  width: calc(344*(100vw/750));
  z-index: 99;
}

/* ====================================================================
                                  section2
==================================================================== */

#Contents .sec2{ 
  margin-top: calc(238*(100vw/750));
  position: relative;
} 
#Contents .sec2 .flexblock1{
  width: calc(600*(100vw/750));
  margin-left: auto;
}
#Contents .sec2 .flexblock2{
  width: calc(500*(100vw/750));
  margin-top: calc(62*(100vw/750));
}
#Contents .sec2 .textBlock.spOnly{
  margin-left: calc(50*(100vw/750));
}
#Contents .sec2 .lp-text{
  margin-top: calc(50*(100vw/750));
}
#Contents .sec2 .textUp{
  position: absolute;
    top: calc(118*(100vw/750));
    right: 0;
    width: calc(292*(100vw/750));
    z-index: 99;
}

/* ====================================================================
                                  section3
==================================================================== */

#Contents .sec3{ 
  margin-top: calc(230*(100vw/750));
  position: relative;
} 
#Contents .sec3 .flexblock1{
  width: calc(650*(100vw/750));
  margin-left: auto;
  margin-right: auto;
}
#Contents .sec3 .flexblock2{
  width: calc(450*(100vw/750));
  margin-top: calc(62*(100vw/750));
}
#Contents .sec3 .imgBlock.__01{
  width: calc(540*(100vw/750));
  margin-top: calc(58*(100vw/750));
  margin-left: calc(160*(100vw/750));
}
#Contents .sec3 .lp-text{
  margin-top: calc(50*(100vw/750));
    margin-left: calc(50*(100vw/750));
}
#Contents .sec3 .contentsCredit.spOnly{
  margin-left: calc(50*(100vw/750));
}
#Contents .sec3 .textUp{
  position: absolute;
  bottom: calc(18*(100vw/750));
  right: 0;
  width: calc(366*(100vw/750));
  z-index: 99;
}

/* ====================================================================
                                  section4
==================================================================== */

#Contents .sec4{ 
  margin-top: calc(230*(100vw/750));
  position: relative;
} 
#Contents .sec4 .flexItem{
  display: flex;
  justify-content: center;
}
#Contents .sec4 .flexblock1{
  width: calc(370*(100vw/750));
}
#Contents .sec4 .flexblock2{
  width: calc(370*(100vw/750));
  margin-left: calc(10*(100vw/750));
}
#Contents .sec4 .imgBlock.__01{
  width: calc(500*(100vw/750));
  margin-top: calc(60*(100vw/750));
  margin-left: calc(50*(100vw/750));
}
#Contents .sec4 .lp-text{
  margin-top: 2.4rem;
}
#Contents .sec4 .textUp{
  position: absolute;
  bottom: calc(24*(100vw/750));
  left: 0;
  width: calc(322*(100vw/750));
  z-index: 99;
}

/* ====================================================================
                                  button
==================================================================== */

#Contents .btw{
  width: calc(460*(100vw/750));
  margin-top: calc(230*(100vw/750));
  margin-bottom: calc(140*(100vw/750));
  margin-left: auto;
  margin-right: auto;
}
/* ====================================================================
                                  staffText
==================================================================== */

/* #Contents .staffText {
    margin-bottom: calc(150*(100vw/750));
}
#Contents .staffText p {
    text-align: center;
    font-size: calc(24*(100vw/750));
    letter-spacing: 0.025em;
    line-height: 2;
    color: #865756;
} */

/* ====================================================================
                                  ⬇︎ backgroung ⬇︎
==================================================================== */

/* ====================================================================
                                  ⬆︎ backgroung ⬆︎
==================================================================== */



}