/* 検索ボックス周り */
.search-container {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 10px;
}

.box {
  display: inline-block;
  position: relative;
  flex: auto;
}

select {
  font-size: large;
  padding-bottom:1px;
  padding: 10px;
  border: 1px solid #c0c0c0;
  outline: 1px;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background-color: white;
}

input {
  font-size: large;
  padding-bottom:1px;
  padding: 10px;
  border: 1px solid #c0c0c0;
  outline: 1px;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  background-color: white;
}

button {
  font-size: large;
  padding-bottom:1px;
  border: 1px solid #c0c0c0;
  background-color: #f0f0f0;
  cursor: pointer;
  width: 100%;
  height: 100%;
}
button:hover {
  background-color: #e0e0e0;
}

th, td {
  /* font-size: large; */
  border: 1px solid #ccc;
  padding: 5px;
  text-align: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

th {
  width: 100%;
  height: 100%;
  font-size: large;
  background-color: #f4f4f4;
}

.suggestions {
  border: 1px solid transparent;
  max-height: 150px;
  overflow-y: auto;
  margin-top: 5px;
  position: absolute;
  background-color: white;
  z-index: -1;
  width: 100%; /* 検索ボックスと同じ幅にする */
}

.active-border {
  border: 1px solid #c0c0c0; /* サジェストボックスの枠線を表示 */
  z-index: 1000; /* サジェストボックスのz-indexを上げる */
}

.suggestions div {
  padding: 8px;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.suggestions div:hover {
  background-color: #f0f0f0;
}

.table-wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  margin-top: 20px;
}

#resultTable,
#summaryTable {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

@media screen and (max-width: 500px) {
  input, select {
    font-size: 14px;
    width: 100%;
  }
}

.title-icon {
  width: 30px;
  height: 30px;
  vertical-align: middle;
  margin-left: 5px;
}