@charset "UTF-8";
/*
//////////////////////////////////////////////////////////////////////////////////////////////
setting - custom property
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.LB251226happyjacket * {
  box-sizing: border-box;
}
.LB251226happyjacket {
  --color-white: #fff;
  --color-black: #333;
  --color-charcoal: #505256;
  --color-pink: #E6BBCD;
  --color-ivory: #EAE7DC;
  --color-mocha: #B5A699;
  --color-bg: #fffaee;
  --color-lightmocha: rgba(181, 166, 153, .1);
  --color-lightpink: rgba(230, 187, 205, .1);
  --font-yu: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  --font-ivybodoni: "ivybodoni-condensed", sans-serif;
  --font-aktiv: "aktiv-grotesk", sans-serif;
  --font-ja: var(--font-yu);
  --font-en: var(--font-ivybodoni);
  --font-weight-light: 300;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  font-feature-settings: "palt";
  overflow: clip;
  background-color: var(--color-bg);
}
.LB251226happyjacket {
  --pc-width: 1400;
  --sp-width: 750;
  --pc-artboard-width: 462;
  --sp-artboard-width: 750;
}
.LB251226happyjacket img,
.LB251226happyjacket picture,
.LB251226happyjacket video {
  display: block;
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
@media (min-width: 1400px) {
  .LB251226happyjacket {
    --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width));
    --variable: 1px;
  }
}
@media (min-width: 768px) and (max-width: 1400px) {
  .LB251226happyjacket {
    --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width));
    --variable: calc(100vw / var(--pc-width));
  }
}
@media (max-width: 767px) {
  .LB251226happyjacket {
    --ratio: 1;
    --variable: calc(100vw / var(--sp-width));
  }
}
@media screen and (max-width: 767px) {
  .main-area .main-inner {
    width: 100%;
  }
}
.LB251226happyjacket .check_btn {
  width: calc(302*var(--variable)*var(--ratio));
  margin: calc(147*var(--variable)*var(--ratio)) auto calc(200*var(--variable)*var(--ratio));
}
.LB251226happyjacket .scroll_container {
  background-color: var(--color-white);
}
@media (min-width: 768px) {
  .LB251226happyjacket .check_btn {
    margin-bottom: 0;
  }
  .LB251226happyjacket .scroll_container {
    width: min(462*100vw/1400, 462px);
    margin: 0 auto;
    background-color: var(--color-white);
    padding-bottom: calc(200*var(--variable)*var(--ratio));
    overflow: clip;
  }
  .LB251226happyjacket .fixed_container {
    position: fixed;
    bottom: calc(40*var(--variable)*var(--ratio));
    right: calc(40*var(--variable)*var(--ratio));
  }
  .LB251226happyjacket .fixed_container .check_btn {
    width: min(161*100vw/1400, 161px);
  }
  .LB251226happyjacket .js-switchDisplay {
    opacity: 0;
    transition: opacity .5s ease;
  }
  .LB251226happyjacket .js-switchDisplay.is-active {
    opacity: 1;
  }
  .go-top {
    bottom: 80px!important;
  }
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
component - others
//////////////////////////////////////////////////////////////////////////////////////////////
*/
@media screen and (min-width: 768px) {
  .LB251226happyjacket .hidden-desktop {
    display: none !important;
  }
  .LB251226happyjacket .lp_container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .LB251226happyjacket .hidden-mobile {
    display: none !important;
  }
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
setting - position
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.LB251226happyjacket .common-position {
  position: absolute;
}
.LB251226happyjacket .common-grid {
  display: grid;
  gap: var(--row, 0) var(--column, 0);
}
.LB251226happyjacket .common-flex_row {
  display: flex;
  flex-direction: row;
  gap: var(--row, 0) var(--column, 0);
}
.LB251226happyjacket .common-flex_row_reverse {
  display: flex;
  flex-direction: row-reverse;
  gap: var(--row, 0) var(--column, 0);
}
.LB251226happyjacket .common-flex_column {
  display: flex;
  flex-direction: column;
  gap: var(--row, 0) var(--column, 0);
}
.LB251226happyjacket .common-flex_column_reverse {
  display: flex;
  flex-direction: column-reverse;
  gap: var(--row, 0) var(--column, 0);
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
- hero -
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.LB251226happyjacket .hero {
  position: relative;
  z-index: 2;
}
.LB251226happyjacket .hero_inner {

}
.LB251226happyjacket .hero_content {
  position: relative;
  grid-template-columns: repeat(2,1fr);
}
.LB251226happyjacket .hero_content::before,
.LB251226happyjacket .hero_content::after {
  position: absolute;
  content: "";
  background-repeat: no-repeat;
  background-size: cover;
}
.LB251226happyjacket .hero_content::before {
  z-index: -1;
  width: 100%;
  height: calc(880*var(--variable)*var(--ratio));
  top: 0;
  left: 0;
  background-image: url(../img/hero_image.jpg);
}
.LB251226happyjacket .hero_content::after {
  z-index: 2;
  width: calc(710*var(--variable)*var(--ratio));
  height: calc(840*var(--variable)*var(--ratio));
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url(../img/hero_frame.png);
}
.LB251226happyjacket .hero_title {
  z-index: 5;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(680*var(--variable)*var(--ratio));
  pointer-events: none;
}
.LB251226happyjacket .hero_image {
  position: relative;
  z-index: 3;
}
.LB251226happyjacket .hero_lead {
  margin-top: calc(109*var(--variable)*var(--ratio));
  font-size: calc(24*var(--variable)*var(--ratio));
  line-height: 2;
  letter-spacing: .07em;
  font-weight: var(--font-weight-medium);
  font-family: var(--font-ja);
  color: var(--font-ja);
  text-align: center;
}
.LB251226happyjacket .hero_band {
  margin-top: calc(106*var(--variable)*var(--ratio));
}
.LB251226happyjacket .hero_info {
  position: relative;
  margin-top: calc(185*var(--variable)*var(--ratio));
}
.LB251226happyjacket .hero_info::before {
  position: absolute;
  content: "";
  width: calc(670*var(--variable)*var(--ratio));
  height: calc(670*var(--variable)*var(--ratio));
  top: calc(-65*var(--variable)*var(--ratio));
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url(../img/hero_info_bg.png);
}
.LB251226happyjacket .hero_info_title {
  width: calc(595*var(--variable)*var(--ratio));
  margin: 0 auto;
}
.LB251226happyjacket .hero_info_content {
  width: calc(750*var(--variable)*var(--ratio));
  margin: calc(34*var(--variable)*var(--ratio)) auto 0;
}
.LB251226happyjacket .hero_info_image {
  width: calc(240*var(--variable)*var(--ratio));
  margin: 0 calc(20*var(--variable)*var(--ratio));
}
.LB251226happyjacket .hero_info_lead {
  margin-top: calc(18*var(--variable)*var(--ratio));
  font-size: calc(24*var(--variable)*var(--ratio));
  line-height: 2;
  letter-spacing: .1em;
  font-weight: var(--font-weight-medium);
  font-family: var(--font-ja);
  color: var(--color-black);
  text-align: center;
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
- product -
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.LB251226happyjacket .product_content {
  width: fit-content;
  height: fit-content;
}
.LB251226happyjacket .product_text {
  margin-top: calc(66*var(--variable)*var(--ratio));
  --row: calc(39*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product_text_title {
  font-size: calc(100*var(--variable)*var(--ratio));
  line-height: 1;
  letter-spacing: 0;
  font-weight: var(--font-weight-semibold);
  font-family: var(--font-en);
  text-align: center;
}
.LB251226happyjacket .product_text_lead {
  position: relative;
  font-size: calc(32*var(--variable)*var(--ratio));
  line-height: 2;
  letter-spacing: .1em;
  font-weight: var(--font-weight-medium);
  font-family: var(--font-ja);
  text-align: center;
  color: var(--color-black);
}
.LB251226happyjacket .product_text_lead::before,
.LB251226happyjacket .product_text_lead::after {
  position: absolute;
  content: "";
  z-index: 2;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: cover;
  top: calc(14*var(--variable)*var(--ratio));
  width: calc(15*var(--variable)*var(--ratio));
  height: calc(13*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product_text_lead::before {
  background-image: url(../img/product_dakuten01.png);
  left: calc(40*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product_text_lead::after {
  background-image: url(../img/product_dakuten02.png);
  right: calc(40*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product_image {
  background-color: var(--color-white);
}
.LB251226happyjacket .product_price {
  margin-top: calc(27*var(--variable)*var(--ratio));
  font-size: calc(24*var(--variable)*var(--ratio));
  line-height: 2;
  letter-spacing: 0;
  font-family: var(--font-aktiv);
  text-align: center;
  color: var(--color-black);
}
.LB251226happyjacket .product_price li {
  display: inline-block;
  margin: 0 calc(10*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product_info_title {
  justify-content: space-between;
  align-items: center;
  font-size: calc(38*var(--variable)*var(--ratio));
  line-height: 1;
  letter-spacing: .03em;
  font-weight: var(--font-weight-medium);
  color: var(--color-black);
  text-align: center;
}
.LB251226happyjacket .product_info_title > span {
  font-size: calc(24*var(--variable)*var(--ratio));
  line-height: 2;
  letter-spacing: .05em;
  font-weight: var(--font-weight-medium);
  font-family: var(--font-ja);
  color: var(--color-black);
}
.LB251226happyjacket .product_image0101 {width: calc(750*var(--variable)*var(--ratio));}
.LB251226happyjacket .product_image0102 {width: calc(360*var(--variable)*var(--ratio));}
.LB251226happyjacket .product_image0103 {width: calc(450*var(--variable)*var(--ratio));}
.LB251226happyjacket .product_image0201 {width: calc(710*var(--variable)*var(--ratio));}
.LB251226happyjacket .product_image0202 {width: calc(710*var(--variable)*var(--ratio));}
.LB251226happyjacket .product_image0301 {width: calc(570*var(--variable)*var(--ratio));}
.LB251226happyjacket .product_image0302 {width: calc(590*var(--variable)*var(--ratio));}
.LB251226happyjacket .product_image0401 {width: calc(730*var(--variable)*var(--ratio));}
.LB251226happyjacket .product_image0402 {width: calc(730*var(--variable)*var(--ratio));}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
- product01 -
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.LB251226happyjacket .product01 .product_text_lead::before {
  left: calc(40*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product01 .product_text_lead::after {
  right: calc(40*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product01 {
  margin-top: calc(221*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product01 .product_text_title {
  color: var(--color-charcoal);
}
.LB251226happyjacket .product01 .product_wrapper02 {
  margin-top: calc(63*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product01 .product_wrapper02 .product_content {
  grid-template-columns: calc(300*var(--variable)*var(--ratio));
  grid-template-rows: calc(188*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product01 .product_wrapper02 .product_image0102 {
  position: relative;
  z-index: 5;
  grid-column: 1;
  grid-row: 1;
}
.LB251226happyjacket .product01 .product_wrapper02 .product_image0102::before {
  position: absolute;
  content: "";
  width: calc(380*var(--variable)*var(--ratio));
  height: calc(500*var(--variable)*var(--ratio));
  top: 0;
  left: 0;
  background-color: var(--color-white);
  z-index: -1;
  pointer-events: none;
}
.LB251226happyjacket .product01 .product_wrapper02 .product_image0103 {
  grid-column: 2;
  grid-row: 2;
}
.LB251226happyjacket .product01 .product_wrapper03 {
  margin-top: calc(111*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product01 .product_info {
  position: relative;
  z-index: 2;
  width: calc(670 * var(--variable) * var(--ratio));
  height: calc(320 * var(--variable) * var(--ratio));
  margin: calc(16 * var(--variable) * var(--ratio)) auto 0;
  padding: 0 calc(40 * var(--variable) * var(--ratio));
  border: 1px solid var(--color-black);
  align-items: center;
  justify-content: space-between;
}
.LB251226happyjacket .product01 .product_info::before {
  position: absolute;
  content: "";
  z-index: 2;
  width: calc(670*var(--variable)*var(--ratio));
  height: calc(320*var(--variable)*var(--ratio));
  border-right: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  top: calc(10*var(--variable)*var(--ratio));
  left: calc(10*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product01 .product_info_lead {
  font-size: calc(24*var(--variable)*var(--ratio));
  line-height: 1.75;
  letter-spacing: .1em;
  font-weight: var(--font-weight-medium);
  font-family: var(--font-ja);
}
.LB251226happyjacket .product01 .product_info_detail {
  position: relative;
  z-index: 5;
  width: calc(240*var(--variable)*var(--ratio));
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
- product02 -
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.LB251226happyjacket .product02 .product_text_lead::before {
  left: calc(73*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product02 .product_text_lead::after {
  right: calc(73*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product02 {
  margin-top: calc(150*var(--variable)*var(--ratio));
  padding-top: calc(89*var(--variable)*var(--ratio));
  padding-bottom: calc(170*var(--variable)*var(--ratio));
  background-color: var(--color-lightpink);
}
.LB251226happyjacket .product02 .product_text_title {
  color: var(--color-pink);
}
.LB251226happyjacket .product02 .product_wrapper02 {
  margin-top: calc(60*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product02 .product_wrapper02 .product_content01 {
  position: relative;
  z-index: 2;
  width: calc(710*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product02 .product_wrapper02 .product_content01::before {
  position: absolute;
  z-index: -1;
  content: "";
  width: calc(710*var(--variable)*var(--ratio));
  height: calc(947*var(--variable)*var(--ratio));
  top: calc(40*var(--variable)*var(--ratio));
  left: calc(40*var(--variable)*var(--ratio));
  background-color: var(--color-pink);
}
.LB251226happyjacket .product02 .product_price {
  margin-top: calc(71*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product02 .product_wrapper03 {
  width: calc(650 * var(--variable) * var(--ratio));
  margin: calc(102 * var(--variable) * var(--ratio)) auto 0;
}
.LB251226happyjacket .product02 .product_wrapper03 .product_info_title {
  text-align: left;
  letter-spacing: .04em;
}
.LB251226happyjacket .product02 .product_wrapper03 .product_info {
  position: relative;
  z-index: 2;
  margin-top: calc(17*var(--variable)*var(--ratio));
  border: 1px solid var(--color-black);
  padding: calc(30*var(--variable)*var(--ratio)) calc(30*var(--variable)*var(--ratio)) calc(28*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product02 .product_info::before {
  position: absolute;
  content: "";
  z-index: 2;
  width: calc(650*var(--variable)*var(--ratio));
  height: calc(847*var(--variable)*var(--ratio));
  border-right: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  top: calc(10*var(--variable)*var(--ratio));
  left: calc(10*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product02 .product_wrapper03 .product_info_detail {
  position: relative;
  z-index: 5;
  width: calc(590*var(--variable)*var(--ratio));
  margin: 0 auto;
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
- product03 -
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.LB251226happyjacket .product03 .product_text_lead::before {
  left: calc(33*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product03 .product_text_lead::after {
  right: calc(33*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product03 {
  margin-top: calc(145*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product03 .product_text_title {
  color: var(--color-ivory);
}
.LB251226happyjacket .product03 .product_wrapper02 {
  margin-top: calc(102*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product03 .product_wrapper02 .product_content01 {
  position: relative;
  z-index: 2;
  margin-left: auto;
}
.LB251226happyjacket .product03 .product_wrapper02 .product_content01::before {
  position: absolute;
  content: "";
  width: calc(570*var(--variable)*var(--ratio));
  height: calc(760*var(--variable)*var(--ratio));
  background-color: var(--color-ivory);
  top: calc(-40*var(--variable)*var(--ratio));
  right: calc(40*var(--variable)*var(--ratio));
  pointer-events: none;
  z-index: -1;
}
.LB251226happyjacket .product03 .product_wrapper02 .product_content02 {
  margin-top: calc(40*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product03 .product_wrapper03 {
  width: calc(670*var(--variable)*var(--ratio));
  margin: calc(106*var(--variable)*var(--ratio)) auto 0;
}
.LB251226happyjacket .product03 .product_wrapper03 .product_info_title {
  text-align: left;
  letter-spacing: .04em;
}
.LB251226happyjacket .product03 .product_wrapper03 .product_info {
  position: relative;
  margin-top: calc(17*var(--variable)*var(--ratio));
  border: 1px solid var(--color-black);
  padding: calc(28*var(--variable)*var(--ratio)) calc(30*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product03 .product_info::before {
  position: absolute;
  content: "";
  z-index: 2;
  width: calc(670*var(--variable)*var(--ratio));
  height: calc(873*var(--variable)*var(--ratio));
  border-right: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  top: calc(10*var(--variable)*var(--ratio));
  left: calc(10*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product03 .product_wrapper03 .product_info_detail {
  position: relative;
  z-index: 5;
  width: calc(610*var(--variable)*var(--ratio));
  margin: 0 auto;
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
- product04 -
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.LB251226happyjacket .product04 .product_text_lead::before {
  left: calc(73*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product04 .product_text_lead::after {
  right: calc(73*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product04 {
  margin-top: calc(170*var(--variable)*var(--ratio));
  padding-top: calc(162*var(--variable)*var(--ratio));
  padding-bottom: calc(150*var(--variable)*var(--ratio));
  background-color: var(--color-lightmocha);
}
.LB251226happyjacket .product04 .product_text_title {
  color: var(--color-mocha);
}
.LB251226happyjacket .product04 .product_wrapper01 {
  position: relative;
  border: calc(10*var(--variable)*var(--ratio)) solid var(--color-mocha);
}
.LB251226happyjacket .product04 .product_wrapper01 .product_content {
  width: calc(730*var(--variable)*var(--ratio));
  margin: 0 auto;
}
.LB251226happyjacket .product04 .product_wrapper01 .product_text {
  z-index: 2;
  top: calc(-23*var(--variable)*var(--ratio));
  right: calc(37*var(--variable)*var(--ratio));
  width: calc(190*var(--variable)*var(--ratio));
  pointer-events: none;
}
.LB251226happyjacket .product04 .product_wrapper03 {
  width: calc(650*var(--variable)*var(--ratio));
  margin: calc(100*var(--variable)*var(--ratio)) auto 0;
}
.LB251226happyjacket .product04 .product_wrapper03 .product_info_title {
  text-align: left;
  letter-spacing: .04em;
}
.LB251226happyjacket .product04 .product_wrapper03 .product_info {
  position: relative;
  margin-top: calc(18*var(--variable)*var(--ratio));
  border: 1px solid var(--color-black);
  padding: calc(27*var(--variable)*var(--ratio)) calc(30*var(--variable)*var(--ratio)) calc(29*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product04 .product_info::before {
  position: absolute;
  content: "";
  z-index: 2;
  width: calc(650*var(--variable)*var(--ratio));
  height: calc(847*var(--variable)*var(--ratio));
  border-right: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  top: calc(10*var(--variable)*var(--ratio));
  left: calc(10*var(--variable)*var(--ratio));
}
.LB251226happyjacket .product04 .product_wrapper03 .product_info_detail {
  position: relative;
  z-index: 5;
  width: calc(590*var(--variable)*var(--ratio));
  margin: 0 auto;
}
.LB251226happyjacket .product04 .product_price {
  margin-top: calc(37*var(--variable)*var(--ratio));
}
/*
//////////////////////////////////////////////////////////////////////////////////////////////
- animation -
//////////////////////////////////////////////////////////////////////////////////////////////
*/
.LB251226happyjacket .js-sliderImage .swiper-wrapper {
  transition-timing-function: linear;
}

.LB251226happyjacket .js-fadeSliderImage .swiper-pagination {
  position: absolute;
  z-index: 10;
  right: calc(30*var(--variable)*var(--ratio));
  bottom: calc(30*var(--variable)*var(--ratio));
  left: initial;
  width: fit-content;
  display: flex;
  column-gap: calc(30*var(--variable)*var(--ratio));
}
.LB251226happyjacket .js-fadeSliderImage .swiper-pagination-bullet {
  background-color: rgba(255, 255, 255, .5);
  opacity: 1;
  margin: 0;
}
.LB251226happyjacket .js-fadeSliderImage .swiper-pagination-bullet-active {
  background-color: var(--color-white);
  opacity: 1;
  margin: 0;
}
.LB251226happyjacket .js-fadeImage {
  opacity: 0;
  transition: opacity 1s ease;
}
.LB251226happyjacket .js-fadeImage.is-active {
  opacity: 1;
}
