/* 231212 yeogaksun */

/* body layout */
body, #bodywrap { width: 100%; height: 100vh; }

/* pc header (global) */
.header-wrap { background-color: #fff; width: 100%; position: fixed; z-index: 99; border-bottom: 1px solid #f0f0f0; }
.header-box { display: flex; max-width: 1500px; min-width: 1024px; height: 100px; align-items: center; position: relative; margin: 0 auto; background-color: #fff; padding: 0 25px; }
.header-b-menu { margin-left: 40px; }
.header-b-menu>div { background-color: #fff; font-size: 18px; font-weight: 600; padding: 25px; display: inline-block; position: relative; z-index: 3; text-align: center; }
.header-hambtn { display: flex; position: absolute; right: 25px; flex-direction: column; align-items: center; cursor: pointer; }
.header-hambtn button { height: 35px; }
.header-box .logo a { display: inline-block; height: 53px; }
.header-box .logo a img { height: 100%; margin-right: -15px; }
.header-call { position: absolute; right: 110px; }
.b-menu-down { position: absolute; top: 83px; left: -15px; background-color: #fff; border-radius: 0 0 13px 13px; padding: 10px 0; box-shadow: 0 1px 4px 0 rgba(0,0,0,0.1); z-index: 1; border: solid 1px #f0f0f0; border-top: none; display: none; }
.b-menu-down li { font-size: 14px; padding: 8px 25px; width: 160px; }
.b-menu-down li a:hover { color: #3D96FF; }
.header-b:hover { color: #3D96FF; }

/* pc gnb */
.gnb { z-index: 3; position: absolute; background-color: #fff; width: 100%; border-top: 1px solid #eee; border-bottom: 1px solid #eee; height: auto; display: none; }
.gnb-wrap { background-color: #fff; display: flex; width: auto; margin: 0 auto; flex-wrap: wrap; justify-content: center; }
.gnb-box { background-color: #fff; padding: 20px 0 20px 0; border-right:1px solid #eee; width: 176px; }
.gnb-box:nth-child(7) { border-right: none; }
.gnb-title, .gnb-list a { width: 100%; text-align: center; display: block; }
.gnb-title, .gnb-list a:hover { color: #139FD6; }
.gnb-title { font-size: 16px; font-weight: 700; color: #353535; height: 30px; }
.gnb-list a { padding: 7px 0 7px 0; font-weight: 600; }

/* header sub menu */
.header-sub-wrap { width: 100%; height: 144px; border-bottom: 1px solid #ddd; display: flex; align-items: flex-end; justify-content: center; background-color: #fff; position: fixed; z-index: 11; }
.header-sub { width: 1500px; min-width: 1024px; height: 42px; display: flex; padding: 0 5px; }
.header-sub>ul { font-size: 0; }
.header-sub>ul>li { display: inline-block; }
.sub-depth { width: 200px; height: 100%; border-right: 1px solid #f0f0f0; position: relative; cursor: pointer; }
.sub-depth-title { font-size: 14px; display: block; font-weight: 600; position: relative; width: 100%; height: 100%; line-height: 40px; display: flex; justify-content: space-between; width: 100%; }
.sub-depth .sub-depth-title { padding: 0 14px; }
.sub-home { border-right: 1px solid #f0f0f0; border-left: 1px solid #f0f0f0; cursor: pointer; }
.sub-home>.sub-depth-title { width: 60px; height: 100%; text-align: center; }
.sub-depth-ul { background-color: #fff; padding: 15px 15px; border: 1px solid #ddd; position: absolute; z-index: 1; left: -1px; display: none; width: calc(100% + 2px); height: fit-content; border-radius: 0 0 7px 7px; }
.sub-depth1 { height: 100%; }
.sub-depth ul li a { display: block; width: 100%; height: 29px; font-size: 14px; line-height: 29px; }
.sub-depth ul li a:hover { background-color: #f8f8f8; }
.sub-depth2 { height: 100%; }
.sub-depth-ul.active { display: block; }

/* mobile header */
.header-wrap.mobile-only { display: none; }
.mobile-wrap { width: 100%; overflow-y: hidden; position: fixed; background-color: #fff; border-bottom: solid 1px #ebebeb; }
.header-box.mobile-only { background-color: #fff; height: 55px; width: 100%; padding: 0 20px; }
.header-box.mobile-only>.logo a { height: 35px; }
.header-box.mobile-only>.logo img { height: 100%; }
.header-hambtn.mobile-only { right: 15px; }
.mobile-wrap .header-call .fs16 { font-size: 13px; }
.mobile-wrap .header-call .fs22 { font-size: 13px; }
.mobile-wrap .header-call { right: 58px; }
.mgnb-top > a { justify-content: center; align-items: center; }
.mgnb-top > a > .main-btn-img { width: 65px; height: 65px; background-color: #f5f5f5; border-radius: 50%; text-align: center; line-height: 63px; display: flex; align-items: center; justify-content: center; }
.mgnb-top > a > .main-btn-img img { width: 41px; }

/* mobile gnb */
.mgnb { width: 100%; padding: 30px; font-size: 1.1rem; height: auto; max-height: 100%; overflow: auto; position: absolute; padding-bottom: 50px; }
.mgnb-top { background-color: #fff; border-bottom: 1px solid #ddd; padding: 0 0 30px 0; display: flex; }
.mgnb-top a { width: 33.3%; text-align: center; }
.mgnb-top a p { margin-top: 10px; }
.mgnb-wrap { width: 100%; background-color:#fff; padding: 23px 0; }
.gnb-box.mobile-only { padding: 0; display: flex; flex-direction: column; border-right: none; width: 100%; }
.gnb-box.mobile-only > .gnb-title { font-size: 14px; text-align: left; padding-bottom: 30px; position: relative; width: 100%; cursor: pointer; }
.gnb-box.mobile-only>.gnb-title::after { content:''; position: absolute; right: 5px; top: 5px; width: 18px; height: 20px; }
.gnb-box.mobile-only .gnb-list { padding: 10px 0; margin-bottom: 22px; border-bottom: 1px solid #ddd; font-size: 13px; }
.gnb-box.mobile-only .gnb-list a { text-align: left; padding: 0 0 14px 0; }
.gnb-list.open-depth2 { background-color: yellow; }

/* mobile 예약페이지 상단 */
.mobile-reserv-sticky { width: 100%; height: fit-content; border-bottom: solid 1px #ebebeb; padding: 10px 20px 6px 20px; justify-content: space-between; border-top: solid
1px #ebebeb; padding-top: 61px; display: none; position: fixed; z-index: 15; background-color: #fff; box-shadow:0 0.1rem 1rem 0 rgba(0,0,0,.1); }
.mobile-reserv-sticky span { line-height: 1.4; }
.mobile-section span, .mobile-section i { font-size: 12px; font-weight: 500; position: relative; margin-right: 3px; }
.mobile-section .depart, .mobile-section .arrival { font-size: 13px; font-weight: 600; }
.mobile-reserv-sticky .results { padding-right: 5px; flex-wrap: wrap; }
.mobile-reserv-sticky .results .go, .come { font-weight: 600; margin-right: 5px; overflow: auto; flex-shrink: 0; }
.mobile-reserv-sticky .results span { position: relative; font-size: 12px; margin-right: 13px; font-weight: 500; }
.mobile-reserv-sticky .results span::after { content: ''; width: 1px; height: 9px; background-color: #acacac; position: absolute; right: -8px; top: 3px; }
.mobile-reserv-sticky .results span:last-child::after { display: none; }
.mobile-reserv-sticky .results span:last-child { margin-right: 0; white-space: nowrap; overflow: hidden; }
.mobile-reserv-sticky .results span:first-child::after { display: none; }
.mobile-reserv-sticky .results .passenger { flex-shrink: 0; }
.mobile-reserv-sticky .results .room { flex-shrink: 0; }
.mobile-reserv-sticky .results .date { flex-shrink: 0; }
.mobile-section .round-trip { background-image: url(../img/roundtrip.svg); width: 13px; height: 10px; background-size: contain; background-repeat: no-repeat; }
.mobile-section .go-trip { background-image: url(../img/go.svg); width: 13px; height: 10px; background-size: contain; background-repeat: no-repeat; }
.mobile-reserv-sticky button.rescan { border: solid 1px #787878; padding: 3px 8px; border-radius: 20px; width: 53px; flex-shrink: 0; background-color: #fff; }
.mobile-reserv-sticky button span { font-size: 11px; }

/* 메인 슬라이드 */
#container-wrap { padding-top: 100px; overflow-x: hidden; }
.main-wrap { position: relative; height: 450px; max-width: 1500px; min-width: 320px; margin: 0 auto; background-color:#ffffff; }
.swiper.main-swiper { max-width: 1500px; min-width: 320px; height: 100%; position: relative; overflow: hidden; margin-top: 30px; padding: 0 25px; }
.swiper-slide.main { text-align: left; opacity: 1; background-color: #A2D1EE; border-radius: 20px;  background-repeat: no-repeat; background-size: cover; background-position: 0; }
.swiper-pagination { color: #fff; }
.swiper-slide-active { opacity: 1; }
.swiper-slide.main>.slide-inner { width: 100%; height: 100%; margin: 0 auto; padding: 0; display: flex; justify-content: flex-start; }
.slide-imgbox.main { order: 1; width: 90px; height: 100%; }
.slide-inner .txt-wrap { order: 2; width: auto; padding-top: 75px; }
.slide-inner .title-big { font-family: 'GangwonEduPowerExtraBoldA'; line-height: 1.3; }
.swiper-button-next, .swiper-button-prev { width: 50px; height: 50px; background-color: #fff; border-radius: 28px; box-shadow:0 0.1rem 1rem 0 rgba(0,0,0,.1); background-position: center; background-repeat: no-repeat; }
.swiper-button-prev { background-image: url(../img/prev.png); left: 7px; }
.swiper-button-next { background-image: url(../img/next.png); right: 7px; }
.swiper-button-next::after, .swiper-button-prev::after { visibility: hidden; }

/* 메인 예약 박스 */
.reserv-wrap { width: 87%; height: fit-content; display: flex; align-items: flex-end; position: absolute; z-index: 2; bottom: 40px; left: 50%; justify-content: flex-end; transform: translateX(-50%); }
.reserv-box { width: 100%; height: auto; border-radius: 15px; position: relative; }
.place-pick-wrap { width: 40%; display: flex; justify-content: flex-start; vertical-align: baseline; padding: 0; flex-wrap: wrap; padding-right: 25px; }
.place-pick-wrap button.depart { order: 1; text-align: left; flex: 1; }
.place-pick-wrap button.arrive { order: 3; text-align: right; flex: 1; }
.place-pick-wrap button.round { order: 2; position: relative; width: 36px; }
.reserv-tab .btn-box-m { line-height: 75px; border-radius: 60px; width: 210px; height: 75px; }
.reserv-tab .btn-line { border-bottom: none; }
.reserv-tab .date-pick-wrap { width: 42%; }
.reserv-tab { gap: 2%; border-radius: 50px; padding: 0 0 0 20px; justify-content: space-between; background-color: #fff; position: relative; }
.reserv-inner .btn-box-xs { font-size: 16px; background-color: rgb(199 232 255 / 60%); }
.reserv-inner .btn-wrap { padding: 20px 0 10px 0; }
.reserv-inner .btn-box-xs:nth-child(1) { border-radius: 20px 0 0 20px; }
.reserv-inner .btn-box-xs:last-child { border-radius: 0 20px 20px 0; }
#multiple .btn-box-m, #multiple .place-pick-wrap, #multiple .date-pick-wrap { line-height: 60px; height: 60px; }
#multiple .place-pick-wrap { width: 576px; flex-shrink: 0; }
.multiple-1 .date-pick-wrap { width: 59%; }
#oneway, #multiple { display: none; }
.reserv-tab .btn-box-m span { font-size: 15px; }
.modal-wrap.round, .reserv-box.reserv.room .modal-wrap.one, .reserv-box.reserv.room .modal-wrap.come-one, .main-wrap .modal-wrap.come, .reserv-box.reserv.room .modal-wrap.come { top: 75px; }
.main-wrap .modal-wrap.mul2, .main-wrap .modal-wrap.come-mul2, .reserv-box.reserv.room .modal-wrap.mul2, .reserv-box.reserv.room .modal-wrap.come-mul2 { top: 60px; }

/* 메인 이미지 버튼 */
.contents-box.btn { padding: 60px 20px 45px 20px; justify-content: space-between; gap: 4%; }
.main-btn { flex-basis: 70%; justify-content: space-between; margin-bottom: 20px; }
.main-btn > div > a { display: inline-block; min-width: 130px; height: 130px; background-color: #f5f5f5; border-radius: 50%; align-items: center; text-align: center; }
.main-btn > div > a > p { font-size: 15px; font-weight: 700; text-align: center; }
.main-btn .main-btn-img { line-height: 130px; }
.main-btn .main-btn-img:hover img { transform: scale(1.15); }
.main-btn .main-btn-img img { height: 100%; transition: all 0.2s; }
.toursafe { width: 450px; height: 130px; border: solid 1px #eee; box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.07); border-radius: 70px; flex-shrink: 0; justify-content: center; margin-bottom: 20px; }
.toursafe .flex { justify-content: center; width: 100%; height: 100%; }
.toursafe .col1 { width: fit-content; margin-right: 20px; align-items: flex-end; }
.toursafe .col2 { width: fit-content; }
.toursafe .col2 img { transition: all 0.2s; }
.toursafe .col2 img:hover { animation-duration: 0.4s; animation-name: penslide; animation-iteration-count: infinite; animation-direction: alternate; }
.toursafe .col1 p { float: right; }
.toursafe .col1 p:first-child { font-size: 17px; font-weight: 700; }

@keyframes penslide {
    0% { margin-bottom: 15px; }
    100% { margin-top: 15px; }
}

/* 메인 크루즈 여행 슬라이드 */
.depth-slide-wrap { position: relative; }
.depth-slide .txt-wrap, #notice .txt-wrap, #event .txt-wrap { padding: 55px 0 30px 0; }
.depth-slide.swiper { width: 100%; height: 100%; position: relative; }
.depth-slide.swiper-wrapper { width: 100%; padding: 10px 0; }
.depth-slide.swiper-slide { height: 310px; border-radius: 15px; box-shadow: rgba(0, 0, 0, 0.1) 0px 0.1rem 1rem 0px; overflow: hidden; }
.depth-slide.swiper-slide img { height: 100%; object-fit: cover; margin-left: 50%; transform: translate(-50%); }
.depth-slide-lt { width: 25%; }
.depth-slide-rt { width: 75%; padding: 50px 0; height: auto; }
.depth.item-top { display: flex; justify-content: space-between; background-image: none; height: 310px; width: 470px; background-color: transparent; }
.contents-box.depth-slide { display: flex; gap: 6%; }
.depth.swiper-button-wrap { position: absolute; display: block; width: 80px; height: 35px; padding: 10px 0; bottom: 50px; }
.depth.swiper-button-wrap > .depth.swiper-button-prev, .depth.swiper-button-wrap > .depth.swiper-button-next { box-shadow: none; text-align: center; width: 40px; height: 35px; background-image: none;  background-color: #fff; }
.depth.swiper-button-wrap > .depth.swiper-button-prev {  border-radius: 18px 0 0 18px; border-right: solid 1px #eee; }
.depth.swiper-button-wrap > .depth.swiper-button-next { border-radius: 0 18px 18px 0; }
.depth-slide .btn-box-m { height: 85px; width: 270px; border-radius: 50px; padding: 0 30px; justify-content: space-between; }
.depth-slide .btn-wrap { padding: 0; }
.depth.swiper-button-wrap > .depth.swiper-button-prev.swiper-button-disabled, .depth.swiper-button-wrap > .depth.swiper-button-next.swiper-button-disabled { opacity: 1; }

/* 메인 패키지 여행 */
.pack.contents-box-wide { background-color: #DFFFF7; }

/* 메인 공지사항 */
.notice-wrap { overflow-x: scroll; }
.notice-wrap::-webkit-scrollbar { display: none; }
.notice-wrap ul { border: solid 1px #ddd; border-radius: 15px; width: fit-content; overflow-x: visible; }
.notice-wrap ul li { padding: 35px 0; width: 473px; }
.notice-wrap ul li a { display: inline-block; padding: 0 35px; border-right: solid 1px #eee; width: 100%; }
.notice-wrap ul li:last-child a, .notice-wrap ul li:nth-child(3) a { border-right: none; }
.notice-wrap ul li:last-child { width: 4%; padding: 0; }
.notice-wrap ul li:last-child a { padding: 0; }
.notice-wrap ul li a div { margin-bottom: 20px; }
.notice-wrap ul li a div:first-child { font-size: 20px; font-weight: 700; color: #666; }
.notice-wrap ul li a div:nth-child(2) { font-size: 16px; line-height: 1.5; }
.notice-wrap ul li a div:last-child { margin-bottom: 0; }
.notice-wrap .notice-title { width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.notice-wrap .notice-txt { width: 100%; overflow: hidden; text-overflow: ellipsis; height: 75px; }
.notice-wrap ul li a .xi-plus { line-height: 232.5px; }

/* 탭메뉴 */
.slide-menu-wrap { width: 100%; height: auto; display: flex; justify-content: center; position: absolute; z-index: 1; top: -7px; left: -90px; }
.slide-menu li { display: inline-block; margin: 0 5px; cursor: pointer; }
.slide-menu li a { padding: 15px 30px; border:1px solid #666; border-radius: 30px; background-color: #fff; font-weight: 600; font-size: 16px; }
.slide-menu > li a.active { background-color: #222; color: #fff; }

/* reserv_00 예약박스 */
.contents-box.boat { padding: 0px 20px 0 20px; }
.reserv00.boat .contents-box.boat { overflow: unset; }
.txt-wrap.title.boat { padding: 50px 0 0 0; }
.reserv-box.reserv { width: 100%; }
.reserv-box.reserv .reserv-inner { display: flex; flex-direction: column; }
.reserv-box.reserv.room .date-select { display: flex; gap: 2%; justify-content: space-between; }
.reserv-box.room .date-select .place-pick-wrap { flex-basis: 50%; background-color: #1782ff; padding: 0 15px; border-radius: 10px; }
.reserv-box.room .date-select .date-pick-wrap { flex-basis: 40%; background-color: #1782ff; padding: 0 15px; border-radius: 10px; }
.reserv-box.room .date-select .btn-line { border-bottom: none; }
.reserv-box.room .date-pick input { color: #fff; }
.reserv-box.room .date-pick input::placeholder { color: #fff; opacity: 0.7; }
.reserv-box.room .cal-line { border-bottom: none; }
.reserv-box.room .btn-wrap { padding-top: 20px; }

/* reserv_00 */
.contents-wrap.reserv00 .stage { top: 60px; }
.contents-wrap.reserv00 .txt-wrap { padding-top: 190px; }
.contents-wrap.reserv00 .top-btn-group { justify-content: space-between; align-items: flex-start; }
.contents-wrap.reserv00 .btn-wrap .close { cursor: pointer; }
.contents-wrap.reserv00 .reserv-tab { background-color: #3d96ff; position: relative; }
.contents-wrap.reserv00 .reserv-tab i { opacity: 0.6; }
.contents-wrap.reserv00 .reserv-tab .btn-line span { color: #a4cfff; }
.ship-unit { width: 100%; height: 75px; box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1); flex-wrap: wrap; border-radius: 10px; margin-bottom: 10px; background-color: #fff; cursor: pointer; }
.ship-unit.select { border: solid 1px #3d96ff; }
.ship-unit.select i { color: #3d96ff; }
.ship-unit > div { justify-content: flex-start; padding-left: 20px; font-size: 18px; font-weight: 600; }
.ship-unit .ship-time { border-right: solid 1px #eee; flex-basis: 30%; pointer-events: none; }
.ship-unit .ship-time span { margin-right: 8px; }
.ship-unit .ship-time span:nth-child(2) { background-image: url(../img/longo.png); display: inline-block; width: 77px; height: 10px; background-repeat: no-repeat; opacity: 0.4; }
.ship-unit .ship-name { flex-basis: 30%; pointer-events: none; }
.radio-btn { width: 1px; height: 1px; padding: 0; border: none; position: absolute; left: 0; top: 0; overflow: hidden; clip: rect(0 0 0 0); }
.radio-btn + label > span { display: inline-block; width: 20px; height: 20px; border: solid 2px #ddd; position: relative; border-radius: 10px; font-weight: 400; }
.radio-btn:checked + label > span:before { content: '\e92b'; font-family: 'xeicon'; position: absolute; width: 90%; height: 90%; color: #3d96ff; font-size: 22px; line-height: 20px; left: -3px; top: -2px; }
.stage { position: absolute; right: 25px; }
.stage div { margin-right: 7px; }
.stage div a { font-weight: 500; color: #acacac; font-size: 15px; }
.stage div a.active { font-weight: 700; color: #3d96ff; }
.stage div a.active i { font-size: 18px; font-weight: 400; }

/* 날짜 선택 슬라이드 */
.date-slide-wrap { width: 100%; height: 75px; padding: 15px 50px; position: relative; }
.swiper.date-swiper-1, .swiper.date-swiper-2 { width: 100%; height: 100%; position: relative; overflow: hidden; padding: 0px 60px; }
.swiper-slide.date-unit { display: flex; justify-content: center; font-size: 16px; align-items: center; cursor: pointer; color: #acacac; }
.swiper-button-prev.arrow-1, .swiper-button-prev.arrow-2 { position: absolute; left: 0px; top: 39px; width: 40px; height: 40px; box-shadow: 0px 2px 4px 2px rgba(0, 0, 0, 0.09); }
.swiper-button-next.arrow-1, .swiper-button-next.arrow-2 { position: absolute; right: 0px; top: 39px; width: 40px; height: 40px; box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.09); }
.date-unit.swiper-slide-active { color: #3d96ff; border: solid 1px #3d96ff; background-color: #fff; border-radius: 30px; font-weight: 600; }

/* reserv_01 예약창 상단 고정 */
.contents-wrap.mobile-hide { padding-top: 115px; }
.contents-wrap.boat.fixed { position: fixed; z-index: 3; background-color: #fff; box-shadow: 0 0.1rem 1rem 0 rgba(0,0,0,.1); transition: all 0.4s; width: 100%; border-bottom: 1px solid #eee; }
.contents-wrap.boat.fixed .contents-box.boat { padding: 0px 20px 5px 20px; transition: all 0.4s; margin-bottom: 0; padding-top: 0 !important; }
.contents-wrap.boat.fixed .btn-wrap { padding-bottom: 10px; }
.contents-wrap.boat.fixed .btn-line { padding: 0; }
.contents-wrap.boat.fixed .btn-line span { font-size: 20px; }
.contents-wrap.boat.fixed .btn-box-xsb { padding: 8px 10px; font-size: 13px; }
.contents-wrap.boat.fixed .date-pick input { padding: 12px 0; font-size: 16px; }
.contents-wrap.boat.fixed .cal-line { margin-top: 16px; }
.contents-wrap.boat.fixed .btn-round-white { width: 30px; }
.contents-wrap.boat.fixed .btn-round-white::before { background-size: 30px; background-repeat: no-repeat; width: 30px; height: 30px; }
.contents-wrap.boat.fixed .btn-box-m, .contents-wrap.boat.fixed #multiple .btn-box-m { height: 50px; line-height: 50px; }
.contents-wrap.boat.fixed #multiple .date-pick-wrap, .contents-wrap.boat.fixed #multiple .place-pick-wrap { height: 50px; line-height: 50px; }
.contents-wrap.boat.fixed #multiple .multiple-1 { margin-bottom: 5px; }
#top-reserv .stage { top: -90px; }
#top-reserv > div.contents-box.boat { padding-top: 30px; }

/* reserv_01, 02 하단 고정바 */
.price-bar { padding: 15px 20px; justify-content: space-between; border-bottom: solid 1px #eee; }
.result-btn { padding: 13px 15px; background-color: #f1f1f1; border-radius: 30px; margin-right: 5px; }
.result-btn span { position: relative; display: inline-block; font-weight: 500; color: #222; margin-right: 15px; }
.result-btn .way { font-weight: 600; color: #3D96FF; }
.result-btn span::after { content: ''; position: absolute; width: 1px; height: 10px; background-color: #acacac; top: 4px; right: -10px; }
.result-btn span:last-child { margin-right: 0; }
.result-btn span:last-child:after { display: none; }
.result-btn button { width: 17px; height: 17px; background-color: #fff; border-radius: 8px; }
.price-detail { width: 100%; justify-content: flex-end; overflow: hidden; height: 0; transition: all 0.3s; }
.price-inner { width: 40%; padding: 30px 20px; transition:height ease-out 1s 0s; }
.price-inner > div { justify-content: space-between; width: 100%; margin-bottom: 10px; }
.price-inner > div > span { display: inline-block; font-weight: 500; font-size: 15px; }
.price-inner .inner-title { justify-content: flex-end; }
.price-inner .inner-title span { font-weight: 600; font-size: 16px; }
.detail-btn { height: 100%; width: fit-content; transition: all 0.2s; align-items: center; }
.detail-btn .xi-arrow-down { margin-bottom: -2px; }

/* reserv_02 */
.go-list-title p, .return-list-title p { border-right: solid 1px #ccc; padding-right: 10px; margin-right: 9px; }
.go-list-title p:last-child, .return-list-title p:last-child { border-right: none; padding-right: 0; }
.go-list-title, .return-list-title { justify-content: space-between; cursor: pointer; }
.go-list-title .xi-angle-down, .return-list-title .xi-angle-down { transition: all 0.2s; }
.chg-wrap { position: relative; height: 25px; align-items: flex-start; }
.chg-list { width: fit-content; border: solid 1px #eee; box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.1); border-radius: 10px; position: absolute; left: 48px; top: 28px; overflow: hidden; cursor: pointer; display: none; z-index: 10; background-color: #fff; }
.chg-wrap.active { height: 120px; }
.chg-list li { display: block; padding: 3px 13px; }
.chg-list li:hover { background-color: #eee; }
.chg-slt { cursor: pointer; }
.chg-list.active { display: block; }

/* ticket */
.contents-box.ticket-breakdown { position: relative; }
.contents-box.ticket-breakdown .stage { top: 0; }
.contents-box.ticket-breakdown .txt-wrap { padding: 50px 0 50px 0; }
.ticket-breakdown { gap: 2%; align-items: flex-start; flex-wrap: wrap; }
.window-box.ticket-breakdown { padding: 15px 0 0 0; border: solid 1px #3d96ff; }
.ticket-breakdown-col { flex-basis: 49%; }
.col1-1 { gap: 1%; justify-content: space-evenly; flex-basis: 100%; }
.col1-2 { justify-content: flex-start; font-weight: 500; border-top: solid 1px #eee; padding: 20px; }
.col1-2 p { border-right: solid 1px #ddd; padding-right: 10px; }
.col1-2 p:last-child { border-right: none; }
.input-group.ticket-breakdown { flex-basis: 32.6%; flex: 2; }
.input-group.ticket-breakdown:nth-child(2) { text-align: center; flex: 0.6; }
.go-arrow { background-image: url(../img/longo.png); background-repeat: no-repeat; width: 100%; height: 10px; display: block; background-position: center; margin-top: 10px; opacity: 0.3; }
.input-group.ticket-breakdown:last-child { text-align: right; }
.txt-wrap.ticket-breakdown { padding: 50px 0 35px 0; }
.ticket-breakdown.contents-box .txt-wrap-xs.input { padding: 20px 0; }
.go-list, .return-list { overflow: hidden; height: 0; transition: 0.2s;  }
.go-list.open, .return-list.open { height: fit-content; padding: 5px 0px; }
.input-text.e-mail > span { margin: 0 10px; }
.contents-box.ticket-breakdown .input-group { flex-basis: 18%; }
.contents-box.ticket-breakdown .col1 { flex-basis: 11%; position: relative; }
.contents-box.ticket-breakdown .col2 { flex-basis: 87%; }
.contents-box.ticket-breakdown .col2 .input-group-wrap.info { gap: 2%; }
.contents-box.ticket-breakdown .oversea { display: none; }
.contents-box.ticket-breakdown .oversea.active { display: block; }

/* calendar */
.date-pick-wrap { display:flex; position:relative; }
.date-pick-wrap .date-pick { text-align:right; color:#282828; flex:1; width:100px; }
.date-pick-wrap .date-pick > span { font-size:16px; display:inline-block; position:relative; padding-right:25px; font-weight:600; }
.date-pick span.cal-icon::after { top: -14px; }
.date-pick-wrap .date-pick input { font-size: 18px; font-weight: 500; border: none; text-align: right; width: 100%; padding: 15px 0; }
.date-pick-wrap .btn-start input { text-align: left; }
.date-pick-wrap .btn-end input { text-align: right; }
.date-pick-wrap .date-pick.btn-line { padding: 0; }

/* content box */
.contents-box { max-width: 1500px; min-width: 320px; margin: 0 auto; padding: 0 25px; overflow: hidden; position: relative; }
.contents-box-wide { width: 100%; height: fit-content; background-color: #DFF2FF; position: relative; }
.contents-box-wide.right { width: 100%; height: 100%; background-color: #F5F8FD; position: absolute; left: 50%; border-radius: 100px; }
.bottom-fix-wrap { width: 100%; position: fixed; bottom: 0; box-shadow:0 0.1rem 1rem 0 rgba(0,0,0,0.2); z-index: 30; background-color: #fff; }
.bottom-fix-wrap .contents-box { padding: 0; }
.content-id { width: 360px; margin: 0 auto; min-height: calc(100% - 400px); min-width: 320px; }

/* card slide */
.card-item-list { width: 100%; overflow: hidden; }
.contents-box1 .card-item-list::-webkit-scrollbar { display: none; }
.slide-item { height: fit-content; margin: 10px 0; overflow: hidden; display: inline-block; }
.item-top { height: 170px; background-image: url(../img/evt-1.jpg); background-position: center; background-size: cover; background-repeat: no-repeat; box-shadow: 0 0.1rem 1rem 0 rgba(0,0,0,.1); border-radius: 10px; }
.item-row { padding: 25px 0; }
.item-row span { font-size: 14px; font-weight: 500; line-height: 1.5; color: #444; }
.card-item-list .swiper-button-prev { left: 10px; top: 120px; }
.card-item-list .swiper-button-next { right: 10px; top: 120px; }
.slide-item .item-row .title-mid { margin-bottom: 10px; }

/* 예약페이지 card list */
.room-area-wrap { align-items: flex-start; gap: 2%; }
.room-area { width: 48%; }
.room-area ::-webkit-scrollbar { width: 7px; background-color: #f1f1f1; }
.room-area ::-webkit-scrollbar-thumb { background-color: #ddd; }
.card-list.reserv { display: flex; flex-wrap: wrap; gap: 2%; }
.card-list.reserv .slide-item.reserv { flex-grow: 0; flex-shrink: 0; flex-basis: 24.25%; height: fit-content; min-width: 280px; margin: 0; border-radius: 0; border-bottom: solid 1px #eee; }
.card-list.reserv > div strong { color: #3D96FF; }
.card-list.reserv .item-row { display: flex; flex-direction: column; }
.item-row .row-box { display: flex; align-items: center; }
.item-row.reserv > div { margin-bottom: 10px; }
.item-row.reserv { padding: 15px 25px 65px 25px; }
.row-box.row-box1 { justify-content: space-between; }
.row-box.row-box3 { flex-direction: column; align-items: flex-start; }
.row-box1 .seat-name .title-mid { margin: 0 5px 5px 0; }
.row-box3 .price { font-size: 20px; font-weight: 700; margin-left: 5px; }
.row-box1 .fs13, .row-box3 .fs13 { font-size: 13px; }
.item-row.reserv { position: relative; }
.slide-item.reserv { box-shadow: 0 0.1rem 1rem 0 rgba(0,0,0,0.1); }
.slide-item.reserv .item-top {  background-position: center; }
.item-row.reserv .reserv-btn { position: absolute; right: 20px; bottom: 15px; }
.item-row.reserv .reserv-select { position: absolute; left: 45px; bottom: 15px; padding: 0 20px; }
.item-row.reserv .reserv-select p { text-decoration: underline; line-height: 1.3; position: relative; font-size: 15px; }
.reserv-car::before { content: ''; background-image: url(../img/car.png); position: absolute; width: 20px; height: 20px; left: -20px; bottom: -5px; background-repeat: no-repeat; }

/* reserv_01 객실리스트 horizon */
.room-area-wrap.horizon { gap: 4%; }
.room-area-wrap.horizon .room-area > .flex { justify-content: space-between; }
.room-area-wrap.horizon .room-area > .flex .title-mid { width: 70%; }
.room-area-wrap.horizon .room-area > .flex .date-slide-wrap.reserv01 { width: 170px; }
.room-area-wrap.horizon .swiper-button-prev.reserv01, .room-area-wrap.horizon .swiper-button-next.reserv01, .room-area-wrap.horizon .swiper-button-prev.reserv01-2, .room-area-wrap.horizon .swiper-button-next.reserv01-2 { background-image: none; width: 20px; height: 20px; background-color: transparent; box-shadow: none; font-size: 11px; top: 27px; color: #666; }
.room-area-wrap.horizon .swiper-button-prev.reserv01:after, .room-area-wrap.horizon .swiper-button-next.reserv01:after, .room-area-wrap.horizon .swiper-button-prev.reserv01-2:after, .room-area-wrap.horizon .swiper-button-next.reserv01-2:after { content: ''; }
.date-slide-wrap.reserv01 { height: 30px; padding: 0; margin-bottom: 15px; }
.date-slide-wrap.reserv01 .date-swiper-1, .date-slide-wrap.reserv01 .date-swiper-2 { padding: 0 26px; }
.date-slide-wrap.reserv01 .swiper-slide-active { border: none; background-color: transparent; font-weight: 500; color: #666; font-size: 14px; }
.card-list.horizon { flex-direction: column; }
.card-list.horizon .slide-item { box-shadow: 1px 1px 4px 0 rgba(0,0,0,0.1); background-color: #fff; }
.card-list.horizon .slide-item.room-end { opacity: 0.5; box-shadow: 1px 1px 1px 0 rgba(0,0,0,0.1); }
.card-list.horizon .slide-item.select { background-color: #dbecff; }
.slide-item .delete { display: none; }
.slide-item.select .delete { display: block; }
.card-list.horizon .slide-item:first-child { border-radius: 10px 10px 0 0; }
.card-list.horizon .slide-item:last-child { border-radius: 0 0 10px 10px; }
.card-list.horizon .item-row { height: fit-content; width: 100%; padding: 0; flex-direction: row; justify-content: space-between; padding: 23px; }
.card-list.horizon .item-row>div { margin-bottom: 0; }
.card-list.horizon .reserv-btn { position: unset; }
.card-list.horizon .row-box1 { height: 100%; justify-content: center; width: 100%; }
.card-list.horizon .row-box1 .seat-name { width: 180px; }
.card-list.horizon .row-box1 .seat-name strong { line-height: 1.2 }
.card-list.horizon .row-box1 .car-info { margin-right: 10px; }
.card-list.horizon .row-box1 .car-info strong { color: #222; }
.card-list.horizon .price { width: 105px; }
.card-list.horizon .price strong { color: #222; font-size: 20px; font-weight: 700; }
.card-list.horizon .seat-num { width: 55px; }
.card-list.horizon .seat-num span { font-weight: 600; font-size: 14px; }
.shipment.end, .shipment.impo, .shipment.po { opacity: 0.7; font-size: 15px; }
.card-list.horizon .delete { width: 50px; }
.card-list.horizon .slide-item.car { border-radius: 10px; }
.card-list.horizon .window-box.person { padding: 0 20px; border-top: none; border-radius: 0; overflow: hidden; transition: 0.3s; height: 0; }
.card-list.horizon .window-box.car.active, .card-list.horizon .window-box.person.active { padding: 20px; height: fit-content; }
.card-list.horizon .window-top { align-items: flex-start; }
.card-list.horizon .window-top .room-photo { width: 160px; height: 80px; background-color: #eee; margin-right: 20px; cursor: pointer; }
.card-list.horizon .window-top .room-photo-modal { opacity: 0; position: fixed; width: 100%; height: 100%; top: 0; left: 0; background-color: rgba(29,31,33,0.95); transition: opacity 0.3s; pointer-events: none; z-index: 9999; justify-content: center; align-items: center; cursor: pointer; }
.card-list.horizon .window-top .room-photo-modal img { width: 60%; }
.card-list.horizon .window-top .room-photo-modal span { width: 60%; justify-content: flex-end; margin-bottom: 20px; cursor: pointer; height: fit-content; }
.card-list.horizon .window-top .room-photo-modal i { font-size: 50px; }
.card-list.horizon .window-top .room-photo-modal.visible { opacity: 1; pointer-events: auto; }
.card-list.horizon .window-top .room-photo img { width: 100%; }
.card-list.horizon .window-top .room-txt p { margin-bottom: 7px; color: #666; font-weight: 500; }
.card-list.horizon .window-top .room-txt p:first-child { margin-bottom: 13px; }
.card-list.horizon .window-box.person .number-select-ul { flex-wrap: wrap; padding: 20px 0; }
.card-list.horizon .window-box.person .number-select-ul li { flex-basis: 100%; display: flex; align-items: flex-start; margin-bottom: 7px; justify-content: space-between; }
.card-list.horizon .window-box.person .number-select-ul li:first-child { border-bottom: solid 1px #3d96ff; padding-bottom: 13px; margin-bottom: 10px; }
.card-list.horizon .window-box.person .select-name { font-weight: 600; flex-basis: 200px; position: relative; }
.card-list.horizon .window-box.person .discount { flex-basis: 30%; }
.card-list.horizon .window-box.person .select-num { flex-basis: 80px; }
.contents-wrap.horizon .window-box .txt-wrap-xs.input { padding: 20px 0 30px 0; }
.select-num { display: flex; }
.select-num input { width: 30px; text-align: center; font-size: 16px; font-weight: 700; }
.window-box .txt-wrap-xs { display: flex; justify-content: space-between; align-items: center; }
.window-box .txt-wrap-xs p { margin-left: 20px; }
.contents-wrap.horizon .window-box.input { padding: 0; margin-bottom: 50px; }
.card-list.horizon .window-box.person .btn-box-s, .card-list.horizon .window-box.car .btn-box-s { width: 100%; color: #fff; }
.contents-wrap.horizon .input-group { flex-basis: 32%; }
.mini-note { border: solid 1px #ddd; box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.1); border-radius: 10px; position: absolute; top: 18px; right: 60px; z-index: 1; display: none; }
.card-list.horizon .window-box.person .select-name > .flex > i { cursor: pointer; }
.card-list.horizon .window-box.person .select-name > .flex:hover + .mini-note { display: block; }

.place-pick-wrap.car { text-align: left; flex-wrap: wrap; width: 100%; padding-right: 0; }
.place-pick-wrap.car .input-unit { width: 200px; height: 45px; text-align: left; color: #acacac; font-size: 20px; font-weight: 500; margin-right: 10px; }
.place-pick-wrap.car .input-unit::placeholder { color: #acacac; }
.place-pick-wrap.car .input-unit i { float: right; }
.place-pick-wrap.car.add { margin-left: 30px; }
.checkbox-label span.car { font-size: 16px; }
.input-wrap.car { display: flex; flex-direction: column; }
.input-wrap.car input.input-unit { color: #222; }
.input-wrap.car > div { flex-grow: 1; }
.no-shipment { display: none; }
.directly { margin-top: 20px; }
.directly-i { margin-top: 10px; }
.car .blue-check-box { padding: 20px; }
.car .round-trip-check { justify-content: flex-end; }
.car.btn-wrap { padding-top: 15px; }
.card-list.horizon .window-box.car { background-color: #fff; border-radius: 0 0 10px 10px;  padding: 0 20px; overflow: hidden; transition: 0.3s; height: 0; }
.card-list.horizon .window-box.car .btn-line { padding: 13px 0; }
.card-list.horizon .window-box.car .btn-line span { font-size: 20px; }
.car-bottom { justify-content: space-between; margin-top: 30px; }
.car-bottom .car-sum { font-size: 18px; font-weight: 700; }
/* .car-delete { display: none; } */
.car-delete.active { display: block; }
.contents-wrap.horizon .repstv { background-color: #fff; padding: 20px; border-radius: 10px; border: solid 1px #eee; }
.contents-wrap.horizon input.input-text { border-bottom: none; }
.contents-wrap.horizon .input-group { flex-wrap: wrap; }
.contents-wrap.horizon .input-group .flex-end span { font-size: 17px; }
.contents-wrap.horizon .input-group .flex-end { height: 45px; }
.contents-wrap.horizon .input-group div.input-text { position: relative; }
.contents-wrap.horizon .input-sc { position: absolute; width: 100%; padding: 10px 0; background-color: #fff; z-index: 999; top: 38px; border-top: solid 1px #3d96ff; overflow: hidden; height: 190px; padding-bottom: 50px; }
.contents-wrap.horizon .input-sc li { font-size: 14px; display: flex; justify-content: space-between; margin-bottom: 5px; }
.contents-wrap.horizon .input-sc li:hover { background-color: #eee; }
.contents-wrap.horizon .input-sc li span { font-weight: 400; }
.contents-wrap.horizon .modal.cancel .close { position: absolute; right: 20px; top: 20px; }

/* reserv_03 payment */
.contents-wrap.payment .txt-wrap { padding-top: 50px; }
.contents-wrap.payment .ticket-wrap { justify-content: center; }
.ticket-breakdown.payment { gap: 2%; }
.window-box.payment { margin-bottom: 0; border-radius: 10px; border: solid 1px #eee; }
.ticket-breakdown-col.payment { flex-basis: 49%; min-width: 426px; border-radius: 10px; }
.ticket-breakdown-col.payment .window-box { padding: 0; border: none; border-radius: 0; }
.ticket-breakdown.payment .title-long-wrap { border-radius: 0 0 10px 10px; background-color: #fff; }
.ticket-breakdown-col .title-long-wrap.car { background-color: #f9f9f9; border-radius: 10px; margin-top: 20px; border: solid 1px #eee; }
.payment .col1-2 { border-bottom: solid 1px #eee; }
.txt-wrap-bg.payment { width: 100%; }
.flex-col.payment { align-items: normal; }
.flex-col.payment > div { flex-basis: 100%; }
.out-window.payment { width: 100%; justify-content: space-between; }
.out-window.payment .col1 { flex-basis: auto; padding: 7px 0; }
.out-window.payment .col1 .fare-sum { font-weight: 700; }
.ticket-breakdown.flex-end span { line-height: 1.4; }
.ticket-breakdown.flex-end { width: 100%; justify-content: flex-end; }
.ticket-breakdown.txt-wrap.title-2 { padding: 35px 0 20px 0; }

/* 예약완료시 */
.contents-wrap.account-dep .contents-box, .contents-wrap.card .contents-box { min-height: calc(100vh - 450px); }
.contents-wrap.account-dep .stage, .contents-wrap.card .stage { top: 0; }
.compl-wrap { width: 670px; margin: 0 auto; margin-bottom: 100px; }
.compl-wrap p, .compl-wrap span { line-height: 1.4; }
.compl-wrap .compl-top { font-size: 20px; font-weight: 700; margin-bottom: 40px; }
.card .compl-wrap .compl-top { margin-bottom: 80px; }
.compl-wrap .compl-mid { font-size: 16px; border-bottom: solid 1px #666; padding-bottom: 40px; margin-bottom: 40px; }
.compl-wrap .compl-mid p:nth-child(2) { color: #3d96ff; }
.compl-wrap .compl-bott p { font-size: 16px; }
.compl-wrap .compl-bott p:first-child { color: #3d96ff; font-weight: 700; margin-bottom: 10px; }
.compl-wrap .compl-bott p:last-child > span { line-height: 1.4; border-right: none; }
.compl-wrap .compl-bott p:last-child > span > a { text-decoration: underline; }
.compl-wrap .compl-bott p:last-child > span > span { color: #3d96ff; }

/* reserv_04 login */
.txt-wrap.login { padding-bottom: 5px; }
.user-phone.login-error .input-box-text, .user-pswd.login-error .input-box-text, .user-name.login-error .input-box-text { border: solid 2px #ff5050; }
.content-id .hidden-txt, .hidden-txt { display: none; }
.login-error .hidden-txt { color: #ff5050; font-weight: 600; display: block; }

/* reserv_05 */
.myreserv { min-height: calc(100% - 350px); }
.reserv-list { border-top: solid 2px #666; }
.reserv-list .flex-list { padding: 20px 0; }
.reserv-list .ticket-info span { border-right: solid 1px #ddd; padding-right: 10px; margin-right: 10px; }
.reserv-list .ticket-info span:last-child { padding-right: 0; margin-right: 0; border-right: none; }
.reserv-list .flex-list.finish { opacity: 0.6; }
.reserv-list .col4 { justify-content: flex-end; }

/* reserv_06 */
.col1 .details { font-size: 14px; font-weight: 700; color: #333; }
.reserv-detail .pass-detail { overflow: hidden; display: none; }
.reserv-detail .pass-detail .col1 { padding: 7px 0; }
.reserv-detail .pass-detail .col1:first-child { margin-top: 8px; }
.reserv-detail .pass-detail .col1 span { border-right: solid 1px #ddd; padding-right: 10px; margin-right: 10px; }
.reserv-detail .pass-detail .col1 span:first-child { font-weight: 600; }
.reserv-detail .pass-detail .col1 span:last-child { border-right: none; padding-right: 0; margin-right: 0; }
.reserv-detail .pass-detail-title { width: 100%; justify-content: space-between; cursor: pointer; }
.reserv-detail .pass-detail-title .xi-angle-down { transition: all 0.2s; }
.reserv-detail .ticket-breakdown.wrap { min-height: 675px; }
.reserv-detail .reserv-list { border-top: none; }
.reserv-detail .ticket-breakdown.history .txt-wrap-bg { cursor: pointer; margin-top: 20px; border-bottom: solid 1px #ddd; }
.ticket-breakdown.history .xi-angle-down { transition: all 0.2s; }
.ticket-breakdown.history .reserv-list { overflow: hidden; display: none; }
.rotation { transform: rotate(180deg); }
.ticket-breakdown.history .flex-list { padding: 20px 0; }
.ticket-breakdown.history .col1 { flex-basis: 145px; }
.ticket-breakdown.history .col2 { flex-basis: 80%; }
.contents-wrap.reserv-detail .btn-wrap .btn-box-m { line-height: 55px; }
.modal.change, .modal.cancel { width: 600px; background-color: #fff; position: absolute; left: 50%;  border-radius: 20px; padding: 20px; top: 50%; transform: translate(-50%, -50%); overflow: hidden; }
.modal-bg { width: 100%; height: 100%; background-color: rgba(0,0,0,0.7); position: fixed; top: 0; left: 0; z-index: 99; }
.modal-bg .input-group { gap: 1%; }
.modal-bg .input-group .input-text { border: none; }
.modal-bg .input-group .input-text > input { height: 40px; border-bottom: solid 1px #666; font-size: 16px; }
.modal-bg .input-group .input-text > span { font-size: 13px; }

/* reserv_07 fee */
.table-col.fee table td { text-align: left; padding: 50px 0; font-size: 15px; line-height: 1.5; }

/* reserv_08 board */
.search-box { height: 45px; justify-content: flex-end; }
.search-box .selt-box { position: relative; }
.search-box .selt-box .xi-angle-down { position: absolute; right: 13px; top: 50%; transform: translateY(-50%); }
.search-box .search-slt { width: 140px; border-radius: 7px; height: 100%; padding: 0 10px; font-size: 16px; font-weight: 500; -webkit-appearance:none; -moz-appearance:none; appearance: none; border: solid 1px #333; }
.search-box .input-box-text { width: 230px; height: 100%; position: relative; border-radius: 7px; border: solid 1px #333; background-color: #fff; }
.search-box .xi-search { bottom: 13px; right: 13px; }
.table-col.change-board .change-board-title { text-align: left; font-weight: 500; }
.board-title .reply-state { font-size: 14px; margin-left: 7px; line-height: 1.4; }
.board-title .reply-state.comp { color: #3d96ff; }
.board-title .reply-state.stan { color: #acacac; }
.writer-info { margin-bottom: 30px; }
.writer-info p:first-child { margin-bottom: 5px; }
.writer-info p > strong { margin-right: 10px; }
.reply-box .reply-title { font-size: 16px; justify-content: space-between; padding: 25px 0; }
.reply-box .reply-title .reply-date-box { font-size: 14px; color: #acacac; }
.reply-box .reply-txt span { line-height: 1.4; font-size: 15px; font-weight: 500; }
.contents-wrap.chg .preview span { line-height: 1; }
.contents-wrap.chg .change-board-unit div { margin-top: 5px; }
.contents-wrap.chg .btn-wrap { padding: 0; }
.contents-wrap.chg .btn-wrap .btn-box-m { margin-right: 0; width: 150px; }
.contents-wrap.chg .board-title { font-size: 14px; font-weight: 500; align-items: baseline; }
.contents-wrap.chg .notice-details { border-bottom: none; padding-top: 20px; }
.contents-wrap.chg .board-title .aptn-txt { padding: 6px; border-radius: 7px; background-color: #DFFFF7; }
.contents-wrap.chg .board-title .aptn-txt { margin-bottom: 5px; }
.page-first, .page-last { padding-top: 3px; }

.contents-wrap.writing .board-title .board-title-txt { font-weight: 500; }
.contents-wrap.writing .board-title .input-group { flex-basis: fit-content; }
.contents-wrap.writing .board-title .input-text > span { font-size: 14px; font-weight: 400; }
.contents-wrap.writing .board-title .input-text > .input-text { border: solid 1px #666; background-color: #fff; }
.contents-wrap.writing .board-title.person .input-group { flex-basis: fit-content; margin-right: 10px; }
.contents-wrap.writing .board-title.person .input-group .input-text > input { width: 37px; border: solid 1px #666; }
.contents-wrap.writing .board-title .blue-check-box .blue-check-label { margin-right: 15px; }
.contents-wrap.writing .board-title .blue-check-box .blue-check-label::before { margin-right: 3px; }
.contents-wrap.writing .board-title select { border: solid 1px #666; margin-right: 10px; width: 100px; font-weight: 400; width: 130px; }
.contents-wrap.writing .board-title .btn-line { padding: 0; border-bottom: none; margin: 0 10px 0 0; }
.contents-wrap.writing .board-title .btn-line .datetimepicker { width: 130px; border: solid 1px #666; background-color: #fff; }
.contents-wrap.writing textarea,
.contents-wrap.reserv-detail textarea { height: 100px; border: solid 1px #666; border-radius: 7px; padding: 10px; }
.contents-wrap.writing .btn-wrap .btn-box-m { margin-right: 5px; }

/* reserv_09 글쓰기 */
.writing .notice-board>li { width: 100%; border-bottom: solid 1px #ddd; padding: 15px 0; }
.writing .notice-board > li > div { width: 100%; margin-right: 13px; }
.writing .board.notice-board .board-title { padding: 0; justify-content: flex-start; width: 100%; }
.writing .board-title-txt { font-size: 15px; width: 120px }
.writing .input-text input { font-size: 16px; border-bottom: none; height: 40px; width: 200px; padding-left: 5px; background-color: #f1f1f1; border-radius: 5px; }
.writing div.input-text { height: fit-content; border-bottom: none; }
.writing .input-group { margin: 0; }
.writing .input-text select { width: 205px; font-size: 16px; height: 34px; font-weight: 500; border-radius: 5px; height: 40px; }
.input-text .hidden-txt { display: none; }
.input-text div { position: relative; }
.input-text span { font-size: 14px; font-weight: 400; }
.input-text.error .input-text, .input-text.error select { border: 2px solid #ff6161; }
.input-text.error .hidden-txt { font-size: 13px; margin-top: 5px; color: #ff6161; display: block; }
.writing .notice-board .board-editor { padding: 0; }

/* domestic_01 */
.slide-menu-wrap.facility { position: unset; justify-content: left; margin-bottom: 40px; }
.slide-menu-wrap.facility li a { font-size: 15px; padding: 15px 50px; }
#fac2 { display: none; }

.facility-wrap { display: flex; flex-wrap: wrap; gap: 2%; }
.facility-slide { width: 50%; flex-grow: 1; }
.facility.explain-box { width: 28%; height: fit-content; min-width: 267px; flex-grow: 1;  }
.facility.explain-box span { line-height: 1.4; }
.swiper.mySwiper2.facility { border-radius: 15px; height: 330px; width: 100%; }
.swiper.mySwiper.facility { height: 140px; padding: 10px 0; box-sizing: border-box; }
.mySwiper2.facility .swiper-slide>img, .mySwiper.facility .swiper-slide>img { border-radius: 15px; display: block; width: 100%; height: 100%; object-fit: cover; }
.swiper.facility .swiper-button-next.facility { right: 10px; }
.swiper.facility .swiper-button-prev.facility { left: 10px; }

.contents-wrap.domstc01 .card-item-list { overflow: visible; }
.card-item-list.facility { display: none; }
.card-item-list.facility.active { display: block; }
.card-item-list.facility .slide-item.reserv.facility { border: none; height: 200px; flex-direction: row; display: flex; margin-bottom: 15px; flex-basis: 49%; border-radius: 13px; }
.swiper.room .swiper-slide img { height: 100%; }
.slide-item.facility .item-top { height: 100%; width: 250px; background-image: none; box-shadow: none; }
.slide-item.facility .item-top .swiper-slide { background-size: cover; background-position: center; }
.slide-item.facility .item-row { padding: 20px; width: 100%; position: relative; }
.slide-item.facility .row-box:last-child { width: fit-content; position: absolute; bottom: 16px; right: 20px; }
.slide-item.facility .row-box span.title { font-weight: 700; }
.slide-item.facility .row-box p { line-height: 1.5; }
.slide-item.facility .item-row span { font-weight: 400; }
.slide-item.facility .row-box .fee span:last-child { font-size: 20px; font-weight: 500; }
.out-window.facility .col1 { flex-basis: 75px; padding: 3px 0; }
.out-window.facility .col2 { flex-basis: 65%; font-size: 15px; }
.swiper-pagination.room { bottom: 12px; }
.swiper-pagination.room .swiper-pagination-bullet { width: 9px; height: 9px; opacity: 0.6; }
.swiper-pagination.room .swiper-pagination-bullet-active { width: var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,23px)); border-radius: 10px; background-color: #222; opacity: 0.85; }

.ship-list.domstc01 .ship-unit { border: solid 1px #666; box-shadow: none; justify-content: space-between; padding: 0 15px; height: 60px; }
.ship-list.domstc01 .ship-unit span, .ship-list.domstc01 .ship-unit p { font-size: 14px; }
.ship-list.domstc01 .ship-unit .ship-time { padding-left: 0; flex-basis: 40%; }
.ship-list.domstc01 .ship-unit .ship-name { flex-basis: fit-content; }
.ship-list.domstc01 .ship-unit .ship-name i { padding-bottom: 2px; }

#fac2 .txt-wrap-xs { padding: 10px 0; }
.swiper.facl .swiper-slide, .swiper.facl-2 .swiper-slide { height: 170px; background-position: center; background-size: cover; border-radius: 10px; position: relative; }
.swiper.facl .swiper-slide span, .swiper.facl-2 .swiper-slide span { position: absolute; bottom: -28px; left: 50%; transform: translateX(-50%); width: 100%; text-align: center; }
.swiper.facl .swiper-wrapper, .swiper.facl-2 .swiper-wrapper { height: 230px; }
.contents-wrap.domstc01 .txt-wrap-xs { padding-bottom: 3px; }

/* domestic_04 */
.normal-wrap { border-top: 2px solid #666; }
.normal-content.location { gap: 2%; align-items: flex-start; flex-wrap: wrap; border-top: none; }
.map { border-radius: 15px; flex-basis: 49%; flex-grow: 1; min-width: 470px; overflow: hidden; }
.map-text { flex-basis: 49%; font-size: 15px; flex-grow: 1; min-width: 470px; }
.map-text p, .map-text span, .map-text strong { line-height: 1.7; }
.map-text>.flex { width: 100%; }
.map-text>.flex>.col1 { flex-basis: 20%; }

/* car 01 page */
.line-tab.car li { padding: 0; min-width: 192px; }
.line-tab.car li a { padding: 23px 0; display: block; }
.line-tab.car li a p { justify-content: center; }
.matched1 { background-color: #EEF071; line-height: 1.5; }
.matched { line-height: 1.5; }

/* client_01 */
.slide-menu-wrap.faq { position: unset; height: 50px; justify-content: left; }
.slide-menu-wrap.faq li a.active { background-color: #3D96FF; border: none; }
.slide-menu-wrap.faq li a { padding: 15px 40px; }

/* client_02 */
.board.notice-board div { padding: 0; }
.board.notice-board .board-title { padding: 25px 0; }
.notice-details { padding: 50px 0; border-bottom: solid 1px #ddd; font-size: 15px; }
.notice-details > * { line-height: 1.5; }

/* client_03 */
.card-list.event { gap: 2%; flex-wrap: wrap; }
.slide-item.event { flex-basis: calc(96% / 3); box-shadow: none; border-radius: 0; }
.slide-item.event .item-top { border-radius: 15px; background-image: none; overflow: hidden; background-size: cover; background-position: center; height: 200px; }
.slide-item.event .row-box2 > div > strong { padding: 0; font-size: 22px; font-weight: 700; }
.line-tab.event li { flex-basis: 50%; }
.slide-item.event .event-title .title-mid { margin: 0; }
.item-row.event { margin-bottom: 0; padding: 20px 0; }

/* client_04 */
.contents-wrap.client04 .contents-box { min-height: calc(100vh - 300px); }
.contents-wrap.client04 .tt-box { width: 97%; }
.contents-wrap.client04 .board-title { align-items: flex-start; }
.contents-wrap.client04 .board-title .input-group { flex-basis: 49%; }
.contents-wrap.client04 .tt-box > .input-text > input.input-text { width: 100%; }
.contents-wrap.client04 .input-group.tt { flex-basis: 100%; }
.contents-wrap.client04 .input-text.tt { display: flex; align-items: center; }
.contents-wrap.client04 .input-text.tt > span { flex-basis: 34px; }
.modal.change.passwd { width: 500px; }

/* domestic_02 */
.contents-wrap.domstc02 .txt-wrap-xs { cursor: pointer; }
.contents-wrap.domstc02 #fac2 .txt-wrap-xs { padding: 18px 0; }
.contents-wrap.domstc02 #fac2 { margin-top: -18px; }
.contents-wrap.domstc02 .txt-wrap-xs { padding-bottom: 10px; }

/* domestic_05 */
.line-tab.pet li { flex-basis: 25%; }
.line-tab.pet li span { line-height: 1.5; }
.card-list.reserv .slide-item.pet { border: none; }
.pet.mg-bt-25 p { line-height: 1.4; }
.contents-wrap.domstc05 .card-item-list.facility.pet-ex { display: block; }
.contents-wrap.domstc05 .pet-box, .bdg-box { border-radius: 10px; border: solid 1px #ddd; padding: 20px 20px 0 20px; flex-wrap: wrap; width: auto; }
.bdg-box { display: none; margin-bottom: 20px; }
.bdg-box.active { display: block; }
.contents-wrap.domstc05 .pet-box > div { flex-basis: 25%; min-width: 316px; margin-bottom: 20px; }
.bdg-box > div { flex-basis: 100%; margin-bottom: 40px; }
.contents-wrap.domstc05 .pet-box > div:first-child, .bdg-box > div:first-child { padding-left: 0; }
.contents-wrap.domstc05 .pet-icon { width: 80px; height: 80px; background-size: 80px; margin-right: 15px; background-repeat: no-repeat; flex-shrink: 0; }
.bdg-icon { width: 100px; height: 100px; margin-right: 15px; border-radius: 50px; }
.contents-wrap.domstc05 .pet-box > div p { width: 65%; }
.contents-wrap.domstc05 .pet-box > div p span { display: block; }
.contents-wrap.domstc05 .pet-txt { align-items: flex-start; }

/* japan_03 */
.contents-wrap.japan03 .txt-wrap-xs { padding: 10px 0; }
.contents-wrap.japan03 .txt-wrap-xs p { margin-bottom: 0; }
.contents-wrap.japan03 .txt-wrap-xs p span, .contents-wrap.japan03 .pet-txt span { line-height: 1.7; }
.contents-wrap.japan03 .txt-wrap-xs p i, .contents-wrap.japan03 .pet-txt i { line-height: 1.3; }

/* cruise_01 */
.contents-wrap.crs01 .contents-box .page-first, .contents-wrap.crs01 .contents-box .page-last { padding-top: 5px; }

/* cruise_02 */
.contents-wrap.cruise .explain-wrap { width: 38%; }
.contents-wrap.cruise .explain-box { border-bottom: dashed 1px #ddd; padding-bottom: 20px; width: 100%; margin-bottom: 20px; }
.contents-wrap.cruise .select-per { justify-content: space-between; margin-bottom: 5px; }
.contents-wrap.cruise .select-per .col1 { flex-basis: 100px; }
.contents-wrap.cruise .crs-fare { justify-content: space-between; }
.contents-wrap.cruise .crs-fare .txt-wrap-xs { width: fit-content; padding: 0; }
.contents-wrap.cruise .btn-box-m { width: 100%; }
.contents-wrap.cruise .explain-box:last-child { border-bottom: none; }
.contents-wrap.cruise .explain-box .xi-help-o { cursor: pointer; }
.contents-wrap.cruise .slide-menu-wrap.facility { margin-top: 40px; margin-bottom: 0; }
.contents-wrap.cruise .swiper.mySwiper2.facility { height: 380px; }
.contents-wrap.cruise .out-window.facility { border-bottom: 1px dashed #ddd; }
.contents-wrap.cruise .explain-box .out-window.facility { border-bottom: none; }
.contents-wrap.cruise .out-window.facility .txt-wrap-xs { padding: 30px 0 15px; }
.contents-wrap.cruise .select-per .col1 > span { cursor: pointer; }
.contents-wrap.cruise .select-per .col1 > span:hover + .mini-note { display: block; }
.contents-wrap.cruise .select-per .col1 { position: relative; }
.contents-wrap.cruise .mini-note { width: 150px; left: 20px; top: 25px; }

/* cruise_03 */
.contents-wrap.crs03 .window-box.ticket-breakdown { border: solid 1px #0CD1BA; }
.contents-wrap.crs03 .out-window.input .col1 { padding: 5px 0; }
.contents-wrap.crs03 .window-box.input.info { padding: 20px; }
.contents-wrap.crs03 .window-box.info .input-group { flex-basis: 23%; }
.contents-wrap.crs03 .col2 .input-group-wrap.info { gap: 2%; }

/* cruise_04 */
.contents-wrap.crs04 .notice { border: solid 1px #0CD1BA; font-size: 14px; }

/* cruise_05 */
.contents-wrap.crs05 .compl-mid p:nth-child(2) { color: #0CD1BA; }
.contents-wrap.crs05 .compl-bott p:first-child, .contents-wrap.crs06 .compl-bott p:first-child { color: #0CD1BA; }
.contents-wrap.crs05 .compl-bott p span span, .contents-wrap.crs06 .compl-bott p span span { color: #0CD1BA; }

/* cruise_09 */
.contents-wrap.crs09 .ticket-breakdown.wrap { min-height: unset; }

/* terms */
.company-img { width: 100%; height: 300px; background-repeat: no-repeat; margin-bottom: 30px; background-position: 0 center; }
.company-sp div { width: 150px; height: 150px; border-radius: 80px; text-align: center; line-height: 150px; display: inline-block; margin-right: 3px; background-color: #f5f5f5; font-weight: 600; }
.company-sp .company-bd { width: 30px; height: 1px; background-color: #adadad; border: none; margin-bottom: 4px; }

/* footer */
footer { height: fit-content; }
.footer-top { padding: 0 20px 0 20px; background-color: #f9f9f9; z-index: 20; bottom: 0; width: 100%; border-top: 1px solid #eee; transition: all 0.2s; height: 100%; }
.footer-top-box { display: flex; max-width: 1500px; min-width: 1024px; height: fit-content; margin: 0 auto; align-items: center; padding: 14px 20px; justify-content: space-between }
.footer-top-list .xi-angle-down { transform: rotate(180deg); }
.footer-top-list a { font-weight:500; padding: 15px 10px; position:relative; font-size: 15px; color: #222; }
.footer-top-list a:nth-child(1) { padding-left:0; }
.footer-top-list a:last-child { padding-right:0; }
.footer-top-list a::before { content:''; position:absolute; top:17px; left:0; width:1px; height:12px; background-color:#ddd; }
.footer-top-list a.before-none::before { content:none; }
.footer-top-box { margin:0 auto; }
/* .footer-lower { overflow: hidden; transition: all 0.2s; } */
.footer-lower-box { max-width: 1500px; min-width: 1024px; margin: 0 auto; padding: 25px 20px 100px 20px; display: flex; font-weight:500; justify-content: space-between; border-top: solid 1px #eee; }
.footer-lower-lfbox { width: 80%; margin-left: -15px; }
.footer-lower-lfbox span { display: inline-block; line-height: 1.7; position: relative; padding: 0 9px 0 12px; }
.footer-lower-lfbox span::before { content: ''; position: absolute; top: 5px; left: 0; width: 1px; height: 12px; background-color: #ddd; }
.footer-lower-lfbox span.before-none::before { content: none; }
.footer-lower-rgbox { width: 285px; font-size: 14px; }
.footer-lower-rgbox span { line-height: 1.7; }
.account span:first-child { border-right: solid 1px #ddd; padding-right: 10px; line-height: 1; }
.footer-top .xi-angle-down { transition: all 0.2s; transform: rotate(180deg); }
.account-wrap { width: 285px; }
.mobile-foot { display: none; }

/* car_01 */
.contents-wrap.fare .search-box { width: 225px; position: relative; float: right; }
.contents-wrap.fare .search-box a { position: absolute; right: 5px; top: 17px; }