@charset "UTF-8";

:root {
  --font-lp_base: "objektiv-mk1","Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体","ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN,HiraKakuProN-W3, 游ゴシック, "yu-gothic-pr6n", メイリオ, Meiryo, Verdana, Helvetica, Arial, sans-serif;
  --color-lp_bg: #fff;
  --color-lp_font: #595959;
  --color-lp_primary: #9EB9D8;
  --color-lp_secondary: #C4A768;
  --color-lp_tertiary: #FEF5F0;
  --color-lp_gray: #E1E1E1;
  --color-lp_btn: transparent linear-gradient(90deg, #9EB9D8 50%, #EDE3DE 100%) 0% 0% no-repeat padding-box;
}

/*--------------------------------
            CSS Animation
 --------------------------------*/

/* Fade In
==================================*/

#lp_contents .fadeIn {
  opacity: 0;
  transition: 2s;
}

#lp_contents .fadeIn.is-show {
  opacity: 1;
}

#lp_contents .fadeInUp {
  opacity: 0;
  transform: translate(0, 5rem);
  transition: 2s;
}

#lp_contents .fadeInUp.is-show {
  transform: translate(0, 0);
  opacity: 1;
}


/* slider
==================================*/

#lp_contents .slick-dots{
  position: static;
  margin: auto;
  line-height: 0;
}

#lp_contents .slick-dotted.slick-slider{
  margin: 0;
}

#lp_contents .item_slider .slick-dots {
  bottom: 0px;
  display: flex;
  justify-content: center;
  gap: 2rem;
  margin: 2.5rem auto 0;
}

#lp_contents .item_slider .slick-dots li {
  position: relative;
  display: inline-block;
  width: 6rem;
  height: 0.3rem;
  margin: 0;
  padding: 0;
  cursor: pointer;
  background: var(--color-lp_gray);
}
#lp_contents .item_slider .slick-dots li button{
  width: 0;
  height: 100%;
  padding: 0;
}
#lp_contents .item_slider .slick-dots li.slick-active button {
  background-color: var(--color-lp_primary);
}
#lp_contents .item_slider .slick-dots li button:before {
  content: none;
}

@media (max-width: 767px) {
  #lp_contents .item_slider .slick-dots {
    margin-top: 2rem;
  }
}


/* tab
==================================*/

#lp_contents .tab_list {
  cursor: pointer;/* カーソルポインターに */
}
#lp_contents .tab{
  position: relative;
  padding-bottom: 2rem;
}
#lp_contents .tab.active:before{
  content: '';
  display: block;
  width: 1rem;
  height: 1rem;
  border-right: 1px solid var(--color-lp_primary);
  border-bottom: 1px solid var(--color-lp_primary);
  transform: rotate(45deg);
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
#lp_contents .panel,
#lp_contents .item_panel {
  display: none;
}
#lp_contents .panel.active,
#lp_contents .item_panel.active {
  display: block;
}

@media (max-width: 767px) {
  #lp_contents .tab{
    padding-bottom: 1.5rem;
  }
}


/* follow
==================================*/

#lp_contents .follow{
  position: fixed;
  top: 6.5rem;
  z-index: 100;
  transition: all 0.5s;
  opacity: 0;
  box-shadow: 3px 2px 7px 0px rgba(0,0,0,0.06);
}

#lp_contents .follow.fixed{
  opacity: 1;
}

#lp_contents .follow.none{
  opacity: 0;
}


/* parallaxBkImg
==================================*/

.cd-fixed-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 65rem;
  background-size: 100%;
  background-image: url('../img/mv.jpg');
  background-position: top center;
  background-repeat: no-repeat;
  /*background-attachment: fixed;*/
}

@media (max-width: 767px) {
  .cd-fixed-bg {
    height: 73rem;
    background-image: url('../img/mv_sp.jpg');
  }
}


/*--------------------------------
                共 通
 --------------------------------*/

main,#Wrap,.wrapBottom,.wrapTop{
  width: 100%;
  max-width: 100%;
}

#header.scroll, #header.top.scroll{
  box-shadow: initial;
}

#header .header_inner{
  border-width: 0;
}

#FooterWrap{
  position: relative;
  z-index: 100;
  background-color: var(--color-lp_bg);
}

#lp_contents *{
  box-sizing: border-box;
}

#lp_contents{
  font-family: var(--font-lp_base);
  font-feature-settings: "palt";
  font-size: 1.6rem;
  font-weight: 300;
  letter-spacing: 0.075em;
  line-height: 2;
  text-align: justify;
  padding-top: 50rem;

  color: var(--color-lp_font);
  background-color: var(--color-lp_bg);
  position: relative;
  overflow: hidden;
}
#lp_contents .sp_only{display: none;}
#lp_contents img{width: 100%;display: block;height: auto;}
#lp_contents a{display: block;width: 100%;cursor: pointer;transition: all 0.5s;color: inherit;}
#lp_contents a:hover{opacity: .8}
#lp_contents ul li,#lp_contents ol li{list-style: none;}
#lp_contents h1,#lp_contents h2,#lp_contents h3{padding: 0;float: none;font-weight: normal;}
#lp_contents p {
  display: block;
  margin: 0;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 2;
}
#lp_contents sup{
  font-size: 50%;
  margin-top: -0.6rem;
}
#lp_contents small.note{
  display: inline-block;
  margin-top: 1rem;
  font-size: 1.2rem;
}
#lp_contents p small.note{
  display: block;
  margin-top: 0.5rem;
}
#lp_contents section{
  position: relative;
}
#lp_contents .lp_inner{
  display: grid;
  gap: 12rem;
  width: 100%;
  background-color: var(--color-lp_bg);
  position: relative;
  z-index: 2;
  padding: 5rem 0 12rem;
}
#lp_contents .lp_inner section{
  width: 80rem;
  margin: auto;
}

/*------------ btn ------------*/
#lp_contents .link_btn{
  width: 30rem;
  height: 4.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.175em;
  color: #fff;
  background: var(--color-lp_btn);
  margin: 2rem auto 0;
}

#lp_contents .all_btn{
  text-align: center;
  margin: auto;
  display: grid;
  gap: 2rem;
}

#lp_contents .all_btn a{
  width: 60rem;
  height: 8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  font-size: 1.8rem;
  font-weight: 500;
  background: #F8F8F8;
  margin: auto;
}

#lp_contents .all_btn img{
  width: 16rem;
}

/*------------ cmpn_area ------------*/
#lp_contents .cmpn_area{
  text-align: center;
  display: grid;
  gap: 1.5rem;
  width: 50rem;
  padding: 3rem;
  border: 1px solid var(--color-lp_secondary);
  color: var(--color-lp_secondary);
  margin: auto;
}

#lp_contents .cmpn_area .ttl{
  font-size: 1.8rem;
  letter-spacing: 0.175em;
  line-height: 1;
  font-weight: 700;
  color: var(--color-lp_primary);
  margin-bottom: 2.5rem;
}

#lp_contents .cmpn_area .cmpn_ttl{
  margin-bottom: 0;
  color: var(--color-lp_secondary);
}

#lp_contents .cmpn_area .cmpn_txt{
  font-size: 1.8rem;
  line-height: 1.75;
}

#lp_contents .cmpn_area .cmpn_day{
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.175em;
  line-height: 1;
}

#lp_contents .cmpn_area .cmpn_day big{
  font-size: 2.1rem;
}

#lp_contents .cmpn_area .cmpn_day small{
  font-size: 1.2rem;
}

/*------------ item_area ------------*/
#lp_contents .item_area{
  text-align: center;
}

#lp_contents .item_area ul{
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 8rem;
}

#lp_contents .item_area li{
  width: 36rem;
}

#lp_contents .item_area figure{
  margin-bottom: 2rem;
}

#lp_contents .item_area .item_name{
  font-size: 1.4rem;
  line-height: 1.5;
}

#lp_contents .item_area .item_price{
  font-size: 1.4rem;
  letter-spacing: 0.15em;
  line-height: 1;
  margin-top: 1rem;
}


/* nav_area
==================================*/

#lp_contents .nav_area{
  width: 100%;
  height: 4rem;
  background-color: var(--color-lp_secondary);
  display: flex;
  align-items: center;
  justify-content: center;
}

#lp_contents .nav_area img{
  width: 36rem;
  margin: auto;
}


/* sec_mv
==================================*/

#lp_contents .sec_mv .main_ttl{
  text-align: center;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.1em;
  color: var(--color-lp_primary);
}

#lp_contents .sec_mv .main_ttl span{
  display: block;
  width: fit-content;
  padding: 0.6rem 2rem;
  margin: 2rem auto 0;
  font-size: 2rem;
  line-height: 1;
  letter-spacing: 0.075em;
  font-weight: 400;
  border: 1px solid var(--color-lp_primary);
  border-radius: 10rem;
}


/* sec_article
==================================*/

#lp_contents .sec_article .article_area {
  display: grid;
  gap: 8rem;
}

#lp_contents .sec_article .article_inner{
  display: grid;
  gap: 6rem;
}

#lp_contents .sec_article .article{
  display: grid;
  gap: 3rem;
}

/*ttl_wrap*/
#lp_contents .sec_article .ttl_wrap{
  width: 100%;
  border-bottom: 1px solid var(--color-lp_primary);
  padding-bottom: 2.5rem;
  margin-bottom: 4rem;
  text-align: center;
}

#lp_contents .sec_article .ttl_wrap .sec_ttl{
  font-size: 2.8rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  font-weight: bold;
  color: var(--color-lp_primary);
}

#lp_contents .sec_article .ttl_wrap .no{
  display: block;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 2rem;
}

#lp_contents .sec_article .article_ttl{
  display: grid;
  gap: 1.5rem 2rem;
  align-items: center;
  justify-content: center;
  justify-items: center;
  text-align: center;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: var(--color-lp_primary);
}

#lp_contents .sec_article .article_ttl.flex{
  display: flex;
}

#lp_contents .sec_article .article_ttl big{
  font-size: 2.6rem;
}

#lp_contents .sec_article .article_ttl span{
  width: fit-content;
  background-color: var(--color-lp_tertiary);
  padding: 0.6rem 2rem;
  border-radius: 10rem;
  line-height: 1;
  font-size: 2rem;
  font-weight: 500;
}

#lp_contents .sec_article .article_ttl span small{
  font-size: 1.6rem;
}

/*howto_wrap*/
#lp_contents .sec_article .howto_wrap{
  width: 100%;
  padding: 4rem;
  border: 3px solid #EDF4FC;
  position: relative;
}

#lp_contents .sec_article .howto_wrap .howto_ttl{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  transform: translateY(-50%);
  z-index: 2;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.2em;
  color: var(--color-lp_primary);
  width: fit-content;
}

#lp_contents .sec_article .howto_wrap .howto_ttl span{
  padding: 0 2rem;
  background-color: var(--color-lp_bg);
}

#lp_contents .sec_article .howto_wrap ul{
  display: grid;
  gap:2.5rem;
}

#lp_contents .sec_article .howto_wrap li{
  display: flex;
  align-items: center;
  gap: 2rem;
}

#lp_contents .sec_article .howto_wrap li:not(:last-child){
  padding-bottom: 2.5rem;
  background-image : linear-gradient(to right, #E1E1E1 2px, transparent 2px);
  background-size: 4px 2px;
  background-repeat: repeat-x;
  background-position: left bottom;
}

#lp_contents .sec_article .howto_wrap dl{
  display: flex;
  align-items: center;
  gap: 2rem;
}

#lp_contents .sec_article .howto_wrap dt{
  width: 8rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  color: var(--color-lp_primary);
}

#lp_contents .sec_article .howto_wrap dd{
  min-width: 47rem;
  line-height: 1.75;
}

#lp_contents .sec_article .howto_wrap figure{
  min-width: 13rem;
}

#lp_contents .sec_article .howto_wrap figure.HOWto_img{
  width: 50rem;
  margin: auto;
}

/*variation_wrap*/
#lp_contents .sec_article .variation_wrap{
  display: grid;
  gap: 3rem;
}

#lp_contents .sec_article .variation_wrap .img_blk{
  width: 52rem;
  margin: auto;
}

#lp_contents .sec_article .variation_wrap .item_blk{
  display: grid;
  gap: 4rem;
}

#lp_contents .sec_article .variation_wrap .color_list ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 2.5rem 2rem;
}

#lp_contents .sec_article .variation_wrap .color_list li{
  position: relative;
  width: 6rem;
  text-align: center;
  font-size: 1rem;
  line-height: 1.5;
  display: grid;
  gap: 1rem;
}

/*bnr_wrap*/
#lp_contents .sec_article .bnr_wrap{
  text-align: center;
  display: grid;
  gap: 2rem;
  margin: auto;
}


#lp_contents #article_2 .article_ttl{
  margin: 0 auto 2rem;
}

#lp_contents #article_4 .item_area ul:before{
  content: '';
  display: block;
  width: 4rem;
  aspect-ratio: 1/1;
  background-image: url(../img/multiply.svg);
  background-repeat: no-repeat;
  position: absolute;
  top: 21rem;
  left: 0;
  right: 0;
  margin: auto;
}

#lp_contents #article_6 .item_area ul{
  gap: 5rem 4rem;
}

#lp_contents #article_6 .item_area li{
  width: 24rem;
}

#lp_contents #article_6 .link_btn{
  width: 24rem;
  height: 4rem;
}


/*--------------------------------
            Responsive
 --------------------------------*/

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

/*--------------------------------
            Layout  SP
 --------------------------------*/
@media (max-width: 767px) {

  html {
    font-size: calc(10 * (100vw / 430));
  }

  #share{
    left: 5% !important;
    right: auto !important;
  }

  #FooterWrap {
    margin-top: -3rem;
  }

  #lp_contents{
    font-size: 1.5rem;
    padding-top: 30rem;
  }
  #lp_contents .sp_only{display: block;}
  #lp_contents .pc_only{display: none;}

  #lp_contents p {
    font-size: 1.5rem;
  }
  #lp_contents small.note{
    font-size: 1.1rem;
  }
  #lp_contents .lp_inner{
    gap: 8rem;
    padding: 4rem 0 8rem;
  }
  #lp_contents .lp_inner section{
    width: 39rem;
  }

  /*------------ btn ------------*/
  #lp_contents .all_btn a{
    width: 39rem;
    height: 6rem;
    gap: 1rem;
    font-size: 1.5rem;
  }

  #lp_contents .all_btn img{
    width: 10.5rem;
  }

  /*------------ cmpn_area ------------*/
  #lp_contents .cmpn_area{
    width: 33rem;
    padding: 2rem;
  }

  #lp_contents .cmpn_area .cmpn_txt{
    font-size: 1.5rem;
  }

  #lp_contents .cmpn_area .cmpn_day{
    font-size: 1.4rem;
  }

  #lp_contents .cmpn_area .cmpn_day big{
    font-size: 1.8rem;
  }

  #lp_contents .cmpn_area .cmpn_day small{
    font-size: 1rem;
  }

  /*------------ item_area ------------*/
  #lp_contents .item_area ul{
    gap: 2rem;
  }

  #lp_contents .item_area li{
    width: 18.5rem;
  }

  #lp_contents .item_area .item_name{
    font-size: 1.3rem;
  }

  #lp_contents .item_area .item_price{
    font-size: 1.3rem;
  }

  #lp_contents .item_area li .link_btn{
    width: 18.5rem;
    height: 3.6rem;
  }


  /* sec_mv
  ==================================*/

  #lp_contents .sec_mv .main_ttl{
    font-size: 2rem;
  }

  #lp_contents .sec_mv .main_ttl span{
    margin: 1.5rem auto 0;
    font-size: 1.7rem;
  }


  /* sec_article
  ==================================*/

  #lp_contents .sec_article .article_area {
    gap: 6rem;
  }

  #lp_contents .sec_article .article_inner{
    gap: 5rem;
  }

  #lp_contents .sec_article .article{
    gap: 2rem;
  }

  /*ttl_wrap*/
  #lp_contents .sec_article .ttl_wrap{
    padding-bottom: 1.5rem;
    margin-bottom: 3rem;
  }

  #lp_contents .sec_article .ttl_wrap .sec_ttl{
    font-size: 2rem;
  }

  #lp_contents .sec_article .ttl_wrap .no{
    font-size: 1.2rem;
    margin-bottom: 1.5rem;
  }

  #lp_contents .sec_article .article_ttl{
    gap: 1rem 1.5rem;
    font-size: 1.9rem;
  }

  #lp_contents .sec_article .article_ttl big{
    font-size: 2.1rem;
  }

  #lp_contents .sec_article .article_ttl span{
    font-size: 1.7rem;
  }

  #lp_contents .sec_article .article_ttl span small{
    font-size: 1.5rem;
  }

  /*howto_wrap*/
  #lp_contents .sec_article .howto_wrap{
    padding: 3rem 2rem;
  }

  #lp_contents .sec_article .howto_wrap .howto_ttl{
    font-size: 1.8rem;
  }

  #lp_contents .sec_article .howto_wrap ul{
    gap:2rem;
  }

  #lp_contents .sec_article .howto_wrap li{
    gap: 1rem;
  }

  #lp_contents .sec_article .howto_wrap li:not(:last-child){
    padding-bottom: 2rem;
  }

  #lp_contents .sec_article .howto_wrap dl{
    display: grid;
    gap: 1rem;
  }

  #lp_contents .sec_article .howto_wrap dt{
    font-size: 1.4rem;
  }

  #lp_contents .sec_article .howto_wrap dd{
    min-width: 24rem;
  }

  #lp_contents .sec_article .howto_wrap figure{
    min-width: 10rem;
  }

  #lp_contents .sec_article .howto_wrap figure.HOWto_img{
    width: 100%;
  }

  /*variation_wrap*/
  #lp_contents .sec_article .variation_wrap .img_blk{
    width: 39rem;
  }

  #lp_contents .sec_article .variation_wrap .item_blk{
    gap: 3rem;
  }

  #lp_contents .sec_article .variation_wrap .color_list ul{
    gap: 0.8rem 3rem;
  }

  /*bnr_wrap*/
  #lp_contents .sec_article .bnr_wrap{
    gap: 1.5rem;
  }


  #lp_contents #article_2 .article_ttl{
    margin-bottom: 1rem;
  }

  #lp_contents #article_4 .item_area ul:before{
    top: 9.6rem;
  }

  #lp_contents #article_6 .item_area ul{
    gap: 3rem 2rem;
  }

  #lp_contents #article_6 .item_area li{
    width: 18.5rem;
  }

  #lp_contents #article_6 .link_btn{
    width: 18.5rem;
    height: 3.6rem;
    font-size: 1.3rem;
  }
}