/******************************/
/* category */
/******************************/
.p-category__ttl {
  margin: 10px 0 30px 0;
  line-height: 1.4;
  font-size: 30px;
  font-weight: normal;
}
.p-category-free {
  margin-bottom: 60px;
  line-height: 2;
}
/***** カテゴリ一覧 *****/
.p-category-list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 60px;
  margin-bottom: 60px;
  margin-left: -15px;
  margin-right: -15px;
}
@media screen and (max-width: 767px) {
  .p-category-list {
    display: block;
    margin-left: 0;
    margin-right: 0;
  }
}
.p-category-list__item {
  box-sizing: border-box;
  margin-bottom: 60px;
  padding-left: 15px;
  padding-right: 15px;
  width: 33.3333%;
  font-size: 16px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-category-list__item {
    margin-bottom: 15px;
    padding-left: 0;
    padding-right: 0;
    width: auto;
    text-align: left;
  }
}
.p-category-list__link {
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-category-list__link {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
}
.p-category-list__link:hover {
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .p-category-list__link:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 5px;
    margin-top: -6px;
    width: 8px;
    height: 8px;
    border-right: 1px solid #aaaaaa;
    border-bottom: 1px solid #aaaaaa;
    transform: rotate(-45deg);
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  }
}
.p-category-list__img {
  display: block;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .p-category-list__img {
    margin-right: 10px;
    margin-bottom: 0;
    width: 75px;
  }
}
.p-category-list__name:hover {
  text-decoration: underline;
}
@media screen and (max-width: 767px) {
  .p-category-list__name:hover {
    text-decoration: none;
  }
}
@media screen and (max-width: 767px) {
  .p-category-list__name {
    flex: 1;
  }
}
/***** 商品件数・ソート *****/
.p-item-list-head {
  display: flex;
  justify-content: space-between;
  padding: 30px;
  border-top: 1px solid #7d7d7d;
}
@media screen and (max-width: 767px) {
  .p-item-list-head {
    padding: 30px 0;
  }
}
.p-item-list-num {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .p-item-list-num {
    font-size: 14px;
  }
}
.p-item-sort-list {
  display: flex;
  flex-wrap: wrap;
}
.p-item-sort-list__item {
  margin-left: 30px;
}
@media screen and (max-width: 767px) {
  .p-item-sort-list__item {
    margin-left: 25px;
  }
}
.p-item-sort-list__item:first-child {
  margin-left: 0;
}
.p-item-sort-list__item span {
  text-decoration: underline;
}



/* =================================================================
レイアウト
=================================================================*/
.product_list .l-contents-main {width: 100%; padding-top: 29px;}
.product_list .p-category__ttl {margin: 0;}
.product_list .main-title {display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #CBCBCB; padding-bottom: 31px; margin-bottom: 60px;}
.product_list .p-item-sort select {height: 38px;}
.product_list .c-item-list {margin: auto; width: 1000px;}
.product_list .c-item-list__item {padding-left: 25px; padding-right: 25px; margin-bottom: 70px;}
.product_list .c-item-list__img {margin-bottom: 14px;}
.product_list .c-item-list__ttl a {font-size: 14px; color: #000000;}
.product_list .c-item-list__price {color: #555555; margin-top: 5px; font-size: 14px;}

.product_list .c-pager-list__item {line-height: 40px; margin-left: -1px; margin-right: -1px;}
.product_list .c-pager-list__item.prev_last a {height: 40px; display: flex; justify-content: center; align-items: center; transform: rotate(180deg);}
.product_list .c-pager-list__item.next_last a {height: 40px; display: flex; justify-content: center; align-items: center;}

.product_list .c-pager-list__link {min-width: 44px; border: 1px solid #DCDCDC;}
.product_list .c-pager-list__link.is-current {background: #000; color: #fff; height: 42px; min-width: 44px; border: 0px;}

.c-pager-list__link.is-prev,
.c-pager-list__link.is-next {background: #fff;}


.c-pager-list__link.is-prev {border-radius: 3px 0 0 3px;}
.c-pager-list__link.is-next {border-radius: 0px 3px 3px 0px;}

.c-pager-list__link.is-prev:before,
.c-pager-list__link.is-next:before {content: ""; width: 3px; height: 8px; background-image: url('https://img21.shop-pro.jp/PA01515/183/etc_base64/aWNvbl9hcnJvdw.png?cmsp_timestamp=20250826135606'); background-size: cover; border: 0px;}

.c-pager-list__link.is-prev:before {transform: rotate(180deg);}

@media screen and (max-width: 1199px) {
.product_list .main-title {flex-direction: column; align-items: flex-start; gap: 20px; font-size: 24px;}
.product_list .c-item-list__item {padding-left: 10px; padding-right: 10px;}
.product_list .c-item-list { width: 100%;}
.c-pager-list__page {display: none;}
.product_list .c-pager-list__item {display: block;}
.c-pager-list__link.is-prev:before,
.c-pager-list__link.is-next:before {margin: -4px 0 0 0;}
}

.group-free-area h2 {margin: 0 0 45px;}
.group-free-area .fv {overflow: hidden;}
.group-free-area .fv.large .fv-inner {height: 600px; width: 1800px; margin: auto; background-image: url(https://img21.shop-pro.jp/PA01515/183/etc_base64/aXRlbV9saXN0X2Z2X2xhcmdl.jpg?cmsp_timestamp=20251021123531); background-repeat: no-repeat;}
.group-free-area .fv.small .fv-inner {height: 369px; width: 1800px; margin: auto; background-image: url(https://img21.shop-pro.jp/PA01515/183/etc_base64/aXRlbV9saXN0X2Z2X3NtYWxs.jpg?cmsp_timestamp=20251021125040); background-repeat: no-repeat;}

.group-free-area .inner {max-width: 1035px; margin: auto;}
.group-free-area .inner.pattern01 {padding-top: 80px;}
.group-free-area .inner.pattern02 {padding-top: 27px;}
.group-free-area .fv .inner {width: 1200px; max-width: 1200px;}
.group-free-area .box {width: 300px; box-sizing: border-box;}
.group-free-area .box.large {height: 600px; background: #EEEEEE; display: flex; flex-direction: column; justify-content: space-between; align-items: center; padding-bottom: 61px; padding: 56px 50px 0;}
.group-free-area .box.small {height: 300px;}
.group-free-area .box.small .image {padding: 56px 50px 44px; background: #EEEEEE;}
.group-free-area .box p {margin-top: 36px;}
.group-free-area .button {display: flex; justify-content: space-between; align-items: center; background: #333333; width: 160px; height: 44px; color: #fff; font-size: 18px; padding: 0 15px 0 22px; box-sizing: border-box; border-radius: 9999px; margin: auto; transition: .3s; cursor: pointer;}
.group-free-area .button:after {content: ">";}
.group-free-area .button:hover {text-decoration: none; opacity: 0.8; transition: .3s;}

.group-free-area .button-wrap {width: 300px; padding-top: 25px; background: #fff; display: flex; justify-content: center;}
.group-free-area .flex {display: flex; justify-content: space-between; gap: 10px; align-items: flex-start;}
.group-free-area ul {margin-top: 39px;}
.group-free-area ul + p {margin-top: 45px;}
.group-free-area .has-image {vertical-align: bottom;}
.group-free-area .has-image img {display: inline-block; margin-right: 20px; vertical-align: bottom;}