.container {
  padding: 4.16667vw 3.54167vw 6.25vw
}

.container .sec1 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.86458vw
}

.container .sec1 .search {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .9375vw;
  width: 100%;
  position: relative;
  z-index: 50
}

.container .sec1 .search .select {
  position: relative;
  width: 10.41667vw;
  height: 3.125vw;
  border: 1px solid #000;
  border-radius: 5px;
  display: flex;
  align-items: center;
  z-index: 1
}

.container .sec1 .search .select.open {
  z-index: 60
}

.container .sec1 .search .select .select-current {
  width: 100%;
  height: 100%;
  padding: 0 .88542vw;
  display: flex;
  align-items: center;
  cursor: pointer;
  user-select: none
}

.container .sec1 .search .select .select-text {
  flex: 1;
  min-width: 0;
  color: rgba(64, 64, 64, .5);
  font-size: .9375vw;
  line-height: 1.5;
  padding-right: 1.04167vw;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap
}

.container .sec1 .search .select .arrow {
  position: absolute;
  right: .88542vw;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  pointer-events: none;
  transition: transform .3s
}

.container .sec1 .search .select.open .arrow {
  transform: translateY(-50%) rotate(180deg)
}

.container .sec1 .search .select .arrow svg {
  display: block;
  width: .75521vw;
  height: auto
}

.container .sec1 .search .select .select-options {
  position: absolute;
  top: calc(100% + .26042vw);
  left: 0;
  width: 10.3125vw;
  margin: 0;
  padding: 0;
  list-style: none;
  background: #fff;
  border: 1px solid #e6e6e6;
  border-radius: 5px;
  box-shadow: 0 .20833vw 1.04167vw rgba(0, 0, 0, .08);
  max-height: 18.75vw;
  overflow-y: auto;
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-.41667vw);
  transition: opacity .25s, transform .25s, visibility .25s
}

.container .sec1 .search .select.open .select-options {
  opacity: 1;
  visibility: visible;
  transform: translateY(0)
}

.container .sec1 .search .select .select-option {
  height: 3.125vw;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .9375vw;
  line-height: 1.5;
  color: #404040;
  text-align: center;
  cursor: pointer;
  transition: background .3s, color .3s
}

.container .sec1 .search .select .select-option:hover {
  background: rgba(213, 189, 255, .35)
}

.container .sec1 .search .select .select-option.is-active {
  background: #d5bdff;
  color: #431f83;
  font-weight: 500
}

.container .sec1 .search .btn {
  width: 6.66667vw;
  height: 3.125vw;
  background: #431f83;
  border: 0;
  border-radius: 5px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .41667vw;
  cursor: pointer;
  transition: all 600ms
}

.container .sec1 .search .btn:hover {
  background: #5a2eb0
}

.container .sec1 .search .btn img {
  display: block;
  width: 1.25vw;
  height: auto;
  transition: all 600ms
}

.container .sec1 .search .btn:hover img {
  transform: rotate(45deg)
}

.container .sec1 .city {
  width: 100%;
  color: #404040;
  line-height: 1.5;
  text-transform: uppercase
}

.container .sec1 .list {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.40625vw .88542vw;
  position: relative;
  z-index: 1
}

.container .sec1 .list .item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.04167vw;
  border: 1px solid #000;
  border-radius: 5px;
  padding: 1.71875vw 1.97917vw;
  transition: all 600ms
}

.container .sec1 .list .item:hover {
  border-color: #431f83;
  box-shadow: 0 .20833vw 1.04167vw rgba(67, 31, 131, .12)
}

.container .sec1 .list .item .item_l {
  display: flex;
  align-items: flex-start;
  gap: 1.04167vw;
  flex: 1;
  min-width: 0
}

.container .sec1 .list .item .item_l .icon {
  width: 1.82292vw;
  height: 1.82292vw;
  flex-shrink: 0;
  margin-top: .26042vw
}

.container .sec1 .list .item .item_l .icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain
}

.container .sec1 .list .item .info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: .20833vw
}

.container .sec1 .list .item .info_top {
  display: flex;
  align-items: center;
  gap: .41667vw;
  flex-wrap: wrap
}

.container .sec1 .list .item .info_top .name {
  color: #404040;
  font-weight: 700;
  line-height: 1.5;
  margin: 0
}

.container .sec1 .list .item .info_top .tag {
  background: #431f83;
  color: #fff;
  font-size: .41667vw;
  line-height: 1.5;
  padding: 0 .41667vw;
  border-radius: 5px;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 3.07292vw;
  height: 1.25vw
}

.container .sec1 .list .item .info .addr {
  color: rgba(64, 64, 64, .5);
  line-height: 1.5;
  margin: 0
}

.container .sec1 .list .item .item_r {
  display: flex;
  align-items: center;
  gap: .26042vw;
  flex-shrink: 0
}

.container .sec1 .list .item .item_r .tel_icon {
  width: 1.66667vw;
  height: 1.66667vw;
  flex-shrink: 0
}

.container .sec1 .list .item .item_r .tel_icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain
}

.container .sec1 .list .item .item_r .tel_info {
  color: rgba(64, 64, 64, .5);
  line-height: 1.5
}

.container .sec1 .list .item .item_r .tel_info p {
  margin: 0
}

.container .sec1 .btns {
  display: flex;
  align-items: center;
  gap: .83333vw
}

.container .sec1 .btns .jt {
  width: 2.08333vw;
  height: 2.08333vw;
  cursor: pointer;
  transition: all 600ms
}

.container .sec1 .btns .jt svg {
  display: block;
  width: 100%;
  height: 100%
}

.container .sec1 .btns .jt:hover {
  transform: translateY(-3px)
}

.container .sec1 .btns .jt.disabled {
  opacity: .35;
  cursor: not-allowed;
  pointer-events: none
}

.container .sec1 .list .empty-tip {
  grid-column: 1 / -1;
  width: 100%;
  padding: 3.125vw 0;
  text-align: center;
  color: rgba(64, 64, 64, .5)
}

@media screen and (max-width: 768px) {
  .container {
    padding: 120px 5% 60px
  }

  .container .sec1 {
    gap: 30px
  }

  .container .sec1 .search {
    flex-wrap: wrap;
    gap: 10px
  }

  .container .sec1 .search .select {
    flex: 1;
    min-width: calc(50% - 5px);
    height: 44px;
    border-radius: 6px
  }

  .container .sec1 .search .select .select-current {
    padding: 0 12px
  }

  .container .sec1 .search .select .select-text {
    font-size: 14px;
    padding-right: 20px
  }

  .container .sec1 .search .select .arrow {
    right: 12px
  }

  .container .sec1 .search .select .arrow svg {
    width: 12px
  }

  .container .sec1 .search .select .select-options {
    top: calc(100% + 6px);
    width: 100%;
    border-radius: 6px;
    max-height: 240px
  }

  .container .sec1 .search .select .select-option {
    height: 44px;
    font-size: 14px
  }

  .container .sec1 .search .btn {
    width: 100%;
    height: 44px;
    font-size: 14px;
    gap: 6px;
    border-radius: 6px
  }

  .container .sec1 .search .btn img {
    width: 18px
  }

  .container .sec1 .city {
    font-size: 18px
  }

  .container .sec1 .list {
    grid-template-columns: 1fr;
    gap: 15px
  }

  .container .sec1 .list .item {
    flex-direction: column;
    align-items: flex-start;
    padding: 20px;
    gap: 15px;
    border-radius: 6px
  }

  .container .sec1 .list .item .item_l {
    width: 100%
  }

  .container .sec1 .list .item .item_l .icon {
    width: 24px;
    height: 24px;
    margin-top: 4px
  }

  .container .sec1 .list .item .info {
    gap: 6px
  }

  .container .sec1 .list .item .info_top {
    gap: 8px
  }

  .container .sec1 .list .item .info_top .name {
    font-size: 16px
  }

  .container .sec1 .list .item .info_top .tag {
    font-size: 10px;
    min-width: auto;
    height: 18px;
    padding: 0 6px;
    border-radius: 4px
  }

  .container .sec1 .list .item .info .addr {
    font-size: 13px
  }

  .container .sec1 .list .item .item_r {
    gap: 8px;
    padding-left: 32px
  }

  .container .sec1 .list .item .item_r .tel_icon {
    width: 22px;
    height: 22px
  }

  .container .sec1 .list .item .item_r .tel_info {
    font-size: 12px
  }

  .container .sec1 .btns {
    gap: 14px
  }

  .container .sec1 .btns .jt {
    width: 32px;
    height: 32px
  }

  .container .sec1 .list .empty-tip {
    padding: 40px 0;
    font-size: 14px
  }
}
