.agree_wrapper label, .radio_wrapper label, .office_wrapper label {
	font-size: clamp(16px, 0.94vw, 18px);
	color: #444;
}
.agree_wrapper label:not(:last-child), .radio_wrapper label:not(:last-child), .office_wrapper label:not(:last-child) {
	margin-right: clamp(15px, 1.56vw, 30px);
}
.agree_wrapper input[type="radio"] + span, .office_wrapper label input[type="checkbox"] + span {
	width: clamp(20px, 1.35vw, 26px);
	height: clamp(20px, 1.35vw, 26px);
	border-radius: 50%;
	margin-right: clamp(5px, 0.52vw, 10px);
	pointer-events: none;
	border: 1px solid #666;
}
.agree_wrapper input[type="radio"]:checked + span, .office_wrapper label input[type="checkbox"]:checked + span {
	background-image: url(../img/check_icon_b.svg);
	background-repeat: no-repeat;
	background-size: clamp(15px, 1.04vw, 20px) clamp(13px, 0.94vw, 18px);
	background-position: center;
	
}
.input_area {
	border-bottom: 1px dashed #ddd;
}
.input_wrapper {
	border-top: 1px dashed #ddd;
	padding: clamp(15px, 1.56vw, 30px) 0;
}
.input_wrapper .label_txt {
	font-size: clamp(16px, 1.04vw, 20px) !important;
	width: clamp(100px, 7.29vw, 140px);
	color: #222 !important;
	font-weight: 500;
}
.input_wrapper .label_txt span {
	color: #FF0000;
}
.input_wrapper input[type="text"], .address_wrapper input {
	font-size: clamp(16px, 0.94vw, 18px);
	font-weight: 700;
	padding: clamp(10px, 0.96vw, 18.5px) clamp(13px, 1.04vw, 20px);
	border: 1px solid #ddd;
}
.input_wrapper input[type="text"]::placeholder {
	font-weight: 300;
	color: #999;
}
.radio_wrapper label input {
	width: clamp(20px, 1.35vw, 26px);
	height: clamp(20px, 1.35vw, 26px);
	margin-right: clamp(5px, 0.52vw, 10px);
}
.office_wrapper {
	gap: clamp(8px, 0.73vw, 14px) 0;
}
.address_wrapper .address_top {
	position: relative;
	margin-bottom: clamp(5px, 0.52vw, 10px);
}
.address_wrapper .address_btn {
	position: absolute;
	width: clamp(12px, 0.94vw, 18px);
	height: clamp(12px, 0.94vw, 18px);
	background-image: url(../img/search_icon.svg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	top: 50%;
	right: clamp(13px, 1.04vw, 20px);
	transform: translateY(-50%);
}
.email_wrapper span {
	font-size: clamp(18px, 1.04vw, 20px);
	font-weight: 500;
	margin: 0 clamp(5px, 0.52vw, 10px);
}
.email_wrapper select {
	width: clamp(220px, 15.63vw, 300px);
	border: 1px solid #ddd;
	font-size: clamp(16px, 0.94vw, 18px);
	color: #999;
	padding: clamp(10px, 0.91vw, 17.5px) clamp(13px, 1.04vw, 20px);
	margin-left: clamp(5px, 0.52vw, 10px);
	appearance: none;
	background-image: url(../img/down_arrow_9.svg);
	background-size: 10px 6px;
	background-repeat: no-repeat;
	background-position: right clamp(13px, 1.04vw, 20px) center;
}
.file_area {
	border-bottom: none;
}
.file_wrapper {
	border-top: none;
}
.file_wrapper .file_name {
	border: 1px solid #ddd;
	width: clamp(200px, 17.71vw, 340px);
	height: clamp(40px, 3.13vw, 60px);
	padding: 0 clamp(13px, 1.04vw, 20px);
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	flex: 1 1 auto;
	min-width: 0;      
}
.file_wrapper .file_name span {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	width: 100%;
}
.file_wrapper label {
	font-size: clamp(14px, 0.94vw, 18px);
	color: #fff;
	width: clamp(70px, 6.25vw, 120px);
	background-color: #222;
	height: clamp(40px, 3.13vw, 60px);
	cursor: pointer;
}
.etc_wrapper > div:not(:last-child) {
	margin-bottom: clamp(8px, 0.73vw, 14px);
}
.wrapper1 > label {
	margin-right: clamp(20px, 2.08vw, 40px);
}
.wrapper8 {
	border-bottom: 1px dashed #ddd;
}
.full > label:not(:last-child), .full > .file:not(:last-child) {
	margin-right: clamp(40px, 4.17vw, 80px);
}
.w240 {
	width: clamp(180px, 12.50vw, 240px);
}
.w460 {
	width: clamp(280px, 23.96vw, 460px);
}
.w830 {
	width: clamp(670px, 43.23vw, 830px);
}
@media (max-width: 900px) {
	.input_wrapper, .radio_wrapper {
		flex-direction: column;
		align-items: flex-start;
	}
	.input_wrapper > label {
		flex-direction: column;
		align-items: flex-start;
		width: 100%;
	}
	.full > label:not(:last-child), .full > .file:not(:last-child) {
		margin-right: 0;
	}
	.input_wrapper .label_txt {
		width: auto;
		font-size: 22px !important;
		font-weight: 600;
		margin-bottom: 15px;
	}
	.office_wrapper {
		gap: 15px 0;
	}
	.address_wrapper {
		width: 80%;
	}
	.email_wrapper .email {
		width: 100%;
	}
	.email_wrapper select {
		margin-left: 0;
		margin-top: 5px;
		width: 38%;
	}
	.file_wrapper .file {
		width: 100%;
		flex-direction: column;
		align-items: flex-start;
	}
	.file_wrapper .label_wrapper {
		width: 80%;
	}
	.file_wrapper .file_name {
		width: 70%;
	}
	.wrapper1 > label:first-child, .wrapper3 > label:first-child, .wrapper4 > label:first-child, .wrapper8 > .file:first-child, .wrapper9 > .file:first-child {
		margin-right: 0;
		margin-bottom: 15px;
	}
	.wrapper1 .radio_wrapper label:not(:last-child) {
		margin-bottom: 10px;
		margin-bottom: 0;
	}
	.wrapper7 .label_wrapper {
		flex-direction: column;
		align-items: flex-start;
		width: 100%;
	}
	.etc_wrapper {
		width: 80%;
	}
	.w240 {
		width: 38%;
	}
	.w460 {
		width: 80%;
	}
	.w830 {
		width: 100%;
	}
}


@media (max-width: 750px) {
	.agree_wrapper {
		flex-direction: column;
		align-items: flex-start;
	}
	.agree_wrapper label, .radio_wrapper label, .office_wrapper label {
		font-size: clamp(15px, 4.00vw, 30px);
		width: 100%;
	}
	.radio_wrapper label, .office_wrapper label {
		width: auto;
	}
	.agree_wrapper label p, .radio_wrapper label p, .office_wrapper label p {
		word-break: keep-all !important;
		width: calc(100% - clamp(30px, 8.00vw, 60px));
	}
	.agree_wrapper label:not(:last-child) {
		margin-bottom: clamp(10px, 2.67vw, 20px);
		margin-right: 0;
	}
	.agree_wrapper input[type="radio"] + span, .office_wrapper label input[type="checkbox"] + span {
		width: clamp(20px, 6.00vw, 45px);
		height: clamp(20px, 6.00vw, 45px);
		margin-right: clamp(7px, 1.87vw, 14px)
	}
	.agree_wrapper input[type="radio"]:checked + span, .office_wrapper label input[type="checkbox"]:checked + span {
		background-size: clamp(14px, 3.60vw, 27px);
	}
	.input_wrapper {
		padding: clamp(25px, 6.67vw, 50px) 0;
	}
	.input_wrapper .label_txt {
		font-size: clamp(18px, 4.00vw, 30px) !important;
		font-weight: 700;
		margin-bottom: 0;
	}
	.input_wrapper input[type="text"], .address_wrapper input {
		font-size: clamp(15px, 4.00vw, 30px);
		padding: clamp(18px, 5.60vw, 42px) clamp(15px, 4.00vw, 30px);
	}
	.address_wrapper .address_top input {
		font-size: clamp(15px, 4.00vw, 30px);
		padding: clamp(18px, 5.60vw, 42px) clamp(35px, 9.33vw, 70px) clamp(18px, 5.60vw, 42px) clamp(15px, 4.00vw, 30px);
	}
	.radio_wrapper label input {
		width: clamp(23px, 6.00vw, 45px);
		height: clamp(23px, 6.00vw, 45px);
		margin-right: clamp(7px, 1.87vw, 14px)
	}
	.office_wrapper {
		gap: clamp(10px, 2.67vw, 20px) clamp(15px, 4.00vw, 30px);
	}
	.office_wrapper label {
		width: fit-content;
	}
	.office_wrapper label:not(:last-child) {
		margin-bottom: 0;
		margin-right: 0;
	}
	.radio_wrapper label:not(:last-child) {
		margin-right: clamp(15px, 4.00vw, 30px);
	}
	.address_wrapper {
		width: 100%;
	}
	.address_wrapper .address_top {
		margin-bottom: clamp(10px, 2.67vw, 20px);
	}
	.address_wrapper .address_btn {
		width: clamp(18px, 4.80vw, 36px);
		height: clamp(18px, 4.80vw, 36px);
		right: clamp(15px, 4.00vw, 30px);
	}
	.email_wrapper span {
		font-size: clamp(15px, 4.00vw, 30px);
		margin: 0 clamp(10px, 2.67vw, 20px);
	}
	.email_wrapper select {
		margin-top: clamp(10px, 2.67vw, 20px);
		width: 100%;
		padding: clamp(18px, 5.60vw, 42px) clamp(15px, 4.00vw, 30px);
		font-size: clamp(15px, 4.00vw, 30px);
		background-size: clamp(10px, 2.67vw, 20px) clamp(6px, 1.60vw, 12px);
		background-position: right clamp(15px, 4.00vw, 30px) center;
	}
	.file_wrapper .label_wrapper {
		width: 100%;
	}
	.file_wrapper .file_name {
		width: calc(100% - clamp(85px, 22.67vw, 170px));
		height: clamp(55px, 16.00vw, 120px);
		padding: 0 clamp(15px, 4.00vw, 30px);
	}
	.file_wrapper label {
		width: clamp(85px, 22.67vw, 170px);
		height: clamp(55px, 16.00vw, 120px);
		font-size: clamp(15px, 4.00vw, 30px);
	}
	.etc_wrapper {
		width: 100%;
	}
	.etc_wrapper > div:not(:last-child) {
		margin-bottom: clamp(10px, 2.67vw, 20px);
	}
	.wrapper1 .radio_wrapper label:not(:last-child) {
		margin-bottom: clamp(10px, 2.67vw, 20px);
	}
	.wrapper1 > label:first-child {
		margin-bottom: 0;
	}
	.wrapper3 > label:first-child, .wrapper4 > label:first-child, .wrapper8 > .file:first-child, .wrapper9 > .file:first-child {
		margin-bottom: 0;
		border-bottom: 1px dashed #ddd;
	}
	.wrapper5 .label_wrapper {
		flex-wrap: wrap;
		gap: 10px 0;
	}
	.w240 {
		width: calc((100% - clamp(34px, 8.80vw, 66px)) / 2);
	}
	.w460, .w830 {
		width: 100%;
	}
}