.program-detail {
  margin-bottom: 20px;
}

.file-detail {
  margin-bottom: 10px;
}

.move-buttons {
  margin-top: 10px;
}


form {
  margin-top: 20px;
}

fieldset {
  border: 1px solid #ddd;
  padding: 15px;
  margin-bottom: 20px;
  border-radius: 8px;
}

legend {
  font-size: 1.2em;
  font-weight: bold;
  color: #007BFF;
}

label {
  display: block;
  margin-bottom: 8px;
  font-weight: bold;
  color: #555;
}

input[type="text"],
input[type="date"],
input[type="time"],
input[type="number"],
input[type="file"],
textarea {
  width: 100%;
  padding: 10px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 14px;
}

textarea {
  resize: vertical;
}

input[type="checkbox"],
input[type="radio"] {
  margin-right: 8px;
}

.checkbox-group,
.radio-group {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.checkbox-group label,
.radio-group label {
  display: flex;
  align-items: center;
  margin-bottom: 0;
  gap: 5px;
}

.move-buttons button,
button {
  background: #007BFF;
  color: white;
  border: none;
  padding: 10px 15px;
  margin-right: 10px;
  border-radius: 4px;
  cursor: pointer;
  font-size: 14px;
  transition: background 0.3s;
}

button:hover {
  background: #0056b3;
}

button.delete {
  background: #FF4D4D;
}

button.delete:hover {
  background: #cc0000;
}

input[type="submit"] {
  background: #28a745;
  color: white;
  border: none;
  padding: 15px 30px;
  font-size: 16px;
  cursor: pointer;
  border-radius: 4px;
  transition: background 0.3s;
}

input[type="submit"]:hover {
  background: #218838;
}


.checkbox-group {
  display: flex;
  flex-wrap: wrap;
  /* 折り返しを許可 */
  gap: 20px;
  /* アイコン間の間隔 */
  margin-bottom: 20px;
}

.checkbox-group label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex-direction: column;
  /* アイコンとチェックボックスを上下に配置 */
}

.checkbox-group img {
  width: 100px;
  /* アイコンサイズを大きく */
  height: 100px;
  object-fit: contain;
}

.checkbox-group label span {
  font-size: 0;
  /* テキストを非表示 */
}


button.delete,
.delete-buttons button {
  background-color: #FF4D4D;
  /* 赤色の背景 */
  color: white;
  /* ボタンの文字色を白に */
  border: none;
  padding: 10px 15px;
  border-radius: 4px;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.3s;
}

button.delete:hover,
.delete-buttons button:hover {
  background-color: #cc0000;
  /* ホバー時に濃い赤色 */
}

button.add,
.add-buttons button {
  background-color: #FFA500;
  /* オレンジ色の背景 */
  color: white;
  /* ボタンの文字色を白に */
  border: none;
  padding: 10px 15px;
  border-radius: 4px;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.3s;
}

button.add:hover,
.add-buttons button:hover {
  background-color: #cc8400;
  /* ホバー時に濃いオレンジ */
}