.spot-search {
  width: 100%;
  padding: 24px;
  background: var(--back-color);
  border-radius: 12px;
}

.spot-search-form {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.spot-search-name {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.spot-search-inputs-wrapper {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.spot-search-label {
  font-size: 20px;
}

.spot-search-radio-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
}

.spot-search-radio {
  accent-color: var(--main-color);
  inline-size: 20px;
  block-size: 20px;
}

input[type="search"].search-name-input {
  width: 100%;
  padding: 8px;
}

input[type="submit"].spot-search-submit {
  width: fit-content;
  background: var(--main-color);
  color: #fff;
  border: var(--border-default);
  padding: 16px 24px;
  font-weight: 700;
}

@media (hover:hover) {
  input[type="submit"].spot-search-submit:hover {
    opacity: 1;
    background: #fff;
    border-color: var(--main-color);
    color: var(--main-color);
  }
}
@media (hover:none) {
  input[type="submit"].spot-search-submit:active {
    opacity: 1;
    background: #fff;
    border-color: var(--main-color);
    color: var(--main-color);
  }
}

.spot-search-area {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  grid-template-rows: auto;
  background: #eee;
}

.spot-search-area-tile {
  background: #fafafa;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.spot-load {
  display: contents;
}

/* 検索結果ページ用 */
.spot-search-results {
  margin-top: 24px;
}

.spot-search-meta {
  margin-top: 24px;
  padding: 16px;
  background: #fafafa;
  border: solid 4px #ccc;
  border-radius: 12px;
}

.spot-search-meta-data {
  font-weight: bold;
  /* min:12px, max:20px | viewport: min:320px, max:1920px */
  font-size: clamp(0.75rem, 0.65rem + 0.5vw, 1.25rem);
}

.spot-search-all-count {
  text-align: right;
  margin-top: 24px;
}

.spot-search-keyword {
  display: flex;
  align-items: baseline;
  gap: 8px;
}

.spot-search-more {
  height: 24px;
}