@charset "utf-8";

/*==========================================================================  */
/*=================================[    PC    ]===================================  */
/*==========================================================================  */

.wrap .content{
    width: 530px;
	padding:50px 30px;
	box-sizing: border-box;
	margin: 0 auto;
}

.wrap .content .logo{
	width:130px;
	margin-bottom: 30px;
}

.wrap .content .con{
	border-radius: 8px;
	 box-shadow: 8px 8px 10px -6px rgba(0, 0, 0, 0.1);
}

.wrap .content .con ul li{
    display: flex;
    align-items: center;
	border: 2px solid #BFBFBF;
	padding: 10px 5px;
	box-sizing: border-box;
}

.wrap .content .con ul li .icon-group{
	width:15%;
	position: relative;
}

.wrap .content .con ul li .icon-group img{
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.wrap .content .con ul li:first-child{
	border-radius: 8px 8px 0px 0px;
}

.wrap .content .con ul li:nth-child(2){
	border-top: 0;
	border-bottom: 0;
}

.wrap .content .con.con02 ul li:nth-child(3){
	border-bottom: 0;
}

.wrap .content .con ul li:last-child{
	border-radius: 0px 0px 8px 8px;
}

.wrap .content .con ul li .form-group{
	width:85%;	
	position: relative;
	display: flex;
	align-items: center;
}

.wrap .content .con ul li .form-group input{
	padding: 0px 5px;
	border: 0;
}

.wrap .content .con ul li .form-group select{
	padding: 0px 5px;
	border: 0;
}

.wrap .content .con ul li .form-group .at-sign{
	font-size: 20px;
	margin: 0px 15px;
	color: #888888;
}

.wrap .content .con ul li.active {
  background-color: #f0f8ff; /* Azure 색 계열 */
  transition: all 0.2s ease-in-out;
}

.icon-focus,
.icon-error {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out;
  position: absolute;
}

.icon-focus {
  z-index: 1;
}

.icon-error {
  z-index: 2;
}

.show-icon-focus {
  opacity: 1;
  visibility: visible;
}

.show-icon-error {
  opacity: 1;
  visibility: visible;
}

.wrap .content .con ul li .icon-pwd{
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	width: 35px;
	cursor: pointer;
}

.wrap .content .con ul li .icon-pwd.on{
	display: none;
}

.valid-group{
	padding:10px 0px;
}

.toggle-wrap ul li .toggle-title{
    display: flex;
    align-items: center;
    border: 2px solid #BFBFBF;
    padding: 20px;
    box-sizing: border-box;
	font-size: 18px;
	position: relative;
}

.toggle-wrap ul li .toggle-title:not(:last-child) {
   border-bottom: 0;
}

.toggle-wrap ul li:first-child .toggle-title{
	border-radius: 8px 8px 0px 0px;
}

.toggle-wrap ul li:last-child .toggle-title{
	border-radius: 0px 0px 8px 8px;

}

.toggle-wrap ul li .toggle-title .toggle-btn::after{
	content: "";
    display: inline-block;
    width: 20px;
    height: 12px;
    background: url(/images/common/arrow_icon.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 51%;
    right: 17px;
    transform: translateY(-50%);
    cursor: pointer;
}

.toggle-wrap ul li .toggle-title .toggle-btn.rotate::after {
	top: 40%;
   transform: rotate(180deg);
}

.toggle-wrap ul li .toggle-title>span{
	color: #157CF4;
	margin:0px 10px;
}

.toggle-wrap ul li .toggle-title em{
	color: #C3C3C3;
	font-size: 16px;
	margin:0px 10px;
	cursor: pointer;
}

.toggle-wrap ul li .toggle-content{
	height: 130px;
	overflow-y: scroll;
	padding: 20px;
	box-sizing: border-box;
	font-size: 16px;
	border-top:2px solid #BFBFBF;
	border-left: 2px solid #BFBFBF;
	border-right: 2px solid #BFBFBF;
	display: none;
}

.toggle-wrap ul li .toggle-content h3{
	font-weight: 500;
	font-size: 17px;
	margin-bottom: 15px;
}

.toggle-wrap ul li .toggle-content div{
	color: rgba(0, 0, 0, 0.6);
}

.toggle-wrap ul li:last-child .toggle-title em{
	cursor: default;
}

.btn-wrap{
	padding: 20px 0px;
}

.btn-wrap .join-explain{
	font-size: 18px;
	color:#FC1515;
	display: inline-block;
	margin-bottom: 10px;
}

.btn-wrap .submit-btn{
	display: block;
	width: 100%;
	height: 70px;
	background: #157CF4;
	color: white;
	border: none;
	font-size: 24px;
	cursor: pointer;
	overflow: hidden;
	box-sizing: border-box;
	position: relative;
	border-radius: 3px;
}

.submit-btn:hover {
	color: #274EA0;
	background: transparent;
	box-shadow: none;
}
.submit-btn::before, .submit-btn::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	height: 2px;
	width: 0;
	background: #274EA0;
	box-shadow: 
		-1px -1px 5px 0px #fff,
		7px 7px 20px 0px #0003,
		4px 4px 5px 0px #0002;
	transition: 400ms ease all;
}
.submit-btn::after {
	right: inherit;
	top: inherit;
	left: 0;
	bottom: 0;
}
.submit-btn:hover::before, .submit-btn:hover::after {
	width: 100%;
	transition: 800ms ease all;
}

/*==========================================================================  */
/*================================[    Mobile    ]=================================  */
/*==========================================================================  */

@media all and (min-width: 1024px) and (max-width: 1400px) {
	
	
}


@media all and (min-width: 640px) and (max-width: 1024px) {
	
	
}


@media all and (min-width: 360px) and (max-width: 640px) {
	.wrap .content {
	    width: 90%;
	    padding: 50px 10px;
	}
	
	.toggle-wrap ul li .toggle-title {
		font-size: 16px;
		padding: 15px 20px;
	}
	
	.form-group input {
		height: 35px;
		font-size: 16px;
	}
	
	.form-group select {
		height: 35px;
		font-size: 16px;
	}
	
	.btn-wrap .submit-btn {
		height: 55px;
		font-size: 20px;
	}
	
	.btn-wrap .join-explain {
	    font-size: 14px;
	}
	
}