:root {
  --base-width-sp: 375;
  --base-width-pc: 1440;
}

.pricesearch-wrapper {
  width: 100%;
  display: flex;
  justify-content: center;
  padding-top: calc(40 / var(--base-width-sp) * 100vw);
  background-color: #f5f5f5;
}

.pricesearch-inner {
  width: calc(325 / var(--base-width-sp) * 100vw);
  display: flex;
  flex-direction: column;
  gap: 0;
  height: calc(406 / var(--base-width-sp) * 100vw);
}

.pricesearch-header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: calc(15 / var(--base-width-sp) * 100vw) 0;
  background: #231815;
  width: 100%;
  height: calc(54 / var(--base-width-sp) * 100vw);
}

.pricesearch-label-group {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: calc(7 / var(--base-width-sp) * 100vw);
  height: calc(24 / var(--base-width-sp) * 100vw);
}

.pricesearch-icon {
  font-size: calc(16 / var(--base-width-sp) * 100vw);
  color: #ffffff;
}

.pricesearch-label {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: calc(16 / var(--base-width-sp) * 100vw);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #ffffff;
  display: flex;
  align-items: center;
  text-align: center;
  height: calc(24 / var(--base-width-sp) * 100vw);
}

.pricesearch-body {
  display: flex;
  flex-direction: column;
  gap: calc(30 / var(--base-width-sp) * 100vw);
  padding: calc(30 / var(--base-width-sp) * 100vw) 0;
  background: #ffffff;
  height: calc(792 / var(--base-width-sp) * 100vw);
  width: 100%;
  align-items: center;
}

.pricesearch-conditions {
  width: calc(280 / var(--base-width-sp) * 100vw);
  display: flex;
  flex-direction: column;
  gap: calc(31 / var(--base-width-sp) * 100vw);
}

.pricesearch-condition-section {
  display: flex;
  flex-direction: column;
  gap: calc(20 / var(--base-width-sp) * 100vw);
}

.pricesearch-condition-row-top,
.pricesearch-condition-row-bottom {
  display: flex;
  flex-direction: row;
  gap: calc(20 / var(--base-width-sp) * 100vw);
  align-items: center;
}

.pricesearch-selectcondition-row {
  display: flex;
  flex-direction: row;
  gap: calc(10 / var(--base-width-sp) * 100vw);
  align-items: center;
}

.pricesearch-selectcondition-section {
  display: flex;
  flex-direction: row;
  justify-content: space-between; /* ✅ 両端に配置 */
  gap: calc(10 / var(--base-width-sp) * 100vw); /* あってもOK */
}

.pricesearch-condition-row-top label {
  font-size: calc(14 / var(--base-width-sp) * 100vw);
  font-weight: 700;
  color: #231815;
  width: calc(58 / var(--base-width-sp) * 100vw);
}

.pricesearch-condition-row-bottom label,
.pricesearch-price-select label,
.pricesearch-roomtype-select label,
.pricesearch-area-select label,
.pricesearch-landarea-select label,
.pricesearch-pastyear-select label,
.pricesearch-handover-select label,
.pricesearch-zone-select label,
.pricesearch-walk-select label,
.pricesearch-brokeragefee-select label {
  font-size: calc(14 / var(--base-width-sp) * 100vw);
  font-weight: 700;
  color: #231815;
}

.pricesearch-price-select,
.pricesearch-roomtype-select,
.pricesearch-area-select,
.pricesearch-landarea-select,
.pricesearch-pastyear-select,
.pricesearch-handover-select,
.pricesearch-zone-select,
.pricesearch-walk-select,
.pricesearch-brokeragefee-select {
  display: flex;
  flex-direction: column;
  gap: calc(5 / var(--base-width-sp) * 100vw);
}

.pricesearch-price-select select,
.pricesearch-roomtype-select select,
.pricesearch-area-select select,
.pricesearch-landarea-select select,
.pricesearch-pastyear-select select,
.pricesearch-handover-select select,
.pricesearch-zone-select select,
.pricesearch-walk-select select,
.pricesearch-brokeragefee-select select {
  width: calc(134 / var(--base-width-sp) * 100vw);
  height: calc(41 / var(--base-width-sp) * 100vw);
  background: #e9e9e9;
  border-radius: 5px;
  padding: calc(9 / var(--base-width-sp) * 100vw) calc(15 / var(--base-width-sp) * 100vw);
  font-size: calc(14 / var(--base-width-sp) * 100vw);
  font-weight: 700;
  color: #231815;
}

.pricesearch-button {
  display: flex;
  justify-content: center;
  align-items: center;
}

.pricesearch-btn-search {
  width: calc(280 / var(--base-width-sp) * 100vw);
  height: calc(45 / var(--base-width-sp) * 100vw);
  background: #fee600;
  font-size: calc(16 / var(--base-width-sp) * 100vw);
  font-weight: 700;
  color: #231815;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(10 / var(--base-width-sp) * 100vw);
  border: none;
  cursor: pointer;
  font-family: 'Noto Sans JP', sans-serif;
  
}

.pricesearch-select-block {
  display: flex;
  flex-direction: column;
  gap: calc(10 / var(--base-width-sp) * 100vw);
}

@media (min-aspect-ratio: 1/1) {

  .pricesearch-wrapper {
    width: 100%;
    display: flex;
    justify-content: center;
    padding-top: calc(40 / var(--base-width-pc) * 100vw);
    background-color: #f5f5f5;
  }

  .pricesearch-inner {
    width: calc(1000 / var(--base-width-pc) * 100vw);
    height: calc(457 / var(--base-width-pc) * 100vw);
    display: flex;
    flex-direction: column;
  }

  .pricesearch-inner-toppart {
    height: calc(60 / var(--base-width-pc) * 100vw);
  }

  .pricesearch-header {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    background: #231815;
    width: 100%;
    padding: calc(15 / var(--base-width-pc) * 100vw) 0;
  }

  .pricesearch-label-group {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: calc(12 / var(--base-width-pc) * 100vw);
  }

  .pricesearch-icon {
    font-size: calc(18 / var(--base-width-pc) * 100vw);
    color: #ffffff;
  }

  .pricesearch-label {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: calc(20 / var(--base-width-pc) * 100vw);
    line-height: 1.5;
    letter-spacing: 0.05em;
    color: #ffffff;
    display: flex;
    align-items: center;
  }

  .pricesearch-body {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    gap: calc(50 / var(--base-width-pc) * 100vw);
    background: #ffffff;
    padding: calc(30 / var(--base-width-pc) * 100vw) 0;
    padding-bottom: 0px;
    height: calc(370 / var(--base-width-pc) * 100vw);
    width: 100%;
  }

  .pricesearch-layout-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    gap: calc(50 / var(--base-width-pc) * 100vw); /* 左右の間隔 */
    width: calc(800 / var(--base-width-pc) * 100vw); /* ← list + conditions 幅の合計 + α */
    margin: 0 auto;
  }

  .pricesearch-conditions {
    display: flex;
    flex-direction: column;
    gap: calc(50 / var(--base-width-pc) * 100vw);
    width: calc(480 / var(--base-width-pc) * 100vw);
  }

  .pricesearch-condition-section {
    display: flex;
    flex-direction: column;
    gap: calc(20 / var(--base-width-pc) * 100vw);
  }

  .pricesearch-condition-row {
    display: flex;
    flex-direction: row;
    gap: calc(20 / var(--base-width-pc) * 100vw);
    align-items: center;
  }

  .pricesearch-condition-row label,
  .pricesearch-price-select label,
  .pricesearch-roomtype-select label,
  .pricesearch-area-select label,
  .pricesearch-landarea-select label,
  .pricesearch-pastyear-select label,
  .pricesearch-handover-select label,
  .pricesearch-zone-select label,
  .pricesearch-walk-select label,
  .pricesearch-brokeragefee-select label {
    font-size: calc(14 / var(--base-width-pc) * 100vw);
    font-weight: 700;
    color: #231815;
    width: calc(100 / var(--base-width-pc) * 100vw);
  }

  .pricesearch-select-inner-block {
    display: flex;
    flex-direction: column;
    gap: calc(10 / var(--base-width-pc) * 100vw);
  }

  .pricesearch-selectcondition-section {
    display: flex;
    flex-direction: row;
    gap: calc(15 / var(--base-width-pc) * 100vw);
  }

  .pricesearch-price-select,
  .pricesearch-roomtype-select,
  .pricesearch-area-select,
  .pricesearch-landarea-select,
  .pricesearch-pastyear-select,
  .pricesearch-handover-select,
  .pricesearch-zone-select,
  .pricesearch-walk-select,
  .pricesearch-brokeragefee-select {
    display: flex;
    flex-direction: column;
    gap: calc(5 / var(--base-width-pc) * 100vw);
    width: calc(150 / var(--base-width-pc) * 100vw);
  }

  .pricesearch-price-select select,
  .pricesearch-roomtype-select select,
  .pricesearch-area-select select,
  .pricesearch-landarea-select select,
  .pricesearch-pastyear-select select,
  .pricesearch-handover-select select,
  .pricesearch-zone-select select,
  .pricesearch-walk-select select,
  .pricesearch-brokeragefee-select select {
    background: #e9e9e9;
    border-radius: 5px;
    padding: calc(9 / var(--base-width-pc) * 100vw) calc(15 / var(--base-width-pc) * 100vw);
    font-size: calc(14 / var(--base-width-pc) * 100vw);
    font-weight: 700;
    color: #231815;
    height: calc(41 / var(--base-width-pc) * 100vw);
    width: 100%;
  }

  .pricesearch-button {
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .pricesearch-btn-search {
    width: calc(480 / var(--base-width-pc) * 100vw);
    height: calc(45 / var(--base-width-pc) * 100vw);
    background: #fee600;
    font-size: calc(16 / var(--base-width-pc) * 100vw);
    font-weight: 700;
    color: #231815;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: calc(10 / var(--base-width-pc) * 100vw);
    border: none;
    cursor: pointer;
    font-family: 'Noto Sans JP', sans-serif;
  }


}