.page-container {
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
  font-family: "Segoe UI", "Hiragino Sans", sans-serif;
  line-height: 1.6;
}

.form-title {
  font-size: 1.8em;
  margin-bottom: 1em;
  text-align: left;
}

.form-group {
  margin-bottom: 12px;
}
.form-group label {
  display: block;
  font-weight: bold;
  margin-bottom: 5px;
}
.form-group input,
.form-group select,
.form-group textarea {
  width: 100%;
  padding: 8px;
  border: 1px solid #aaa;
  border-radius: 4px;
  box-sizing: border-box;
}

/* 横並び共通 */
.form-row {
  display: flex;
  gap: 1em;
}

/* 郵便番号・電話番号を横並びに（ブロック幅にぴったり） */
.form-group.short {
  flex: 1;   /* 均等に横幅を分ける */
}
.form-group.short input {
  width: 100%; /* 親幅いっぱいに */
}

/* メールアドレス＋写真を半々に */
.form-group.email-field,
.form-group.photo-field {
  flex: 1;   /* 半々の比率 */
}
.form-group.photo-field input {
  width: 100%;
}

.form-block {
  margin: 15px 0;
  padding: 12px;
  border: 1px solid #ccc;
  border-radius: 6px;
  background: #fdfdfd;
}
.form-block legend {
  font-weight: bold;
  padding: 0 5px;
  color: #333;
}

/* フォーム下部の操作ボタン配置 */
.form-actions {
  display: flex;
  justify-content: center;
  gap: 1em;
  margin-top: 20px;
}

/* 更新ボタン */
.btn-update {
  padding: 12px 28px;
  font-size: 1.1em;
  background: #0078d7;
  color: #fff;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.btn-update:hover {
  background: #005a9e;
}

/* 更新せずに戻るボタン */
.btn-cancel {
  display: inline-block;
  padding: 10px 22px;
  font-size: 1em;
  color: #333;
  background: #f0f0f0;
  border: 1px solid #ccc;
  border-radius: 6px;
  text-decoration: none;
  transition: background-color 0.2s ease;
}
.btn-cancel:hover {
  background: #e0e0e0;
}

/* 学歴追加ボタン */
.add-btn {
  margin-top: 8px;
  margin-bottom: 20px; /* 下に余白を確保 */
  cursor: pointer;
}

/* 学歴削除ボタン */
.delete-btn {
  margin-top: 8px;
  margin-left: 8px;
  cursor: pointer;
}

/* 横並びで幅いっぱいにする */
.form-group.wide {
  flex: 1;        /* 均等に横幅を分ける */
}
.form-group.wide input,
.form-group.wide select {
  width: 100%;    /* 親幅いっぱいに広げる */
}