@charset "UTF-8";
/* カラー設定
=========================================== */
* {
  color: #4B3E2F;
}

.font_grad {
  background: linear-gradient(150deg, rgb(0, 100, 201), rgb(160, 215, 238));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* フォント設定
=========================================== */
.noto {
  font-family: "Noto Sans JP", "YuGothic", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  font-weight: 400;
}

/*slick
=========================================== */
@media (max-width: 767px) {
  .sp_slick_wrapper {
    height: 50.6666666667vw;
    background: url("../img/product/loading.gif") center center no-repeat;
  }
  .sp_slick_wrapper .slick-box {
    height: 50.6666666667vw;
  }
  [class*=carousel__arrow--] {
    background: url(../img/product/slick_arrow.svg) no-repeat center center/50%;
    position: absolute;
    top: 40%;
    translate: translateY(-50%);
    width: 50px;
    aspect-ratio: 1;
    z-index: 2;
  }
  .carousel__arrow--prev {
    left: 0;
  }
  .carousel__arrow--next {
    right: 0;
    rotate: 180deg;
  }
}
@media (max-width: 767px) and (hover: hover) {
  [class*=carousel__arrow--] {
    transition: 0.3s;
  }
  [class*=carousel__arrow--]:hover {
    cursor: pointer;
    opacity: 0.7;
  }
}
/*product
=========================================== */
#product {
  padding-bottom: 2.9282576867vw;
}
@media (max-width: 767px) {
  #product {
    padding-bottom: 10.6666666667vw;
  }
}
#product .product_wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
}
@media (max-width: 767px) {
  #product .product_wrapper {
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    gap: 8vw;
  }
}
#product .product_wrapper .text_box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 1.4641288433vw;
  text-align: left;
  width: 55%;
}
@media (max-width: 767px) {
  #product .product_wrapper .text_box {
    flex-direction: column;
    justify-content: flex-start;
    gap: 5.3333333333vw;
    width: 100%;
  }
}
#product .product_wrapper figure {
  width: 40%;
}
@media (max-width: 767px) {
  #product .product_wrapper figure {
    position: static;
    width: 100%;
  }
}
#product .product_wrapper figure img {
  width: 100%;
  height: auto;
  border-radius: 1.4641288433vw;
}
@media (max-width: 767px) {
  #product .product_wrapper figure img {
    border-radius: 5.3333333333vw;
  }
}

#category .category_wrapper {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 3.513909224vw;
}
@media (max-width: 767px) {
  #category .category_wrapper {
    gap: 5.3333333333vw;
  }
}
#category .category_set {
  background: #fff;
  margin-top: 1.0980966325vw;
  padding: 0.7320644217vw;
}
@media (max-width: 767px) {
  #category .category_set {
    margin-top: 4vw;
    padding: 2.6666666667vw;
  }
}
#category .category_icon_flex {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1.0980966325vw;
}
@media (max-width: 767px) {
  #category .category_icon_flex {
    gap: 4vw;
  }
}
#category .category_icon_flex .category_icon {
  background: #EA5404;
  padding: 0.2928257687vw;
}
@media (max-width: 767px) {
  #category .category_icon_flex .category_icon {
    padding: 1.0666666667vw;
  }
}
#category .category_icon_flex .category_icon img {
  width: 3.1478770132vw;
  height: 3.1478770132vw;
}
@media (min-width: 1980px) {
  #category .category_icon_flex .category_icon img {
    width: 1.5625vw;
    height: 1.5625vw;
  }
}
@media (max-width: 767px) {
  #category .category_icon_flex .category_icon img {
    width: 11.4666666667vw;
    height: 11.4666666667vw;
  }
}
#category .category_icon_flex .category_title {
  color: #EA5404;
}
#category .category_detail {
  padding-top: 0.7320644217vw;
  padding-bottom: 2.196193265vw;
}
@media (max-width: 767px) {
  #category .category_detail {
    padding-top: 2.6666666667vw;
    padding-bottom: 8vw;
  }
}
@media (min-width: 768px) {
  #category .category_detail .pc_categoryimg {
    display: flex;
    flex-direction: row;
    justify-content: center;
  }
  #category .category_detail .pc_categoryimg li {
    width: 33%;
    width: 33.3333333333%;
  }
}
#category .category_detail .category_detail_title {
  font-weight: 500;
  padding-left: 1em;
  position: relative;
  margin: 1.5em 0 0.5em;
}
#category .category_detail .category_detail_title:before {
  content: "";
  position: absolute;
  top: 48%;
  left: 0;
  transform: translateY(-50%);
  background: #EA5404;
  width: 6px;
  height: 6px;
  border-radius: 6px;
}
#category .category_detail .ex_list {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 0 0.5856515373vw;
}
@media only screen and (max-width: 767px) {
  #category .category_detail .ex_list {
    gap: 0 2.1333333333vw;
  }
}
#category .category_detail .ex_list li {
  white-space: nowrap;
}
#category .package_flex {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 1.4641288433vw;
  margin-top: 0.7320644217vw;
}
@media only screen and (max-width: 767px) {
  #category .package_flex {
    flex-direction: column;
    gap: 5.3333333333vw;
    margin-top: 2.6666666667vw;
  }
}
#category .package_flex .package_box {
  width: calc((100% - 1.4641288433vw) / 2);
  background: #EDE5DC;
  padding: 1.4641288433vw;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  #category .package_flex .package_box {
    width: 100%;
    padding: 5.3333333333vw;
  }
}
@media (hover: hover) {
  #category .package_flex .package_box:hover {
    opacity: 0.6;
  }
}
#category .package_flex .package_title {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  border-bottom: solid 2px #EA5404;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
}
#category .package_flex .package_title .modallink {
  position: relative;
  display: inline-block;
  padding-right: 20px;
}
#category .package_flex .package_title .modallink:after {
  content: "";
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #EA5404;
  border-right: solid 2px #EA5404;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
#category .package_flex .package_list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1%;
  gap: 0.7320644217vw;
}
@media only screen and (max-width: 767px) {
  #category .package_flex .package_list {
    gap: 2.6666666667vw;
  }
}
#category .package_flex .package_list li {
  width: 19%;
  width: calc((100% - 2.9282576867vw) / 5);
  background: #fff;
  text-align: center;
  padding: 0.2928257687vw;
  border-radius: 0.2928257687vw;
}
@media (min-width: 1980px) {
  #category .package_flex .package_list li {
    width: 19%;
  }
}
@media only screen and (max-width: 767px) {
  #category .package_flex .package_list li {
    width: auto;
    padding: 1.0666666667vw;
    border-radius: 1.0666666667vw;
  }
}
#category .btn_round {
  width: clamp(1rem, 29.2825768668vw, 420px);
}
@media only screen and (max-width: 767px) {
  #category .btn_round {
    width: 74.6666666667vw;
  }
}

#cat_canned .package_flex .package_box {
  width: 100%;
  background: #EDE5DC;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  #cat_canned .package_flex .package_box {
    width: 100%;
  }
}

/* accordion
=========================================== */
.js-accordion-title {
  cursor: pointer;
  position: relative;
  text-align: left;
}
.js-accordion-title:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  width: 15px;
  height: 2px;
  /*縦線に*/
  transform: rotate(90deg);
  background: #EA5404;
  transition: all 0.3s ease-in-out;
}
.js-accordion-title:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  /*横線*/
  width: 15px;
  height: 2px;
  background: #EA5404;
  transition: all 0.2s ease-in-out;
}

.js-accordion-title.open:before {
  transform: rotate(180deg);
}
.js-accordion-title.open:after {
  opacity: 0;
}

.accordion-content {
  display: none;
}

/*modal
=========================================== */
.modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(56, 48, 38, 0.6);
  overflow: auto;
  transition: opacity 0.4sease;
}
.modal .modal_content {
  position: relative;
  background: #fff;
  margin: 20px auto 0;
  max-width: 1200px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  animation-name: modalopen;
  animation-duration: 1s;
  padding-bottom: 0.7320644217vw;
}
@media (max-width: 767px) {
  .modal .modal_content {
    padding-bottom: 2.6666666667vw;
  }
}

.modal_body {
  width: 100%;
  position: relative;
  max-height: 90vh;
  overflow-y: auto;
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}
.modal_body::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Opera */
}
.modal_body .modal_title {
  position: relative;
  background: #EA5404;
  padding: 0.3660322108vw;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.3660322108vw;
}
@media (max-width: 767px) {
  .modal_body .modal_title {
    padding: 1.3333333333vw;
    gap: 1.3333333333vw;
  }
}
.modal_body .modal_title h2 {
  color: #fff;
}
.modal_body .modal_title .icon_package {
  width: 3.513909224vw;
  height: 3.513909224vw;
}
@media (max-width: 767px) {
  .modal_body .modal_title .icon_package {
    width: 12.8vw;
    height: 12.8vw;
  }
}
.modal_body .modal_detail {
  padding: 1.4641288433vw;
}
@media (max-width: 767px) {
  .modal_body .modal_detail {
    padding: 5.3333333333vw;
  }
}
.modal_body .modal_image {
  width: 100%;
  text-align: center;
  margin: 0 auto 1.4641288433vw;
}
@media (max-width: 767px) {
  .modal_body .modal_image {
    margin: 0 auto 5.3333333333vw;
  }
}
.modal_body .modal_image img {
  text-align: center;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .modal_body .modal_image img {
    width: auto;
    height: 53.3333333333vw;
  }
}
.modal_body .modal_detail_title {
  padding-left: 1em;
  position: relative;
  margin: 1.5em 0 0.5em;
}
.modal_body .modal_detail_title:before {
  content: "";
  position: absolute;
  top: 48%;
  left: 0;
  transform: translateY(-50%);
  background: #EA5404;
  width: 6px;
  height: 6px;
  border-radius: 6px;
}
.modal_body .modal_package_list {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 2.9282576867vw 2%;
  margin-top: 1.4641288433vw;
}
@media (max-width: 767px) {
  .modal_body .modal_package_list {
    gap: 5.3333333333vw 2%;
    margin-top: 2.6666666667vw;
  }
}
.modal_body .modal_package_list li {
  width: 22%;
}
@media (max-width: 767px) {
  .modal_body .modal_package_list li {
    width: 48%;
  }
}
.modal_body .modal_package_list li .itemimg {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 auto;
  background: #fff;
  width: 100%;
  padding: 0.3660322108vw 0;
}
@media (max-width: 767px) {
  .modal_body .modal_package_list li .itemimg {
    padding: 1.3333333333vw 0;
  }
}
.modal_body .modal_package_list li .itemimg img {
  width: 100%;
  height: auto;
}
.modal_body .lot_table {
  margin-top: 0.3660322108vw;
  width: 100%;
}
@media (max-width: 767px) {
  .modal_body .lot_table {
    margin-top: 1.3333333333vw;
  }
}
.modal_body .lot_table th {
  background: #EDE5DC;
  padding: 0.7320644217vw 1.4641288433vw;
  text-align: left;
}
.modal_body .lot_table td {
  background: #FAF4ED;
  padding: 0.7320644217vw 1.4641288433vw;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .modal_body .lot_table th {
    display: block;
    padding: 2.6666666667vw 2.6666666667vw 0;
  }
  .modal_body .lot_table td {
    display: block;
    padding: 2.6666666667vw 2.6666666667vw;
  }
}
.modal_body .modal_supported_flex {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 1.4641288433vw;
  margin-top: 0.7320644217vw;
}
@media only screen and (max-width: 767px) {
  .modal_body .modal_supported_flex {
    flex-direction: column;
    gap: 2.6666666667vw;
    margin-top: 2.6666666667vw;
  }
}
.modal_body .modal_supported_flex .supported_box {
  width: calc((100% - 1.4641288433vw) / 2);
  background: #EDE5DC;
  padding: 1.4641288433vw;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  .modal_body .modal_supported_flex .supported_box {
    width: 100%;
    padding: 5.3333333333vw;
  }
}
@media (hover: hover) {
  .modal_body .modal_supported_flex .supported_box:hover {
    opacity: 0.6;
  }
}
.modal_body .modal_supported_flex .supported_box a {
  display: block;
}
.modal_body .modal_supported_flex .supported_title {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  border-bottom: solid 2px #EA5404;
  padding-bottom: 0.5em;
}
.modal_body .modal_supported_flex .supported_title .supportedlink {
  position: relative;
  display: inline-block;
  padding-right: 20px;
}
.modal_body .modal_supported_flex .supported_title .supportedlink:after {
  content: "";
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #EA5404;
  border-right: solid 2px #EA5404;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.scrolldown {
  width: 1.317715959vw;
  position: sticky;
  bottom: 0.3660322108vw;
  float: right;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin-right: -1.0980966325vw;
}
@media (max-width: 767px) {
  .scrolldown {
    bottom: 1.3333333333vw;
    width: 4.8vw;
    margin-right: -4vw;
  }
}
.scrolldown .scrolltext {
  color: #EA5404;
  letter-spacing: 0.05em;
  writing-mode: vertical-rl;
  display: block;
  font-size: 18px;
}
@media (max-width: 767px) {
  .scrolldown .scrolltext {
    font-size: 12px;
  }
}
.scrolldown .dli-arrow-down {
  display: inline-block;
  vertical-align: middle;
  color: #EA5404;
  line-height: 1;
  position: relative;
  width: 0.1em;
  height: 30px;
  background: #EA5404;
  margin-right: 4px;
}
.scrolldown .dli-arrow-down:before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  border: 0.1em solid #EA5404;
  border-top: 0;
  border-right: 0;
  transform: rotate(-45deg);
  transform-origin: bottom left;
  position: absolute;
  left: 50%;
  bottom: -0.05em;
  box-sizing: border-box;
}

.close {
  margin-top: 1.4641288433vw;
}
.close .btn_round {
  text-align: center;
  margin: 0 auto;
  cursor: pointer;
}
@media (max-width: 767px) {
  .close {
    margin-top: 5.3333333333vw;
  }
}/*# sourceMappingURL=product.css.map */