body {
  font-family: "Yu Gothic", "Meiryo", sans-serif;
  /* max-width: 900px; */
  /* margin: 40px auto; */
  line-height: 1.5;
  background: #fff;
  color: #222;
}

form {
  background-color: #f3f3f3;
  padding: 20px;
  border-radius: 6px;
}

section {
  margin-bottom: 20px;
}

label {
  display: block;
  margin-bottom: 8px;
  font-weight: bold;
}

input[type="text"], input[type="date"], input[type="tel"], input[type="email"] {
  width: 300px;
  padding: 6px 8px;
  margin-top: 4px;
  border: 1px solid #ccc;
  border-radius: 3px;
}

button {
  padding: 8px 12px;
  margin-top: 10px;
  border-radius: 4px;
  border: none;
  background: #0066cc;
  color: white;
  cursor: pointer;
}

button:hover {
  background: #004a99;
}


#photoPreview {
  max-width: 100%;     /* 親要素からはみ出さない */
  max-height: 100%;   /* 高さ制限（任意） */
  object-fit: contain; /* アスペクト比を維持して収まるように */
  display: none;       /* 最初は非表示（JSで表示） */
  overflow: hidden;          /* 枠外にはみ出す部分は非表示 */
}