	h2 {
		color: #333;
		border-left: 5px solid #4a90e2;
		padding-left: 10px;
	}

	form {
		background: white;
		border-radius: 10px;
		padding: 25px;
		max-width: 700px;
		margin: 20px auto;
		box-shadow: 0 3px 10px rgba(0,0,0,0.1);
	}

	label {
		display: block;
		margin-top: 15px;
		font-weight: bold;
	}

	input[type="text"],
	input[type="email"],
	input[type="password"],
	textarea {
		width: 100%;
		padding: 8px;
		margin-top: 4px;
		border: 1px solid #ccc;
		border-radius: 5px;
		box-sizing: border-box;
	}

	textarea {
		height: 100px;
	}

	.form-section {
		margin-left: 15px;
	}

	input[type="radio"],
	input[type="checkbox"] {
		margin-right: 6px;
	}

	input[type="submit"],
	input[type="button"] {
		background-color: #4a90e2;
		color: white;
		border: none;
		border-radius: 5px;
		padding: 10px 20px;
		margin-top: 20px;
		cursor: pointer;
		font-size: 1em;
	}

	input[type="button"] {
		background-color: #888;
		margin-left: 10px;
	}

	input[type="submit"]:hover {
		background-color: #357ABD;
	}

	input[type="button"]:hover {
		background-color: #666;
	}

	a {
		color: #4a90e2;
		text-decoration: none;
	}

	a:hover {
		text-decoration: underline;
	}

	p {
		margin-top: 5px;
		margin-bottom: 5px;
	}

	.required {
		color: red;
		font-weight: bold;
	}
	/* スマホ対応（レスポンシブ） */
	@media (max-width: 600px) {
		form {
			padding: 15px;
		}
		input[type="submit"],
		input[type="button"] {
			width: 100%;
			margin: 5px 0;
		}
	}
