/* プライバシーポリシー同意のレイアウト */
.userupdate-policy-center {
	text-align: center;
	width: 100%;
	margin: 30px 0 20px 0;
	font-size: 13px;
}

.userupdate-policy-label {
	font-size: 1em;
	line-height: 1.7;
	text-align: left;
}

.userupdate-policy-checkbox {
	margin-top: 0.25em;
	transform: scale(1.2);
}

.userupdate-policy-link {
	color: #007cc2;
	text-decoration: underline;
	font-weight: bold;
	margin: 0 0.2em;
	white-space: nowrap;
}

.select2-container--default .select2-selection--single {
	border: none;
	border-radius: none;
}

.select2-selection__rendered {
	display: flex;
	align-items: center;
	/* 縦中央揃え */
	height: 100%;
	/* 親の高さを継承（高さ調整している場合のみ） */
}

.select2-container .select2-selection--single {
	height: 100%;
}

.select2-container .select2-selection--single .select2-selection__rendered {
	display: flex;
	padding-left: 0px;
}

.userupdate-field.userupdate-half.name-row {
	display: flex;
	gap: 16px;
	align-items: stretch;
	max-width: 570px;
	width: 100%;
}

.userupdate-field.userupdate-half.name-row .name-col {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-width: 0;
}

.userupdate-field.userupdate-half.name-row .userupdate-input {
	width: 100%;
	max-width: none;
	min-width: 0;
	box-sizing: border-box;
}

.complete-message {
	text-align: center;
	padding: 60px;
}

.complete-message .modal-body {
	margin-bottom: 36px;
	font-size: 18px;
}

.complete-btn.complete-btn-primary {
	margin: 0 auto 16px;
	display: inline-block;
	width: 220px;
	font-size: 16px;
}

.validation_error {
	display: none;
	color: #E20000;
	margin-top: 4px;
	font-size: 1.2em;
	min-height: 1.4em;
	width: 100%;
	word-break: break-all;
	white-space: normal;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	top:6px;
}

.select2-results__option--selectable {
	font-size:12px;
}

.userupdate-input, .userupdate-select {
	color:#000;
}

select:invalid { color: #bbb; }
select option { color: black; }
select option:first-child { 
	color: #bbb;
}

[name=address_line]{
	overflow: hidden;
	resize: none;
}

@media screen and (max-width: 750px) {
	.userupdate-field {
        flex-wrap: wrap !important;
	}
	.userupdate-select{
		padding-right: 35px;
	}
	
	.select2-container--default .select2-selection--single .select2-selection__arrow b {
		display:none;
	}
}

@media (max-width: 600px) {
	.userupdate-policy-label {
		align-items: center;
		text-align: center;
	}

	.complete-message {
		padding: 18px 4vw 18px 4vw;
		margin: 0;
		width: 100%;
		max-width: 100vw;
		box-sizing: border-box;
		text-align: center;
		background: #fff;
	}

	.complete-message .modal-body {
		font-size: 16px;
		margin-bottom: 18px;
		word-break: break-word;
	}

	.complete-btn.complete-btn-primary,
	.topbtn {
		width: 100%;
		max-width: 330px;
		min-width: initial;
		margin: 40px auto 40px auto;
		display: block;
		font-size: 1em;
		box-sizing: border-box;
	}
}