body {
    font-family: 'Segoe UI', 'Noto Sans JP', sans-serif;
    background-color: #f4f4f4;
    display: flex;
    justify-content: center;
    padding: 40px 20px;
    margin: 0;
    min-height: 100vh;
    box-sizing: border-box;
}

.form-container {
	background-color: #fff;
	padding: 30px 40px;
	border-radius: 12px;
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
	width: 100%;
	max-width: 700px;
	margin: auto;
}

h2 {
  text-align: center;
  margin-bottom: 24px;
  color: #333;
}

label {
  display: block;
  margin-bottom: 6px;
  font-weight: bold;
  color: #444;
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
textarea,
select {
  width: 100%;
  padding: 10px 12px;
  margin-bottom: 20px;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 16px;
  box-sizing: border-box;
}

.stringArea {
  width: 100%;
  padding: 10px 12px;
  margin-bottom: 20px;
  font-size: 16px;
  background-color:#eee;
}

.radio-group,
.checkbox-group {
  margin-bottom: 20px;
}

.radio-group label,
.checkbox-group label {
  display: inline-block;
  margin-right: 20px;
  font-weight: normal;
}

.checkbox-group input,
.radio-group input {
  margin-right: 6px;
}

button {
  width: 100%;
  background-color: #ff6f00;
  color: white;
  padding: 12px;
  font-size: 16px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}
.red{
	color:red;
	font-weight:bold;
}
button:hover {
  background-color: #e55e00;
}

.mg5{
	margin: 5px;
}
.mg10{
	margin: 10px;
}
.mg15{
	margin: 15px;
}
.mg20{
	margin: 20px;
}
.mg28{
	margin: 28px;
}

.tal{
	text-align: left;
}
.tar{
	text-align: right;
}
.tac{
	text-align: center;
}
.img {
	margin: 25px;
}
.white {
	color: #ffffff;
}
.u {
	text-decoration: underline;
}
.mgr10 {
	margin-right: 10px;
}