.member_login_page,
.member_login_page *{
	box-sizing:border-box;
}

.member_login_page{
	position:relative;
	width:100%;
	min-height:100vh;
	overflow:hidden;
	background:#f7f5f3;
	font-family:"Pretendard","Noto Sans KR","Malgun Gothic",sans-serif;
	color:#222;
}

.member_login_container{
	position:relative;
	z-index:2;
	display:flex;
	width:100%;
	min-height:100vh;
}

/* 왼쪽 소개 영역 */
.member_login_visual{
	position:relative;
	display:flex;
	align-items:center;
	width:48%;
	min-height:100vh;
	overflow:hidden;
	padding:80px;
	background:
		linear-gradient(
			135deg,
			rgba(47,54,65,.96) 0%,
			rgba(69,75,84,.93) 55%,
			rgba(87,79,76,.92) 100%
		);
	color:#fff;
}

.member_login_visual:before{
	content:"Ω";
	position:absolute;
	right:-60px;
	bottom:-135px;
	color:rgba(255,255,255,.045);
	font-family:Georgia,"Times New Roman",serif;
	font-size:580px;
	font-weight:400;
	line-height:1;
	transform:scaleY(-1);
	pointer-events:none;
}

.member_login_visual:after{
	content:"";
	position:absolute;
	top:0;
	right:0;
	width:1px;
	height:100%;
	background:rgba(255,255,255,.12);
}

.member_login_visual_inner{
	position:relative;
	z-index:2;
	width:100%;
	max-width:600px;
	margin:0 auto;
}

.member_login_visual_label{
	display:block;
	margin-bottom:30px;
	color:#d8cbc2;
	font-family:Georgia,"Times New Roman",serif;
	font-size:13px;
	letter-spacing:4px;
}

.member_login_visual h1{
	margin:0;
	font-family:"Noto Serif KR","Nanum Myeongjo",serif;
	font-size:54px;
	font-weight:300;
	line-height:1.4;
	letter-spacing:-2.5px;
}

.member_login_visual h1 span{
	color:#e9d8ce;
	font-weight:600;
}

.member_login_visual p{
	margin:33px 0 0;
	color:rgba(255,255,255,.72);
	font-size:15px;
	font-weight:300;
	line-height:1.9;
	letter-spacing:-.3px;
}

.member_login_visual_line{
	width:55px;
	height:1px;
	margin-top:42px;
	background:#cdb5a7;
}

/* 오른쪽 로그인 영역 */
.member_login_content{
	display:flex;
	align-items:center;
	justify-content:center;
	width:52%;
	min-height:100vh;
	padding:60px 30px;
	background:#fff;
}

.member_login_box{
	width:100%;
	max-width:460px;
}

.member_login_logo{
	margin-bottom:12px;
	text-align:center;
}

.member_login_logo a{
	display:inline-block;
	text-decoration:none;
}

.member_login_logo img{
	display:block;
	width:auto;
	max-width:310px;
	max-height:105px;
	margin:0 auto;
	object-fit:contain;
}

.member_login_heading{
	margin-bottom:35px;
	text-align:center;
}

.member_login_heading h2{
	margin:0 0 12px;
	color:#222;
	font-family:Georgia,"Times New Roman",serif;
	font-size:29px;
	font-weight:400;
	letter-spacing:6px;
}

.member_login_heading p{
	margin:0;
	color:#888;
	font-size:14px;
	letter-spacing:-.4px;
}

.member_login_field{
	margin-bottom:20px;
}

.member_login_field > label{
	display:block;
	margin:0 0 9px;
	color:#333;
	font-size:13px;
	font-weight:600;
}

.member_login_input_wrap{
	position:relative;
	width:100%;
}

.member_login_input_wrap input{
	display:block;
	width:100%;
	height:58px;
	margin:0;
	padding:0 55px;
	border:1px solid #ddd9d6;
	border-radius:0;
	outline:none;
	background:#fff;
	color:#222;
	font-family:inherit;
	font-size:15px;
	line-height:58px;
	transition:border-color .2s ease, box-shadow .2s ease;
	-webkit-appearance:none;
}

.member_login_input_wrap input::placeholder{
	color:#aaa;
	opacity:1;
}

.member_login_input_wrap input:focus{
	border-color:#6e5b53;
	box-shadow:0 0 0 3px rgba(110,91,83,.08);
}

.member_login_icon{
	position:absolute;
	z-index:2;
	top:50%;
	left:20px;
	width:19px;
	height:19px;
	transform:translateY(-50%);
	pointer-events:none;
}

.member_login_icon svg{
	display:block;
	width:100%;
	height:100%;
	fill:#978982;
}

.member_login_password_toggle{
	position:absolute;
	z-index:3;
	top:50%;
	right:17px;
	display:flex;
	align-items:center;
	justify-content:center;
	width:34px;
	height:34px;
	margin:0;
	padding:7px;
	border:0;
	background:transparent;
	cursor:pointer;
	transform:translateY(-50%);
}

.member_login_password_toggle svg{
	display:block;
	width:20px;
	height:20px;
	fill:#aaa;
	transition:fill .2s ease;
}

.member_login_password_toggle:hover svg,
.member_login_password_toggle.is_visible svg{
	fill:#65534c;
}

.member_login_option{
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin:4px 0 30px;
}

.member_login_remember{
	display:flex;
	align-items:center;
	cursor:pointer;
}

.member_login_remember input{
	position:absolute;
	width:1px;
	height:1px;
	overflow:hidden;
	opacity:0;
}

.member_login_check{
	position:relative;
	display:inline-block;
	width:19px;
	height:19px;
	margin-right:8px;
	border:1px solid #ccc6c2;
	background:#fff;
	transition:all .2s ease;
}

.member_login_remember input:checked + .member_login_check{
	border-color:#5c4c45;
	background:#5c4c45;
}

.member_login_remember input:checked + .member_login_check:after{
	content:"";
	position:absolute;
	top:3px;
	left:6px;
	width:5px;
	height:9px;
	border-right:2px solid #fff;
	border-bottom:2px solid #fff;
	transform:rotate(45deg);
}

.member_login_remember input:focus + .member_login_check{
	box-shadow:0 0 0 3px rgba(92,76,69,.12);
}

.member_login_remember_text,
.member_login_find{
	color:#777;
	font-size:13px;
	letter-spacing:-.3px;
}

.member_login_find{
	text-decoration:none;
	transition:color .2s ease;
}

.member_login_find:hover{
	color:#3e332f;
	text-decoration:underline;
}

.member_login_submit{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:60px;
	margin:0;
	padding:0 25px;
	border:1px solid #4b403b;
	background:#4b403b;
	color:#fff;
	font-family:inherit;
	font-size:16px;
	font-weight:600;
	letter-spacing:.5px;
	cursor:pointer;
	transition:background .2s ease, border-color .2s ease;
}

.member_login_submit span{
	margin-left:12px;
	font-size:20px;
	font-weight:300;
	transition:transform .2s ease;
}

.member_login_submit:hover{
	border-color:#302824;
	background:#302824;
}

.member_login_submit:hover span{
	transform:translateX(4px);
}

.member_login_join{
	display:flex;
	align-items:center;
	justify-content:center;
	margin-top:24px;
	padding:22px 15px;
	border:1px solid #ebe7e4;
	background:#faf9f8;
}

.member_login_join p{
	margin:0 17px 0 0;
	color:#888;
	font-size:13px;
}

.member_login_join a{
	padding-bottom:2px;
	border-bottom:1px solid #554943;
	color:#554943;
	font-size:13px;
	font-weight:700;
	text-decoration:none;
}

.member_login_home{
	margin-top:28px;
	text-align:center;
}

.member_login_home a{
	color:#999;
	font-size:12px;
	text-decoration:none;
}

.member_login_home a span{
	display:inline-block;
	margin-right:6px;
	transition:transform .2s ease;
}

.member_login_home a:hover{
	color:#4b403b;
}

.member_login_home a:hover span{
	transform:translateX(-4px);
}

.member_login_bg_symbol{
	display:none;
}

/* 태블릿 및 모바일 */
@media (max-width:767px) {
	html,
	body{
		overflow-x:hidden;
	}

	.member_login_page{
		min-height:100vh;
		background:#fff;
	}

	.member_login_container{
		display:block;
		min-height:100vh;
	}

	.member_login_visual{
		display:none;
	}

	.member_login_content{
		position:relative;
		width:100%;
		min-height:100vh;
		padding:50px 22px 40px;
		background:
			linear-gradient(
				180deg,
				#f6f1ee 0,
				#fff 270px
			);
	}

	.member_login_content:before{
		content:"Ω";
		position:absolute;
		top:-72px;
		right:-52px;
		color:rgba(87,68,60,.035);
		font-family:Georgia,"Times New Roman",serif;
		font-size:270px;
		line-height:1;
		transform:scaleY(-1);
		pointer-events:none;
	}

	.member_login_box{
		position:relative;
		z-index:2;
		max-width:460px;
		margin:0 auto;
	}

	.member_login_logo{
		margin-bottom:34px;
	}

	.member_login_logo img{
		max-width:260px;
		max-height:90px;
	}

	.member_login_heading{
		margin-bottom:30px;
	}

	.member_login_heading h2{
		font-size:25px;
		letter-spacing:5px;
	}

	.member_login_heading p{
		font-size:13px;
	}

	.member_login_input_wrap input{
		height:56px;
		padding-left:52px;
		font-size:14px;
		line-height:56px;
	}

	.member_login_option{
		margin-bottom:26px;
	}

	.member_login_submit{
		height:58px;
	}

	.member_login_join{
		display:block;
		padding:20px 15px;
		text-align:center;
	}

	.member_login_join p{
		margin:0 0 10px;
	}
}

