@charset "UTF-8";
/* ****************************************************************************

　目次

-------------------------------------------------------------------------------

　01. モジュール

******************************************************************************* */
/* ==

　01. モジュール
8'

=============================================================================== */
/* 絞り込み
------------------------------------------------------------------------------- */
#main .pFilter01_tit {
  margin: 0 0 30px;
  font-weight: 700;
  font-size: 233.33%;
  letter-spacing: 0.2em;
}
#main .pFilter01_list {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 20px;
  gap: 20px;
}
#main .pFilter01_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 160px;
  height: 48px;
  padding: 0;
  border: none;
  border: 2px solid #bfbfbf;
  border-radius: 999em;
  background: #fff;
  font: inherit;
  font-weight: 700;
  font-size: 128.57%;
  line-height: 1;
  letter-spacing: 0.26em;
  cursor: pointer;
  transition: 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}
#main .pFilter01_btn.is-active {
  border-color: transparent;
  background-color: #fa0046;
  color: #fff;
}
#main .pFilter02 {
  display: none;
}
#main .pFilter02_in {
  padding: 30px;
  border-radius: 10px;
  background-color: #fff;
}
#main .pFilter02_blc {
  position: relative;
  margin: 30px 0 0;
  text-align: center;
}
#main .pFilter02_list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
#main .pFilter02_btn01, #main .pFilter02_btn02, #main .pFilter02_btn03 {
  display: inline-flex;
  padding: 0;
  border: none;
  border: none;
  background: none;
  font: inherit;
  font-size: 128.57%;
  line-height: 1;
  letter-spacing: 0.06em;
  cursor: pointer;
}
#main .pFilter02_btn01 {
  align-items: center;
  justify-content: center;
  height: 36px;
  padding: 0 6px 2px;
  border: 2px solid #bfbfbf;
  border-radius: 5px;
  font-weight: 700;
  transition: 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}
#main .pFilter02_btn01-w01 {
  width: 95px;
}
#main .pFilter02_btn01.is-active {
  border-color: transparent;
  background-color: #fa0046;
  color: #fff;
}
#main .pFilter02_btn02 {
  align-items: center;
  justify-content: center;
  width: 160px;
  height: 48px;
  border-radius: 999em;
  background-color: #fa0046;
  color: #fff;
  font-weight: 700;
}
#main .pFilter02_btn03 {
  position: absolute;
  right: 0;
  align-items: center;
  height: 48px;
  padding: 0 0 3px 30px;
}
#main .pFilter02_btn03::before, #main .pFilter02_btn03::after {
  -webkit-transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 16px;
  height: 2px;
  margin: auto;
          transform: rotate(45deg);
  background-color: #000;
  content: "";
  transition: -webkit-transform 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: transform 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: transform 0.2s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}
#main .pFilter02_btn03::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.d_hover #main .pFilter01_btn:hover {
  border-color: transparent;
  background: #fa0046;
  color: #fff;
}
.d_hover #main .pFilter02_btn01:hover {
  border-color: transparent;
  background: #fa0046;
  color: #fff;
}
.d_hover #main .pFilter02_btn03:hover::before {
  -webkit-transform: rotate(45deg) scale(1.1);
          transform: rotate(45deg) scale(1.1);
}
.d_hover #main .pFilter02_btn03:hover::after {
  -webkit-transform: rotate(-45deg) scale(1.1);
          transform: rotate(-45deg) scale(1.1);
}

/* 注釈
------------------------------------------------------------------------------- */
#main .pNote01 {
  margin: 23px 0 0;
  font-weight: 700;
  font-size: 128.57%;
  letter-spacing: 0.06em;
  text-align: right;
}
