@charset "UTF-8";

/*
==========================================================================

*   商品一覧 モーダル絞り込み / modal_advancedSearch.css
?   作成者：マイルス
?   オリジナル：キャンディーストリパー（ファイザル）
?   更新日：12/02/2021
?   基本的に書き方はM・L〜mediaquery(S)　

?   media querys Sのみ: (max-width: 767)
?   media querys M~Lのみ: (min-width: 768)
?   media querys Lのみ: (min-width: 1140)
========================================================================== 
*/
/* 絞り込み */
.dvProductAdvancedSearch.popup {
  width: 100%;
  border-radius: 0.4em;
}

.dvProductAdvancedSearch.popup {
  max-width: 57rem;
  height: fit-content;
  overflow-y: scroll;
  background-color: #ffffff;
  box-shadow: 0px 0px 2.2px rgba(0, 0, 0, 0.037), 0px 0px 5.3px rgba(0, 0, 0, 0.053), 0px 0px 10px rgba(0, 0, 0, 0.065),
    0px 0px 17.9px rgba(0, 0, 0, 0.077), 0px 0px 33.4px rgba(0, 0, 0, 0.093), 0px 0px 80px rgba(0, 0, 0, 0.13);
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  backface-visibility: hidden;
  transition: all 350ms ease;
}

.block-sub ul {
  gap: 2.5rem 0;
  /* display: flex;
  flex-wrap: wrap; */
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
}

.block-sub li {
  position: relative;
  height: 2.2rem;
  width: 15rem;
  display: flex;
  align-items: center;
}

.product-search__section {
  padding: 3rem 0 2rem;
  border-bottom: 1px solid #E3E3E3;
}

.dvProductAdvancedSearch.left-navi .product-search__section {
  padding: 0;
}
.product-search__section-ttl {
  width: 100%;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.2;
  text-align: left;
  margin-bottom: 2.4rem;
}

.product-search__section-detail.block-category {
  position: relative;
}

.product-search__section-detail.block-category select {
  width: 24.5rem;
  height: 4.2rem;
  padding: 1.2rem 2.1rem;
  border: 1px solid #707070;
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  color: #333333;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  border: none;
  border: 1px solid #707070;
  background: transparent;
  background-image: url(../Contents/ImagesPkg/product/ico-g-arr-bottom.svg);
  background-size: 8px 7px;
  background-position: bottom 50% right 1rem;
  background-repeat: no-repeat;
}

.product-search__section-detail.block-category .CategoryMinBlock {
  margin-top: 2rem;
}

.product-search__section.block-price-wrap dt {
  align-self: flex-start;
}

.product-search__section-detail.block-icon {
  width: 100%;
}

.product-search__section-detail.block-icon input {
  display: none;
}

.product-search__section-detail.block-icon ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.product-search__section-detail.block-icon li {
  width: 100%;
  max-width: 33.3333%;
  position: relative;
}

.product-search__section-detail.block-icon li label {
  display: inline-block;
}

.product-search__section-detail.block-icon li input[type="radio"] + label {
  display: block;
  padding: 1rem 0 1rem 2rem;
  font-size: 1.1rem;

  font-weight: 400;
  letter-spacing: 0.05em;
  color: #333333;
}

.product-search__section-detail.block-icon li input[type="radio"] + label::before,
.product-search__section-detail.block-icon li input[type="radio"] + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 1.1rem;
  left: 0;
}

.product-search__section-detail.block-icon li input[type="radio"] + label::before {
  width: 1.2rem;
  height: 1.2rem;
  border: 1px solid #333333;
  background-color: #ffffff;
}

.product-search__section-detail.block-icon li input[type="radio"] + label::after {
  top: 1rem;
  left: 0.2rem;
}

.product-search__section-detail.block-icon li input[type="radio"]:checked + label::after {
  /* background: #D3A0AD; */
  width: 1.3rem;
  height: 1.3rem;
  background-image: url(../Contents/ImagesPkg/product/ico-product-sort-check.svg);
  background-repeat: no-repeat;
  background-size: 100%;
}

.product-search__section.block-color-wrap {
  align-items: flex-start;
}

.block-color__list {
  /* display: flex;
  flex-wrap: wrap; */
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem 0;
  width: 100%;
  margin: 0 auto;
}

.block-color__list-item {
  width: 16.6rem;
  position: relative;
}

.block-color__list-item-inner {
  display: flex;
  align-items: center;
  height: 2.2rem;
}

.block-color__color-name {
  font-size: 1.3rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #000;
  display: flex;
  align-items: center;
}
.block-color__color-name > span {
  content: "";
  height: 3rem;
  width: 3rem;
  margin-right: 1rem;
  border-radius: 50%;
  display: block;
}
.block-color__color-name[data-color] > span {
  pointer-events: none;
}

.block-color__color-name[data-color="red"] > span {
  background-color: var(--color-red);
}
.block-color__color-name[data-color="blue"] > span {
  background-color: var(--color-blue);
}
.block-color__color-name[data-color="white"] > span {
  border: 1px solid #7c7c7c;
}
.block-color__color-name[data-color="yellow"] > span {
  background-color: var(--color-yellow);
}
.block-color__color-name[data-color="black"] > span {
  background-color: var(--color-black);
}

.product-search__section-detail.block-stock {
  width: 100%;
}

.product-search__section-detail.block-stock ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.product-search__section-detail.block-stock ul {
  width: fit-content;
  gap: 2.5rem 6rem;
  /* display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-items: center; */
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
}

.product-search__section-detail.block-stock li {
  width: 100%;
  /* max-width: 33.3333%; */
  position: relative;
  height: 2.2rem;
  display: flex;
  align-items: center;
}

.product-search__section-detail li label {
  display: inline-block;
}

.product-search__section-detail li input[type="radio"] + label {
  padding: 0 0 0 2rem;
  font-size: 1.3rem;
  display: flex;
  align-items: center;
}

.product-search__section-detail li input[type="radio"] + label::before,
.product-search__section-detail li input[type="radio"] + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

.product-search__section-detail li input[type="radio"] + label::before {
  width: 2.2rem;
  height: 2.2rem;
  border: 1px solid var(--color-font);
  border-radius: 50%;
  background-color: #ffffff;
}

.product-search__section-detail li input[type="radio"]:checked + label::before {
  border-color: var(--color-point);
}

.product-search__section-detail li input[type="radio"] + label::after {
  top: 0.5rem;
  left: 0.5rem;
}

.product-search__section-detail li input[type="radio"]:checked + label::after {
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  background: var(--color-point);
}

.product-search__section-detail.block-price {
  position: relative;
  width: 100%;
}

.product-search__section-detail.block-price .input-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.product-search__section-detail.block-price .input-price {
  display: flex;
  align-items: flex-end;
}

.product-search__section-detail.block-price .input-price span {
  margin-right: 0.5rem;
  font-size: 1.1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.product-search__section-detail.block-price .input-wrapper p {
  margin: 0 0.5rem;
  font-size: 1.1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.product-search__section-detail.block-price .input-price input {
  width: 12rem;
  height: 4rem;
  border-radius: 0.4em;
  margin-right: 1rem;
  padding-left: 1.5rem;
  box-shadow: none;
  border: 1px solid #E3E3E3;
  font-size: 1.3rem;
  text-align: left;
  color: var(--color-font);
}

.dvProductAdvancedSearch {
  margin-bottom: 0;
}

.dvProductAdvancedSearch .block-cta {
  width: 100%;
  background-color: #fff;

  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  padding: 3rem 0;
}

.dvProductAdvancedSearch .btn-base {
  width: 15rem;
  height: 5rem;
  font-size: 1.3rem;
}

.dvProductAdvancedSearch .block-cta .btn-primary {
  background: var(--color-point);
}

.dvProductAdvancedSearch .btn-reset {
  width: 15rem;
  cursor: pointer;
  height: 5rem;
  outline: none;
  background-color: transparent;
  border: 1px solid var(--color-point);
  font-size: 1.2rem;
  color: var(--color-point);
}
.product-search__section-detail.block-price .input-price span {
  font-size: 1.3rem;
  margin-bottom: 1rem;
}

@media (min-width: 768px) {
  .product-search__section {
    padding: 3rem 0 3rem 4.4rem;
  }

  .block-price .input-wrapper {
    width: 32rem;
  }
  .input-wrapper .input-price input {
    width: 12rem;
  }

  .dvProductAdvancedSearch .btn-reset {
    margin-right: 1.5rem;
  }
  .product-search__section-detail li input[type="radio"] + label {
    padding: 0 0 0 3.8rem;
  }
}

@media (max-width: 767px) {
  /* 絞り込み */
  .dvProductAdvancedSearch.popup {
    width: 100%;
    max-width: 35rem;
    overflow-y: scroll;
    z-index: 1;
  }

  .product-search__section-ttl {
    font-size: 1.3rem;
    margin-bottom: 1.5rem;
  }

  .product-search__section {
    padding: 3rem 0 2rem;
    margin: 0 1.5rem;
  }

  .product-search__section-detail.block-category select {
    width: 45rem;
    height: 7.7rem;
    padding: 2rem 4rem;
    font-size: 2.2rem;
  }

  .product-search__section-detail.block-category .CategoryMinBlock {
    margin-top: 4rem;
  }

  .product-search__section-detail.block-category::before,
  .product-search__section-detail.block-category::after {
    width: 1.5rem;
    right: 4rem;
  }

  .product-search__section.block-icon-wrap {
    padding-bottom: 2.5rem;
  }

  .product-search__section-detail.block-icon li {
    max-width: 50%;
  }

  .product-search__section-detail.block-icon li input[type="radio"] + label {
    padding: 4.8rem 0 3.7rem 3.5rem;
    font-size: 2.2rem;
  }

  .product-search__section-detail.block-icon li:nth-child(1) input[type="radio"] + label,
  .product-search__section-detail.block-icon li:nth-child(2) input[type="radio"] + label {
    padding: 6.3rem 0 0 3.5rem;
  }

  .product-search__section-detail.block-icon li input[type="radio"] + label::before,
  .product-search__section-detail.block-icon li input[type="radio"] + label::after {
    top: 5rem;
  }

  .product-search__section-detail.block-icon li:nth-child(1) input[type="radio"] + label::before,
  .product-search__section-detail.block-icon li:nth-child(1) input[type="radio"] + label::after,
  .product-search__section-detail.block-icon li:nth-child(2) input[type="radio"] + label::before,
  .product-search__section-detail.block-icon li:nth-child(2) input[type="radio"] + label::after {
    top: 6.6rem;
  }

  .product-search__section-detail.block-icon li input[type="radio"] + label::before {
    width: 2.2rem;
    height: 2.2rem;
  }

  .product-search__section-detail.block-icon li input[type="radio"] + label::after {
    top: 6.6rem;
    left: 0.4rem;
  }

  .product-search__section-detail.block-icon li input[type="radio"]:checked + label::after {
    width: 2.5rem;
    height: 2.5rem;
    top: 4.6rem;
  }

  .product-search__section-detail.block-icon li:nth-child(1) input[type="radio"] + label::after,
  .product-search__section-detail.block-icon li:nth-child(2) input[type="radio"] + label::after {
    top: 6rem;
    left: 0.4rem;
  }

  .product-search__section-detail.block-icon li:nth-child(1) input[type="radio"]:checked + label::after,
  .product-search__section-detail.block-icon li:nth-child(2) input[type="radio"]:checked + label::after {
    width: 2.5rem;
    height: 2.5rem;
    top: 6.2rem;
  }

  .block-color__list-item {
    width: 15rem;
  }

  #productList_wrap .block-color__list-item img {
    width: 4.4rem;
    margin-right: 2rem;
  }

  .block-color__color-name {
    font-size: 1.3rem;
  }

  .product-search__section-detail.block-stock li {
    /* max-width: 50%; */
  }

  .product-search__section-detail li input[type="radio"] + label {
    padding: 0 0 0 3.3rem;
    font-size: 1.3rem;
    display: flex;
    align-items: center;
  }

  .product-search__section-detail li input[type="radio"] + label::before,
  .product-search__section-detail li input[type="radio"] + label::after {
    top: 0;
  }

  .product-search__section-detail li input[type="radio"] + label::before {
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 50%;
  }
  
  .product-search__section-detail li input[type="radio"]:checked + label::after {
    width: 1.2rem;
    height: 1.2rem;
  }

  .product-search__section-detail li input[type="radio"] + label::after {
    top: 0.5rem;
    left: 0.5rem;
  }

  .product-search__section-detail.block-price {
    max-width: 31rem;
  }

  .product-search__section-detail.block-price .input-price input {
    width: 12rem;
    height: 4rem;
    border-radius: 0.4em;
    margin-right: 1rem;
  }

  .product-search__section-detail.block-price .input-wrapper p {
    /* margin: 0 calc(17 * (100vw / 750)); */
    font-size: 1.3rem;
  }

  .dvProductAdvancedSearch .block-cta {
    padding: 2rem 0 3rem;
  }

  .dvProductAdvancedSearch .btn-reset {
    width: 15rem;
    height: 5rem;
    margin-right: 1.2rem;
    outline: none;
    background-color: transparent;
  }

  .dvProductAdvancedSearch .btn-base {
    width: 15rem;
    height: 5rem;
  }
}
