@charset "UTF-8";
/*
//////////////////////////////////////////////////////////////////////////////////////////////
- pc/sp共通デザイン初期設定 -
//////////////////////////////////////////////////////////////////////////////////////////////
*/
#LpContainer {
  --color-white: #fff;
  --color-black: #000;
  --color-red: #9d2328;
  --color-gold: #aa9637;
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", HelveticaNeue, "Helvetica Neue", Helvetica, Arial, "Noto Sans JP", sans-serif;
  background-color: #fff;
  box-sizing: border-box;
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
- ユーティリティクラス -
//////////////////////////////////////////////////////////////////////////////////////////////
*/
#LpContainer .u-text-left {text-align: left;}
#LpContainer .u-text-center {text-align: center;}
#LpContainer .u-text-regular {text-align: right;}
#LpContainer .u-text-bold {font-weight: var(--font-weight-bold);}
#LpContainer .u-text-red {color: var(--color-red);}
#LpContainer .u-text-underline {text-decoration: underline;}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
- common setting -
//////////////////////////////////////////////////////////////////////////////////////////////
*/
#LpContainer {
  padding-bottom: min(140*100vw/1400, 140px);
  background-color: var(--color-red);
}
#LpContainer .c-summary {
  margin-top: min(50*100vw/1400, 50px);
  font-size: min(16*100vw/1400, 16px);
  line-height: 2;
  text-align: center;
}
#LpContainer .c-button {
  width: min(680*100vw/1400, 680px);
  height: fit-content;
  margin: min(50*100vw/1400, 50px) auto 0;
  padding: min(24*100vw/1400, 24px);
  font-size: min(18*100vw/1400, 18px);
  line-height: 1.8;
  border-radius: min(40*100vw/1400, 40px);
  font-weight: var(--font-weight-bold);
  text-align: center;
}


#LpContainer .p-product__container[data-pattern="pattern-c"] {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: min(40*100vw/1400, 40px);
  width: min(560*100vw/1400, 560px);
}
#LpContainer .p-product__container[data-pattern="pattern-b"] {
  width: min(560*100vw/1400, 560px);
  margin: min(30 * 100vw / 1400, 30px) auto 0;
}
#LpContainer .p-product__container[data-pattern="pattern-b"] .p-product__card {
  width: min(260*100vw/1400, 260px);
  margin: 0 min(20*100vw/1400, 20px);
}

#LpContainer .p-product__container[data-pattern="pattern-b"] .p-product__card h3 {
  margin: min(20*100vw/1400, 20px) 0 0 0;
}

#LpContainer .c-button[data-type="fill_gold"] {
  background-color: var(--color-gold);
  color: var(--color-white);
  border: none;
}
#LpContainer .c-button[data-type="fill_gold"]::after {
  display: block;
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: min(10*100vw/1400, 10px) solid transparent;
  border-bottom: min(10*100vw/1400, 10px) solid transparent;
  border-left: min(10*100vw/1400, 10px) solid var(--color-white);
  border-right: 0;  
}

#LpContainer .c-button[data-type="fill"] {
  background-color: var(--color-black);
  color: var(--color-white);
}

#LpContainer .c-button[data-type="white"] {
  background-color: var(--color-white);
  color: var(--color-gold);
  border: none;
}
#LpContainer .c-button[data-type="white"]::after {
  display: block;
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: min(10*100vw/1400, 10px) solid transparent;
  border-bottom: min(10*100vw/1400, 10px) solid transparent;
  border-left: min(10*100vw/1400, 10px) solid var(--color-gold);
  border-right: 0;  
}

#LpContainer .c-button::after {
  width: min(20*100vw/1400, 20px);
  height: min(20*100vw/1400, 20px);
  right: min(30*100vw/1400, 30px);
}
.c-button[data-type="fill_framed"]::after,
#LpContainer .c-button[data-type="fill"]::after {
  filter: invert(1);
}
.c-item-name,
#LpContainer .c-item-credit {
  font-size: min(14*100vw/1400, 14px);
  line-height: 1.5;
  font-weight: var(--font-weight-regular);
  font-family: var(--font-weight-light);
  color: var(--color-white);
  text-align: center;
}
#LpContainer .p-product {
  width: min(1200*100vw/1400, 1200px);
  margin: min(140*100vw/1400, 140px) auto 0;
  /*background-color: var(--color-white);*/
  /*border-radius: min(100*100vw/1400, 100px);*/
  /*padding: min(40*100vw/1400, 40px) 0;*/
}

#LpContainer .p-product__container[data-columns="1"] {
  width: min(690*100vw/1400, 690px);
  margin: min(100*100vw/1400, 100px) auto 0;
}
#LpContainer .p-product__container[data-columns="2"] {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-content: center;
  width: min(560 * 100vw / 1400, 560px);
  margin: min(120*100vw/1400, 120px) auto 0;
  gap: min(40*100vw/1400, 40px);
}

#LpContainer .p-product__container[data-columns="2"] .p-product__card .c-item-name {
  margin: min(20*100vw/1400, 20px) 0 0 0;
}


#LpContainer .lp-p-card__subtitle h2 {
  width: min(560 * 100vw / 1400, 560px);
  font-size: 30px;
  margin: 0 auto 30px;
  padding: 0 0 15px 0;
  border-bottom: 1px solid var(--color-white);
  line-height: 1;
  color: var(--color-white);
  font-family: "futura-pt", sans-serif;
  font-weight: 700;
  text-align: center;
}

/*LP固有設定*/
#LpContainer .intro {
  display: block;
  margin: min(140 * 100vw / 1400, 140px) auto 0;
  border-radius: min(100 * 100vw / 1400, 100px);
  padding: min(40 * 100vw / 1400, 40px) 0;
  width: min(1000 * 100vw / 1400, 1000px);
  background-color: var(--color-white);
}

#LpContainer .intro .c-maintitle {
  font-size: min(52 * 100vw / 1400, 52px);
  color: var(--color-red);
}

#LpContainer .intro .c-summary {
  text-align: center;
}

#LpContainer .intro .product__titleNum {
  color: var(--color-red);
  font-size: min(80 * 100vw / 1400, 80px);
  line-height: 1;
  -webkit-text-stroke: 1px #f9e070;
  text-stroke: 1px #f9e070;
}

#LpContainer .intro .product__titleCate {
  display: block;
  z-index: 1;
  position: relative;
  font-size: min(80 * 100vw / 1400, 80px);
  line-height: 1;
  left: 0;
  text-align: left;
  /* font-family: "avenir-roman", sans-serif; */
  font-family: "futura-pt", sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #fff;
  margin-left: 0;
}

#LpContainer .category_area .c-maintitle,
#LpContainer .budged_area .c-maintitle {
  margin: min(80 * 100vw / 1400, 80px) 0 0 0;
  font-size: min(80 * 100vw / 1400, 80px);
  color: var(--color-white);
}

#LpContainer .budged_area .c-maintitle {
  position: relative;
}

#LpContainer .budged_area .c-maintitle::after {
  display: block;
  content: "●●●";
  position: absolute;
  top: min(-80 * 100vw / 1400, -80px);
  left: 50%;
  transform: translateX(-50%);
  font-size: min(60 * 100vw / 1400, 60px);
  letter-spacing: 0.1em;
  color: var(--color-gold);
}

#LpContainer .category_area .deading__note,
#LpContainer .budged_area .deading__note {
  display: block;
  color: var(--color-white);
  font-size: min(28 * 100vw / 1400, 28px);
  text-align: center;
  margin: min(10 * 100vw / 1400, 10px) 0 0 0;
}

#LpContainer .category__list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 1000px;
  margin: 40px auto 0px;
  padding: 0;
}

#LpContainer .category__list li {
  width: 35%;
  padding: 0 min(20 * 100vw / 1400, 20px);
  margin: min(10* 100vw / 1400, 10px);
  position: relative;
  border: 1px solid #fff;
  border-radius: min(80 * 100vw / 1400, 80px);
}

#LpContainer .category__list li::after {
  content: '';
  position: absolute;
  right: min(30 * 100vw / 1400, 30px);
  top: 45%;
  width: min(10 * 100vw / 1400, 10px);
  height: min(10 * 100vw / 1400, 10px);
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: translateY(-40%) rotate(135deg);
}

#LpContainer .category__list li a {
  display: block;
  padding: min(20 * 100vw / 1400, 20px) 0;
  height: auto;
  font-size: min(20 * 100vw / 1400, 20px);
  text-align: center;
  color: var(--color-white);
}

#LpContainer .p-product__creditWrap {
  display: flex;
  justify-content: center;
  margin: min(20 * 100vw / 1400, 20px) 0 0 0;
  text-align: center;
  gap: 30px;
}

#LpContainer .p-product__creditWrap.product__creditWrap--column2 {
  display: grid;
  grid-template-columns: repeat(2, 45%);
  margin: min(20 * 100vw / 1400, 20px) 0 0 0;
  text-align: center;
  gap: 10%;
}

#LpContainer .p-product__creditWrap.product__creditWrap--column3 {
  display: grid;
  grid-template-columns: repeat(3, 30%);
  margin: min(20 * 100vw / 1400, 20px) 0 0 0;
  text-align: center;
  gap: 3%;
}

.p-product__card-image--02 {
  margin: min(30 * 100vw / 1400, 30px) 0 0 0;
}

#LpContainer .p-product__title .p-product__titleNum {
  display: block;
  font-size: min(60 * 100vw / 1400, 60px) ;
  color: var(--color-red);
  -webkit-text-stroke: 2px #f9e070;
  text-stroke: 2px #f9e070;
  line-height: 1;
  font-family: "futura-pt", sans-serif;
  font-style: normal;
  font-weight: 700;
}

#LpContainer .p-product__title .p-product__titleCate {
  display: block;
  font-size: min(60 * 100vw / 1400, 60px);
  margin: 0 0 min(20 * 100vw / 1400, 20px) 0;
  line-height: 1;
  color: var(--color-white);
  font-family: "futura-pt", sans-serif;
  font-weight: 700;
}


#LpContainer .budged_area .p-product--02-1 {
  margin: min(60 * 100vw / 1400, 60px) 0 0 0;
}

#LpContainer .btn_wrap {
  display: grid;
  border-top: 1px solid var(--color-white);
  width: min(680 * 100vw / 1400, 680px);
  margin: min(60 * 100vw / 1400, 60px) auto 0;
  padding: min(60 * 100vw / 1400, 60px) 0 0 0;
  grid-template-columns: repeat(2, min(320 * 100vw / 1400, 320px));
  gap: min(20 * 100vw / 1400, 20px);
  place-items: center;
}

#LpContainer .btn_wrap li {
    display: block;
    width: 100%;
    border-radius: min(100 * 100vw / 1400, 100px);
    background-color: var(--color-gold);
}

#LpContainer .btn_wrap a {
    display: grid;
    place-content: center;
    width: 100%;
    height: 100%;
    font-size: min(18 * 100vw / 1400, 18px);
    font-weight: bold;
    text-align: center;
    padding: min(24 * 100vw / 1400, 24px) 0;
    color: var(--color-white);
}

#LpContainer .live_title {
  color: var(--color-white);
  font-size: min(calc(34 * 100vw / 1400), 40px);
  letter-spacing: calc(1 * 100vw / 1400);
  line-height: 1.05;
  margin-top: min(100 * 100vw / 1400, 100px);
  font-weight: bold;
}

#LpContainer .live_info {
  color: var(--color-white);
  margin-top: min(15 * 100vw / 1400, 15px);
  font-size: min(16 * 100vw / 1400, 16px);
  line-height: 2;
  text-align: center;
}

#LpContainer .live__image {
  color: var(--color-white);
  margin: min(15 * 100vw / 1400, 15px) auto 0;
  width: min(560 * 100vw / 1400, 560px);
}



/*
//////////////////////////////////////////////////////////////////////////////////////////////
- animation slick -
//////////////////////////////////////////////////////////////////////////////////////////////
*/
#LpContainer .slick-arrow {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  cursor: pointer;
  width: min(56*100vw/1400, 56px);
  height: min(56*100vw/1400, 56px);
  opacity: 0.8;
  border: none;
  top: 40%;
  font-size: 0;
  background: initial;
}
#LpContainer .slick-prev {
  transform: rotate(0);
  left: 0;
}
#LpContainer .slick-next {
  transform: rotate(135deg);
  right: 0;
}
#LpContainer .slick-arrow::after {
  display: block;
  content: "";
  width: min(13*100vw/1400, 13px);
  height: min(13*100vw/1400, 13px);
  border-top: 2px solid var(--color-black);
  border-left: 2px solid var(--color-black);
}
#LpContainer .slick-prev::after {
  transform: rotate(-45deg);
  margin-left: 0;
}
#LpContainer .slick-next::after {
  transform: rotate(5deg);
  margin-right: 0;
}


@media screen and (max-width: 767px) {
  #LpContainer {
    padding-bottom: calc(100*100vw/375);
  }
  #LpContainer .c-summary {
    width: calc(355*100vw/375);
    margin: calc(40*100vw/375) auto 0;
    font-size: calc(15*100vw/375);
    line-height: 1.7;
  }
  #LpContainer .c-button {
width: calc(300 * 100vw / 375);
        margin-top: calc(40 * 100vw / 375);
        padding: calc(20 * 100vw / 375) 0 calc(16 * 100vw / 375);
        font-size: calc(16 * 100vw / 375);
        line-height: 1.5;
        border-radius: calc(40 * 100vw / 375);
  }
  #LpContainer .c-button::after {
    width: calc(12*100vw/375);
    height: calc(12*100vw/375);
    right: calc(20*100vw/375);
  }
  #LpContainer .c-item-name,
  #LpContainer .c-item-credit {
    font-size: calc(14*100vw/375);
    line-height: 1.5;
  }
  #LpContainer .p-product__container[data-columns="1"] {
    width: calc(325*100vw/375);
     margin-top: calc(100 * 100vw / 375);
  }
  #LpContainer .p-product__container[data-columns="2"] {
    width: calc(320*100vw/375);
    margin: calc(40*100vw/375) auto;
    gap: calc(40*100vw/375) calc(10*100vw/375);
  }

#LpContainer .p-product__container[data-pattern="pattern-b"] {
  width: calc(330 * 100vw / 375);
  margin: calc(15 * 100vw / 375) auto 0;
}

#LpContainer .p-product__container[data-pattern="pattern-b"] .p-product__card {
  width: calc(160 * 100vw / 375);
  margin: 0 calc(5 * 100vw / 375);
}



#LpContainer .c-button[data-type="fill_gold"] {
  background-color: var(--color-gold);
  color: var(--color-white);
  border: none;
}
#LpContainer .c-button[data-type="fill_gold"]::after {
  border-top: calc(7 * 100vw / 375) solid transparent;
  border-bottom: calc(7 * 100vw / 375) solid transparent;
  border-left: calc(7 * 100vw / 375) solid var(--color-white);
}

#LpContainer .c-button[data-type="fill"] {
  background-color: var(--color-black);
  color: var(--color-white);
}

#LpContainer .c-button[data-type="white"] {
  background-color: var(--color-white);
  color: var(--color-gold);
  border: none;
}
#LpContainer .c-button[data-type="white"]::after {
  display: block;
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: calc(7 * 100vw / 375) solid transparent;
  border-bottom: calc(7 * 100vw / 375) solid transparent;
  border-left: calc(7 * 100vw / 375) solid var(--color-gold);
  border-right: 0;  
}

.c-button[data-type="fill_framed"]::after,
#LpContainer .c-button[data-type="fill"]::after {
  filter: invert(1);
}
.c-item-name,
#LpContainer .c-item-credit {
  font-size: calc(14*100vw/375);
  line-height: 1.5;
  font-weight: var(--font-weight-regular);
  font-family: var(--font-weight-light);
  color: var(--color-white);
  text-align: center;
}
#LpContainer .p-product {
  width: calc(330 * 100vw / 375);
  margin: calc(80 * 100vw / 375) auto 0;
}

#LpContainer .p-product__container[data-columns="2"] .p-product__card .c-item-name {
  margin: calc(10 * 100vw / 375) 0 0 0;

}


#LpContainer .lp-p-card__subtitle h2 {
  width: calc(330 * 100vw / 375);
  font-size: calc(24 * 100vw / 375);
  margin: 0 auto calc(30 * 100vw / 375);
  padding: 0 0 calc(15 * 100vw / 375) 0;
}

/*LP固有設定*/
#LpContainer .intro {
    margin: calc(30 * 100vw / 375) auto 0;
    width: calc(330 * 100vw / 375);
    border-radius: calc(30 * 100vw / 375);
    padding: calc(30 * 100vw / 375) 0;
}

#LpContainer .intro .c-maintitle {
  font-size: calc(28*100vw/375);
}

#LpContainer .intro .c-summary {
  text-align: center;
}

#LpContainer .intro .product__titleNum {
  color: var(--color-red);
  font-size: min(80 * 100vw / 1400, 80px);
  line-height: 1;
  -webkit-text-stroke: 1px #f9e070;
  text-stroke: 1px #f9e070;
}

#LpContainer .intro .product__titleCate {
  display: block;
  z-index: 1;
  position: relative;
  font-size: min(80 * 100vw / 1400, 80px);
  line-height: 1;
  left: 0;
  text-align: left;
  /* font-family: "avenir-roman", sans-serif; */
  font-family: "futura-pt", sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #fff;
  margin-left: 0;
}

#LpContainer .category_area .c-maintitle,
#LpContainer .budged_area .c-maintitle {
  margin: calc(60*100vw/375) 0 0 0;
  font-size: calc(46*100vw/375);
  color: var(--color-white);
}

#LpContainer .budged_area .c-maintitle::after {
  display: block;
  content: "●●●";
  position: absolute;
  top: calc(-60 * 100vw / 375);
  left: 50%;
  transform: translateX(-50%);
  font-size: calc(50 * 100vw / 375);
  letter-spacing: 0.1em;
  color: var(--color-gold);
}

#LpContainer .category_area .deading__note,
#LpContainer .budged_area .deading__note {
    font-size: calc(20 * 100vw / 375);
    text-align: center;
    margin: calc(10 * 100vw / 375) 0 0 0;
}

#LpContainer .category__list {
    width: calc(300 * 100vw / 375);
    margin: calc(40 * 100vw / 375) auto 0;
    padding: 0;
}

#LpContainer .category__list li {
    width: 100%;
    padding: 0;
    margin: calc(5 * 100vw / 375) 0;
    position: relative;
    border: 1px solid #fff;
    border-radius: calc(80 * 100vw / 375);
}

#LpContainer .category__list li::after {
  content: '';
  position: absolute;
  right: calc(20 * 100vw / 375);
  top: 45%;
  width: calc(8 * 100vw / 375);
  height: calc(8 * 100vw / 375);
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: translateY(-40%) rotate(135deg);
}

#LpContainer .category__list li a {
    padding: calc(10 * 100vw / 375) 0;
    height: auto;
    font-size: calc(14 * 100vw / 375);
}

#LpContainer .p-product__creditWrap {
  display: flex;
  justify-content: center;
  margin: min(20 * 100vw / 1400, 20px) 0 0 0;
  text-align: center;
  gap: 30px;
}

#LpContainer .p-product__creditWrap.product__creditWrap--column2 {
  display: grid;
  grid-template-columns: repeat(2, 45%);
  margin: calc(10 * 100vw / 375) 0 0 0;
  text-align: center;
  gap: 10%;
}

#LpContainer .p-product__creditWrap.product__creditWrap--column3 {
  display: grid;
  grid-template-columns: repeat(3, 30%);
  margin: min(20 * 100vw / 1400, 20px) 0 0 0;
  text-align: center;
  gap: 3%;
}
#LpContainer .p-product__creditWrap.product__creditWrap--column3 {
 display: flex;
 flex-wrap: wrap;
 grid-template-columns: repeat(3, 30%);
 margin: calc(10 * 100vw / 375) 0 0 0;
 text-align: center;
 gap: calc(10 * 100vw / 375);
}

#LpContainer .p-product__creditWrap.product__creditWrap--column3 > a {
  width: 45%;
}

.p-product__card-image--02 {
  margin: min(30 * 100vw / 1400, 30px) 0 0 0;
}

#LpContainer .p-product__title .p-product__titleNum {
  font-size: calc(54 * 100vw / 375);
}

#LpContainer .p-product__title .p-product__titleCate {
  font-size: calc(50 * 100vw / 375);
  margin: calc(5 * 100vw / 375) 0 calc(20 * 100vw / 375) 0;
}
#LpContainer .p-product__title .p-product__titleCate.p-product__titleCate--06 {
  font-size: calc(40 * 100vw / 375);
}


#LpContainer .budged_area .p-product--02-1 {
  margin: calc(60*100vw/375) 0 0 0;
}

#LpContainer .btn_wrap {
display: grid;
        border-top: 1px solid var(--color-white);
        width: calc(330 * 100vw / 375);
        margin: calc(60 * 100vw / 375) auto 0;
        padding: calc(30 * 100vw / 375) 0 0 0;
        grid-template-columns: repeat(2, calc(160 * 100vw / 375));
        gap: calc(15 * 100vw / 375) calc(10 * 100vw / 375);
        place-items: center;
}

#LpContainer .btn_wrap li {
    display: block;
    width: 100%;
    border-radius: calc(100 * 100vw / 375);
    background-color: var(--color-gold);
}

#LpContainer .btn_wrap a {
  display: grid;
  place-content: center;
  width: 100%;
  height: 100%;
  font-size: calc(16 * 100vw / 375);
  font-weight: bold;
  text-align: center;
  padding: calc(10 * 100vw / 375) 0;
  color: var(--color-white);
  line-height: 1.2;
}

  /*LP固有設定*/
  #LpContainer .live_title {
    font-size: calc(24*100vw/375);
    margin-top: calc(40*100vw/375);
  }

  #LpContainer .live_info {
    margin-top: calc(15 * 100vw / 375);
    font-size: calc(14 * 100vw / 375);
  }

    #LpContainer .live__image {
        color: var(--color-white);
        margin: calc(20 * 100vw / 375) auto 0;
        width: calc(300 * 100vw / 375);
    }

  #LpContainer .logo_wrap {
    width: calc(280 * 100vw / 375);
    margin: calc(40 * 100vw / 375) auto 0;
  }

}
 #LpContainer .slick-arrow {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  cursor: pointer;
  width: calc(30*var(--variable)*var(--ratio));
  height: calc(30*var(--variable)*var(--ratio));
  opacity: 0.8;
  border: none;
  top: 30%;
  font-size: 0;
  background: initial;
}
#LpContainer .slick-prev {
  transform: rotate(0);
  left: 0;
}
#LpContainer .slick-next {
  transform: rotate(135deg);
  right: 0;
}
#LpContainer .slick-arrow::after {
  display: block;
  content: "";
  width: calc(10.5*var(--variable)*var(--ratio));
  height: calc(10.5*var(--variable)*var(--ratio));
  border-top: calc(2*var(--variable)*var(--ratio)) var(--color-black) solid;
  border-left: calc(2*var(--variable)*var(--ratio)) var(--color-black) solid;
}
#LpContainer .slick-prev::after {
  transform: rotate(-45deg);
  margin-left: calc(7*var(--variable)*var(--ratio));
  margin-left: calc(0*var(--variable)*var(--ratio));
}
#LpContainer .slick-next::after {
  transform: rotate(5deg);
  margin-right: calc(7*var(--variable)*var(--ratio));
  margin-right: calc(0*var(--variable)*var(--ratio));
}

