/* =========================================================
search
========================================================= */
.anchor {
  transform: translateY(-70px);
  pointer-events: none;
}

/*------------------------------------------
input
------------------------------------------*/
.search-input {
  padding-top: 64px;
  padding-bottom: 64px;
  background: #F7F7F7;
}

@media (max-width: 768px) {
  .search-input__head {
    margin: 0 auto 16px;
    font-size: 18px;
    line-height: 1.2222222222;
  }
}
@media (min-width: 769px) {
  .search-input__head {
    margin: 0 auto 24px;
    font-size: 24px;
    line-height: 1;
  }
}
.search-input__head .small {
  font-size: 12px;
}

@media (min-width: 769px) {
  .search-input__head .small {
    margin-left: 8px;
  }
}
.search-block {
  background: #fff;
}

.search-block + .search-block {
  margin: 16px auto 0;
}

.search-block__head {
  font-size: 14px;
  font-weight: 500;
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
}

@media (max-width: 768px) {
  .search-block__head {
    padding: 24px;
  }
}
@media (min-width: 769px) {
  .search-block__head {
    padding: 24px 32px;
  }
}
.search-block__head .arrow {
  display: block;
  width: 9px;
  height: 9px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(135deg);
}

@media (max-width: 768px) {
  .search-block__head .arrow {
    right: 24px;
  }
}
@media (min-width: 769px) {
  .search-block__head .arrow {
    right: 32px;
  }
}
.search-block__head.is-active .arrow {
  transform: translateY(-50%) rotate(-45deg);
}

[class*=search-block__body] {
  display: none;
  position: relative;
}

@media (max-width: 768px) {
  [class*=search-block__body] {
    padding: 24px;
  }
}
@media (min-width: 769px) {
  [class*=search-block__body] {
    padding: 24px 32px 40px;
  }
}
[class*=search-block__body]::before {
  content: "";
  height: 1px;
  background: #D9D9D9;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media (max-width: 768px) {
  [class*=search-block__body]::before {
    width: calc(100% - 48px);
  }
}
@media (min-width: 769px) {
  [class*=search-block__body]::before {
    width: calc(100% - 64px);
  }
}
.search-block__ttl {
  font-size: 14px;
  font-weight: 500;
}

.search-block__ttl + * {
  margin: 16px auto 0;
}

.search-block__list {
  display: flex;
  flex-wrap: wrap;
}

@media (max-width: 768px) {
  .search-block__list {
    gap: 24px;
  }
}
@media (min-width: 769px) {
  .search-block__list {
    gap: 16px 24px;
  }
}
.search-block__radio label {
  display: flex;
  gap: 8px;
  cursor: pointer;
}

.search-block__radio input[type=radio] {
  display: none;
}

.search-block__radio .ico {
  width: 16px;
  height: 16px;
  background: #F7F7F7;
  border: 1px solid #D9D9D9;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.search-block__radio .ico::before {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #0096D8;
}

.search-block__radio .txt {
  display: flex;
  font-size: 14px;
}

.search-block__radio input[type=radio]:checked + .ico::before {
  content: "";
}

[class*=search-block__ico] {
  display: block;
  width: 20px;
  height: 20px;
  margin-right: 8px;
}

.search-block__ico--shop {
  background: url(../images/search/ico_shop.svg) no-repeat center/contain;
}

.search-block__ico--category {
  background: url(../images/search/ico_category.svg) no-repeat center/contain;
}

.search-block__ico--az {
  background: url(../images/search/ico_az.svg) no-repeat center/contain;
}

.search-block__body--shop .search-block__list + .search-block__ttl {
  margin: 40px auto 0;
}

@media (max-width: 768px) {
  .search-block__body--category .search-block__radio {
    width: 100%;
  }
}
@media (min-width: 769px) {
  .search-block__body--az .wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, max-content);
    grid-gap: 40px clamp(10px, 5.8565153734vw, 80px);
    grid-template-areas: "kana01 kana02" "en en" "num num";
  }
}
@media (max-width: 768px) {
  .search-block__body--az .search-block__list {
    gap: 24px 18px;
  }
}
.search-block__body--az [class*=box-] > * + * {
  margin: 24px auto 0;
}

@media (min-width: 769px) {
  .search-block__body--az .box-kana01 {
    grid-area: kana01;
  }
}
@media (max-width: 768px) {
  .search-block__body--az .box-kana02 {
    margin: 24px auto 0;
  }
}
@media (min-width: 769px) {
  .search-block__body--az .box-kana02 {
    grid-area: kana02;
  }
}
@media (max-width: 768px) {
  .search-block__body--az .box-en {
    margin: 40px auto 0;
  }
}
@media (min-width: 769px) {
  .search-block__body--az .box-en {
    grid-area: en;
  }
}
@media (max-width: 768px) {
  .search-block__body--az .box-num {
    margin: 40px auto 0;
  }
}
@media (min-width: 769px) {
  .search-block__body--az .box-num {
    grid-area: num;
  }
}
.search-block__body--az .search-block__radio {
  width: 40px;
}

.search-block__btn {
  margin: 40px auto 0;
  display: flex;
  justify-content: center;
  gap: 24px;
}

/*------------------------------------------
store
------------------------------------------*/
.search-store {
  padding-top: 64px;
}

@media (max-width: 768px) {
  .search-store {
    padding-bottom: 80px;
  }
}
@media (min-width: 769px) {
  .search-store {
    padding-bottom: 120px;
  }
}
@media (max-width: 768px) {
  .search-store .c-ttl01 {
    margin: 0 auto 40px;
  }
}
@media (min-width: 769px) {
  .search-store .c-ttl01 {
    margin: 0 auto 64px;
  }
}
/*------------------------------------------
result
------------------------------------------*/
.search-result {
  padding-top: 64px;
  padding-bottom: 80px;
}

.search-result__head {
  font-size: 24px;
  line-height: 1;
}

.search-result__head .num {
  margin: 0 8px 0 16px;
}

.search-result__criteria {
  margin: 8px auto 0;
  font-size: 12px;
  line-height: 1.5;
}

@media (min-width: 769px) {
  .search-result__criteria {
    display: flex;
    gap: 16px;
  }
}
.search-result__criteria .head {
  font-weight: 700;
  white-space: nowrap;
}

@media (max-width: 768px) {
  .search-result__criteria .txt {
    margin: 4px auto 0;
  }
}
.search-result .c-col1-2 {
  margin: 24px auto 0;
}

.search-result .c-card02 a {
  position: relative;
}

.search-result .c-card02 a::before {
  content: "";
  width: 6px;
  height: 10px;
  background: url(../images/common/ico_arrow03.svg) no-repeat center/contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) scale(-1, -1);
}

@media (max-width: 768px) {
  .search-result .c-card02 a::before {
    right: 8px;
  }
}
@media (min-width: 769px) {
  .search-result .c-card02 a::before {
    right: 24px;
  }
}
.search-result .c-pager {
  margin: 88px auto 0;
}