@charset "UTF-8";
/* =========================================
about-products
========================================= */
.pg_mv img {
  width: 100%;
  height: auto;
}

.pg_about_products_header {
  margin: max(80px, 6.667vw) 0 max(181px, 15.083vw);
}

.pg_about_products_title {
  position: relative;
  margin-bottom: max(84px, 7vw);
  padding-bottom: max(94px, 7.833vw);
  text-align: center;
}
.pg_about_products_title .ja {
  display: block;
  padding-left: 0.1em;
  font-size: max(2rem, 1.667vw);
  letter-spacing: 0.1em;
}
.pg_about_products_title .en {
  display: block;
  padding-left: 0.1em;
  color: var(--color_accent);
  font-family: var(--font_accent);
  font-size: max(1.5rem, 1.25vw);
  letter-spacing: 0.1em;
}
.pg_about_products_title::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: max(13px, 1.083vw);
  height: max(20px, 1.667vw);
  margin: 0 auto;
  background: url(../../img/common/title_bg.svg) no-repeat 0 0/contain;
}

.pg_about_products_discription {
  padding-left: 0.1em;
  text-align: center;
  letter-spacing: 0.1em;
  line-height: 1.45;
}

/* SP調整 ---------------------------- */
@media screen and (max-width: 768px) {
  .pg_about_products_header {
    margin: 47px 0 42px;
    padding: 0 15px;
  }
  .pg_about_products_title {
    position: relative;
    margin-bottom: 48px;
    padding-bottom: 63px;
  }
  .pg_about_products_title .ja {
    font-size: 1.6rem;
    margin-bottom: 2px;
  }
  .pg_about_products_title .en {
    font-size: 1.3rem;
  }
  .pg_about_products_title::after {
    width: 10px;
    height: 16px;
  }
  .pg_about_products_discription {
    padding-left: 0;
    font-size: 1.4rem;
    text-align: left;
    letter-spacing: 0.1em;
    line-height: 1.6;
  }
}
/* =========================================
pg_bg
========================================= */
.pg_bg {
  background-color: #5a0028;
  color: #fff;
}

/* =========================================
pg_item
========================================= */
/* PC調整 ---------------------------- */
@media not screen and (max-width: 768px) {
  .pg_item {
    position: relative;
    padding-bottom: max(60px, 5vw);
  }
  .pg_item_header {
    display: flex;
    flex-direction: row-reverse;
    margin-bottom: max(37px, 3.083vw);
    padding: max(80px, 6.667vw) max(50px, 4.167vw);
  }
  .pg_item_header_box {
    width: max(428px, 35.667vw);
  }
  .pg_item_title {
    position: relative;
    text-align: center;
    margin-bottom: max(31px, 2.583vw);
    padding-bottom: max(31px, 2.583vw);
    background-image: radial-gradient(circle at left, rgba(255, 194, 0, 0.8) 2px, transparent 2px);
    background-size: 7px 2px;
    background-repeat: repeat-x;
    background-position: bottom;
  }
  .pg_item_title span {
    display: block;
  }
  .pg_item_title .no {
    position: absolute;
    top: min(-35px, -2.917vw);
    right: min(-5px, -0.417vw);
    font-size: max(20rem, 16.667vw);
    font-family: var(--font_accent);
    color: #ffc200;
    line-height: 1;
  }
  .pg_item_title .en {
    margin-bottom: max(23px, 1.917vw);
    padding-left: 0.1em;
    font-size: max(1.5rem, 1.25vw);
    font-family: var(--font_accent);
    color: #ffc200;
    line-height: 1;
    letter-spacing: 0.1em;
  }
  .pg_item_title .ja {
    padding-left: 0.1em;
    font-size: max(2.6rem, 2.167vw);
    letter-spacing: 0.1em;
  }
  .pg_item_discription {
    font-size: max(1.5rem, 1.25vw);
  }
  .pg_item_header_photo {
    display: block;
    position: absolute;
    top: min(-131px, 10.917vw);
    left: 0;
    width: max(691px, 57.583vw);
  }
  .pg_item_header_photo img {
    display: block;
    width: 100%;
    height: auto;
  }
  .pg_item_header.__reverse {
    flex-direction: row;
    padding-bottom: max(90px, 7.5vw);
  }
  .pg_item_header.__reverse .pg_item_title .no {
    right: auto;
    left: min(-5px, -0.417vw);
  }
  .pg_item_header.__reverse .pg_item_discription {
    font-size: max(1.5rem, 1.25vw);
  }
  .pg_item_header.__reverse .pg_item_header_photo {
    display: block;
    position: absolute;
    top: min(-131px, 10.917vw);
    left: auto;
    right: 0;
    width: max(682px, 56.833vw);
  }
  .pg_item_header.__reverse .pg_item_header_photo img {
    display: block;
    width: 100%;
    height: auto;
  }
}
/* SP調整 ---------------------------- */
@media screen and (max-width: 768px) {
  .pg_item {
    padding: 27px 15px 54px;
  }
  .pg_item_header {
    margin-bottom: 54px;
  }
  .pg_item_header_box {
    margin-bottom: 17px;
  }
  .pg_item_title {
    margin-bottom: 26px;
    padding-bottom: 23px;
    background-image: radial-gradient(circle at left, rgba(255, 194, 0, 0.8) 2px, transparent 2px);
    background-size: 7px 2px;
    background-repeat: repeat-x;
    background-position: bottom;
  }
  .pg_item_title span {
    display: block;
    text-align: center;
  }
  .pg_item_title .no {
    margin-bottom: 7px;
    font-family: var(--font_accent);
    font-size: 12rem;
    color: #ffc200;
    line-height: 1;
    letter-spacing: 0;
  }
  .pg_item_title .en {
    margin-bottom: 6px;
    padding-left: 0.1em;
    font-size: 1.3rem;
    font-family: var(--font_accent);
    color: #ffc200;
    letter-spacing: 0.1em;
  }
  .pg_item_title .ja {
    padding-left: 0.1em;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
  }
  .pg_item_discription {
    font-size: 1.4rem;
  }
  .pg_item_header_photo {
    display: block;
    margin: 0 -15px;
  }
  .pg_item_header_photo img {
    display: block;
    width: 95%;
  }
  .pg_item_header.__reverse .pg_item_header_photo {
    display: flex;
    flex-direction: row-reverse;
  }
}
/* =========================================
pg_item_lists
========================================= */
/* PC調整 ---------------------------- */
@media not screen and (max-width: 768px) {
  .pg_item_lists li {
    position: relative;
    margin-top: max(30px, 2.5vw);
  }
  .pg_item_lists li:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(50% - max(570px, 47.5vw));
    width: max(244px, 20.333vw);
    height: max(65px, 5.417vw);
    margin: auto;
    background: url(../../img/about-products/dec_01.svg) no-repeat 0 0/contain;
    opacity: 0.3;
  }
  .pg_item_list_inner {
    display: flex;
    align-items: center;
    position: relative;
    z-index: 2;
    width: max(1000px, 83.333vw);
    margin: 0 auto;
  }
  .pg_item_list_text {
    width: 50%;
    text-align: right;
  }
  .pg_item_list_photo {
    display: block;
    width: 50%;
  }
  .pg_item_list_photo img {
    display: block;
    width: max(400px, 33.333vw);
    height: auto;
    margin-top: min(-10px, -0.833vw);
    margin-left: max(35px, 2.917vw);
  }
  .pg_item_list_reverse {
    margin-top: max(30px, 2.5vw);
  }
  .pg_item_list_reverse:before {
    left: calc(50% + max(325px, 27.083vw)) !important;
  }
  .pg_item_list_reverse .pg_item_list_inner {
    flex-direction: row-reverse;
  }
  .pg_item_list_reverse .pg_item_list_text {
    text-align: left;
  }
  .pg_item_list_reverse .pg_item_list_photo {
    display: block;
    width: 50%;
  }
  .pg_item_list_reverse .pg_item_list_photo img {
    margin-top: min(-25px, -2.083vw);
    margin-left: max(67px, 5.583vw);
  }
}
/* SP調整 ---------------------------- */
@media screen and (max-width: 768px) {
  .pg_item_lists li {
    position: relative;
  }
  .pg_item_lists li + li {
    margin-top: 30px;
    padding-top: 60px;
  }
  .pg_item_lists li + li:before {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    margin: 0 auto;
    width: 118px;
    height: 32px;
    background: url(../../img/about-products/dec_01.svg) no-repeat 0 0/contain;
    opacity: 0.3;
  }
  .pg_item_list_text {
    margin-bottom: 15px;
    font-size: 1.4rem;
  }
  .pg_item_list_photo {
    display: block;
    width: 75vw;
    margin: 0 auto;
  }
  .pg_item_list_photo img {
    display: block;
  }
}
/* =========================================
pg_slider
========================================= */
.pg_slider {
  width: 100%;
  background: url(../../img/common/bg_pattern_03.jpg) center 0 repeat;
  padding: max(38px, 2.5vw) 0 0;
  overflow: hidden;
}
.pg_slider::after {
  content: "";
  display: block;
  width: 100%;
  height: max(90px, 7.5vw);
  margin-top: max(73px, 6.083vw);
  background-color: #ede0cc;
  mix-blend-mode: multiply;
}

.pg_slider_contents {
  display: flex;
  flex-wrap: nowrap;
}

.pg_slider_photo {
  flex: 0 0 auto;
  display: block;
  position: relative;
  width: max(1076px, 89.667vw);
}
.pg_slider_photo::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../../img/about-products/slide_img_base.png) no-repeat 0 0/contain;
}
.pg_slider_photo img {
  display: block;
  width: 100%;
  height: auto;
}

/* SP調整 ---------------------------- */
@media screen and (max-width: 768px) {
  .pg_slider {
    padding: max(10px, 3.125vw) 0 0;
  }
  .pg_slider::after {
    content: "";
    display: block;
    width: 100%;
    height: max(20px, 6.25vw);
    margin-top: max(20px, 6.25vw);
  }
  .pg_slider_photo {
    width: max(370px, 115.625vw);
  }
}