@charset "UTF-8";
body, html {
	background-color: #f2f2f2;
	color: #000000;
	height: 100%;
	min-width: 320px;
	overflow-x: hidden;
	overflow-y: auto;
	webkit-overflow-scrolling: touch;
}
::-webkit-input-placeholder {
	color: rgba(0,0,0,1);
}
::-moz-placeholder {
	color: rgba(0,0,0,1);
}
:-ms-input-placeholder {
	color: rgba(0,0,0,1);
}
html.main {
}
#header {
	background-color: #fff;
	width: 100%;
	height: 50px;
	margin: 0 auto;
	position: fixed;
	top: 0;
	z-index: 98;
}
#header h1 {
	border: none;
	height: 25px;
	margin: 0 auto;
	padding-top: 12px;
	width: 93px; /*2018-12-27 스타일 업데이트*/
}
#header h1 a {
	background: url('https://cdns.tourvis.com/common/dist/images/logo-tourvis.svg') 0 0 no-repeat;
	background-size: 93px auto; /*2018-12-27 스타일 업데이트*/
	display: block;
	height: 100%;
	width: 100%;
}
#container {
	margin-top:50px;
}
#container .content-header {
	background-image: linear-gradient(to bottom, #e0e0e0 75%, #f2f2f2);
}
#container .content-header .search-wrap {
	background: url('../../images/bg_cloud_02.png') right 0 no-repeat;
	background-size: 150px 82px;
	padding-top: 15px;
}
#container .content-header .search-wrap .search-box {
	margin: 0 20px;
	position: relative;
}
.flight-type {
	margin-bottom: 7px;
	margin-left: 2px;
	text-align: left;
}
.flight-type .fl-way-block {
	height: 38px;
	line-height: 38px;
	position: relative;
}
.flight-type .fl-way-block + .fl-way-block {
	margin-left: 23px;
}
.flight-type .fl-way-block span {
}
.flight-field {
	background-color: #ffffff;
	border-radius: 10px 10px 0 0;
	overflow: hidden;
	position: relative;
	z-index: 9;
}
.flight-field.is-multi {
}
.flight-field .flight-single {
	display: none;
}
.flight-field .flight-single.active {
	display: block;
}
.flight-field .flight-multi {
	display: none;
}
.flight-field .flight-multi.active {
	display: block;
}
.flight-field .flight-multi .multi-con-wrap {
	margin: 0 15px;
}
.flight-field .flight-multi .multi-con-wrap .fl-multi-con {
	background: url('../../images/common/main_ticket_line.jpg') 100% 0 repeat-x;
	background-size: 8px 2px;
	position: relative;
}
.flight-field .flight-multi .multi-con-wrap div:nth-child(2).fl-multi-con {
	background: none;
}
.inout-wrap {
	overflow:hidden;
	border-bottom:1px solid #e5e5e5;
}
.inout-wrap > .inner-dep {
	float:left;
	width:calc(50% - 1px);
	border-right:1px solid #e5e5e5;
	text-align:center;
	padding:17px 0;
}
.inout-wrap > .outer-dep {
	float:left;
	width:50%;
	text-align:center;
	padding:17px 0;
}
.inout-wrap > .inner-dep.active,
.inout-wrap > .outer-dep.active {
	background: #557ffe;
	color: #fff;
}

.inout-wrap-multi {
	overflow:hidden;
	border-bottom:1px solid #e5e5e5;
	width: calc(100% + 30px);
	margin-left: -15px;
}
.inout-wrap-multi > .inner-dep {
	float:left;
	width:calc(50% - 1px);
	border-right:1px solid #e5e5e5;
	text-align:center;
	padding:17px 0;
}
.inout-wrap-multi > .outer-dep {
	float:left;
	width:50%;
	text-align:center;
	padding:17px 0;
}
.inout-wrap-multi > .inner-dep.active,
.inout-wrap-multi > .outer-dep.active {
	background: #557ffe;
	color: #fff;
}

.fl-multi-con .fl-route {
	height: 112px;
	padding: 21px 0;
	width: calc(100% - 100px);
}
.fl-multi-con .fl-route .fl-item {
	width: 40%;
}
.fl-multi-con .fl-route .fl-item .fl-field-block input {
	font-size: 30px;
	line-height: 40px;
}
.fl-multi-con .fl-route .fl-item .fl-field-block input::placeholder {
	font-size: 30px;
	line-height: 40px;
}
.fl-multi-con .fl-route .fl-item.fl-field-from .fl-field-block input {
	text-align: center;
}
.fl-multi-con .fl-route .fl-item.fl-field-to .fl-field-block input {
	text-align: center;
}
.fl-multi-con .fl-route .fl-swap {
	left: 50%;
	margin-left: -10px;
	position: absolute;
	top: 47px;
}
.fl-multi-con .fl-date {
	border: none;
	position: absolute;
	right: 0;
	top: 11px;
	width: 110px;
}
.fl-multi-con .fl-con-remove {
	display: block;
	position: absolute;
	right: 5px;
	top: 26px;
}
.fl-multi-con .fl-date .fl-field-block span.input-con {
	margin-top: 5px;
}
.fl-multi-con .fl-date .fl-field-block span.input-con input {
	font-size: 14px;
	font-weight: 400;
	text-align: center;
}
.fl-multi-con .fl-date .fl-field-block span.label-txt {
	background-color: #999999;
	border-radius: 10px;
	color: #ffffff;
	font-size: 12px;
	height: 18px;
	line-height: 17px;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	width: 50px;
}
.fl-multi-con .fl-date .fl-field-block span.label-txt.active {
	background-color: #557ffe;
	color: #ffffff;
}
.fl-multi-con.is-add .fl-route .fl-field-block span.label-txt {
	color: #999999;
	text-align: center;
}
.flight-field .flight-multi .multi-con-wrap .fl-multi-con.is-add {
	display: none;
}
.flight-field .flight-multi .multi-con-wrap .fl-multi-con.is-add.active {
	display: block;
}
.flight-field .flight-multi .multi-add-wrap {
	background: url('../../images/common/main_ticket_line.jpg') 100% 0 repeat-x;
	background-size: 8px 2px;
	position: relative;
	padding-top: 12px;
	margin: 0 15px;
}
.flight-field .flight-multi .multi-add-wrap a.fl-multi-add {
	display: block;
	padding: 30px 0;
	width: 100%;
}
.flight-field .flight-multi .multi-add-wrap a.fl-multi-add .ico-plus {
	margin: 0 auto;
}
.multi-add-wrap.hidden {
	display: none;
}
.fl-field-block {
}
.fl-field-block span {
}
.fl-field-block span.label-txt {
	color: #000000;
	display: block;
	font-size: 14px;
	padding: 5px 3px;
	text-align: center;
}
.fl-field-block span.input-con {
	color: #000000;
	display: block;
	font-size: 15px;
	font-weight: 500;
}
.fl-field-block span.input-con input {
}
.fl-route {
	box-sizing: border-box;
	padding: 0;
	position: relative;
	width: 100%;
}
.fl-route:after {
	clear: both;
	content: '';
	display: block;
}
.fl-route input {
	color: #557ffe;
	font-size: 39px;
	padding: 0;
}
.fl-route input::placeholder {
	font-size: 36px;
	font-weight: 500;
	letter-spacing: -0.5px;
}
.fl-route .fl-item {
	box-sizing: border-box;
	width: calc(50% - 20px);
}
.fl-route .fl-item.input-on,
	.fl-route .fl-item.input-off {
	padding-top: 68px;
}
.fl-route .fl-item.fl-field-from {
	float: left;
}
.fl-route .fl-item.fl-field-from.input-off {
	background: url('../../images/common/planes_depart_off.svg') 50% 30px no-repeat;
	background-size: 33px 23px;
}
.fl-route .fl-item.fl-field-from.input-on {
	background: url('../../images/common/planes_depart_on.svg') 50% 30px no-repeat;
	background-size: 33px 23px;
}
.fl-route .fl-item.fl-field-from .fl-field-block input {
	color: #557ffe;
	font-weight: 500;
	height: 40px;
	line-height: 40px;
	text-align: center;
}
.fl-route .fl-item.fl-field-to {
	float: right;
	text-align: right;
}
.fl-route .fl-item.fl-field-to.input-off {
	background: url('../../images/common/planes_arrive_off.svg') 50% 21px no-repeat;
	background-size: 35px 37px;
}
.fl-route .fl-item.fl-field-to.input-on {
	background: url('../../images/common/planes_arrive_on.svg') 50% 21px no-repeat;
	background-size: 35px 37px;
}
.fl-route .fl-item.fl-field-to .fl-field-block input {
	color: #557ffe;
	font-weight: 500;
	height: 40px;
	line-height: 40px;
	text-align: center;
}
.fl-route .fl-swap {
	left: 50%;
	margin-left: -12px;
	position: absolute;
	top: 75px;
	z-index: 99;
}
.fl-date {
	box-sizing: border-box;
	height: 52px;
	padding: 18px 0 12px;
	position: relative;
	width: 100%;
}
.fl-date:after {
	clear: both;
	content: '';
	display: block;
}
.fl-date.date-on {
	padding: 8px 0;
}
.fl-date.half {
}
.fl-date.half .fl-item {
	width: 50%;
}
.fl-date input {
	font-size: 15px;
	padding: 0 8px;
}
.fl-date input::placeholder {
	font-size: 15px;
	font-weight: 500;
	letter-spacing: -0.5px;
}
.fl-date.is-return {
}
.fl-date .fl-item {
	width: 100%;
}
.fl-date .fl-item input {
	color: #000000;
	letter-spacing: -0.5px;
	text-align: center;
}
.fl-date .fl-item input.date-sub {
	font-size: 12px;
	font-weight: 400;
}
.fl-date .fl-item.fl-field-depart {
	float: left;
}
.fl-date .fl-item.fl-field-depart + .fl-field-return {
	float: right;
}
.flight-search {
	box-sizing: border-box;
	position: relative;
	width: 100%;
	z-index: 9;
}
.flight-search:before {
	background: url('../../images/common/main_ticket_left.png') 0 0 no-repeat;
	background-size: 15px 95px;
	content: '';
	display: block;
	height: 95px;
	left: 0;
	position: absolute;
	top: 0;
	width: 15px;
	z-index: 1;
}
.flight-search:after {
	background: url('../../images/common/main_ticket_right.png') 0 0 no-repeat;
	background-size: 15px 95px;
	content: '';
	display: block;
	height: 95px;
	position: absolute;
	right: 0;
	top: 0;
	width: 15px;
	z-index: 1;
}
.flight-search .fl-item {
}
.flight-search .fl-item.fl-field-option {
	background: url('../../images/common/main_ticket_line.jpg') 0 14px repeat-x #ffffff;
	background-size: 8px 2px;
	height: 100%;
	margin: 0 15px;
	padding: 45px 23px 27px;
}
.flight-search.is-multi {
}
.flight-search.is-multi span.label-txt {
	display: none;
}
.flight-search .btn-area {
	bottom: -50px;
	position: absolute;
	width: 100%;
	z-index: 99;
}
.flight-search .btn-area .btn {
	background-color: #000000;
	border-radius: 0 0 5px 5px;
	font-size: 19px;
	font-weight: 500;
}
.flight-search .alert-danger {
	bottom: -72px;
	left: 50%;
	margin-left: -100px;
	padding: 0;
	position: absolute;
	text-align: center;
	width: 200px;
}
#content.main {
	background: #f2f2f2;
	position: relative;
}
#content.main .main-cloud-01 {
	background: url(../../images/bg_cloud_01.png) 0 0 no-repeat;
	background-size: 151px 91px;
	height: 93px;
	position: absolute;
	right: 0;
	top: 0;
	width: 151px;
	z-index: 97;
}
#content.main .main-cloud-02 {
	background: url(../../images/bg_cloud.png) 0 0 no-repeat;
	background-size: 185px 99px;
	bottom: 390px;
	height: 99px;
	position: absolute;
	right: 0;
	width: 185px;
	z-index: 97;
}
.main-type {
	position: relative;
	z-index: 9999;
}
.main-type dl {
}
.main-type dl dt {
	color: #333333;
	font-size: 20px;
	line-height: 28px;
}
.main-type dl dt a {
}
.main-type dl dd {
	color: #333333;
	font-size: 12px;
	padding-top: 6px;
}
.main-visual-01 {
	box-sizing: border-box;
	margin-top: 90px;
	padding-top: 24px;
	position: relative;
	z-index: 90;
}
.main-visual-01 .main-type {
	margin-left: 10px;
	padding-top: 6px;
}
.main-visual-01 .visual-event {
	margin-left: 20px;
}
.main-visual-01 .visual-event div {
}
.main-visual-01 .visual-event span.air-logo {
	display: block;
	margin-left: 10px;
}
.main-visual-01 .visual-event span.air-logo i {
}
.main-visual-01 .visual-event .visual-img {
	border-radius: 5px;
	display: block;
	margin-top: 50px;
	overflow: hidden;
	width: 130%; /* 2019.01.03 스타일 업데이트 */
	z-index: 9;
}
.main-visual-01 .visual-event .visual-img img {
	width: 100%;
}
.main-visual-02 {
	box-sizing: border-box;
	height: 400px;
	padding-top: 20px;
	position: relative;
	z-index: 98;
}
.main-visual-02 .main-type {
	margin-left: 30px;
}
.main-visual-02 .visual-promotion {
	margin-top: 30px;
	overflow-x: scroll;
	overflow-y: hidden;
	position: relative;
	z-index: 9999;
}
.main-visual-02 .visual-promotion .visual-scroll {
	padding-left: 20px;
	width: 2340px;
}
.main-visual-02 .visual-promotion .visual-scroll:after {
	clear: both;
	content: '';
	display: block;
}
.main-visual-02 .visual-promotion div {
	float: left;
	width: 584px;
}
.main-visual-02 .visual-promotion div ul {
}
.main-visual-02 .visual-promotion div ul li {
	background: url(../../images/common/bg_ticket.svg) right 0 no-repeat;
	background-size: 272px 121px;
	box-sizing: border-box;
	float: left;
	height: 121px;
	margin-bottom: 15px;
	padding: 20px 31px;
	position: relative;
	webkit-background-size: 272px 121px;
	width: 272px;
}
.main-visual-02 .visual-promotion div ul li:nth-child(even) {
	margin-left: 20px;
}
.main-visual-02 .visual-promotion div ul li span {
	display: block;
}
.main-visual-02 .visual-promotion div ul li span.air-logo {
	left: -8px;
	position: absolute;
	top: 52px;
}
.main-visual-02 .visual-promotion div ul li span.air-logo i {
}
.main-visual-02 .visual-promotion div ul li span.air-logo-22 {
	left: -10px;
	position: absolute;
	top: 50px;
}
.main-visual-02 .visual-promotion div ul li span.tit {
	color: #333333;
	font-size: 15px;
	line-height: 20px;
}
.main-visual-02 .visual-promotion div ul li span.sub {
	color: #333333;
	font-size: 11px;
	font-weight: 300;
	letter-spacing: 0;
	line-height: 13px;
	padding-top: 10px;
}
.main-visual-02 .visual-promotion div ul li span.period {
	color: #333333;
	font-size: 11px;
	font-weight: 300;
	letter-spacing: 0;
	line-height: 13px;
}

/* 2019.01.03 스타일 업데이트 */
.fl-swap .xi-long-arrow-right {
	font-size: 22px;
}

/* 2019.01.15 스타일 업데이트 */
.main-visual-02 .visual-promotion div ul li:nth-child(even) {
	margin-left: 0 !important;
	width: 272px !important;]
}

/* NDC, LCC 개편 */
#container .block-wrap .content-header .btn-area{padding:0;}
#layer-research .search-box{position: relative;}
#layer-research .search-box .m-chk-base{position: absolute;right:0;top:8px;}
#layer-research .search-box .m-chk-base input[type="checkbox"]+label{padding-left:0;padding-right:28px;line-height:22px;}
#layer-research .search-box .m-chk-base input[type="checkbox"]+label:before{width:22px;height:22px;background-size:auto 22px;left:inherit;right:0;}
#layer-research .flight-type{margin-top:15px;}
#layer-research .fl-route .fl-item.fl-field-from .fl-field-block input,
#layer-research .fl-route .fl-item.fl-field-to .fl-field-block input{height:auto;line-height:inherit;}
#layer-research .flight-field .flight-around{display:none;}
#layer-research .flight-field .flight-around.active{display:block;}
/* NDC, LCC 개편 END */

/* 190710 - 메인슬라이드 */
.main-visual-02.s-swiper{z-index:97;height:auto;}
.main-visual-02 .visual-promo{padding:0 20px 40px;margin-top:30px;}
.main-visual-02 .visual-promo .visual-swiper.swiper-container{overflow:inherit;}
.main-visual-02 .visual-promo .visual-swiper div.swiper-slide{
	margin-left: 20px;
	width: 272px;
}
.main-visual-02 .visual-promo .visual-swiper div.swiper-slide:first-child{margin-left:0;}
.main-visual-02 .visual-promo .visual-swiper div.swiper-slide div{
	background: url(../../images/common/bg_ticket.svg) right 0 no-repeat;
	box-sizing: border-box;
	float: left;
	height: 121px;
	padding: 20px 31px;
	position: relative;
	background-size: 272px 121px;
	-webkit-background-size: 272px 121px;
	width: 272px;
}
.main-visual-02 .visual-promo .visual-swiper div.swiper-slide div:first-child{
	margin-bottom:15px;
}
.main-visual-02 .visual-promo .visual-swiper div span {display: block;}
.main-visual-02 .visual-promo .visual-swiper div span.air-logo {left: -8px;position: absolute;top: 52px;}
.main-visual-02 .visual-promo .visual-swiper div span.air-logo-22 {left: -10px;position: absolute;top: 50px;}
.main-visual-02 .visual-promo .visual-swiper div span.tit {color: #333333;font-size: 15px;line-height: 20px;}
.main-visual-02 .visual-promo .visual-swiper div span.sub {color: #333333;font-size: 11px;font-weight: 300;letter-spacing: 0;line-height: 13px;padding-top: 10px;}
.main-visual-02 .visual-promo .visual-swiper div span.period {color: #333333;font-size: 11px;font-weight: 300;letter-spacing: 0;line-height: 13px;}
/* 190710 - 메인슬라이드 END */

/* 공통 ui/ux 개편 */
.renew .search-wrap .btn-area{position:static;}
.renew .search-wrap .btn.type02{background:#0086ca;border-radius:0 0 5px 5px;}
.renew .flight-search{margin-top:25px;padding-bottom:30px;}
.renew .flight-search .fl-item.fl-field-option{height:auto;margin:0;padding:10px;background:#f8f8f8;border-radius:3px;margin-top:10px;}
.renew .flight-search .fl-item.fl-field-option:first-child{margin-top:0;}
.renew .flight-search .fl-item.fl-field-option .fl-field-block{display:inline-block;padding-left:30px;position:relative;}
.renew .flight-search:before, .renew .flight-search:after{display:none;}
.renew .fl-field-block span.input-con{font-size:14px;font-weight:400;}
.renew .main-c-banner img{width:100%;}

.s-main-banners{padding:50px 20px 45px;}
.s-main-banners .main-s-banner{margin-bottom:60px;}
.s-main-banners .main-s-banner .tit{margin-top:3px;display:block;font-size:16px;font-weight:500;color:#333;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-wrap:break-word;line-height:23px;max-height:46px;overflow:hidden;}
.s-main-banners .main-s-banner .con{display:block;font-size:12px;font-weight:300;color:#333;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;margin-top:3px;}
.s-main-banners .main-s-banner .vis{width:100%;height:114px;display:block;margin-top:15px;border-radius:5px;overflow:hidden;}
.s-main-banners .main-s-banner .vis img{width:100%;height:100%;object-fit:cover;}
.s-main-banners .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 3px;}
.s-main-banners .swiper-pagination{position:static;font-size:0;margin-top:10px;}
.s-main-banners .swiper-pagination-bullet{width:4px;height:4px;}
.s-main-banners .swiper-pagination-bullet-active{background:#0086ca;}
.s-main-banners .s-tit{font-size:16px;font-weight:500;color:#333;}
.s-main-banners .s-con{font-size:12px;font-weight:300;color:#333;}
.s-main-banners .main-prom-banner{margin-top:20px;overflow:inherit;}
.s-main-banners .main-prom-banner .swiper-slide{background:#fff;padding:25px 20px;border-radius:5px;width:290px;height:151px;box-sizing:border-box;margin-right:15px;position:relative;}
.s-main-banners .main-prom-banner .swiper-slide:last-child{margin-right:0;}
.s-main-banners .main-prom-banner i{width:31px;height:20px;}
.s-main-banners .main-prom-banner .tit{margin-top:6px;display:block;font-size:14px;color:#333;}
.s-main-banners .main-prom-banner .period{font-size:12px;font-weight:300;color:#333;position: absolute;left:20px;bottom:25px;}
/* 공통 ui/ux 개편 END */