.flex-area{
    width: 720px;
    margin: auto;
}

.flex-area.s2{
    width: 1200px;
    margin: auto;
	padding-top: 30px;
}

.flex-area.s3{
    width: 900px;
    margin: auto;
	padding-top: 30px;
}

.radio-box{
    padding-top: 20px;
    display: flex;
    justify-content: center;
	padding-bottom: 10px;
}

.cr-flex{
	display: flex;
	text-align: left;
	padding:  5px 0;
}

.cr-flex .cr-tp{
    flex: 0 0 140px;
}

.cr-flex .cr-item span{
	font-size: 20px;
}

.ud-line{
	border-bottom: 1px solid #888;
}

.radio-box input[type=radio]{
    display: none;
}

.radio-box label{
    color: #8E90AF;
    margin: 5px;
    font-size: 16px;
    letter-spacing: 1px;
    padding: 0;
    border-radius: 0;
    transition: all 0.5s;
    padding: 10px 14px;
    border-radius: 10px;
    border: 1px solid #8E90AF;
    background-color: #fff;
    cursor: pointer;
}

.radio-box input[type="checkbox"]:checked + label ,.radio-box input[type="radio"]:checked + label{
    color: #fff;
    background-color: #767CB8;	
}


.radio-fr .checks{
	padding-right: 20px;
	display: inline-block;
}

.form-fr{
	display: flex;
}

.form-fr .item.w100{
    flex: 0 0 100%;
}

.form-fr .item.w50{
    flex: 0 0 50%;
}

.form-fr .item.w25{
    flex: 0 0 25%;
}

.form-fr .item.t2{
	background-color: unset;
	border-radius:unset;
}

.wbg{
	background-color: #fff;
	border-radius: 0.6rem;
	margin: 0 8px;
	margin-bottom: 15px;
	height: 52px;
}

.wbg.s2{
	height: unset;
}

.area-fr{
	background-color: #fff;
	border-radius: 0.6rem;
	margin-bottom: 15px;
	text-align: left;
	padding: 0 50px 20px 50px;
}

.area-fr.s2{
	padding: 0 20px 20px 20px;
}

.area-fr.s3{
	padding: 20px 50px;
}

.area-fr.flex{
	display: flex;
}

.area-fr.flex .area-fr-item{
	flex: 1;
}

.area-tp{
	padding: 20px 0 20px 0;
	font-weight: 600;
	color: #25282C;
	font-size: 18px;
}

.area-tp.s2{
	padding: 20px;
}

.form-table .tr{
	display: flex;
}

.form-table .tb{
	flex: 1;
	padding: 5px;
}

.form-table .tb.w-0{
	flex: 0 0 25px;
	padding-top: 18px;
	font-size: 14px;
}

.form-table .tb.w-1{
	flex: 0 0 100px;
}

.form-table .tb.w-2{
	flex: 0 0 150px;
}

.form-table .tb.w-3{
	flex: 0 0 50px;
}

.form-table .tb label{
	display: none;
}

.form-table select{
    background: url(../img/arrow_bottom.png) no-repeat scroll right 50% #F2F2F2;
    background-color: #F2F2F2;
    border-radius: 0.6rem;
    border: 0;
    height: 35px;
    margin-top: 5px;
    width: 100%;
    padding: 0 5px;
    padding-left: 15px;
    font-weight: 300;
    appearance: none;
}

.form-inline{
	display: flex;
	padding-bottom: 10px;
}

.form-inline label{
	padding-top: 5px;
	padding-right: 10px;
	width: 80px;
}

.form-inline .note{
	padding-top: 5px;
	padding-left: 10px;
	color: #999;
}

.area-fr.cs input{
	background: #F2F2F2;
	border: 0;
	height: 40px;
	padding-left: 10px;
}

.area-fr.cs textarea{
	background: #F2F2F2;
	border: 0;
	width: 100%;
	height: 100px;
	padding-left: 10px;
}

.area-fr.cs.form-list input{
	background: #F2F2F2;
	border: 0;
	height: 35px;
	margin-top: 5px;
	padding-left: 10px;
	width: 100%;
}

.area-fr.cs .w50{
	width: 50px;
}

.area-fr.cs .w100{
	width: 100px;
}

.area-fr.cs .w300{
	width: 300px;
}

.area-fr.cs .w235{
	width: 235px;
}

.area-fr.cs .line{
	width: 15px;
	padding-top: 5px;
	text-align: center;
}

.data-form-fr{
	position: relative;
}

.data-form-fr.flex{
	display: flex;
}

.data-form-fr .cal-icon{
	position: absolute;
	right: 5%;
	top: 25%;
}

.data-form-fr img.cal-icon{
	width: 18px;
}

.tb img.cal-icon{
	top: 30%;
}

.form-fr .tb-fr{
	display: flex;
	padding: 6px 0;
}

.form-fr .tb-fr .w1{
	flex: 0 0 130px;
	font-weight: 300;
	padding: 8px 15px 7px 15px;
	text-align: left;
}

.input-sy{
	font-weight: 300;
	padding: 5px;
	border: 1px solid #c1c1c1;
	-webkit-appearance: none;
	border-radius: 0.5rem;
}


.mr-3{
	margin-right: 10px;
}

.radio-fr input[type="radio"] {
    display:none;
}

.radio-fr input[type="radio"] + label {
    color:#212529;
}

.radio-fr input[type="radio"] + label span {
    display:inline-block;
    width:19px;
    height:19px;
    margin:-2px 10px 0 0;
    vertical-align:middle;
    background:url(../img/radio_s1.svg) no-repeat;
    background-size: cover;
    cursor:pointer;
    transition: all 0.4s; 
}

.radio-fr input[type="radio"]:checked + label span {
    background:url(../img/radio_s2.svg) no-repeat;
    background-size: cover;
    transition: all 0.4s; 
}


.w1.md{
	display: none;
}

.form-fr .tb-fr .w1.s2{
	flex: 0 0 160px;
}

.form-fr .tb-fr .w1.s3{
	flex: 0 0 12ㄓpx;
	padding-left: 20px;
}

.form-fr .tb-fr .w1.s4{
	flex: 0 0 95px;
}

.form-fr .tb-fr .w2{
	flex: 1;
	padding-right: 15px;
	position: relative;
}

.form-fr .tb-fr .w2 input,
.form-fr .tb-fr .w2 select{
	font-weight: 300;
	padding: 7px 10px 7px 10px;
	width: 100%;
	border: 1px solid #fff;
	-webkit-appearance: none;
	border-radius: 0;
}

.form-fr .tb-fr .w2.s2 input{
	padding-left: 10px;
	margin-left: 10px;
	padding-right: 10px;
}

.form-fr3 textarea{
	font-weight: 300;
	padding: 7px 10px 7px 10px;
	width: 100%;
	height: 100px;
	border: 1px solid #fff;
	-webkit-appearance: none;
    border-radius: 0;
}

.form-fr2 {
	display: flex;
	background-color: #fff;
	margin: 0 8px;
	padding: 8px 0;
	border-radius: 0.6rem;
	margin-bottom: 15px;
	flex-wrap: wrap;
	position: relative;
}

.form-fr2 .item{
	flex: 0 0 48%;
	height: 52px;
	margin: 0 6px;
	text-align: left;
}

.form-fr2 .item.s2{
	flex: 1;
}

.form-fr2 .item2{
	flex: 0 0 150px;
}

.form-fr2 .item .tb-fr{
	display: flex;
}

.form-fr2 .item .tb-fr .w1{
	flex: 0 0 100px;
	font-weight: 300;
	padding: 12px 15px 7px 15px;
	text-align: left;
}

.form-fr2 .item .tb-fr .w1.s4{
	flex: 0 0 170px;
	font-weight: 300;
	padding: 12px 15px 7px 15px;
	text-align: left;
}

.form-fr2 .item .tb-fr .w1.s3{
	padding-top: 0;
}


.form-fr2 .item .tb-fr .w1.s2{
	flex: 0 0 60px;
	font-weight: 300;
	padding: 10px 5px 7px 5px;
	text-align: left;
}

.form-fr2 .item .tb-fr .w2{
	flex: 1;
	/* padding-right: 15px; */
	position: relative;
}

.form-fr2 .item .tb-fr .w2 input,
.form-fr2 .item .tb-fr .w2 select
{
	background-color: #F2F2F2;
	border-radius: 0.6rem;
	border: 0;
	height: 40px;
	margin-top: 5px;
	width: 100%;
	padding: 0 5px;
	padding-left: 15px;
	font-weight: 300;
}

.form-fr .item .tb-fr .w2 select{
	background: url(../img/arrow_bottom.png) no-repeat scroll right 50% #F2F2F2;
	width: 60px;
	border-radius: 0.6rem;
	font-weight: 300;
}

.form-fr .item .tb-fr .w2 select.s2{
	background: url(../img/arrow_bottom.png) no-repeat scroll right 50% #f2f2f200;
	width: 100%;
	border-radius: 0.6rem;
	font-weight: 300;
}


.form-fr2 .item .tb-fr .w2 select{
	appearance: none;
	background: url(../img/arrow_bottom.png) no-repeat scroll right 50% #F2F2F2;
}

.form-fr2 .item .item1 .tb-fr .w2 select{
	background: url(../img/arrow_bottom.png) no-repeat scroll right 50% #F2F2F2;
	width: 70px;
}

.form-fr2 .item .item3 .tb-fr .w2 select{
	background: url(../img/arrow_bottom.png) no-repeat scroll right 50% #F2F2F2;
	width: 70px;
}

.form-fr2 .item .item1 .tb-fr .w2{
	/* padding-right: 15px; */
	text-align: right;
}

select::-ms-expand { display: none; }

.form-fr4{
	text-align: left;
}

.form-fr4 .tb-fr{
	display: flex;
	padding: 20px;
}

.form-fr4 .tb-fr .w1{
	flex: 0 0 150px;
}

.form-fr4 .tb-fr .w2{
	flex: 1;
}
.form-fr4 .tb-fr .all{
	flex: 0 0 100px;
	text-align: right;
}

.dep_date {
	display: flex;
	padding-bottom: 5px;
	margin-bottom: 5px;
	border-bottom: 1px solid #f1f1f1;
}

.dep_date .yyyy{
	flex: 0 0 80px;
}

.dep_date .mm{
	flex: 0 0 70px;
}

.dep_date .mm a{
	color: #cdcdcd;
	transition: all 0.4s;
}

.dep_date .mm.active a{
	color: #383838;
}

.dep_date .mm a:hover{
	color: #797979;
	transition: all 0.4s;
}

.dep_date .mm.active a:hover{
	color: #e56767;
	transition: all 0.4s;
}

.sub-tb-fr{
	display: flex;
}

.sub-tb-fr .item-s{
	flex: 0 0 25%;
}

.sub-fr-ar{
	margin: 5px;
	border: 1px solid #e7e7e7;
	border-radius: 10px;
	display: flex;
	padding: 5px;
}

.sub-fr-ar .ar-text{
	font-size: 14px;
	padding-right: 8px;
	padding-top: 5px;
	text-align: center;
	flex: 0 0 90px;
}

.sub-fr-ar .ar-contents{
	flex: 1; 
}

.sub-fr-ar .ar-contents select{
	background-color: #F2F2F2;
	border-radius: 0.6rem;
	border: 0;
	height: 30px;
	padding: 0 5px;
	padding-left: 10px;
	font-weight: 300;
	width: 100%;
	appearance: none;
	font-size: 14px;
	background: url(../img/arrow_bottom.png) no-repeat scroll right 50% #F2F2F2;
}

.sub-tb-fr .item1{
	flex: 0 0 44%;
}

.sub-tb-fr .item2{
	flex: 0 0 12%;
	/* position: relative; */
}

.sub-tb-fr .item3{
	flex: 0 0 50%;
}

.control-btn{
	position: absolute;
	width: 30px;
	right: 10px;
	top: 18px;
	cursor: pointer;
}

.control-btn2{
	padding-top: 10px;
	padding-left: 5px;
	width: 25px;
	cursor: pointer;
}

.area1.bg{
    background-image: linear-gradient(156deg, #ffffff, #DEDEDE);
}

.cal-icon{
	position: absolute;
	right: 25px;
	top: 8px;
}

.datepicker td, .datepicker th {
    text-align: center;
    width: 50px;
    height: 30px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    border: none;
	color: #54587c;
}

.datepicker table tr td.today, .datepicker table tr td.today.disabled, .datepicker table tr td.today.disabled:hover, .datepicker table tr td.today:hover {
    background-color: #d6d6d6;
    background-image: unset;
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);
    border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
    color: #000;
}

.datepicker table tr td.active.active, .datepicker table tr td.active.disabled, .datepicker table tr td.active.disabled.active, .datepicker table tr td.active.disabled.disabled, .datepicker table tr td.active.disabled:active, .datepicker table tr td.active.disabled:hover, .datepicker table tr td.active.disabled:hover.active, .datepicker table tr td.active.disabled:hover.disabled, .datepicker table tr td.active.disabled:hover:active, .datepicker table tr td.active.disabled:hover:hover, .datepicker table tr td.active.disabled:hover[disabled], .datepicker table tr td.active.disabled[disabled], .datepicker table tr td.active:active, .datepicker table tr td.active:hover, .datepicker table tr td.active:hover.active, .datepicker table tr td.active:hover.disabled, .datepicker table tr td.active:hover:active, .datepicker table tr td.active:hover:hover, .datepicker table tr td.active:hover[disabled], .datepicker table tr td.active[disabled] {
	background-color: #767cb8;
	background-image: unset;
}

.new-data{
	display:flex;
	text-align: left;
	padding: 0 0 15px 10px;
	cursor: pointer;
}

.new-data img{
	width: 25px;
}

.new-data .txt{
	padding-left: 5px;
}

.new-data.s2{
	padding-top: 10px;
}

.new-data.s2 img{
	width: 20px;
	height: 20px;
	margin-top: 2px;
}


.form-fr3{
    background-color: #fff;
	margin: 0 8px;
	border-radius: 0.6rem;
	margin-bottom: 15px;
	padding: 10px;
}

.note-text{
	font-size: 14px;
	color: #727272;
	text-align: left;
	padding-left: 10px;
}

.form-fr.md{
    display: none;
}

@media (max-width: 1400px) {
	.flex-area.s2{
	    width: 100%;
	}
	.dep_date .yyyy{
		flex: 0 0 60px;
	}
	.dep_date .mm{
		flex: 0 0 50px;
	}
}

@media (max-width: 1200px) {

}

@media (max-width: 992px) {
    .flex-area{
        width: 100%;
    }
	.form-fr4 .tb-fr .w1{
		flex: 0 0 130px;
	}	
	.dep_date .yyyy{
		flex: 0 0 60px;
	}
	.dep_date .mm{
		flex: 0 0 33px;
	}
	
	.area-fr.flex{
		display: flex;
		flex-direction: column;
	}

	.flex-area.s3{
	    width: 100%;
	}

	.form-table .tr{
		flex-direction: column;
	}

	.form-table .tr.topic{
		display: none;
	}
	
	.area-fr.cs.form-list select,	
	.area-fr.cs.form-list input{
		height: 40px;
	}
	.form-table .tb.w-0{
		display: none;
	}
	
	.form-table .tb.w-1{
		flex: 1;
	}
	
	.form-table .tb.w-2{
		flex: 1;
	}
	
	.form-table .tb.w-3{
		flex: 1;
	}
	
	.data-form-fr .cal-icon{
		right: 3%;
	}

	.form-table .tb label{
		display: block;
	}
		
	.area-fr.s2{
		padding: 0 50px 20px 50px;
	}

	.area-tp.s2{
		padding: 20px 0;
	}

	.bottom-line{
		border-bottom: 2px solid #e6e6e6;
	}

	.tr.bottom-line{
		position: relative;
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	
	.control-btn2{
		padding-top: 10px;
		padding-left: 5px;
		width: 25px;
		cursor: pointer;
		position: absolute;
		right: 10px;
		top: -5px;
	}
	
	.area-fr.s3{
		padding: 20px 50px;
	}
	
}

@media (max-width: 768px) {
	.form-fr{
		display: flex;
		flex-direction: column;
	}
	
	.form-fr2 {
		display: flex;
		flex-direction: column;
		padding-top: 30px;
	}

	.control-btn{
		position: absolute;
		width: 20px;
		right: 8px;
		top: 8px;
	}
	
	.form-fr2 .item .tb-fr .w1.s2{
		flex: 0 0 100px;
		font-weight: 300;
		padding: 10px 5px 7px 15px;
		text-align: left;
	}

	.form-fr2 .item .tb-fr .w2 select{
		background: url(../img/arrow_bottom.png) no-repeat scroll right 50% #F2F2F2;
	}
	
	.form-fr2 .item .item1 .tb-fr .w2 select{
		background: url(../img/arrow_bottom.png) no-repeat scroll right 50% #F2F2F2;
		width: 100%;
	}
	
	.form-fr2 .item .item3 .tb-fr .w2 select{
		background: url(../img/arrow_bottom.png) no-repeat scroll right 50% #F2F2F2;
		width: 100%;
	}

	.form-fr .item .tb-fr .w2 select{
		background: url(../img/arrow_bottom.png) no-repeat scroll right 50% #F2F2F2;
		width: 100%;
	}
	
	.sub-tb-fr{
		flex-direction: column;
	}
		
	.form-fr2 .item .tb-fr .w2{
		padding-right: 15px;
	}

	.form-fr2 .item .tb-fr{
		padding-bottom: 10px;
	}
	.form-fr .tb-fr .w1.s4{
		flex: 0 0 110px;
	}
	.w1.md{
		display: block;
	}
	
	.checkin::placeholder{
		color:transparent; 
	}

	.form-fr4{
		display: none;
	}

	.wbg.s2{
		height: unset;
		margin: 0;
	}

	.form-fr.md{
		display: block;
	}

	.sub-fr-ar .ar-contents{
		margin-right: 5px;
	}
	
	.sub-fr-ar .ar-contents select{
		height: 40px;
	}
	
}

@media (max-width: 576px) {
	.radio-box label{
	    font-size: 14px;
	    padding: 6px 15px;
	}
	
	.datepicker td, .datepicker th {
	    text-align: center;
	    width: 40px;
	    height: 30px;
	    -webkit-border-radius: 4px;
	    -moz-border-radius: 4px;
	    border-radius: 4px;
	    border: none;
		color: #54587c;
	}
	
	.area1.bg{
	    background-image: linear-gradient(156deg, #fbfbfb, #DEDEDE);
	}
	
	.form-inline {
	    display: flex;
	    padding-bottom: 10px;
	    flex-direction: column;
	}
	
	.area-fr.flex input{
		width: 100%;
	}

	.form-inline .note{
		padding-left: 0px;
	}

	.form-inline label{
		padding-bottom: 5px;
		width: 100%;
	}

	.area-fr.cs .w300{
		width: 100%;
	}

	.area-fr.cs .w235{
		width: 100%;
	}
	
    .area-fr.s2,
	.area-fr{
		padding: 0 20px 20px 20px;
	}
	
}

@media (max-width: 375px) {

}
