/* コンテナの設定 */
.container {
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
}

.results {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

/* 検索フォーム */
#searchForm {
  margin-bottom: 2em;
  display: grid;
  grid-template-columns: 7fr 1fr;
}

#searchInput {
  font-size: 1em;
  margin-right: 0.5em;
  padding: 10px;
    font-family: "Klee One", serif;
  border: 1px solid #ddd;
  border-radius: 5px;
}

#searchInput::placeholder {
  font-family: "Klee One", serif;
}

button {
  padding: 1em;
  font-size: 1em;
  cursor: pointer;
  font-family: "Klee One", serif;
  background-color: #007BFF;
  color: white;
  border: none;
  border-radius: 5px;
  transition: background-color 0.3s ease;
}

button:hover {
  background-color: #0056b3;
}

/* 検索結果のカード */
.title-card {
  background-color: #f9f9f9;
  border: 1px solid #ddd;
  padding: 20px;
  margin-bottom: 15px;
  border-radius: 8px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  transition: transform 0.3s ease;
}

.title-card:hover {
  transform: scale(1.02);
}

/* カードの画像 */
.title-card-img {
  width: 28vw;
  height: auto;
  aspect-ratio: 1.414 / 1;
  object-fit: cover;
  border-radius: 5px;
  margin-bottom: 15px;
  display: block;
}

/* カードのタイトル */
.title-card-title {
  font-size: 1.4em;
  font-weight: bold;
  color: #333;
  font-family: "Klee One", serif;
  margin-bottom: 10px;
}

.title-card-title a {
  text-decoration: none;
  color: #333;
}

.title-card-title a:visited {
  color: #333;
  text-decoration: none;
  font-size: 1.4em; /* 任意。hoverと違いなしにするため */
}


/* カードのコンテンツ */
.title-card-content {
  font-size: 1em;
  color: #555;
  margin-bottom: 15px;
  font-family: "Klee One", serif;
}

/* 投稿日時 */
.title-card-date {
  font-size: 0.9em;
  font-weight: 100;
  color: #777;
  text-align: right;
  font-family: "Quicksand", sans-serif;
  margin-top: 10px;
}

/* 結果がない場合 */
#results {
  margin-top: 20px;
}

#results p {
  color: #888;
  font-family: "Klee One", serif;
}

.articles-menu {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 0.2em;
}

/* スマホでも見やすいように */
@media (max-width: 600px) {
  .articles-menu {
    display: block;
  }
  form {
    display: block;
  }
}
