html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
progress,
time,
mark,
audio,
video,
button,
input,
optgroup,
select,
textarea {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
    box-sizing: border-box
}
a {
    color: inherit;
    text-decoration: none
}
button {
    background-color: transparent;
    cursor: pointer
}
em,
address {
    font-style: normal
}
img,
button {
    -ms-user-select: none;
    -moz-user-select: -moz-none;
    -webkit-user-select: none;
    user-select: none;
    line-height: 1
}
label {
    cursor: pointer
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block
}
body {
    line-height: 1.4
}
ol,
ul {
    list-style: none
}
blockquote,
q {
    quotes: none
}
blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
    content: none
}
table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    table-layout: fixed
}
caption {
    display: none
}
img {
    border-style: none
}
button,
input {
    overflow: visible
}
button,
[type=button],
[type=reset],
[type=submit] {
    -webkit-appearance: button
}
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
    border-style: none;
    padding: 0
}
textarea {
    overflow: auto
}
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
}
[type=checkbox],
[type=radio] {
    box-sizing: border-box;
    padding: 0
}
.clearfix:after {
    content: "";
    display: block;
    clear: both;
    visibility: hidden
}
.invisible {
    overflow: hidden;
    visibility: hidden;
    position: absolute;
    width: 0;
    height: 0;
    font-size: 0;
    line-height: 0
}
@font-face {
    font-family: "Noto Sans KR";
    font-style: normal;
    font-weight: 300;
    src: url("../fonts/NotoSansKR-Light.eot");
    src: local("Noto Sans KR Light"), url("../fonts/NotoSansKR-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansKR-Light.woff2") format("woff2"), url("../fonts/NotoSansKR-Light.woff") format("woff")
}
@font-face {
    font-family: "Noto Sans KR";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/NotoSansKR-Regular.eot");
    src: local("Noto Sans KR Regular"), url("../fonts/NotoSansKR-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansKR-Regular.woff2") format("woff2"), url("../fonts/NotoSansKR-Regular.woff") format("woff")
}
@font-face {
    font-family: "Noto Sans KR";
    font-style: normal;
    font-weight: 500;
    src: url("../fonts/NotoSansKR-Medium.eot");
    src: local("Noto Sans KR Medium"), url("../fonts/NotoSansKR-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansKR-Medium.woff2") format("woff2"), url("../fonts/NotoSansKR-Medium.woff") format("woff")
}
@font-face {
    font-family: "Noto Sans KR";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/NotoSansKR-Bold.eot");
    src: local("Noto Sans KR Bold"), url("../fonts/NotoSansKR-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansKR-Bold.woff2") format("woff2"), url("../fonts/NotoSansKR-Bold.woff") format("woff")
}
html,
body {
    height: 100%
}
body,
button,
input,
select,
textarea {
    color: #797979;
    font-size: 14px;
    font-weight: 400;
    font-family: "Noto Sans KR", sans-serif;
    letter-spacing: -0.5px
}
select {
    height: 50px;
    padding: 0 40px 0 20px;
    border: 1px solid #c8c8c8;
    background: #fff url("../images/common/icon_select03.png") no-repeat right 20px center;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
select::-ms-expand {
    display: none
}
.select-type2 {
    height: 40px !important
}
input[type=text],
input[type=password],
input[type=number],
input[type=email] {
    height: 50px;
    padding: 0 20px;
    border: 1px solid #c8c8c8;
    background-color: #fff;
    color: #797979;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
input[type=text]::-ms-clear,
input[type=password]::-ms-clear,
input[type=number]::-ms-clear,
input[type=email]::-ms-clear {
    display: none
}
input[type=text]::-moz-placeholder,
input[type=password]::-moz-placeholder,
input[type=number]::-moz-placeholder,
input[type=email]::-moz-placeholder {
    color: #bfbfbf
}
input[type=text]:-ms-input-placeholder,
input[type=password]:-ms-input-placeholder,
input[type=number]:-ms-input-placeholder,
input[type=email]:-ms-input-placeholder {
    color: #bfbfbf
}
input[type=text]::placeholder,
input[type=password]::placeholder,
input[type=number]::placeholder,
input[type=email]::placeholder {
    color: #bfbfbf
}
input[type=text][readonly],
input[type=text]:disabled,
input[type=password][readonly],
input[type=password]:disabled,
input[type=number][readonly],
input[type=number]:disabled,
input[type=email][readonly],
input[type=email]:disabled {
    color: #797979;
    background-color: #f5f5f5
}
input[type=text]:-moz-read-only,
input[type=password]:-moz-read-only,
input[type=number]:-moz-read-only,
input[type=email]:-moz-read-only {
    color: #797979;
    background-color: #f5f5f5
}
input[type=text]:read-only,
input[type=password]:read-only,
input[type=number]:read-only,
input[type=email]:read-only {
    color: #797979;
    background-color: #f5f5f5
}
.input-file {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 200px;
    font-size: 13px
}
.input-file input[type=file] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}
.input-file .placeholder {
    display: block;
    flex: 1;
    color: #999;
    line-height: 30px;
    text-decoration: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.input-file .placeholder+.file-name {
    display: none !important
}
.input-file .file-name {
    display: block
}
.input-file .btn-primary {
    width: 90px;
    height: 30px;
    margin-left: 10px;
    font-size: 12px
}
.file-name {
    flex: 1;
    background-color: #fff;
    color: #17af98;
    line-height: 30px;
    text-decoration: underline;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.datepicker {
    position: relative
}
.datepicker input {
    width: 100%;
    height: 100%;
    background: #fff url("../images/common/icon_calendar02.png") no-repeat right 20px center !important
}
.contact-info {
    display: flex
}
.contact-info input {
    flex: none !important;
    width: 80px !important
}
.contact-info input+input {
    flex: 1 !important;
    margin-left: 10px
}
textarea {
    padding: 10px 20px;
    border: 1px solid #c8c8c8;
    color: #797979;
    line-height: 24px;
    vertical-align: top
}
textarea::-moz-placeholder {
    color: #bfbfbf
}
textarea:-ms-input-placeholder {
    color: #bfbfbf
}
textarea::placeholder {
    color: #bfbfbf
}
input[type=radio].custom-radio {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}
input[type=radio].custom-radio+label {
    position: relative;
    display: inline-block;
    color: #1f1b1c;
    font-size: 13px;
    line-height: 20px
}
input[type=radio].custom-radio+label:before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    border: 1px solid #ddd;
    background-color: #fff;
    border-radius: 100%;
    vertical-align: top;
    box-sizing: border-box
}
input[type=radio].custom-radio:checked+label:before {
    border-color: #1f1b1c
}
input[type=radio].custom-radio:checked+label:after {
    content: "";
    position: absolute;
    top: 5px;
    left: 5px;
    width: 10px;
    height: 10px;
    background-color: #1f1b1c;
    border-radius: 100%
}
input[type=radio].custom-radio:disabled+label {
    cursor: default
}
input[type=radio].custom-radio:disabled+label:before {
    border-color: transparent;
    background-color: #eee
}
input[type=radio].custom-radio.no-label+label:before {
    margin: 0
}
input[type=radio].custom-radio.type-primary+label {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 80px;
    height: 40px;
    min-height: 40px;
    padding: 0 18px;
    border: 1px solid #ddd;
    background-color: #fff
}
input[type=radio].custom-radio.type-primary+label:before,
input[type=radio].custom-radio.type-primary+label:after {
    display: none
}
input[type=radio].custom-radio.type-primary:checked+label {
    border: 1px solid #004d45;
    background-color: #004d45;
    color: #fff
}
input[type=radio].custom-radio.type-dark+label {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 70px;
    height: 40px;
    min-height: 40px;
    padding: 0 18px;
    border: 1px solid #1f1b1c;
    background-color: #fff
}
input[type=radio].custom-radio.type-dark+label:before,
input[type=radio].custom-radio.type-dark+label:after {
    display: none
}
input[type=radio].custom-radio.type-dark:checked+label {
    border: 1px solid #1f1b1c;
    background-color: #1f1b1c;
    color: #fff
}
input[type=radio].custom-radio.type-outline+label {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 198px;
    height: 50px;
    min-height: 50px;
    padding: 0 18px;
    border: 1px solid #e0e0e0;
    background-color: #fff
}
input[type=radio].custom-radio.type-outline+label:before,
input[type=radio].custom-radio.type-outline+label:after {
    display: none
}
input[type=radio].custom-radio.type-outline:checked+label {
    border: 2px solid #17af98;
    background-color: #fff;
    color: #17af98;
    font-weight: 500
}
input[type=checkbox].custom-check {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}
input[type=checkbox].custom-check+label {
    position: relative;
    display: inline-block;
    color: #1f1b1c;
    font-size: 13px;
    line-height: 20px
}
input[type=checkbox].custom-check+label:before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    border: 1px solid #c8c8c8;
    background-color: #fff;
    border-radius: 0;
    vertical-align: top;
    box-sizing: border-box
}
input[type=checkbox].custom-check:checked+label:before {
    border-color: #1f1b1c;
    background-color: #1f1b1c
}
input[type=checkbox].custom-check:checked+label:after {
    content: "";
    position: absolute;
    top: 7px;
    left: 6px;
    width: 9px;
    height: 6px;
    background-image: url("../images/common/icon_checkbox.png")
}
input[type=checkbox].custom-check:disabled+label {
    cursor: default
}
input[type=checkbox].custom-check:disabled+label:before {
    border-color: transparent;
    background-color: #eee
}
input[type=checkbox].custom-check.no-label+label:before {
    margin: 0
}
.custom-radio-group {
    display: inline-flex;
    vertical-align: middle
}
.custom-radio-group label {
    margin-right: 25px
}
.custom-radio-group .type-dark+label {
    margin-right: -1px
}
.btn-primary {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #004d45;
    background: #004d45;
    color: #fff;
    font-size: 13px
}
.btn-primary.disabled,
.btn-primary:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-primary-outline {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #004d45;
    background: #fff;
    color: #004d45;
    font-size: 13px
}
.btn-primary-outline.disabled,
.btn-primary-outline:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-secondary {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #17af98;
    background: #17af98;
    color: #fff;
    font-size: 13px
}
.btn-secondary.disabled,
.btn-secondary:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-secondary-outline {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #17af98;
    background: #fff;
    color: #17af98;
    font-size: 13px
}
.btn-secondary-outline.disabled,
.btn-secondary-outline:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-dark {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #1f1b1c;
    background: #1f1b1c;
    color: #fff;
    font-size: 13px
}
.btn-dark.disabled,
.btn-dark:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-dark-outline {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #1f1b1c;
    background: #fff;
    color: #1f1b1c;
    font-size: 13px
}
.btn-dark-outline.disabled,
.btn-dark-outline:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-default {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #797979;
    background: #797979;
    color: #fff;
    font-size: 13px
}
.btn-default.disabled,
.btn-default:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-default-outline {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #797979;
    background: #fff;
    color: #797979;
    font-size: 13px
}
.btn-default-outline.disabled,
.btn-default-outline:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-light {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #999;
    background: #999;
    color: #fff;
    font-size: 13px
}
.btn-light.disabled,
.btn-light:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-light-outline {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #999;
    background: #fff;
    color: #999;
    font-size: 13px
}
.btn-light-outline.disabled,
.btn-light-outline:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-info {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #bfbfbf;
    background: #bfbfbf;
    color: #fff;
    font-size: 13px
}
.btn-info.disabled,
.btn-info:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-info-outline {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 40px;
    padding: 0 20px;
    border: 1px solid #bfbfbf;
    background: #fff;
    color: #bfbfbf;
    font-size: 13px
}
.btn-info-outline.disabled,
.btn-info-outline:disabled {
    border-color: #ddd;
    background: #ddd;
    color: #fff;
    cursor: default
}
.btn-light {
    border-color: #ddd;
    background-color: #ddd
}
.btn-dark-outline {
    border-color: #666
}
.btn-default-outline {
    border-color: #c8c8c8;
    color: #1f1b1c
}
.btn-m {
    height: 30px
}
.btn-l {
    height: 50px;
    font-size: 16px
}
.btn-xl {
    height: 60px;
    font-size: 16px
}
.btn-block {
    width: 100%
}
.btn-w-110 {
    width: 110px
}
.btn-w-130 {
    width: 130px
}
.btn-w-140 {
    width: 140px
}
.btn-w-150 {
    width: 150px
}
.btn-w-180 {
    width: 180px
}
.btn-w-200 {
    width: 200px
}
.btn-w-220 {
    width: 220px
}
.btn-w-290 {
    width: 290px
}
.btn-icon-reset:before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 13px;
    margin-right: 30px;
    background-image: url("../images/common/icon_reset.png");
    background-repeat: no-repeat;
    background-position: center center
}
.btn-icon-search:before {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    margin-right: 30px;
    background-image: url("../images/common/icon_search.png");
    background-repeat: no-repeat;
    background-position: center center
}
.btn-icon-excel:before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 18px;
    background-image: url("../images/common/icon_excel.png");
    background-repeat: no-repeat;
    background-position: center center
}
.btn-icon-more {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    border: 1px solid #e0e0e0;
    background-color: #fff;
    font-size: 0 !important
}
.btn-icon-more:before {
    content: "";
    display: inline-block;
    width: 9px;
    height: 9px;
    margin-right: 0;
    background-image: url("../images/common/icon_select03.png");
    background-repeat: no-repeat;
    background-position: center center;
    transition: all 0.2s cubic-bezier(0, 0, 0, 1)
}
.btn-guide {
    display: inline-block;
    color: #1f1b1c
}
.btn-guide:after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-left: 5px;
    vertical-align: -4px;
    background-image: url("../images/common/icon_qm.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
.btn-column {
    flex-direction: column;
    height: 80px;
    padding-top: 15px;
    padding-bottom: 15px;
    line-height: 24px
}
.btn-txt-desc {
    display: block;
    width: 100%;
    color: #17af98;
    font-size: 13px
}
.label-pill01,
.label-pill02,
.label-pill03,
.label-pill04,
.label-outline01,
.label-outline02,
.label-outline03 {
    position: relative;
    display: inline-block;
    height: 15px;
    padding: 0 7px;
    border-radius: 3px;
    color: #fff;
    font-size: 12px;
    text-align: center;
    line-height: 15px;
    vertical-align: middle
}
.label-pill05,
.label-pill06,
.label-pill07,
.label-pill08 {
    position: relative;
    display: inline-block;
    height: 15px;
    padding: 0 7px;
    border-radius: 7.5px;
    color: #fff;
    font-size: 12px;
    text-align: center;
    line-height: 15px;
    vertical-align: middle
}
.label-pill01 {
    background-color: #004d45
}
.label-pill02 {
    background-color: #797979
}
.label-pill03 {
    background-color: #ddd
}
.label-pill04 {
    color: #797979;
    background-color: #f5f5f5
}
.label-pill05 {
    font-weight: 300;
    background-color: #1b2d4c
}
.label-pill06 {
    font-weight: 300;
    background-color: #1eb2ad
}
.label-pill07 {
    font-weight: 300;
    background-color: #e6b300
}
.label-pill08 {
    font-weight: 300;
    background-color: #fa4156
}
.label-outline01 {
    border: 1px solid #c8c8c8;
    color: #797979;
    line-height: 13px
}
.label-outline02 {
    border: 1px solid #fa4156;
    color: #fa4156;
    line-height: 13px
}
.label-outline03 {
    border: 1px solid #17af98;
    color: #17af98;
    line-height: 13px
}
.label-pass {
    position: relative;
    display: inline-block;
    height: 30px;
    padding: 0 7px 0 20px;
    border-radius: 15px;
    color: #fff;
    font-size: 12px;
    text-align: center;
    line-height: 30px;
    vertical-align: middle;
    width: 100px;
}
.label-pass:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 24px;
    height: 16px;
    margin-top: -8px;
    background-image: url("../images/common/icon_train.png")
}
.label-pass.consecutive {
    background-color: #1b2d4c
}
.label-pass.flexi {
    background-color: #e6b300
}
[class^=icon-] {
    position: relative;
    display: inline-block;
    width: 18px;
    height: 18px;
    vertical-align: middle;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px;
    background-size: 100% auto
}
.icon-ticket {
    background-image: url("../images/common/icon_ticket.png")
}
.icon-air_conditioner {
    background-image: url("../images/common/icon_air_conditioner.png")
}
.icon-audio {
    background-image: url("../images/common/icon_audio.png")
}
.icon-bar {
    background-image: url("../images/common/icon_bar.png")
}
.icon-meal {
    background-image: url("../images/common/icon_meal.png")
}
.icon-lounge {
    background-image: url("../images/common/icon_lounge.png")
}
.icon-parking {
    background-image: url("../images/common/icon_parking.png")
}
.icon-power_socket {
    background-image: url("../images/common/icon_power_socket.png")
}
.icon-taxi {
    background-image: url("../images/common/icon_taxi.png")
}
.icon-trolley {
    background-image: url("../images/common/icon_trolley.png")
}
.icon-wifi {
    background-image: url("../images/common/icon_wifi.png")
}
.icon-wheelchair {
    background-image: url("../images/common/icon_wheelchair.png")
}
.icon-bicycle {
    background-image: url("../images/common/icon_bicycle.png")
}
.icon-toilet {
    background-image: url("../images/common/icon_toilet.png")
}
.icon-change_station {
    background-image: url("../images/common/icon_change_station.png")
}
.icon-change_platform {
    background-image: url("../images/common/icon_change_platform.png")
}
.icon-information_plain {
    background-image: url("../images/common/icon_information_plain.png")
}
.icon-information {
    background-image: url("../images/common/icon_information.png")
}
.icon-valet {
    background-image: url("../images/common/icon_valet.png")
}
.icon-usb_plug {
    background-image: url("../images/common/icon_usb_plug.png")
}
.icon-external_reservation {
    background-image: url("../images/common/icon_external_reservation.png")
}
.icon-pedestrian {
    background-image: url("../images/common/icon_pedestrian.png")
}
.icon-fee_card {
    background-image: url("../images/common/icon_fee_card.png")
}
.icon-pass_contact {
    background-image: url("../images/common/icon_pass_contact.png")
}
.icon-print_at_station {
    background-image: url("../images/common/icon_print_at_station.png")
}
.icon-ebillet {
    background-image: url("../images/common/icon_ebillet.png")
}
.icon-luggage {
    background-image: url("../images/common/icon_luggage.png")
}
.icon-vending_machine {
    background-image: url("../images/common/icon_vending_machine.png")
}
.icon-station {
    background-image: url("../images/common/icon_station.png")
}
.icon-hot_food {
    background-image: url("../images/common/icon_hot_food.png")
}
.icon-video {
    background-image: url("../images/common/icon_video.png")
}
.icon-sandwich {
    background-image: url("../images/common/icon_sandwich.png")
}
.icon-point_of_interest {
    background-image: url("../images/common/icon_point_of_interest.png")
}
.icon-refund {
    background-image: url("../images/common/icon_refund.png")
}
.icon-priority_boarding {
    background-image: url("../images/common/icon_priority_boarding.png")
}
.icon-payment01 {
    background-image: url("../images/common/icon_payment01_off.png")
}
:checked+label .icon-payment01 {
    background-image: url("../images/common/icon_payment01_on.png")
}
.icon-payment02 {
    background-image: url("../images/common/icon_payment02_off.png")
}
:checked+label .icon-payment02 {
    background-image: url("../images/common/icon_payment02_on.png")
}
.icon-payment03 {
    background-image: url("../images/common/icon_payment03_off.png")
}
:checked+label .icon-payment03 {
    background-image: url("../images/common/icon_payment03_on.png")
}
.icon-payment04 {
    background-image: url("../images/common/icon_payment04_off.png")
}
:checked+label .icon-payment04 {
    background-image: url("../images/common/icon_payment04_on.png")
}
.icon-time,
.icon-train {
    width: auto;
    padding-left: 25px;
    background-size: auto auto;
    background-position: left center;
    color: #999;
    font-size: 12px;
    font-weight: 300;
    line-height: 18px;
    text-indent: 0
}
.icon-time {
    background-image: url("../images/common/icon_time02.png")
}
.icon-train {
    background-image: url("../images/common/icon_train02.png")
}
.stit {
    color: #1f1b1c;
    font-size: 25px;
    font-weight: 500
}
.stit em {
    color: #797979;
    font-size: 16px;
    font-weight: 400
}
.sstit {
    color: #1f1b1c;
    font-size: 20px;
    font-weight: 500
}
.sstit .desc-inline {
    margin-left: 20px;
    font-size: 14px;
    font-weight: 400
}
.ssstit {
    color: #1f1b1c;
    font-size: 16px;
    font-weight: 500
}
.tit-p-desc {
    position: absolute;
    top: 15px;
    right: 0
}
.t-emphasis {
    color: #fa4156 !important
}
.t-emphasis02 {
    color: #17af98 !important
}
.t-emphasis03 {
    color: #e6b300 !important
}
.t-emphasis04 {
    color: #4d7ce5 !important
}
.t-emphasis05 {
    color: #ff0000 !important;
    font-weight: 700;
}
.t-dark {
    color: #1f1b1c !important
}
.t-default {
    color: #797979 !important
}
.t-light {
    color: #999 !important
}
.invalid-feedback {
    display: block;
    width: 100%;
    margin-top: 6px;
    color: #e6b300;
    font-size: 12px
}
.noti-r {
    margin-top: 30px;
    font-size: 13px;
    text-align: right
}
.ctab {
    display: flex
}
.ctab li {
    flex: 1
}
.ctab li a {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 50px;
    margin-right: -1px;
    border: 1px solid #c8c8c8;
    background-color: #fff;
    color: #1f1b1c
}
.ctab li.selected a {
    background-color: #1f1b1c;
    color: #fff
}
.ctab.type-l li a {
    height: 55px;
    border-color: #1f1b1c
}
.paging {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 60px
}
.paging a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 30px;
    margin: 0 3px;
    color: #999
}
.paging a.selected {
    background-color: #1f1b1c;
    color: #fff
}
.paging a.first,
.paging a.prev,
.paging a.next,
.paging a.last {
    margin: 0 1px;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
.paging a.first {
    background-image: url("../images/common/paging_first.png")
}
.paging a.prev {
    margin-right: 17px;
    background-image: url("../images/common/paging_prev.png")
}
.paging a.next {
    margin-left: 17px;
    background-image: url("../images/common/paging_next.png")
}
.paging a.last {
    background-image: url("../images/common/paging_last.png")
}
.layer-popup {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px 0;
    background-color: rgba(0, 0, 0, .7);
    z-index: 10
}
.layer-popup .layer-inner {
    overflow: hidden;
    position: relative;
    display: flex;
    flex-direction: column;
    width: 600px;
    height: 100%;
    max-height: 600px
}
.layer-popup .layer-inner .layer-tit {
    position: relative;
    height: 70px;
    padding: 0 30px;
    background-color: #fff;
    color: #1f1b1c;
    font-size: 24px;
    font-weight: 500;
    line-height: 70px
}
.layer-popup .layer-inner .layer-tit:after {
    content: "";
    position: absolute;
    left: 30px;
    right: 30px;
    bottom: 0;
    height: 1px;
    background: #c9c9c9
}
.layer-popup .layer-inner .layer-container {
    position: relative;
    display: flex;
    flex-direction: column;
    max-height: calc(100% - 70px);
    padding: 30px;
    background-color: #fff
}
.layer-popup .layer-inner .layer-container .layer-btn {
    display: flex;
    justify-content: center;
    padding-top: 30px
}
.layer-popup .layer-inner .layer-container .layer-btn button {
    width: 180px
}
.layer-popup .layer-inner .layer-container .layer-btn button+button {
    margin-left: 10px
}
.layer-popup .layer-inner .layer-container .layer-cont {
    padding-right: 30px;
    margin-right: -30px
}
.layer-popup .layer-inner .layer-container .layer-cont.mCustomScrollbar {
    overflow-y: auto;
    max-height: 100%;
    flex: 1 1 auto;
    padding: 0
}
.layer-popup .layer-inner .layer-container .layer-cont.mCustomScrollbar .mCustomScrollBox .mCSB_container {
    margin-right: 30px
}
.layer-popup .layer-inner .layer-container .layer-cont.mCustomScrollbar .mCustomScrollBox .mCSB_scrollTools {
    right: 10px
}
.layer-popup .layer-inner .layer-container .layer-cont .ctitle {
    color: #1f1b1c;
    font-size: 20px;
    font-weight: 500
}
.layer-popup .layer-inner .layer-container .layer-cont .stitle {
    color: #1f1b1c;
    font-weight: 400
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box {
    overflow: hidden;
    line-height: 24px
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .img {
    text-align: center
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .terms-section {
    width: 100%
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .sq-step-list {
    border: 1px solid #e0e0e0
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .sq-step-list li ul {
    width: 100%;
    display: table;
    table-layout: fixed
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .sq-step-list li ul li {
    display: table-cell;
    padding: 20px 12px;
    border: none;
    position: relative
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .sq-step-list li ul li strong {
    width: 60px;
    font-size: 14px;
    font-weight: 400
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .sq-step-list li ul li strong:before {
    display: none
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .sq-step-list li ul li .instep {
    font-size: 13px
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .sq-step-list li ul li+li {
    border-left: 1px solid #e0e0e0
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .sq-step-list li ul li+li:before {
    content: "";
    display: inline-block;
    width: 17px;
    height: 17px;
    margin: 0 10px 0 7px;
    border: 1px solid #e0e0e0;
    border-radius: 100%;
    background-color: #fff;
    background-image: url("../images/common/btn_next.png");
    background-size: 40% 40%;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    left: -17px;
    top: 50%;
    transform: translateY(-50%)
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .sq-stepInfo {
    margin-top: 10px
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .sq-stepInfo p {
    width: 50%;
    height: 20px;
    border: 1px solid #e0e0e0;
    border-top: none;
    float: left;
    font-size: 12px;
    text-align: center;
    line-height: 16px
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .sq-stepInfo p span {
    background-color: #fff;
    width: 150px;
    display: block;
    margin: 0 auto
}
.layer-popup .layer-inner .layer-container .layer-cont .terms-box .stepInfo {
    padding-left: 10px;
    margin-bottom: 7px;
    font-size: 14px
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box {
    border-width: 0 1px 1px;
    border-style: solid #eee
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .ptitle {
    color: #1f1b1c;
    font-size: 20px;
    font-weight: 500;
    text-align: center
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 47px;
    margin-top: 20px;
    padding: 0 20px;
    border-top: 1px solid #eee;
    background-color: #f5f7fa
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info [class^=label-pill] {
    margin-right: 20px
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info .txt {
    float: left;
    flex: 1;
    padding: 0 20px 0 0
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info .label-pill05 {
    margin: 0
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info-desc {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 20px 15px 15px 5px;
    border: 1px solid #eee
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info-desc [class^=label-pill] {
    margin-left: 15px
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info-desc .l-box {
    float: left;
    width: 65%
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info-desc .l-box .route {
    float: left;
    margin: 0 0 0 20px
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info-desc .l-box .route span {
    display: inline-block;
    width: 100%;
    line-height: 25px
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info-desc .info-desc-price {
    text-align: right;
    float: right;
    position: relative
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info-desc .info-desc-price .price-box {
    color: #797979;
    font-size: 13px
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info-desc .info-desc-price .price-box .price {
    color: #1f1b1c;
    font-weight: 500;
    font-size: 14px;
    margin-left: 10px
}
.layer-popup .layer-inner .layer-container .layer-cont .price-box .info-desc .info-desc-price .label-plus {
    color: #fff;
    background-color: #fa4156;
    border-radius: 3px;
    padding: 3px 10px;
    position: absolute;
    bottom: 0;
    right: 0
}
.layer-popup .layer-inner .layer-container .layer-cont .check-p-box p+p {
    margin-top: 30px
}
.layer-popup .layer-inner .layer-container .layer-cont .check-p-box .title-1st {
    color: #1f1b1c;
    font-size: 20px;
    font-weight: 700;
    text-align: center
}
.layer-popup .layer-inner .layer-container .layer-cont .check-p-box .title-2nd {
    color: #1f1b1c;
    font-size: 16px;
    font-weight: 500;
    text-align: center
}
.layer-popup .layer-inner .layer-container .layer-cont .check-p-box .check-p {
    color: #1f1b1c;
    font-size: 14px;
    font-weight: 500;
    text-align: center
}
.layer-popup .layer-inner .layer-container .layer-cont .check-p-box .check-p span {
    margin-left: 6px
}
.layer-popup .layer-inner .layer-container .layer-cont .check-p-box .title-3rd {
    color: #797979;
    font-size: 14px;
    font-weight: 400;
    text-align: center
}
.layer-popup .layer-inner .layer-container .ctab {
    margin-bottom: 30px
}
.layer-popup .layer-inner .layer-close {
    position: absolute;
    top: 25px;
    right: 30px;
    width: 20px;
    height: 20px;
    background-image: url("../images/common/layer_close.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
.layer-popup.type-basic {
    position: static;
    background: none;
    height: 100%;
    padding: 0
}
.layer-popup.type-basic .layer-inner {
    width: 100%;
    max-height: 100%
}
.layer-popup.type-basic .layer-inner .layer-container {
    flex: 1;
    height: 300px;
    padding-top: 0;
    padding-bottom: 0
}
.layer-popup.type-basic .layer-inner .layer-container .layer-cont.mCustomScrollbar {
    max-height: 100%
}
.layer-popup.type-basic .layer-inner .layer-container .layer-cont.mCustomScrollbar .mCSB_container {
    padding-bottom: 20px
}
.layer-popup.type-basic .layer-inner .layer-container .layer-btn {
    margin: 0 -30px;
    padding: 0;
    background-color: #fbfbfb
}
.layer-popup.type-basic .layer-inner .layer-container .layer-btn .btn-area-wrap {
    align-items: center;
    width: 100%;
    height: 80px;
    margin: 0;
    padding: 0 30px;
    border-top: 1px solid #e0e0e0
}
.layer-popup.type-basic .mCustomScrollBox .mCSB_scrollTools {
    top: 30px;
    bottom: 30px
}
.loading-box {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    background-color: rgba(0, 0, 0, .7);
    color: #fff;
    font-size: 20px;
    z-index: 10
}
.loading-box .img {
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    width: 258px;
    height: 258px;
    margin-bottom: 40px;
    border-radius: 100%
}
#wrap {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    min-width: 1100px;
    min-height: 100%
}
#topBanner .inner {
    position: relative;
    width: 1100px;
    height: 100px; /*2022-05-09 수정*/
    margin: 0 auto
}
/*#topBanner .inner .txt {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    color: #000;
    font-size: 18px;
    font-weight: 500;
    line-height: 50px;
    text-align: center
}*/
/*2022-05-09 수정*/
#topBanner .inner .txt {
    position: absolute;
    top: 50%;
    left: 240px;
    right: 240px;
    transform: translateY(-50%);
    color: #000;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
}
#topBanner .inner img {
    width: 100%;
    height: 100%
}
#topBanner .inner .check {
    position: absolute;
    right: 50px;
    bottom: 15px; /*2022-05-09 수정 top: 15px;*/
}
#topBanner .inner .check label {
    color: #797979
}
#topBanner .inner .btn-close {
    position: absolute;
    bottom: 15px; /*2022-05-09 수정 top: 15px;*/
    right: 0;
    width: 20px;
    height: 20px;
    background-image: url("../images/common/layer_close.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
#header {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 1100px;
    height: 140px;
    margin: 0 auto;
    padding-top: 60px;
    flex-shrink: 0;
    z-index: 7
}
#header .logo {
    flex: 1
}
#header .logo a {
    display: inline-block;
    color: #1f1b1c;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: -1.5px
}
#header .logo a em {
    font-size: 24px;
    font-weight: 300
}
#header .gnb {
    display: flex
}
#header .gnb > li {
    position: relative
}
#header .gnb > li > a {
    display: block;
    padding: 0 30px;
    color: #1f1b1c;
    font-size: 20px;
    font-weight: 500;
    line-height: 60px;
    letter-spacing: -1px
}
#header .gnb > li .step {
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 81px;
    width: 100%;
    z-index: 2
}
#header .gnb > li ul {
    padding: 12px 0;
    background: #fbfbfb;
    max-height: 0;
    margin-top: -1000px;
    transition: all 0.4s cubic-bezier(1, 0, 1, 1)
}
#header .gnb > li ul li a {
    display: block;
    color: #1f1b1c;
    font-size: 16px;
    line-height: 50px;
    text-align: center
}
#header .gnb > li .balloon-box {
    display: none;
    position: absolute;
    left: 50%;
    top: 60px;
    padding: 20px 50px 20px 40px;
    background: rgba(23, 175, 152, .9);
    border-radius: 20px;
    color: #fff;
    white-space: nowrap;
    transform: translateX(-50%);
    z-index: 7
}
#header .gnb>li .balloon-box:before {
    content: "";
    position: absolute;
    top: -10px;
    left: 50%;
    margin-left: -5px;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 10px solid rgba(23, 175, 152, .9)
}
#header .gnb > li .balloon-box div a {
    color: #fffa76;
    text-decoration: underline
}
#header .gnb > li .balloon-box .close {
    position: absolute;
    right: 20px;
    top: 22px;
    width: 15px;
    height: 15px;
    background-image: url("../images/common/icon_close.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
#header .gnb .selected > a {
    color: #17af98
}
#header .btn-gnb {
    position: relative;
    width: 40px;
    height: 40px;
    margin: 10px 0 0 20px;
    border: 1px solid #e0e0e0;
    background: #fff;
    font-size: 0;
    transition: all 0.3s
}
#header .btn-gnb:before,
#header .btn-gnb:after {
    content: "";
    transition: all 0.3s
}
#header .btn-gnb span,
#header .btn-gnb:before,
#header .btn-gnb:after {
    display: block;
    width: 20px;
    height: 2px;
    margin: 2px auto;
    background: #1f1b1c
}
#header .user-box {
    position: absolute;
    top: 30px;
    right: 0;
    line-height: 28px
}
#header .user-box span strong {
    color: #1f1b1c;
    font-weight: 500
}
#header .user-box .log-in-out {
    position: relative;
    display: inline-block;
    margin-left: 18px;
    padding-left: 20px
}
#header .user-box .log-in-out:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 2px;
    height: 2px;
    margin-top: -1px;
    background-color: #1f1b1c
}
#header.selected~#container:after,
#header.selected .gnb ul {
    max-height: 600px;
    margin-top: 0;
    transition: all 0.3s cubic-bezier(0, 0, 0, 1)
}
#header.selected .btn-gnb {
    background-color: #1f1b1c
}
#header.selected .btn-gnb:before {
    width: 25px;
    margin-bottom: -1px;
    background-color: #fff;
    transform: rotate(222deg)
}
#header.selected .btn-gnb:after {
    width: 25px;
    margin-top: -2px;
    background-color: #fff;
    transform: rotate(-222deg)
}
#header.selected .btn-gnb span {
    display: none
}
#container {
    position: relative;
    overflow: hidden;
    flex: 1 0 auto;
    border-top: 1px solid #eee
}
#container:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -1px;
    height: 330px;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    background: #fbfbfb;
    max-height: 0;
    margin-top: -1000px;
    transition: all 0.5s cubic-bezier(1, 0, 1, 1);
    z-index: 6
}
#container .container-top-group {
    border-bottom: 1px solid #eee;
    background-color: #f5f7fa
}
#container .container-top-group .group-inner {
    position: relative;
    overflow: hidden;
    width: 1100px;
    margin: 0 auto
}
#container .container-top-group .group-inner .location {
    position: absolute;
    top: 20px;
    left: 0
}
#container .container-top-group .group-inner .location a {
    display: inline-block;
    color: #999;
    font-size: 13px;
    line-height: 24px;
    vertical-align: middle
}
#container .container-top-group .group-inner .location a.home {
    width: 24px;
    height: 24px;
    background-image: url("../images/common/icon_home.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
#container .container-top-group .group-inner .location strong {
    display: inline-block;
    color: #999;
    font-size: 13px;
    font-weight: 400;
    line-height: 24px;
    vertical-align: middle
}
#container .container-top-group .group-inner .location a:not(.home):before,
#container .container-top-group .group-inner .location strong:before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 9px;
    margin: 0 10px 0 7px;
    background-image: url("../images/common/icon_arr_location.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
#container .container-top-group .group-inner .ctit {
    padding: 44px 0;
    color: #1f1b1c;
    font-size: 30px;
    font-weight: 500;
    text-align: center
}
#container .container-top-group .group-inner .reservation-step {
    margin-bottom: 10px
}
#container .contents-inner {
    width: 1100px;
    margin: 0 auto;
    padding: 50px 0 150px
}
#container .lnb-wrap {
    flex: 1
}
#container .lnb-wrap ul li {
    margin-top: 30px
}
#container .lnb-wrap ul li:first-child {
    margin: 0
}
#container .lnb-wrap ul li li {
    margin: 0
}
#container .lnb-wrap ul li .step1 {
    display: block;
    margin-bottom: 7px;
    color: #1f1b1c;
    font-size: 20px;
    font-weight: 400
}
#container .lnb-wrap ul li a {
    line-height: 30px
}
#container .lnb-wrap ul li.selected a {
    color: #17af98;
    text-decoration: underline
}
#container .content-wrap {
    position: relative;
    width: 900px;
    margin-left: 30px
}
#container .content-wrap .stit {
    padding-bottom: 15px;
    border-bottom: 1px solid #1f1b1c;
    font-size: 30px
}
.container-wrap {
    width: 900px;
    margin: 0 auto;
    padding: 30px 0
}
.container-wrap .stit {
    padding-bottom: 25px;
    border-bottom: 1px solid #1f1b1c;
    font-size: 30px;
    font-weight: 700
}
#footer {
    padding: 20px 0 100px;
    background-color: #333;
    flex-shrink: 0
}
#footer .footer-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 1100px;
    margin: 0 auto
}
#footer .f-menu {
    display: flex
}
#footer .f-menu li a {
    position: relative;
    display: block;
    padding: 0 30px;
    color: #fff;
    line-height: 50px
}
#footer .f-menu li a:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 1px;
    height: 10px;
    margin-top: -5px;
    background-color: #ddd
}
#footer .f-menu li:first-child a {
    padding-left: 0
}
#footer .f-menu li:first-child a:before {
    display: none
}
#footer .f-family-site {
    position: relative
}
#footer .f-family-site button {
    position: relative;
    display: block;
    width: 180px;
    height: 40px;
    padding-left: 20px;
    border: 1px solid #c8c8c8;
    color: #fff;
    font-size: 12px;
    text-align: left
}
#footer .f-family-site button:after {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    width: 9px;
    height: 5px;
    margin-top: -2px;
    background-image: url("../images/common/icon_f_button.png");
    transform: rotate(-180deg)
}
#footer .f-family-site .dropdown-box {
    overflow: hidden;
    position: absolute !important;
    bottom: 10px;
    left: 0;
    transform: translateY(100%);
    width: 100%;
    min-width: 180px;
    border: 1px solid #e0e0e0;
    background-color: #fff;
    line-height: 1.5;
    z-index: 5
}
#footer .f-family-site .dropdown-list li a {
    display: block;
    background-size: 13px 13px;
    background-position: left 9px;
    background-repeat: no-repeat;
    color: #333;
    line-height: 30px;
    padding: 10px 10px 10px 20px
}
#footer .f-family-site .dropdown-list li a:hover {
    color: #17af98
}
#footer .f-info {
    width: 100%;
    color: #999;
    line-height: 30px
}
#footer .f-info button {
    position: relative;
    display: block;
    padding-right: 30px;
    color: #fff;
    font-size: 20px;
    line-height: 60px
}
#footer .f-info button:after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 9px;
    height: 5px;
    margin-top: -2px;
    background-image: url("../images/common/icon_f_button.png");
    transform: rotate(-180deg);
    transition: transform 0.2s
}
#footer .f-info .info-content {
    overflow: hidden
}
#footer .f-info .info-content .content-inner {
    max-height: 0;
    margin-top: -1000px;
    transition: all 0.5s cubic-bezier(1, 0, 1, 1)
}
#footer .f-info.selected .content-inner {
    max-height: 600px;
    margin-top: 0;
    transition: all 0.4s cubic-bezier(0, 0, 0, 1)
}
#footer .f-info.selected button:after {
    transform: rotate(0)
}
#footer .f-info .info li {
    display: flex
}
#footer .f-info .info li strong {
    width: 160px;
    font-weight: 400
}
#footer .f-info .copyright {
    margin-top: 30px
}
.mCS_no_scrollbar .mCustomScrollBox .mCSB_container {
    margin: 0
}
.mCustomScrollBox {
    position: relative;
    overflow: hidden;
    height: 100%;
    max-width: 100%;
    outline: none;
    direction: ltr;
    line-height: initial
}
.mCustomScrollBox .mCSB_container {
    width: auto;
    height: auto;
    margin: 0 20px 0 0
}
.mCustomScrollBox .mCSB_scrollTools {
    position: absolute;
    left: auto;
    top: 0;
    right: 0;
    bottom: 0;
    width: 10px;
    border-radius: 5px;
    background-color: #f5f5f5
}
.mCustomScrollBox .mCSB_scrollTools .mCSB_draggerContainer {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0
}
.mCustomScrollBox .mCSB_scrollTools .mCSB_draggerContainer .mCSB_dragger {
    cursor: pointer;
    width: 100%
}
.mCustomScrollBox .mCSB_scrollTools .mCSB_draggerContainer .mCSB_dragger_bar {
    width: 100%;
    height: 100%;
    border-radius: 5px;
    background: #bfbfbf
}
.w-100p {
    width: 100% !important
}
.mt10 {
    margin-top: 10px !important
}
.mt20 {
    margin-top: 20px !important
}
.mt25 {
    margin-top: 25px !important
}
.mt30 {
    margin-top: 30px !important
}
.mb5 {
    margin-bottom: 5px !important
}
.mb25 {
    margin-bottom: 25px !important
}
.mb30 {
    margin-bottom: 30px !important
}
.ml10 {
    margin-left: 10px !important
}
.mtzero {
    margin-top: 0 !important
}
.main-content-wrap .stit {
    font-size: 22px
}
.main-content-wrap .contents-inner {
    position: relative;
    padding-bottom: 60px !important
}
.main-content-wrap .main-notice-box {
    position: absolute;
    top: 110px;
    right: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 430px;
    height: 180px;
    padding: 0 60px;
    background-color: rgba(0, 0, 0, .4);
    color: #fff;
    font-size: 26px;
    line-height: 40px;
    word-break: break-all;
    z-index: 3
}
.main-content-wrap .main-notice-box .box-inner {
    width: 100%
}
.main-search-section {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding-top: 60px
}
.main-search-section .search-box {
    position: relative;
    width: 520px;
    min-height: 540px;
    border: 1px solid #e0e0e0;
    background-color: #f2f5fb;
    box-shadow: 4px 0 20px #888
}
.main-search-section .search-box .search-ctab {
    margin: -60px -1px 0
}
.main-search-section .search-box .search-ctab li {
    margin: 0
}
.main-search-section .search-box .search-ctab li a {
    border: none;
    --background-color: rgba(255, 255, 255, .7);
    background-color: #FBFBFB
}
.main-search-section .search-box .search-ctab li.selected a {
    background-color: #f2f5fb;
    box-shadow: 4px 0 20px #888;
    font-weight: 700;
    font-size: 20px
}
.search-ctab {
    display: flex;
    width: 520px
}
.search-ctab li {
    flex: 1;
    margin-right: -1px
}
.search-ctab li a {
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 60px;
    border: 1px solid #e0e0e0;
    border-bottom: none;
    background-color: #f2f5fb;
    border-radius: 10px 10px 0 0;
    font-size: 16px
}
.search-ctab li.selected a {
    color: #1f1b1c;
    background-color: #fff
}
.main-search-section .search-box .search-container {
    background-color: #f2f5fb
}
.main-search-section .search-box .btn-area {
    position: absolute;
    left: 0;
    bottom: 0;
    display: flex;
    width: 100%;
    height: 70px
}
.main-search-section .search-box .btn-area button,
.main-search-section .search-box .btn-area a {
    flex: 1;
    height: 100%;
    border: none
}
.main-search-section .search-box .btn-area .btn-dark-outline {
    border-top: 1px solid #e0e0e0
}
.main-search-section .popularity-box {
    width: 520px
}
.main-search-section .popularity-box > ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 15px
}
.main-search-section .popularity-box > ul li {
    position: relative;
    width: calc((100% - 10px) / 2);
    height: 100px;
    margin-top: 10px;
    border: 1px solid #e0e0e0
}
.main-search-section .popularity-box>ul li:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 5px;
    height: 2px;
    margin: -1px 0 0 -3px;
    background-color: #1f1b1c
}
.main-search-section .popularity-box > ul li button {
    position: relative;
    display: block;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    margin: -1px;
    border: 1px solid #e0e0e0;
    background: #fff
}
.main-search-section .popularity-box>ul li button:hover {
    border-color: #17af98
}
.main-search-section .popularity-box>ul li button:hover span,
.main-search-section .popularity-box>ul li button:hover span em {
    color: #17af98
}
.main-search-section .popularity-box > ul li button span {
    position: relative;
    display: block;
    margin: 8px 0;
    color: #1f1b1c;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px
}
.main-search-section .popularity-box > ul li button span em {
    color: #999;
    font-size: 12px;
    font-weight: 300
}
.main-search-section .popularity-box>ul li button span+span:before {
    content: "";
    position: absolute;
    top: -6px;
    left: 50%;
    width: 2px;
    height: 5px;
    margin: 0 0 0 -1px;
    background-color: #c5c5c5
}
.main-search-section .popularity-box div {
    height: 210px;
    margin-top: 25px;
    padding: 14px 30px;
    border: 1px solid #e0e0e0
}
.main-search-section .popularity-box div ul li {
    position: relative;
    padding: 0 0 0 18px
}
.main-search-section .popularity-box div ul li:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 3px;
    height: 3px;
    margin-top: -2px;
    background-color: #1f1b1c
}
.main-search-section .popularity-box div ul li button {
    font-size: 13px;
    font-weight: 300;
    line-height: 30px
}
.main-search-section .popularity-box div ul li button strong {
    color: #1f1b1c;
    font-weight: 500
}
.main-search-section .popularity-box div ul li button:hover {
    color: #17af98;
    text-decoration: underline
}
.main-search-section .popularity-box div ul li button:hover strong {
    color: #17af98
}
.main-visual-section {
    height: 330px;
    margin-bottom: -350px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover
}
.main-promotion-section {
    position: relative;
    margin-top: 60px
}
.main-promotion-section .promotion-banner-list {
    position: relative;
    overflow: hidden;
    margin-top: 25px
}
.main-promotion-section .promotion-banner-list .swiper-wrapper {
    display: flex
}
.main-promotion-section .promotion-banner-list .swiper-wrapper .swiper-slide {
    overflow: hidden;
    width: 100%;
    flex-shrink: 0
}
.main-promotion-section .promotion-banner-list .swiper-wrapper .swiper-slide a {
    display: block;
    font-size: 0;
    line-height: 0
}
.main-promotion-section .promotion-banner-list .swiper-wrapper .swiper-slide img {
    width: 100%
}
.main-promotion-section .swiper-control-box {
    display: flex;
    align-items: center;
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%)
}
.main-promotion-section .swiper-control-box .swiper-pagination {
    display: flex
}
.main-promotion-section .swiper-control-box .swiper-pagination-bullet {
    display: block;
    width: 12px;
    height: 12px;
    margin: 0 5px;
    background-color: #999;
    border-radius: 100%;
    cursor: pointer;
    transition: width 0.2s
}
.main-promotion-section .swiper-control-box .swiper-pagination-bullet-active {
    width: 40px;
    background-color: #000;
    border-radius: 6px
}
.main-promotion-section .swiper-control-box .start-stop {
    width: 19px;
    height: 22px;
    margin-left: 10px;
    background-image: url("../images/common/icon_paused.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px;
    background-size: 9px 12px;
    background-position: center center
}
.main-promotion-section .swiper-control-box .start-stop.stop {
    background-image: url("../images/common/icon_start.png")
}
.main-promotion-section .btn-all {
    position: absolute;
    top: 5px;
    right: 0;
    color: #1f1b1c
}
.main-promotion-section .btn-all:after {
    content: "";
    display: inline-block;
    width: 30px;
    height: 6px;
    margin-left: 10px;
    vertical-align: 3px;
    background-image: url("../images/common/icon_arr.png")
}
.main-notice-faq-section {
    display: flex;
    margin-top: 100px;
    border-top: 2px solid #1f1b1c;
    border-bottom: 1px solid #e0e0e0
}
.main-notice-faq-section .box-csc {
    width: 260px;
    padding: 30px 20px 20px
}
.main-notice-faq-section .box-csc div {
    color: #999;
    font-size: 13px;
    line-height: 20px
}
.main-notice-faq-section .box-csc div em {
    color: #1f1b1c;
    font-weight: 400
}
.main-notice-faq-section .box-csc div strong {
    display: block;
    margin: 10px 0;
    color: #1f1b1c;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.2
}
.main-notice-faq-section>div:not(.box-csc) {
    position: relative;
    flex: 1;
    min-width: 0;
    padding: 30px 40px 20px;
    border-left: 1px solid #e0e0e0
}
.main-notice-faq-section .btn-more {
    position: absolute;
    right: 40px;
    top: 30px;
    border-bottom: 1px solid #1f1b1c
}
.main-notice-faq-section .btn-more a {
    display: block;
    padding: 3px;
    font-size: 12px
}
.main-notice-faq-section .stit {
    margin-bottom: 25px;
    font-size: 20px
}
.main-notice-faq-section ul.notice li {
    margin-top: 20px
}
.main-notice-faq-section ul.notice li:first-child {
    margin-top: 0
}
.main-notice-faq-section ul.notice li a {
    display: block;
    line-height: 20px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.main-notice-faq-section ul.notice li a:hover {
    color: #17af98;
    text-decoration: underline
}
.main-notice-faq-section .faq {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: -10px
}
.main-notice-faq-section .faq li {
    width: calc(50% - 5px);
    margin-top: 10px
}
.main-notice-faq-section .faq li a {
    width: 100%;
    height: 55px;
    font-size: 14px
}
.main-notice-faq-section .faq li a:hover {
    border-color: #004d45;
    background-color: #004d45;
    color: #fff
}
.full-content-wrap {
    width: 100%;
    min-height: 100vh;
    background: url("../images/common/bg_login.webp?rv=1") no-repeat center center;
    background-size: cover
} /*2023-05-31 로그인 수정*/
.full-content-wrap .content-inner {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 800px;
    min-height: 100vh;
    margin: 0 auto;
    /*padding: 100px 0;*/
    background-color: #fff
}/*2023-05-31 로그인 수정 (1280px → 800px, padding 숨김처리) */
.full-content-wrap .content-inner.type-join {
    align-items: start;
    width: 1280px
}
.full-content-wrap .content-inner .title {
    margin-bottom:30px;
    color: #000;
    font-size: 36px;
    font-weight: 500;
    text-align: left;
}/*2023-06-19 수정 (text-align: center;_*/
.full-content-wrap .content-inner .title-desc {
    color: #1f1b1c;
    font-size: 20px;
    text-align: center
}
.login-wrap {
    width: 560px;
    padding: 0 60px
}
/*.login-wrap .title {
    font-size: 40px !important
}2023-05-31 로그인 수정 숨김처리*/
.login-wrap .title .greeting{
    font-size: 16px;
	font-weight:500;
	line-height: 27px;
	color: #797979;
	position: relative;
	margin-top: 50px;
	padding-left:36px;
}/*2023-06-19 추가*/
.login-wrap .title .greeting:after{
	content: '';
	width: 30px;
	height: 27px;
    background: url(https://www.therailntel.com/images/common/ico_login_member.png) no-repeat;
	position: absolute;
	top:0;
	left:0;
}/*2023-06-19 추가*/
.login-wrap .login-form {
    width: 100%;
    /*padding:50px 0;
    border-bottom: 1px solid #c8c8c8*/
}/*2023-05-31 로그인 수정*/
.login-wrap .login-form .id-area,
.login-wrap .login-form .pw-area {
    position: relative;
    margin-top: 10px
}
.login-wrap .login-form .id-area:first-child,
.login-wrap .login-form .pw-area:first-child {
    margin: 0
}
.login-wrap .login-form .id-area input,
.login-wrap .login-form .pw-area input {
    width: 100%;
    padding-right: 60px;
    border-color: #c8c8c8;
    color: #1f1b1c
}
.login-wrap .login-form .id-area input::-moz-placeholder,
.login-wrap .login-form .pw-area input::-moz-placeholder {
    color: #bfbfbf
}
.login-wrap .login-form .id-area input:-ms-input-placeholder,
.login-wrap .login-form .pw-area input:-ms-input-placeholder {
    color: #bfbfbf
}
.login-wrap .login-form .id-area input::placeholder,
.login-wrap .login-form .pw-area input::placeholder {
    color: #bfbfbf
}
.login-wrap .login-form .id-area .btn-erase,
.login-wrap .login-form .pw-area .btn-erase {
    position: absolute;
    top: 50%;
    right: 30px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: #797979;
    border-radius: 100%;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}/*2023-06-19 수정(background: #004d45;_*/
.login-wrap .login-form .id-area .btn-erase:after,
.login-wrap .login-form .id-area .btn-erase:before,
.login-wrap .login-form .pw-area .btn-erase:after,
.login-wrap .login-form .pw-area .btn-erase:before {
    content: "";
    position: absolute;
    top: 10px;
    left: 5px;
    width: 10px;
    height: 1px;
    background-color: #fff
}
.login-wrap .login-form .id-area .btn-erase:after,
.login-wrap .login-form .pw-area .btn-erase:after {
    transform: rotate(-45deg)
}
.login-wrap .login-form .id-area .btn-erase:before,
.login-wrap .login-form .pw-area .btn-erase:before {
    transform: rotate(45deg)
}
.login-wrap .login-form .find-check {
    display: flex;
    justify-content: space-between;
    padding: 20px 0 30px
}
.login-wrap .login-form .find-check .btn-find {
    font-size: 13px
}
.login-wrap .login-form .find-check .btn-find a {
    display: inline-block;
    text-decoration: underline
}
.login-wrap .login-form .find-check .btn-find a+a:before {
    content: "";
    display: inline-block;
    width: 1px;
    height: 16px;
    margin: 0 20px 0 18px;
    background-color: #797979;
    vertical-align: middle
}
.login-wrap .join-section {
    margin-top: 50px
}
.login-wrap .join-section .txt {
    margin-top: 10px
} /*2023-05-31 로그인 수정 margin-top: 20px*/
.login-wrap .footer-login{
	margin-top:50px;
	text-align: center;
}/*2023-05-31 로그인 추가*/
.login-wrap .footer-login .contact > span{
	display: inline-block;
	padding-left:24px;
}/*2023-05-31 로그인 추가*/
.group-reserve {
    overflow: hidden
}
.group-reserve .section {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px
}
.group-reserve .section:first-child {
    margin: -5px -7px
}
.group-reserve .section .col {
    width: 33.3333%;
    padding: 5px 7px
}
.group-reserve .section .col input {
    width: 100%
}
.group-reserve .section .custom-radio+label {
    width: 110px;
    margin-right: 10px
}
.group-reserve textarea {
    width: 100%
}
.join-wrap {
    width: 960px
}
.join-wrap .join-step {
    display: flex;
    justify-content: center;
    margin-bottom: 50px
}
.join-wrap .join-step div {
    color: #bfbfbf;
    font-size: 15px
}
.join-wrap .join-step div em {
    display: inline-block;
    width: 25px;
    height: 25px;
    margin-right: 7px;
    background-color: silver;
    border-radius: 100%;
    color: #fff;
    line-height: 25px;
    text-align: center
}
.join-wrap .join-step div+div:before {
    content: "";
    display: inline-block;
    width: 50px;
    height: 1px;
    margin: -3px 20px 0;
    background-color: #c9c9c9;
    vertical-align: middle
}
.join-wrap .join-step div.selected {
    color: #004d45
}
.join-wrap .join-step div.selected em {
    background-color: #004d45
}
.join-wrap .terms-list {
    border-top: 1px solid #1f1b1c
}
.join-wrap .terms-list li {
    position: relative;
    border-bottom: 1px solid #c8c8c8
}
.join-wrap .terms-list li label {
    width: 100%;
    padding: 30px 0 30px 40px;
    font-size: 14px
}
.join-wrap .terms-list li label:before {
    position: absolute;
    top: 30px;
    left: 0
}
.join-wrap .terms-list li label:after {
    top: 37px !important
}
.join-wrap .terms-list li .all+label {
    font-size: 20px;
    font-weight: 500
}
.join-wrap .terms-list li .all+label .desc {
    display: block;
    margin-top: 15px;
    color: #797979;
    font-size: 14px;
    font-weight: 400
}
.join-wrap .terms-list li .btn-terms {
    position: absolute;
    top: 20px;
    right: 0;
    padding: 10px 36px;
    background: url("../images/common/icon_arr_right.png") no-repeat right 10px center;
    background-size: 6px 12px
}
.join-wrap .terms-list+.noti {
    margin-top: 15px;
    font-size: 12px;
    line-height: 20px
}
.join-wrap .btn-area-wrap {
    margin-top: 60px
}
.join-content .row-group {
    display: flex;
    justify-content: space-between;
    margin-top: 30px
}
.join-content .row-group .col-group {
    flex: 1
}
.join-content .row-group .col-group+.col-group {
    width: 440px;
    margin-left: 80px
}
.join-content .row-group .col-group .tit {
    display: block;
    color: #1f1b1c;
    font-size: 15px
}
.join-content .row-group .col-group .tit .noti {
    float: right;
    margin-top: 3px
}
.join-content .row-group .col-group .cont-group {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 15px
}
.join-content .row-group .col-group .cont-group .section {
    display: flex;
    width: 100%;
    margin-top: 5px
}
.join-content .row-group .col-group .cont-group .input-file {
    max-width: 100%;
    font-size: 14px
}
.join-content .row-group .col-group .cont-group .input-file .file-name,
.join-content .row-group .col-group .cont-group .input-file .placeholder {
    display: block;
    padding: 0 20px;
    border: 1px solid #e0e0e0;
    color: #bfbfbf;
    line-height: 48px
}
.join-content .row-group .col-group .cont-group .input-file .file-name {
    color: #1f1b1c
}
.join-content .row-group .col-group .cont-group .input-file .btn-primary {
    font-size: 14px
}
.join-content .row-group .col-group .noti {
    display: block;
    margin-top: 6px;
    font-size: 12px
}
.join-content .row-group.row-line {
    margin-top: 50px;
    padding-top: 50px;
    border-top: 1px dashed #c8c8c8
}
.join-content [class^=btn-] {
    width: 130px;
    height: 50px;
    font-size: 14px
}
.join-content input {
    flex: 1;
    max-width: 440px
}
.join-content input+a,
.join-content input+button {
    margin-left: 5px
}
.join-content input+input {
    margin-left: 5px
}
.join-content input.num {
    flex: 1.5
}
.join-content select {
    flex: 1
}
.join-content select+input {
    margin-left: 5px
}
.agree-section {
    margin-top: 20px;
    padding: 20px 0;
    border-top: 1px solid #1f1b1c;
    border-bottom: 1px solid #bfbfbf
}
.agree-section .agree-row {
    padding: 5px 50px
}
.agree-section .agree-row strong {
    display: inline-block;
    width: 70px;
    color: #1f1b1c;
    font-weight: 400
}
.agree-section .agree-row label {
    width: 110px
}
.agree-section+.noti {
    display: block;
    margin-top: 10px;
    font-size: 12px
}
.input-form-wrap .title-desc-txt {
    margin-top: 50px;
    color: #bfbfbf;
    line-height: 24px;
    text-align: center
}
.input-form-wrap .title-desc-txt2 {
    margin-top: 50px;
    color: #1f1b1c;
    font-size: 16px;
    text-align: center
}
.input-form-wrap .title-desc-txt2+.input-form {
    margin-top: 40px
}
.input-form-wrap .desc-txt2 {
    padding: 120px 0 90px;
    color: #1f1b1c;
    font-size: 20px;
    line-height: 30px;
    text-align: center
}
.input-form-wrap .desc-txt2 .t-emphasis02 {
    font-weight: 500
}
.input-form-wrap .desc-txt2 .tit {
    font-size: 30px;
    font-weight: 500
}
.input-form-wrap .btn-area {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 420px;
    margin: 50px auto 0
}
.input-form-wrap .btn-area > a {
    flex: 1;
    max-width: 320px;
    font-size: 18px
}
.input-form-wrap .btn-area > a+a {
    margin-left: 20px
}
.input-form-wrap .input-form {
    overflow: hidden;
    width: 320px;
    margin: 70px auto 0
}
.input-form-wrap .input-form .section {
    margin-top: 10px
}
.input-form-wrap .input-form .section input {
    width: 100%
}
.input-form-wrap .input-form .msg {
    padding: 5px 0 30px;
    font-size: 12px;
    line-height: 18px
}
.input-form-wrap .input-form .btn-area {
    width: 100%
}
.input-form-wrap .input-form .btn-area div {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-top: 30px
}
.input-form-wrap .input-form .btn-area div p {
    font-size: 13px
}
.input-form-wrap .input-form .btn-area div a {
    font-size: 13px
}
.input-form-wrap .input-form .btn-area div a:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    margin-top: 3px;
    background-color: #999
}
.input-form-wrap .line-box {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 600px;
    height: 180px;
    margin: 70px 0 80px;
    color: #1f1b1c;
    font-size: 30px;
    font-weight: 700;
    border: 10px solid #f4f4f4
}
.input-form-wrap .guide-wrap {
    width: 960px
}
.input-form-wrap .guide-wrap .guide-inner {
    margin-bottom: -100px;
    padding: 60px 150px 100px;
    border-top: 1px solid #e0e0e0;
    background-color: #fbfbfb
}
.input-form-wrap .guide-wrap .desc-txt2 {
    padding-top: 50px
}
.input-form-wrap .guide-wrap .stit {
    margin-bottom: 40px;
    font-size: 30px
}
.input-form-wrap .error-box {
    font-size: 20px;
    line-height: 40px;
    text-align: center
}
.input-form-wrap .error-box .tit {
    color: #1f1b1c;
    font-size: 40px;
    font-weight: 500;
    line-height: 60px
}
.input-form-wrap .error-box+.btn-area {
    width: auto;
    margin-top: 200px
}
.search-result-wrap {
    overflow: hidden
}
.search-result-wrap .search-result-top {
    min-height: 80px;
    padding-bottom: 1px;
    background-color: #004d45
}
.search-result-inner {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 1100px;
    margin: 0 auto;
    color: #fff;
    z-index: 6
}
.search-result-inner.type-line {
    width: 100%;
    border: 1px solid #1f1b1c;
    color: #797979;
    font-size: 13px;
    line-height: 22px
}
.search-result-inner.type-line > div {
    padding: 0 20px;
    background: none
}
.search-result-inner.type-line > div.location {
    width: 450px;
    padding: 0 30px;
    color: #1f1b1c;
    font-size: 14px
}
.search-result-inner.type-line>div.location:before {
    display: none
}
.search-result-inner.type-line > div.location.type-col .btn-switch {
    width: 40px;
    height: 40px;
    margin: -20px 0 0 -30px;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px;
    background-color: #004d45;
    background-image: url("../images/common/icon_switch.png");
    background-size: 14px 16px;
    border-radius: 100%;
    transition: all 0.5s cubic-bezier(0, 0, 0, 1)
}
.search-result-inner.type-line>div.location.type-col .btn-switch:hover {
    transform: rotate(-180deg)
}
.search-result-inner.type-line > div.location.type-col div {
    padding-left: 30px;
    padding-right: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.search-result-inner.type-line>div.location.type-col div:first-child {
    padding-right: 30px;
    padding-left: 0
}
.search-result-inner.type-line > div.location.type-col em {
    display: block
}
.search-result-inner.type-line > div.date {
    border-left: 1px solid #e0e0e0
}
.search-result-inner.type-line>div.date:before {
    flex-shrink: 0;
    background-image: url("../images/common/icon_date.png")
}
.search-result-inner.type-line > div.date span {
    display: block;
    width: 80%
}
.search-result-inner.type-line > div.member {
    justify-content: flex-start;
    border-left: 1px solid #e0e0e0
}
.search-result-inner.type-line>div.member:before {
    flex-shrink: 0;
    background-image: url("../images/common/icon_member.png")
}
.search-result-inner.type-line > div.member span {
    display: block;
    width: 80%
}
.search-result-inner.type-line .btn {
    justify-content: flex-start;
    width: 100px;
    padding: 0
}
.search-result-inner.type-line .btn .btn-primary {
    width: 100%;
    height: 100%;
    font-size: 14px
}
.search-result-inner > div {
    display: flex;
    align-items: center;
    flex: 1;
    height: 80px;
    background-color: #004d45
}
.search-result-inner>div:not(.btn):before {
    content: "";
    display: inline-block;
    width: 14px;
    height: 19px;
    margin-right: 10px;
    background-repeat: no-repeat;
    background-position: center center;
    vertical-align: middle
}
.search-result-inner > div.location {
    flex: none;
    width: 420px;
    font-size: 18px;
    font-weight: 500
}
.search-result-inner>div.location:before {
    background-image: url("../images/common/icon_location_w.png")
}
.search-result-inner > div.location.type-col {
    position: relative;
    display: flex
}
.search-result-inner > div.location.type-col .btn-switch {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 14px;
    height: 16px;
    margin: -6px 0 0;
    background-image: url("../images/common/icon_switch.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
.search-result-inner > div.location.type-col div {
    width: 50%;
    padding: 0 23px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.search-result-inner>div.location.type-col div:first-child {
    padding-left: 0
}
.search-result-inner > div.location.type-col em {
    font-size: 14px;
    font-weight: 300
}
.search-result-inner > div.date {
    flex: 1.5
}
.search-result-inner>div.date:before {
    background-image: url("../images/common/icon_date_w.png")
}
.search-result-inner > div.member {
    justify-content: flex-end
}
.search-result-inner>div.member:before {
    background-image: url("../images/common/icon_member_w.png")
}
.search-result-inner .btn {
    flex: none !important;
    justify-content: flex-end;
    width: 150px
}
.search-result-inner .btn button {
    overflow: hidden;
    width: 120px;
    font-size: 16px;
    transition: all 0.3s cubic-bezier(0, 0, 0, 1)
}
.search-result-wrap .search-result-top .search-section {
    width: 1100px;
    margin: -1000px auto 30px;
    max-height: 0;
    transition: all 0.5s cubic-bezier(1, 0, 1, 1)
}
.search-section {
    border: 1px solid #e0e0e0;
    background-color: #fff
}
.search-section .search-container {
    padding: 30px
}
.search-section .ctab {
    margin-bottom: 30px
}
.search-section .search-check {
    right: auto;
    left: 300px
}
.search-section .search-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: -20px
}
.search-section .search-content .content-section {
    width: calc((100% - 20px) / 2);
    margin-top: 20px
}
.search-section .search-content .content-section.type-col .section-inner {
    flex-wrap: wrap;
    width: 50%
}
.search-section .search-content .content-section.type-col .section-inner+.section-inner > input {
    padding-left: 50px;
    border-left: none
}
.search-section .search-content .content-section .btn-switch {
    top: 44px;
    right: 50%;
    margin-right: -20px
}
.search-section .btn-area {
    position: absolute;
    right: 30px;
    bottom: 30px;
    display: flex;
    width: calc((100% - 80px) / 2)
}
.search-section .btn-area button {
    flex: 1
}
.search-result-wrap .search-result-top.selected .search-section {
    max-height: 1000px;
    margin-top: 0;
    transition: all 0.4s cubic-bezier(0, 0, 0, 1)
}
.search-result-wrap .search-result-top.selected .btn button {
    position: relative;
    width: 50px;
    height: 40px;
    background-color: #1f1b1c;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
.search-result-wrap .search-result-top.selected .btn button:after {
    content: "닫기";
    position: absolute;
    top: 10px;
    left: 15px;
    width: 20px;
    height: 20px;
    background-image: url("../images/common/icon_close.png")
}
.search-result-wrap .date-swiper {
    position: relative;
    overflow: hidden;
    margin-top: 30px;
    padding: 0 49px;
    border: 1px solid #e0e0e0;
    background-color: #f5f7fa;
    border-radius: 5px
}
.search-result-wrap .date-swiper .swiper-wrapper {
    display: flex
}
.search-result-wrap .date-swiper .swiper-wrapper .swiper-slide {
    flex-shrink: 0;
    width: 200px
}
.search-result-wrap .date-swiper .swiper-wrapper .swiper-slide a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 90px;
    border-right: 1px solid #e0e0e0;
    color: #999;
    line-height: 32px;
    text-align: center
}
.search-result-wrap .date-swiper .swiper-wrapper .swiper-slide a span {
    display: block;
    font-size: 12px
}
.search-result-wrap .date-swiper .swiper-wrapper .swiper-slide a span strong {
    font-size: 15px;
    font-weight: 500
}
.search-result-wrap .date-swiper .swiper-wrapper .swiper-slide a em {
    display: block;
    font-size: 13px
}
.search-result-wrap .date-swiper .swiper-wrapper .swiper-slide.selected {
    background-color: #fff
}
.search-result-wrap .date-swiper .swiper-wrapper .swiper-slide.selected a span strong {
    color: #1f1b1c;
    font-size: 20px;
    font-weight: 700
}
.search-result-wrap .date-swiper .swiper-wrapper .swiper-slide.selected a em {
    color: #1f1b1c
}
.search-result-wrap .date-swiper [class^=btn-] {
    position: absolute;
    top: 0;
    width: 50px;
    height: 100%;
    background-color: #f5f7fa;
    background-position: center center;
    background-repeat: no-repeat;
    cursor: pointer
}
.search-result-wrap .date-swiper .btn-prev {
    left: 0;
    border-right: 1px solid #e0e0e0;
    background-image: url("../images/common/btn_prev.png")
}
.search-result-wrap .date-swiper .btn-next {
    right: 0;
    border-left: 1px solid #e0e0e0;
    background-image: url("../images/common/btn_next.png")
}
.search-result-content {
    margin-top: 15px
}
.search-result-content+.stit {
    margin-top: 50px
}
.search-result-content .content-section {
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border: 1px solid #e0e0e0;
    border-radius: 5px
}
.search-result-content .content-section+.content-section {
    margin-top: 10px
}
.search-result-content .content-section-l {
    position: relative;
    background: #fff;
    position: relative;
    flex: 1;
    min-width: 100px;
    z-index: 3
}
.search-result-content .content-section-l input {
    position: absolute;
    top: 0;
    left: 0
}
.search-result-content .content-section-l label {
    display: block !important;
    height: 100%;
    padding: 0 30px 0 70px
}
.search-result-content .content-section-l label:before {
    position: absolute;
    top: 30px;
    left: 30px
}
.search-result-content .content-section-l label:after {
    left: 35px !important;
    top: 35px !important
}
.search-result-content .content-section-l label .section {
    display: block;
    padding: 15px 0 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.search-result-content .content-section-l label .section:first-child {
    display: flex;
    align-items: center;
    min-height: 80px;
    height: 80px;
    padding: 0
}
.search-result-content .content-section-l label .section .logo {
    display: block;
    width: 50px;
    margin: 0 10px 0 0;
    flex-shrink: 0
}
.search-result-content .content-section-l label .section .logo object {
    width: 100%;
    min-height: 30px;
    vertical-align: top
}
.search-result-content .content-section-l label .section .tit {
    display: inline-block;
    font-size: 20px;
    font-weight: 500;
    line-height: 20px;
    vertical-align: top;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.search-result-content .content-section-l label .section .date {
    margin-left: 20px;
    color: #797979;
    font-size: 13px;
    line-height: 30px
}
.search-result-content .content-section-l label .section .route {
    display: block;
    width: 100%;
    margin-top: 27px;
    color: #1f1b1c
}
.search-result-content .content-section-l label .section .route span {
    display: block;
    font-size: 16px;
    font-weight: 500;
    line-height: 30px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.search-result-content .content-section-l label .section .route span em {
    display: inline-block;
    width: 80px;
    font-size: 15px;
    font-weight: 400
}
.search-result-content .content-section-l label .section .details {
    display: block;
    width: 100%;
    margin-top: 20px
}
.search-result-content .content-section-l label .section .details .icon-time,
.search-result-content .content-section-l label .section .details .icon-train {
    margin-left: 20px
}
.search-result-content .content-section-r {
    position: relative;
    display: flex;
    width: 570px;
    padding: 15px;
    border-left: 1px dashed #e0e0e0;
    background-color: #fbfbfb;
    z-index: 2
}
.search-result-content .content-section-r .section {
    flex: 1;
    display: flex;
    flex-direction: column
}
.search-result-content .content-section-r .section .tit {
    display: block;
    margin-bottom: 10px;
    color: #999;
    font-size: 12px;
    font-weight: 400;
    text-align: center
}
.search-result-content .content-section-r .section .row {
    flex: 1 0 auto;
    padding: 2px
}
.search-result-content .content-section-r .section .row label {
    min-width: auto;
    height: 100%
}
.search-result-content .content-section-b {
    overflow: hidden;
    display: flex;
    width: 100%;
    padding: 15px;
    border-top: 1px solid #e0e0e0;
    background-color: #f5f7fa;
    max-height: 0;
    margin-top: -1000px;
    transition: all 0.5s cubic-bezier(1, 0, 1, 1)
}
.search-result-content .content-section-b-l {
    flex: 1;
    padding: 10px 55px
}
.search-result-content .content-section-b-l .tit {
    display: flex;
    color: #797979;
    font-size: 13px;
    font-weight: 500;
    line-height: 24px
}
.search-result-content .content-section-b-l .tit strong {
    margin-right: 15px;
    color: #1f1b1c;
    font-size: 20px;
    font-weight: 500
}
.search-result-content .content-section-b-l .section {
    display: flex;
    flex-wrap: wrap;
    margin: 30px 90px 0 0;
    padding-bottom: 20px;
    border-bottom: 1px solid #dedede
}
.search-result-content .content-section-b-l .section label {
    width: 80px;
    margin: 0 0 10px 5px
}
.search-result-content .content-section-b-l .desc {
    margin: 20px 0;
    padding-left: 6px;
    text-indent: -6px;
    font-size: 13px;
    line-height: 22px
}
.search-result-content .content-section-b-l .desc em {
    text-decoration: underline
}
.search-result-content .content-section-b-l .btn-area {
    font-size: 0
}
.search-result-content .content-section-b-l .btn-area a {
    margin-right: 10px
}
.search-result-content .content-section-b-r {
    position: relative;
    overflow: hidden;
    width: 400px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, .05)
}
.search-result-content .content-section-b-r .price-list {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 100%;
    padding-bottom: 60px
}
.search-result-content .content-section-b-r .price-list > li {
    flex: 1 0 auto
}
.search-result-content .content-section-b-r .price-list>li:first-child {
    flex: none;
    align-items: center;
    height: 50px
}
.search-result-content .content-section-b-r .price-list>li:last-child {
    flex: none;
    align-items: center;
    height: 80px
}
.search-result-content .content-section-b-r .price-list li {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0 40px;
    line-height: 25px
}
.search-result-content .content-section-b-r .price-list li .tit {
    display: block;
    color: #1f1b1c;
    font-weight: 400;
    font-size: 15px
}
.search-result-content .content-section-b-r .price-list li .tit em {
    color: #797979;
    font-size: 13px
}
.search-result-content .content-section-b-r .price-list li .price {
    display: block;
    font-size: 13px;
    text-align: right
}
.search-result-content .content-section-b-r .price-list li .price strong {
    display: block;
    color: #1f1b1c;
    font-size: 16px;
    font-weight: 400
}
.search-result-content .content-section-b-r .price-list li .price strong em {
    font-size: 20px;
    font-weight: 700
}
.search-result-content .content-section-b-r .price-list li ul {
    width: calc(100% + 80px);
    margin: 0 -40px;
    padding: 14px 0;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    background-color: #fbfbfb
}
.search-result-content .content-section-b-r .price-list li ul li {
    line-height: 24px
}
.search-result-content .content-section-b-r .price-list li ul li .tit {
    color: #797979;
    font-size: 12px;
    font-weight: 300
}
.search-result-content .content-section-b-r .price-list li ul li .price {
    color: #797979;
    font-size: 12px;
    font-weight: 300
}
.search-result-content .content-section-b-r .btn-area {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%
}
.search-result-content .content-section-b-r .btn-area a {
    width: 100%
}
.search-result-content .content-section.selected .content-section-b {
    max-height: 1000px;
    margin-top: 0;
    transition: all 0.4s cubic-bezier(0, 0, 0, 1)
}
.reservation-wrap .reservation-step {
    display: flex;
    border: 1px solid #eee;
    background-color: #fff
}
.reservation-wrap .reservation-step div {
    position: relative;
    justify-content: center;
    display: flex;
    flex: 1
}
.reservation-wrap .reservation-step div span {
    display: block;
    height: 80px;
    padding: 0 20px;
    font-size: 18px;
    border-bottom: 3px solid transparent;
    line-height: 80px
}
.reservation-wrap .reservation-step div span em {
    margin-right: 15px;
    font-weight: 500
}
.reservation-wrap .reservation-step div:not(:first-child):before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 47px;
    height: 16px;
    margin: -8px 0 0 -23px;
    background-image: url("../images/common/icon_step.png")
}
.reservation-wrap .reservation-step div.selected span {
    color: #17af98;
    border-color: #17af98
}
.reservation-wrap .noti-section {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 30px;
    padding: 30px;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    background-color: #f6fffe
}
.reservation-wrap .noti-section ul li {
    font-size: 13px;
    line-height: 24px
}
.reservation-wrap .noti-section div {
    width: 100%;
    margin-top: 10px
}
.reservation-wrap .primary-box {
    margin: -20px 0 50px
}
.mypage-wrap .my-status {
    display: flex;
    margin-bottom: 10px
}
.mypage-wrap .my-status li {
    flex: 1;
    margin-right: -1px;
    border: 1px solid #eee
}
.mypage-wrap .my-status li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 80px;
    padding: 0 30px;
    background-color: #fff
}
.mypage-wrap .my-status li a span {
    color: #999;
    font-size: 13px
}
.mypage-wrap .my-status li a em {
    position: relative;
    float: right;
    color: #1f1b1c;
    font-size: 15px
}
.mypage-wrap .my-status li a em strong {
    font-size: 26px;
    font-weight: 500
}
.mypage-wrap .my-status li a:hover em {
    color: #17af98
}
.mypage-wrap .my-status li a:hover em:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 1px;
    background-color: #17af98
}
.mypage-wrap .contents-inner {
    display: flex
}
.mypage-wrap .search-inquire-wrap .search-inquire-top {
    position: relative;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: -1px;
    padding: 30px 0;
    border-bottom: 1px solid #e0e0e0;
    z-index: 2
}
.mypage-wrap .search-inquire-wrap .search-inquire-top .title {
    margin-right: 20px;
    padding-left: 30px;
    background-size: 14px 15px;
    background-position: left center;
    background-repeat: no-repeat;
    background-image: url("../images/common/icon_calendar02.png");
    font-weight: 400
}
.mypage-wrap .search-inquire-wrap .search-inquire-top .custom-radio-group {
    flex: -1
}
.mypage-wrap .search-inquire-wrap .search-inquire-top .custom-radio-group button {
    margin-left: 3px
}
.mypage-wrap .search-inquire-wrap .search-inquire-top .btn-details {
    position: relative;
    width: 130px;
    height: 40px;
    padding: 0 0 0 20px;
    border: 1px solid #c8c8c8;
    text-align: left
}
.mypage-wrap .search-inquire-wrap .search-inquire-top .btn-details:before {
    content: "";
    position: absolute;
    right: 20px;
    top: 16px;
    width: 14px;
    height: 8px;
    background-image: url("../images/common/icon_select.png");
    transition: all 0.2s cubic-bezier(0, 0, 0, 1)
}
.mypage-wrap .search-inquire-wrap .search-inquire-top .repo_row {
    width: 100%;
    margin-bottom: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center
}
.mypage-wrap .search-inquire-wrap .search-inquire-top .repo_row .repo_select {
    height: 40px;
    margin-top: -1px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm {
    overflow: hidden
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm-inner {
    position: relative;
    padding: 20px 200px 20px 30px;
    border: 1px solid #e0e0e0;
    background-color: #fbfbfb;
    max-height: 0;
    margin-top: -1000px;
    transition: all 0.5s cubic-bezier(1, 0, 1, 1)
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section {
    margin-top: 10px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section:first-child {
    margin: 0
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section-inner,
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section {
    display: flex;
    flex-wrap: wrap;
    flex: 1
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section-inner .section,
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section .section {
    flex: none;
    width: 100%;
    margin-top: 5px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section-inner .repo_row,
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section .repo_row {
    width: 100%
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section-inner .repo_row .custom-check,
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section .repo_row .custom-check {
    margin-top: 10px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section-inner .repo_row label,
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section .repo_row label {
    margin-top: 10px;
    margin-right: 16px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section-inner .repo_row input[type=text],
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section .repo_row input[type=text] {
    width: 100%;
    height: 40px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .title {
    float: left;
    width: 70px;
    line-height: 40px;
    font-weight: 400
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .custom-radio-group {
    margin-right: 23px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .custom-radio-group label {
    width: 90px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .input-search-box {
    position: relative
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .input-search-box input {
    width: 100%;
    margin: 0;
    padding-right: 50px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .input-search-box .btn-search {
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    height: 100%;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px;
    background-image: url("../images/common/icon_search02.png");
    background-size: 12px 12px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .input-search-box .dropdown-box {
    overflow: hidden;
    position: absolute !important;
    bottom: 1px;
    left: 0;
    transform: translateY(100%);
    width: 100%;
    min-width: 240px;
    max-height: 143px;
    padding: 20px 10px 20px 30px;
    border: 1px solid #e0e0e0;
    background-color: #fff;
    line-height: 1.5;
    z-index: 5
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .input-search-box .dropdown-list li a {
    display: block;
    padding-left: 23px;
    background-size: 13px 13px;
    background-position: left 9px;
    background-repeat: no-repeat;
    color: #1f1b1c;
    line-height: 30px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .input-search-box .dropdown-list.time li a {
    background-image: url("../images/common/icon_time.png")
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .input-search-box .dropdown-list.location li a {
    background-size: 10px 15px;
    background-image: url("../images/common/icon_location.png")
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .input-search-box .dropdown-list.location li a strong {
    color: #17af98;
    font-weight: 400
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section-r {
    position: absolute;
    right: 30px;
    top: 20px;
    width: 160px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section-r a {
    width: 100%
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .section-r .btn-icon-search {
    height: 80px;
    margin-top: 10px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm [class^=col] {
    position: relative;
    width: 140px;
    height: 40px;
    margin-right: 5px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm [class^=col] input:not([type=radio]),
.mypage-wrap .search-inquire-wrap .search-inquire-btm [class^=col] select {
    width: 100%;
    height: 100%
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm [class^=col] .custom-check {
    margin-top: 10px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm [class^=col] label {
    margin-top: 10px
}
.mypage-wrap .search-inquire-wrap .search-inquire-btm .col2 {
    width: 280px
}
.mypage-wrap .search-inquire-wrap.selected .btn-details:before {
    transform: rotate(180deg)
}
.mypage-wrap .search-inquire-wrap.selected .search-inquire-btm-inner {
    max-height: 600px;
    margin-top: 0;
    transition: all 0.4s cubic-bezier(0, 0, 0, 1)
}
.mypage-wrap .agree-section .agree-row {
    padding-left: 30px;
    padding-right: 30px
}
.mypage-wrap .agree-section .agree-row strong {
    width: 100px
}
.mypage-wrap .summary-wrap {
    display: flex;
    margin-top: 30px;
    font-size: 40px;
    font-weight: 700
}
.mypage-wrap .summary-wrap .box {
    flex: 1;
    height: 140px;
    padding: 0 50px;
    border: 1px solid #e0e0e0;
    border-radius: 10px
}
.mypage-wrap .summary-wrap .box .tit {
    display: block;
    margin-top: 25px;
    font-size: 16px;
    font-weight: 400
}
.mypage-wrap .summary-wrap .box .num {
    position: relative;
    display: block;
    margin-top: 20px;
    color: #1f1b1c;
    font-size: 30px;
    font-weight: 700;
    text-align: right
}
.mypage-wrap .summary-wrap .box .num:after {
    display: inline-block;
    width: 22px;
    height: 21px;
    margin-left: 6px;
    background-image: url("../images/common/icon_copy03.png")
}
.mypage-wrap .summary-wrap .box .num em {
    font-weight: 300
}
.mypage-wrap .summary-wrap .box+.box {
    margin-left: 20px
}
.mypage-wrap .summary-wrap .total {
    flex: none;
    width: 315px;
    margin-right: -5px;
    border-color: #1c1b4c;
    background-color: #1c1b4c;
    border-radius: 10px;
    color: #fff
}
.mypage-wrap .summary-wrap .total .tit {
    color: #fff;
    font-size: 20px
}
.mypage-wrap .summary-wrap .total .num {
    margin-top: 0;
    color: #fff;
    font-size: 40px
}
.mypage-wrap .summary-wrap .total .num:after {
    content: "";
    width: 30px;
    height: 30px;
    margin-left: 10px;
    background-image: url("../images/common/icon_copy.png")
}
.mypage-wrap .summary-wrap .box-group {
    display: flex;
    padding: 0;
    border-color: #1c1b4c
}
.mypage-wrap .summary-wrap .box-group div {
    flex: 1;
    padding: 0 20px 0 30px
}
.mypage-wrap .summary-wrap .box-group div:not(:first-child) {
    border-left: 1px dotted #797979
}
.mypage-wrap .summary-wrap .box-group div .num:after {
    content: ""
}
.mypage-wrap .summary-wrap .box-group div:first-child .num {
    /*color: #17af98*/
}
.mypage-wrap .summary-wrap .box-group div:first-child .num:after {
    background-image: url("../images/common/icon_copy03.png")
}
.mypage-wrap .summary-wrap+.flex-group {
    margin-top: 30px
}
.guide-wrap .desc+.guide-list {
    margin-top: 30px
}
.guide-wrap .desc+.guide-list li strong {
    width: 156px
}
.guide-wrap .desc+.guide-list li ul li strong {
    width: 60px
}
.guide-wrap .guide-list {
    overflow: hidden;
    line-height: 24px
}
.guide-wrap .guide-list li {
    display: flex;
    padding: 25px 0;
    border-bottom: 1px solid #e0e0e0
}
.guide-wrap .guide-list li strong {
    display: block;
    width: 142px;
    color: #1f1b1c;
    font-size: 18px;
    font-weight: 500
}
.guide-wrap .guide-list li strong:before {
    content: "";
    display: inline-block;
    width: 22px;
    height: 21px;
    margin-right: 10px;
    background-image: url("../images/common/icon_point.png");
    vertical-align: -3px
}
.guide-wrap .guide-list li p,
.guide-wrap .guide-list li ul {
    flex: 1
}
.guide-wrap .guide-list li ul li {
    padding: 10px 0 0;
    border: none
}
.guide-wrap .guide-list li ul li strong {
    width: 82px;
    font-size: 14px;
    font-weight: 400
}
.guide-wrap .guide-list li ul li strong:before {
    display: none
}
.guide-wrap .guide-list li:first-child {
    padding-top: 0
}
.guide-wrap .guide-list li.step li {
    padding-top: 0
}
.guide-wrap .btn-c {
    margin: 50px 0
}
.guide-wrap .btn-detail {
    margin-top: 30px
}
.guide-wrap .btn-detail a {
    color: #4d7ce5;
    text-decoration: underline
}
.guide-wrap.hpoint .guide-list > li {
    display: block;
    padding-left: 32px
}
.guide-wrap.hpoint .guide-list > li > strong {
    width: auto;
    margin: 0 0 25px -32px
}
.coupon-status {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 90px;
    margin-bottom: 20px;
    padding: 0 60px;
    background-color: #1c1b4c;
    border-radius: 10px;
    color: #fff
}
.coupon-status .tit {
    display: block;
    font-size: 16px;
    font-weight: 400
}
.coupon-status .num {
    font-size: 30px;
    font-weight: 700
}
.coupon-status .num:after {
    content: "";
    display: inline-block;
    width: 22px;
    height: 21px;
    margin-left: 10px;
    background-image: url("../images/common/icon_copy.png");
    background-size: 100% 100%
}
.bookmark-box {
    width: calc((100% - 40px) / 2)
}
.bookmark-box .board-list tr:hover td {
    color: #17af98;
    cursor: pointer
}
.bookmark-box .board-list td {
    padding: 14px 0
}
.primary-box {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 70px;
    background-color: #004d45;
    color: #fff;
    font-size: 16px;
    font-weight: 500
}
.primary-box+.board-list {
    margin-top: 10px
}
.primary-box span {
    margin-right: 20px
}
.primary-box strong {
    font-size: 20px;
    font-weight: 400
}
.primary-box strong em {
    color: #fff2c4
}
.details-wrap {
    border-top: 1px solid #1f1b1c;
    border-bottom: 1px solid #e0e0e0;
    background-color: #f5f7fa
}
.details-wrap .details-box {
    padding: 30px
}
.details-wrap .details-box .board-section-wrap {
    position: relative;
    margin-top: 10px;
    border: 1px solid #e0e0e0;
    background: #fff
}
.details-wrap .details-box .board-section-wrap:first-child {
    margin: 0
}
.details-wrap .details-box .board-section-wrap .section-top {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 50px;
    margin-bottom: -1px;
    border-bottom: 1px solid #e0e0e0;
    color: #1f1b1c;
    font-size: 13px;
    text-align: left
}
.details-wrap .details-box .board-section-wrap .section-top:before {
    content: "";
    position: absolute;
    left: 18px;
    top: 21px;
    width: 14px;
    height: 8px;
    background-image: url("../images/common/icon_select.png");
    transition: all 0.2s cubic-bezier(0, 0, 0, 1)
}
.details-wrap .details-box .board-section-wrap .section-top > span {
    display: flex;
    align-items: center;
    height: 100%;
    width: 50%;
    padding: 0 10px 0 50px
}
.details-wrap .details-box .board-section-wrap .section-top > span.box-l > span {
    display: block
}
.details-wrap .details-box .board-section-wrap .section-top>span.box-l>span:nth-child(1) {
    width: 125px
}
.details-wrap .details-box .board-section-wrap .section-top>span.box-l>span:nth-child(2) {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.details-wrap .details-box .board-section-wrap .section-top > span.box-l > span [class^=label-outline] {
    min-width: auto;
    margin-left: 5px
}
.details-wrap .details-box .board-section-wrap .section-top > span.box-r {
    justify-content: space-between;
    padding: 0 30px;
    border-left: 1px solid #e0e0e0
}
.details-wrap .details-box .board-section-wrap .section-top > span.box-r span {
    display: block
}
.details-wrap .details-box .board-section-wrap .section-top em {
    color: #797979
}
.details-wrap .details-box .board-section-wrap .section-top strong {
    color: #999;
    font-size: 12px;
    font-weight: 400
}
.details-wrap .details-box .board-section-wrap .section-top [class^=label-pill] {
    margin-right: 15px
}
.details-wrap .details-box .board-section-wrap .board-section {
    margin: 0;
    border: none
}
.details-wrap .details-box .board-section-wrap .board-section .view {
    display: flex;
    width: 100%
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l {
    width: 50%;
    padding: 20px 30px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 12px;
    line-height: 30px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list li span {
    display: block
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list li span strong {
    color: #1f1b1c;
    font-size: 13px;
    font-weight: 400
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list li em {
    display: block
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 {
    margin-top: 25px;
    padding-top: 25px;
    border-top: 1px solid #e0e0e0
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li {
    display: flex;
    align-items: center;
    font-size: 12px;
    line-height: 24px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li span {
    display: block
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li span:nth-child(1) {
    width: 70px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li span:nth-child(2) {
    width: 60px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li span:nth-child(3) {
    width: 100px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li span:nth-child(4) {
    flex: 1
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li span:nth-child(5) {
    width: 18px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li span img {
    vertical-align: -5px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li.check-traveler i {
    margin-right: 10px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li.check-traveler span {
    display: block
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li.check-traveler span:nth-child(2) {
    width: 70px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li.check-traveler span:nth-child(3) {
    width: 60px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li.check-traveler span:nth-child(4) {
    width: 100px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li.check-traveler span:nth-child(5) {
    flex: 1
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li.check-traveler span:nth-child(6) {
    width: 18px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-l .list2 li.check-traveler span img {
    vertical-align: -5px
}
.details-wrap .details-box .board-section-wrap .board-section .view .section-r {
    width: 50%;
    padding: 20px 20px 20px 30px;
    border-left: 1px solid #e0e0e0
}
.details-wrap .details-box .board-section-wrap.selected .section-top:before {
    transform: rotate(180deg)
}
.details-wrap .change-date-box {
    margin: 30px -30px -30px -50px;
    padding: 30px;
    border-top: 1px solid #e0e0e0;
    background-color: #fff
}
.details-wrap .change-date-box .tit {
    color: #1f1b1c;
    font-size: 16px
}
.details-wrap .change-date-box .cont {
    display: flex;
    margin-top: 15px
}
.details-wrap .change-date-box .cont > div {
    width: 170px;
    height: 40px;
    margin-right: 5px
}
.details-wrap .change-date-box .cont > div input,
.details-wrap .change-date-box .cont > div select {
    width: 100%;
    height: 100%
}
.details-wrap .change-date-box .cont > button {
    width: 120px;
    margin-left: 25px
}
.details-wrap.edit-type .details-box {
    padding-left: 50px
}
.details-wrap.edit-type .radio-check {
    position: absolute;
    left: -40px;
    top: 15px
}
.details-wrap+.search-result-content {
    margin-top: 30px
}
.sstit+.details-wrap {
    margin-top: 20px
}
.board-section {
    overflow: hidden;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 20px;
    border-top: 1px solid #1f1b1c
}
.board-section+.board-section {
    margin-top: 30px;
    border-color: #e0e0e0
}
.board-section .desc-group {
    width: 100%;
    margin: -1px 0;
    border: 1px solid #e0e0e0;
    background-color: #f9f9f9
}
.board-section .desc-group .group-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 55px;
    padding: 0 30px 0 70px
}
.board-section .desc-group .group-inner:before {
    position: absolute;
    top: 18px;
    left: 30px
}
.board-section .desc-group .group-inner:after {
    top: 23px !important;
    left: 35px !important
}
.board-section .desc-group .group-inner strong {
    flex: 1;
    float: left;
    color: #1f1b1c;
    font-weight: 400;
    font-size: 16px
}
.board-section .desc-group .group-inner strong em {
    font-size: 14px
}
.board-section .desc-group div.group-inner {
    padding: 0 30px
}
.board-section .desc-group .noti {
    color: #797979;
    font-size: 13px
}
.board-section .board-box {
    overflow: hidden;
    width: 100%;
    border-bottom: 1px solid #e0e0e0
}
.board-section .board-info.board-type,
.board-section table {
    border: none
}
.board-section .board-info.board-type td .flex-box,
.board-section table td .flex-box {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    width: 100%
}
.board-section .board-info.board-type td .flex-box .col-box,
.board-section table td .flex-box .col-box {
    flex: 1
}
.board-section .board-info.board-type td .flex-box .col-box+.col-box,
.board-section table td .flex-box .col-box+.col-box {
    margin-left: 10px
}

/* 여행자 핸드폰 국가코드 추가에 따른 class 추가 */
.board-section table td .flex-box .col-box-large {
    flex: 3
}
.board-section table td .flex-box .col-box+.col-box-large {
    margin-left: 10px
}
/* 여행자 핸드폰 국가코드 추가에 따른 class 추가 */

.board-section .board-info.board-type td .flex-box input,
.board-section .board-info.board-type td .flex-box textarea,
.board-section .board-info.board-type td .flex-box select,
.board-section table td .flex-box input,
.board-section table td .flex-box textarea,
.board-section table td .flex-box select {
    width: 100%
}
.board-section .board-info.board-type td .flex-box select,
.board-section table td .flex-box select {
    padding-right: 60px;
    background: #fff url("../images/common/icon_select.png") no-repeat right 30px center
}
.board-section .board-info.board-type td .flex-box .col-check,
.board-section table td .flex-box .col-check {
    position: absolute;
    right: -30px;
    top: 50%;
    transform: translate(100%, -50%)
}
.board-section .board-info.board-type td .custom-radio-group,
.board-section table td .custom-radio-group {
    margin-top: 15px
}
.board-section .board-info.board-type td .invalid-feedback,
.board-section table td .invalid-feedback {
    margin-bottom: 2px
}
.board-section .board-info.board-type td.td-r,
.board-section table td.td-r {
    text-align: right
}
.board-section .info-left {
    width: 540px;
    margin-top: 20px;
    border: 1px solid #eee;
    font-size: 13px
}
.board-section .info-left .section .info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 47px;
    margin-top: -1px;
    padding: 0 30px;
    border-top: 1px solid #eee;
    background-color: #f5f7fa
}
.board-section .info-left .section .info [class^=label-pill] {
    margin-right: 20px
}
.board-section .info-left .section .info .txt {
    float: left;
    flex: 1;
    padding: 0 20px 0 0
}
.board-section .info-left .section .info .price {
    color: #1f1b1c;
    font-weight: 500
}
.board-section .info-left .section .info-desc {
    display: flex;
    flex-wrap: wrap;
    padding: 20px 30px 15px;
    border-top: 1px solid #eee
}
.board-section .info-left .section .info-desc [class^=label-pill] {
    margin-left: 15px
}
.board-section .info-left .section .info-desc .route {
    float: left;
    margin: -6px 0 0 20px
}
.board-section .info-left .section .info-desc .route span {
    display: block;
    line-height: 26px
}
.board-section .info-left .section .info-desc .route span em {
    display: inline-block;
    width: 70px;
    color: #1f1b1c
}
.board-section .info-left .section .info-desc .tit {
    display: block;
    width: 100%;
    margin-bottom: 30px;
    color: #1f1b1c;
    font-size: 16px;
    font-weight: 500
}
.board-section .info-left .section .info-desc .label-pass {
    margin-top: -6px
}
.board-section .charge-info {
    width: 540px;
    margin-top: 20px;
    padding: 20px 30px;
    border: 1px solid #eee
}
.board-section .charge-info .flex-group {
    margin: 0;
    padding-bottom: 15px
}
.board-section .charge-info .flex-group .noti {
    text-align: right
}
.board-section .charge-info .info-list {
    border-top: 1px dashed #eee
}
.charge-info .flex-group {
    padding: 0 30px 15px 0
}
.charge-info .info-list {
    padding: 10px 0;
    border-top: 1px solid #1f1b1c
}
.charge-info .info-list li {
    display: flex;
    justify-content: space-between;
    padding: 0 30px;
    font-size: 12px;
    line-height: 30px
}
.charge-info .info-list li.baggage {
    flex-wrap: wrap;
    margin-top: 10px;
    padding-top: 20px;
    padding-bottom: 10px;
    border-top: 1px dashed #eee
}
.charge-info .info-list li.baggage .t-emphasis {
    width: 100%
}
.charge-info .info-list li .price {
    float: right;
    font-weight: 300
}
.charge-info .info-list li .btn-guide {
    color: #797979;
    font-size: 12px
}
.charge-info .info-list li .plus-minus {
    display: inline-block;
    margin-left: 30px
}
.charge-info .total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    background-color: #fbfbfb;
    padding: 15px 30px;
    font-size: 13px
}
.charge-info .total .price {
    float: right
}
.charge-info .total .price em {
    padding-left: 5px;
    color: #1f1b1c;
    font-size: 16px
}
.charge-info .total .price em strong {
    font-size: 20px;
    font-weight: 700
}
.charge-info .txt-desc {
    margin-top: 20px;
    font-size: 12px;
    line-height: 18px;
    text-align: right
}
.board-section .radio-group-wrap {
    width: 100%;
    border-bottom: 1px solid #e0e0e0;
    padding: 20px 30px
}
.board-section .radio-group-wrap label {
    width: 90px;
    height: 30px;
    margin-right: 10px;
    border: 1px solid #e0e0e0;
    border-radius: 15px;
    font-size: 12px !important;
    line-height: 26px !important;
    text-align: center
}
.board-section .radio-group-wrap label:after,
.board-section .radio-group-wrap label:before {
    display: none !important
}
.board-section .radio-group-wrap input:checked+label {
    border-color: #1f1b1c;
    background-color: #1f1b1c;
    color: #fff
}
.board-section .radio-group-wrap .txt {
    display: inline-block;
    margin-left: 20px;
    font-size: 13px
}
.board-section-wrap .board-section .board-box {
    padding: 0
}
.board-section-wrap .board-section .view {
    max-height: 0;
    margin-top: -1000px;
    transition: all 0.5s cubic-bezier(1, 0, 1, 1)
}
.board-section-wrap .board-section .view tr:first-child th,
.board-section-wrap .board-section .view tr:first-child td {
    padding-top: 25px
}
.board-section-wrap .board-section .view tr:last-child th,
.board-section-wrap .board-section .view tr:last-child td {
    padding-bottom: 25px
}
.board-section-wrap.selected .board-section .view {
    max-height: 600px;
    margin-top: 0;
    transition: all 0.4s cubic-bezier(0, 0, 0, 1)
}
.board-section-wrap.selected .btn-icon-more:before {
    transform: rotate(180deg)
}
.reservation-details {
    margin-top: 10px;
    border-top: 1px solid #1f1b1c
}
.reservation-details .details-top {
    display: flex;
    justify-content: space-between;
    padding: 25px 30px;
    border-bottom: 1px solid #e0e0e0
}
.reservation-details .details-top .box-right {
    text-align: right
}
.reservation-details .details-top .num {
    font-size: 13px
}
.reservation-details .details-top .num span {
    color: #1f1b1c
}
.reservation-details .details-top .location {
    margin-top: 5px;
    color: #1f1b1c;
    font-size: 20px;
    font-weight: 500
}
.reservation-details .details-top .noti {
    font-size: 13px
}
.reservation-details .details-top .price {
    margin-top: 5px;
    color: #999;
    font-size: 13px
}
.reservation-details .details-top .price strong {
    font-size: 22px;
    font-weight: 500
}
.reservation-details .details-row {
    display: flex;
    flex-wrap: wrap
}
.reservation-details .details-row .info-box {
    position: relative;
    flex: 1;
    padding: 30px 30px 20px 90px
}
.reservation-details .details-row .info-box > span {
    position: absolute;
    top: 30px;
    left: 30px
}
.reservation-details .details-row .info-box .info {
    display: flex;
    justify-content: space-between;
    margin-top: -4px
}
.reservation-details .details-row .info-box .info .txt {
    font-size: 13px;
    line-height: 24px
}
.reservation-details .details-row .info-box .info .txt strong {
    color: #1f1b1c;
    font-weight: 400
}
.reservation-details .details-row .info-box .info .price {
    color: #999;
    font-size: 12px
}
.reservation-details .details-row .info-box .info .price strong {
    color: #1f1b1c;
    font-size: 13px;
    font-weight: 400
}
.reservation-details .details-row .info-box .btn-area {
    position: relative;
    display: flex;
    margin-top: 20px
}
.reservation-details .details-row .info-box .btn-area .btn-default-outline {
    min-width: 90px;
    margin-right: 5px;
    font-size: 12px
}
.reservation-details .details-row .info-box .btn-area .btn-more {
    position: absolute;
    right: 0;
    top: 0;
    margin: 0
}
.reservation-details .details-row .info-box .btn-area .btn-more:after {
    content: "";
    display: inline-block;
    width: 9px;
    height: 5px;
    margin: 0 -10px 0 10px;
    background-image: url("../images/common/icon_select03.png");
    transition: all 0.2s cubic-bezier(0, 0, 0, 1)
}
.reservation-details .details-row .route-wrap {
    width: 50%;
    padding: 25px 0 20px 30px;
    border-left: 1px solid #e0e0e0;
    font-size: 13px
}
.reservation-details .details-row .route-wrap .details {
    padding-top: 11px;
    padding-bottom: 12px
}
.reservation-details .details-row .route-wrap .details div {
    padding: 2px 0
}
.reservation-details .details-row .route-wrap .btn-more {
    left: 50px;
    top: 75px
}
.reservation-details .details-row .price-wrap {
    overflow: hidden;
    width: 100%;
    border-top: 1px solid #e0e0e0
}
.reservation-details .details-row .price-wrap .price-wrap-inner {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #e0e0e0;
    background-color: #f5f7fa;
    max-height: 0;
    margin-top: -1000px;
    transition: all 0.5s cubic-bezier(1, 0, 1, 1)
}
.reservation-details .details-row .price-wrap ul {
    width: 50%;
    padding: 25px 30px 25px 90px
}
.reservation-details .details-row .price-wrap ul li {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    line-height: 24px
}
.reservation-details .details-row .price-wrap ul li strong {
    font-weight: inherit
}
.reservation-details .details-row .price-wrap .price {
    display: flex;
    justify-content: space-between;
    width: 50%;
    padding: 30px
}
.reservation-details .details-row .price-wrap .price span {
    color: #1f1b1c;
    font-size: 15px
}
.reservation-details .details-row .price-wrap .price div {
    color: #999;
    font-size: 13px;
    text-align: right
}
.reservation-details .details-row .price-wrap .price div strong {
    display: block;
    color: #1f1b1c;
    font-size: 20px;
    font-weight: 500
}
.reservation-details .details-row.selected .btn-more:after {
    transform: rotate(180deg)
}
.reservation-details .details-row.selected .price-wrap-inner {
    max-height: 600px;
    margin-top: 0;
    transition: all 0.4s cubic-bezier(0, 0, 0, 1)
}
.cancel-step {
    margin: 25px 0;
    color: #1f1b1c
}
.cancel-step+.board-list,
.cancel-step+.reservation-details,
.cancel-step+.details-wrap {
    margin: 0
}
.payment-wrap {
    position: relative;
    margin-top: 50px
}
.payment-wrap .flex-group {
    position: relative;
    margin: 0;
    z-index: 2
}
.payment-wrap .type-payment {
    position: relative;
    margin-top: 20px;
    padding-top: 120px;
    border-top: 1px solid #1f1b1c;
    border-bottom: 1px solid #e0e0e0
}
.payment-wrap .type-payment .payment-section {
    overflow: hidden
}
.payment-wrap .type-payment .payment-section:nth-child(1) label.btn-default-outline {
    left: calc(((100% - 39px) / 4 + 13px)*(1 - 1))
}
.payment-wrap .type-payment .payment-section:nth-child(2) label.btn-default-outline {
    left: calc(((100% - 39px) / 4 + 13px)*(2 - 1))
}
.payment-wrap .type-payment .payment-section:nth-child(3) label.btn-default-outline {
    left: calc(((100% - 39px) / 4 + 13px)*(3 - 1))
}
.payment-wrap .type-payment .payment-section:nth-child(4) label.btn-default-outline {
    left: calc(((100% - 39px) / 4 + 13px)*(4 - 1))
}
.payment-wrap .type-payment .payment-section label.btn-default-outline {
    position: absolute;
    top: 20px;
    width: calc((100% - 39px) / 4);
    height: 80px;
    font-size: 16px
}
.payment-wrap .type-payment .payment-section .custom-radio+label {
    display: flex;
    justify-content: center;
    align-items: center
}
.payment-wrap .type-payment .payment-section .custom-radio+label:after,
.payment-wrap .type-payment .payment-section .custom-radio+label:before {
    display: none
}
.payment-wrap .type-payment .payment-section .custom-radio+label i {
    margin: 2px 25px 0 0
}
.payment-wrap .type-payment .payment-section .custom-radio:checked+.btn-default-outline {
    border-color: #004d45;
    background-color: #004d45;
    color: #fff
}
.payment-wrap .type-payment .payment-section .custom-radio:checked~.payment-inner {
    display: block
}
.payment-wrap .type-payment .payment-section .payment-inner {
    display: none;
    width: 100%;
    padding: 30px;
    border-top: 1px solid #e0e0e0;
    background-color: #fbfbfb
}
.payment-wrap .type-payment .payment-section .payment-inner.payment-type {
    display: block
}
.payment-wrap .type-payment .payment-section .payment-inner.payment-type .form .col {
    flex: 1;
    margin: 0
}
.payment-wrap .type-payment .payment-section .payment-inner.payment-type .form .col input {
    width: 90%
}
.payment-wrap .type-payment .payment-section .payment-inner.payment-type .form .btn-guide {
    margin: 0 20px 0 0
}
.payment-wrap .type-payment .payment-section .payment-inner .txt {
    font-size: 13px;
    line-height: 24px
}
.payment-wrap .type-payment .payment-section .payment-inner .tit {
    margin: 25px 0 5px;
    font-size: 13px;
    line-height: 24px
}
.payment-wrap .type-payment .payment-section .payment-inner .form {
    display: flex;
    margin-top: 25px
}
.payment-wrap .type-payment .payment-section .payment-inner .form .col {
    margin-right: 60px
}
.payment-wrap .type-payment .payment-section .payment-inner .form .col .tit {
    margin-top: 0
}
.payment-wrap .type-payment .payment-section .payment-inner .form .col .form {
    margin: 0
}
.payment-wrap .type-payment .payment-section .payment-inner .form .col+.col {
    flex: 1;
    margin: 0
}
.payment-wrap .type-payment .payment-section .payment-inner .form input,
.payment-wrap .type-payment .payment-section .payment-inner .form select {
    width: 90px;
    height: 40px;
    margin-right: 5px
}
.payment-wrap .type-payment .payment-section .payment-inner .form .btn-guide {
    margin-left: 20px
}
.payment-wrap .type-payment .payment-section .payment-inner .form .w-95 {
    width: 95px
}
.payment-wrap .type-payment .payment-section .payment-inner .form .w-140 {
    width: 160px;
    margin-left: 30px
}
.payment-wrap .type-payment .payment-section .payment-inner .form .w-190 {
    width: 190px
}
.payment-wrap .type-payment .payment-section .payment-inner .form .w-220 {
    width: 220px
}
.payment-wrap .type-payment .payment-section .payment-inner .form .w-500 {
    width: 500px
}
.payment-wrap .type-payment .payment-section .payment-inner .account {
    margin-left: 10px;
    font-size: 13px;
    line-height: 24px
}
.payment-wrap .type-payment .payment-section .payment-inner .account li {
    margin-top: 20px;
    padding-left: 9px;
    text-indent: -9px
}
.payment-wrap .type-payment .payment-section .payment-inner .account li:first-child {
    margin: 0
}
.payment-wrap .type-payment .payment-section .payment-inner .account li span {
    display: block
}
.hpoint-box {
    margin-top: 50px
}
.hpoint-box .box-cont {
    margin-top: 20px;
    border-top: 1px solid #1f1b1c;
    border-bottom: 1px solid #e0e0e0;
    padding: 30px
}
.hpoint-box .box-cont .point input {
    width: 150px;
    height: 40px;
    margin-right: 8px;
    color: #1f1b1c;
    text-align: right
}
.hpoint-box .box-cont .point .check {
    margin-left: 30px
}
.hpoint-box .box-cont .point .txt {
    margin-left: 20px;
    color: #17af98;
    font-size: 13px
}
.hpoint-box .box-cont .dot-list {
    margin-top: 20px;
    color: #999;
    font-size: 12px;
    line-height: 20px
}
.hpoint-box .box-cont .btn-area {
    margin-top: 20px
}
.payment-amount-wrap {
    margin-top: 50px
}
.payment-amount-wrap .payment-amount-contents {
    display: flex;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #1f1b1c
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner {
    overflow: hidden;
    position: relative;
    flex: 1;
    min-height: 335px;
    margin-left: 15px;
    padding: 25px 30px 110px;
    border: 1px solid #e0e0e0;
    background: #fff;
    border-radius: 10px;
    font-size: 13px;
    line-height: 24px
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner:first-child {
    margin: 0
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .flex-group {
    margin: 0
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner ul li {
    display: flex;
    justify-content: space-between;
    font-size: 13px;
    line-height: 30px
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner ul li span {
    display: block
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner ul li span:last-child {
    text-align: right
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner ul+ul {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #e0e0e0
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .flex-group+ul,
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .ssstit+ul {
    margin-top: 20px
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .total {
    position: absolute;
    bottom: 0;
    left: 0;
    display: flex;
    justify-content: space-between;
    width: 100%;
    height: 95px;
    padding: 23px 30px;
    border-top: 1px dotted #c8c8c8;
    font-size: 13px;
    line-height: 24px
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .total strong {
    display: block;
    color: #17af98;
    font-weight: 400
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .total span {
    display: block
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .total span:last-child {
    text-align: right
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner.etc {
    background-color: #f5f7fa
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner.etc .total {
    border: none;
    background-color: #004d45;
    color: #fff
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner.etc .total strong {
    color: #fff;
    font-size: 20px
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .box-top {
    margin: -25px -30px 30px;
    padding: 25px 30px;
    background-color: #004d45;
    color: #fff
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .box-top .ssstit {
    color: #fff
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .box-top ul li {
    margin-top: 10px
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .box-top ul li:first-child {
    margin: 0
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .box-top ul li strong {
    font-size: 20px;
    font-weight: 400
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .custom-radio-group {
    width: 100%;
    margin: 15px 0
}
.payment-amount-wrap .payment-amount-contents .payment-amount-inner .custom-radio-group label {
    width: 50%;
    height: 50px
}
.payment-amount-wrap .payment-amount-contents .payment-left {
    width: 64%
}
.payment-amount-wrap .payment-amount-contents .payment-left .section {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px
}
.payment-amount-wrap .payment-amount-contents .payment-left .section:first-child {
    margin: 0
}
.payment-amount-wrap .payment-amount-contents .payment-left .section .num {
    position: relative;
    width: 100%;
    height: 50px;
    padding: 0 30px;
    border: 1px solid #e0e0e0;
    background-color: #fbfbfb;
    color: #1f1b1c;
    font-size: 13px;
    text-align: left
}
.payment-amount-wrap .payment-amount-contents .payment-left .section .num:before {
    content: "";
    position: absolute;
    right: 30px;
    top: 50%;
    width: 14px;
    height: 8px;
    margin-top: -4px;
    background-image: url("../images/common/icon_select.png");
    transition: all 0.2s cubic-bezier(0, 0, 0, 1)
}
.payment-amount-wrap .payment-amount-contents .payment-left .section .num+.payment-amount-inner {
    margin-left: 0
}
.payment-amount-wrap .payment-amount-contents .payment-left .section .payment-amount-inner {
    display: none;
    margin-top: 20px;
    margin-left: 25px
}
.payment-amount-wrap .payment-amount-contents .payment-left .section.selected .num:before {
    transform: rotate(180deg)
}
.payment-amount-wrap .payment-amount-contents .payment-left .section.selected .payment-amount-inner {
    display: block
}
.payment-amount-wrap .payment-amount-contents .payment-left+.payment-amount-inner {
    margin-left: 25px
}
.payment-amount-wrap .check-noti {
    margin-top: 20px;
    padding: 30px;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    background-color: #f6fffe;
    font-size: 13px
}
.payment-amount-wrap .check-noti div {
    margin-top: 15px
}
.box-complete {
    padding: 150px 0 120px;
    color: #1f1b1c;
    font-size: 16px;
    line-height: 30px;
    text-align: center
}
.box-complete .tit {
    display: block;
    margin-bottom: 40px;
    font-size: 30px;
    font-weight: 700
}
.ticket-download-wrap {
    line-height: 24px
}
.ticket-download-wrap .flex-group {
    margin: 0
}
.ticket-download-wrap .ticket-box {
    margin-top: 10px;
    border: 1px solid #e0e0e0
}
.ticket-download-wrap .ticket-box .ticket-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 50px;
    padding: 0 20px
}
.ticket-download-wrap .ticket-box .ticket-top button {
    position: relative;
    height: 100%;
    padding-right: 35px;
    font-size: 13px
}
.ticket-download-wrap .ticket-box .ticket-top button:before {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 14px;
    height: 8px;
    margin-top: -4px;
    background-image: url("../images/common/icon_select.png");
    transition: all 0.2s cubic-bezier(0, 0, 0, 1)
}
.ticket-download-wrap .ticket-box .ticket-cont {
    overflow: hidden
}
.ticket-download-wrap .ticket-box .ticket-cont-inner {
    display: none;
    justify-content: space-between;
    padding: 20px;
    border-top: 1px solid #e0e0e0;
    background-color: #fbfbfb
}
.ticket-download-wrap .ticket-box .ticket-cont .ticket-list {
    flex: 1;
    margin-top: 25px
}
.ticket-download-wrap .ticket-box .ticket-cont .ticket-list li a {
    display: block;
    line-height: 30px
}
.ticket-download-wrap .ticket-box .ticket-cont .ticket-list li a img {
    margin-right: 15px;
    vertical-align: -3px
}
.ticket-download-wrap .ticket-box .ticket-cont .ticket-info {
    width: 530px;
    margin-left: 50px
}
.ticket-download-wrap .ticket-box .ticket-cont .ticket-info .tit {
    margin: 0 0 10px 10px;
    color: #1f1b1c;
    font-size: 13px
}
.ticket-download-wrap .ticket-box .ticket-cont .ticket-info .cont {
    width: 530px;
    height: 160px;
    overflow-y: scroll;
    border: 1px solid #ddd;
    padding: 5px 0 5px 10px;
    font-size: 10px
}
.ticket-download-wrap .ticket-box .ticket-cont .ticket-info .cont.mCustomScrollbar {
    overflow-y: auto;
    max-height: 100%;
    flex: 1 1 auto
}
.ticket-download-wrap .ticket-box .ticket-cont .ticket-info .cont.mCustomScrollbar .mCustomScrollBox .mCSB_container {
    margin-right: 30px
}
.ticket-download-wrap .ticket-box .ticket-cont .ticket-info .cont.mCustomScrollbar .mCustomScrollBox .mCSB_scrollTools {
    right: 10px
}
.ticket-download-wrap .ticket-box.selected .ticket-top button:before {
    transform: rotate(180deg)
}
.ticket-download-wrap .ticket-box.selected .ticket-cont-inner {
    display: flex
}
.account-info-cont {
    display: flex;
    flex-wrap: wrap
}
.account-info-cont .section {
    display: flex;
    align-items: center;
    width: 100%;
    margin-top: 5px;
    font-size: 0;
    line-height: 0
}
.account-info-cont .section:first-child {
    margin: 0
}
.account-info-cont .section .col {
    width: calc((100% - 10px) / 2)
}
.account-info-cont .section .col+.col {
    margin-left: 10px
}
.account-info-cont .section .input-file {
    max-width: 100%
}
.account-info-cont select,
.account-info-cont input {
    width: 100%;
    height: 40px
}
.account-info-cont input[type=checkbox],
.account-info-cont input[type=file] {
    width: 1px;
    height: 1px
}
.customer-wrap .container-top-group .ctab {
    margin-bottom: 20px
}
.customer-wrap .container-top-group .ctab li a {
    height: 70px;
    border-color: #eee;
    font-size: 18px
}
.customer-wrap .container-top-group .ctab li.selected a {
    background-color: #004d45
}
.customer-wrap .flex-group {
    margin: 0
}
.customer-wrap .notice-faq {
    margin-top: 20px;
    border-top: 1px solid #1f1b1c
}
.customer-wrap .notice-faq li .inner {
    display: flex;
    align-items: center;
    width: 100%;
    height: 70px;
    border-bottom: 1px solid #e0e0e0;
    text-align: left;
    line-height: 22px
}
.customer-wrap .notice-faq li .inner .num {
    display: block;
    width: 125px;
    text-align: center
}
.customer-wrap .notice-faq li .inner .subject {
    display: block;
    position: relative;
    flex: 1;
    min-width: 100px
}
.customer-wrap .notice-faq li .inner .subject span {
    display: inline-block;
    max-width: 90%;
    vertical-align: middle;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.customer-wrap .notice-faq li .inner .subject img {
    margin-left: 15px;
    vertical-align: middle
}
.customer-wrap .notice-faq li .inner .date {
    display: block;
    width: 165px;
    text-align: center
}
.customer-wrap .notice-faq li.notice a {
    color: #1f1b1c;
    background-color: #f6fffe
}
.customer-wrap .notice-faq.type-faq {
    margin-top: 50px
}
.customer-wrap .notice-faq.type-faq li .inner:before {
    content: "";
    display: block;
    width: 100px;
    height: 100%;
    background-image: url("../images/common/icon_q.png");
    background-size: 19px 23px;
    background-repeat: no-repeat;
    background-position: center center
}
.customer-wrap .notice-faq.type-faq li .inner .num {
    width: 80px;
    color: #1f1b1c
}
.customer-wrap .notice-faq.type-faq li .inner .subject {
    padding-left: 40px
}
.customer-wrap .notice-faq.type-faq li .answer {
    overflow: hidden
}
.customer-wrap .notice-faq.type-faq li .answer-inner {
    position: relative;
    padding: 30px 55px 50px 220px;
    border-bottom: 1px solid #e0e0e0;
    background-color: #fbfbfb;
    line-height: 24px;
    max-height: 0;
    margin-top: -1000px;
    transition: all 0.5s cubic-bezier(1, 0, 1, 1)
}
.customer-wrap .notice-faq.type-faq li .answer-inner:before {
    content: "";
    position: absolute;
    top: 34px;
    left: 130px;
    width: 18px;
    height: 18px;
    background-image: url("../images/common/icon_a.png")
}
.customer-wrap .notice-faq.type-faq li.selected .answer-inner {
    max-height: 600px;
    margin-top: 0;
    transition: all 0.4s cubic-bezier(0, 0, 0, 1)
}
.customer-wrap .notice-view .view-top {
    display: flex;
    height: 70px;
    align-items: center;
    border-top: 1px solid #1f1b1c;
    border-bottom: 1px solid #e0e0e0;
    background-color: #fbfbfb
}
.customer-wrap .notice-view .view-top .num {
    display: block;
    width: 124px;
    color: #1f1b1c;
    text-align: center
}
.customer-wrap .notice-view .view-top .subject {
    display: block;
    flex: 1;
    color: #1f1b1c
}
.customer-wrap .notice-view .view-top .date {
    display: block;
    width: 165px;
    text-align: center
}
.customer-wrap .notice-view .view-cont {
    position: relative;
    min-height: 370px;
    padding: 30px 30px 100px 124px;
    border-bottom: 1px solid #e0e0e0;
    line-height: 24px
}
.customer-wrap .notice-view .view-cont .file {
    position: absolute;
    left: 124px;
    bottom: 30px
}
.customer-wrap .notice-view .view-cont .file a {
    display: block;
    color: #1f1b1c;
    padding-left: 30px;
    background-image: url("../images/common/icon_file.png");
    background-repeat: no-repeat;
    background-position: left center;
    text-decoration: underline
}
.customer-wrap .notice-view .prev-next-list {
    margin-top: -1px;
    border-top: 1px solid #e0e0e0
}
.customer-wrap .notice-view .prev-next-list li {
    display: flex;
    align-items: center;
    height: 70px;
    border-bottom: 1px solid #e0e0e0
}
.customer-wrap .notice-view .prev-next-list li span {
    display: block;
    width: 124px;
    text-align: center
}
.customer-wrap .notice-view .prev-next-list li strong {
    display: block;
    flex: 1;
    font-weight: 400
}
.customer-wrap .notice-view .prev-next-list li em {
    display: block;
    width: 165px;
    text-align: center
}
.promotion-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: -50px
}
.promotion-list li {
    width: calc((100% - 60px) / 2);
    margin-top: 50px
}
.promotion-list li a {
    display: block
}
.promotion-list li a:hover .tit {
    color: #17af98;
    text-decoration: underline
}
.promotion-list li .img {
    display: block;
    width: 100%;
    height: 220px;
    border: 1px solid #e0e0e0;
    background-color: #f5f5f5
}
.promotion-list li .img img {
    width: 100%;
    height: 100%
}
.promotion-list li .tit {
    display: block;
    color: #1f1b1c;
    margin-top: 25px;
    font-size: 20px;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.promotion-list li .txt {
    display: block;
    margin-top: 10px;
    color: #999;
    font-size: 13px
}
.promotion-view .view-top {
    position: relative
}
.promotion-view .view-top .subject {
    display: block;
    padding-right: 110px;
    color: #1f1b1c;
    font-size: 20px;
    line-height: 30px;
    font-weight: 500
}
.promotion-view .view-top .date {
    display: block;
    margin-top: 15px;
    font-size: 13px;
    color: #999
}
.promotion-view .view-top button {
    position: absolute;
    right: 0;
    top: 0;
    width: 45px;
    height: 45px;
    padding: 0;
    border-radius: 100%;
    font-size: 12px;
    font-weight: 500;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px;
    background-image: url("../images/common/icon_link_off.png");
    background-size: 21px 24px
}
.promotion-view .view-top button:hover {
    color: #fff;
    border-color: #004d45;
    background-color: #004d45;
    background-image: url("../images/common/icon_link_on.png")
}
.promotion-view .view-cont {
    padding: 50px 0;
    line-height: 24px
}
.promotion-view .view-cont .img {
    display: block;
    width: 100%;
    margin-bottom: 50px
}
.promotion-view .btn-area {
    margin-top: 50px;
    text-align: center
}
.promotion-view .btn-area a {
    height: 80px;
    padding: 0 65px;
    font-size: 16px
}
.railtel-info {
    color: #c8c8c8;
    font-size: 30px;
    font-weight: 500;
    line-height: 50px
}
.railtel-list {
    display: flex;
    flex-wrap: wrap;
    margin: 150px 0
}
.railtel-list li {
    width: calc((100% - 75px) / 4);
    margin: 100px 0 0 25px
}
.railtel-list li:nth-child(4n + 1) {
    margin-left: 0
}
.railtel-list li a {
    display: block;
    overflow: hidden;
    width: 100%;
    height: 100px;
    border: 1px solid #fff
}
.railtel-list li a img {
    width: 100%;
    height: 100%
}
.railtel-list li a:hover {
    border-color: #e0e0e0
}
.railtel-view .view-top {
    display: flex
}
.railtel-view .view-top .img {
    width: 250px;
    height: 165px;
    margin-right: 50px
}
.railtel-view .view-top .img img {
    width: 100%;
    height: 100%
}
.railtel-view .view-top .txt {
    flex: 1;
    min-width: 100px
}
.railtel-view .view-top .txt .logo {
    overflow: hidden;
    width: 125px;
    height: 50px;
    margin: 15px 0 0
}
.railtel-view .view-top .txt .logo img {
    width: 100%;
    height: 100%
}
.railtel-view .view-top .txt .tit {
    display: block;
    color: #1f1b1c;
    font-size: 30px;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.railtel-view .view-top .icon {
    margin-top: 30px
}
.railtel-view .view-top .icon span {
    display: inline-block;
    width: 55px;
    height: 25px;
    margin-right: 3px;
    border: 1px solid #17af98;
    border-radius: 3px;
    color: #17af98;
    font-size: 12px;
    line-height: 23px;
    text-align: center
}
.railtel-view .view-top .icon span.section {
    border-color: #17af98;
    color: #17af98
}
.railtel-view .view-top .icon span.pass {
    border-color: #fa4156;
    color: #fa4156
}
.railtel-view .view-middle {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 80px
}
.railtel-view .view-middle .sstit {
    margin-bottom: 20px
}
.railtel-view .view-middle .view-middle-inner {
    width: 540px
}
.railtel-view .view-middle .view-middle-inner .route-list {
    width: 100%
}
.railtel-view .view-middle .view-middle-inner .route-list li {
    margin-top: 2px
}
.railtel-view .view-middle .view-middle-inner .route-list li:first-child {
    margin: 0
}
.railtel-view .view-middle .view-middle-inner .route-list li a {
    display: flex;
    align-items: center;
    width: 100%;
    height: 40px;
    padding-left: 30px;
    border: 1px solid #edeeef;
    background-color: #fafbfc;
    border-radius: 5px;
    color: #1f1b1c;
    font-size: 12px
}
.railtel-view .view-middle .view-middle-inner .route-list li a strong {
    display: block;
    width: 155px;
    font-weight: 400;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.railtel-view .view-middle .view-middle-inner .route-list li a span {
    display: block;
    width: 70px;
    text-align: center
}
.railtel-view .view-middle .view-middle-inner .route-list li a em {
    display: block;
    flex: 1;
    color: #797979;
    text-align: center
}
.railtel-view .view-middle .view-middle-inner .route-list li.selected a,
.railtel-view .view-middle .view-middle-inner .route-list li a:hover {
    background-color: #17af98;
    color: #fff
}
.railtel-view .view-middle .view-middle-inner .route-list li.selected a em,
.railtel-view .view-middle .view-middle-inner .route-list li a:hover em {
    color: #fff
}
.railtel-view .view-middle .view-middle-inner.time .sstit {
    padding-left: 26px;
    background: url("../images/common/icon_time02.png") no-repeat left center
}
.railtel-view .view-middle .view-middle-inner.map .sstit {
    padding-left: 33px;
    background: url("../images/common/icon_location02.png") no-repeat left center
}
.railtel-view .view-middle .view-middle-inner .route-map {
    width: 100%;
    height: 580px;
    background-color: #fafbfc;
    border: 1px solid #edeeef;
    border-radius: 5px
}
.railtel-view .view-cont {
    margin-top: 50px
}
.railtel-view .view-cont-inner {
    margin-top: 20px;
    padding: 30px;
    border: 1px solid #edeeef;
    background-color: #fafbfc;
    line-height: 24px
}
.railtel-view .view-cont-inner .tit {
    color: #1f1b1c;
    font-weight: 400
}
.railtel-view .view-photo {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 50px
}
.railtel-view .view-photo div {
    width: 340px;
    height: 225px
}
.railtel-view .view-photo div img {
    width: 100%;
    height: 100%
}
.btn-area-wrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 50px
}
.btn-area-wrap .box-l {
    display: flex;
    align-items: center
}
.btn-area-wrap .box-l+.box-r {
    width: auto
}
.btn-area-wrap .box-r {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    width: 100%
}
.btn-area-wrap .box-r .txt {
    margin-right: 20px;
    font-size: 13px;
    line-height: 24px;
    text-align: right
}
.btn-area-wrap .box-r .txt-r {
    width: 100%;
    margin-top: 20px;
    text-align: right
}
.btn-area-wrap .btn-c {
    width: 100%;
    margin: 0
}
.btn-area-wrap [class^=btn-]+[class^=btn-] {
    margin-left: 10px
}
.btn-c {
    margin-top: 30px;
    text-align: center
}
.board-list {
    width: 100%;
    margin-top: 20px;
    border-top: 1px solid #1f1b1c;
    table-layout: fixed
}
.board-list.type-c td {
    height: 50px;
    padding: 10px 0;
    font-size: 13px;
    text-align: center
}
.board-list.board-type {
    border-bottom: 1px solid #e0e0e0
}
.board-list.board-type tbody tr:first-child td {
    padding-top: 26px
}
.board-list.board-type tbody tr:last-child td {
    padding-bottom: 26px
}
.board-list.board-type td {
    height: auto;
    padding: 10px;
    border-bottom: none;
    font-size: 13px;
    text-align: center
}
.board-list.board-type td.card-type {
    font-size: 12px
}
.board-list.board-type td.card-type strong {
    margin-right: 10px;
    color: #1f1b1c;
    font-size: 13px;
    font-weight: 400
}
.board-list.board-type02 tr td:first-child {
    border-left: none
}
.board-list.board-type02 td {
    overflow: visible;
    padding: 20px;
    border-left: 1px solid #e0e0e0;
    font-size: 13px;
    text-align: center;
    vertical-align: top;
    color: #1f1b1c
}
.board-list.board-type02 tfoot td {
    padding: 20px 30px;
    background-color: #f5f7fa;
    color: #1f1b1c
}
.board-list.board-type02 tfoot td .total-price {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center
}
.board-list.board-type02 tfoot td .total-price .price {
    color: #999
}
.board-list.board-type02 tfoot td .total-price .price strong {
    color: #17af98;
    font-size: 20px;
    font-weight: 500
}
.board-list.edit-type .subject {
    padding-left: 10px;
    padding-right: 10px
}
.board-list.edit-type .details-wrap .details-box {
    padding-left: 50px
}
.board-list.edit-type .board-section-wrap .radio-check {
    position: absolute;
    left: -40px;
    top: 15px
}
.board-list th {
    border-bottom: 1px solid #e0e0e0;
    background-color: #fbfbfb;
    padding: 10px 0;
    color: #1f1b1c;
    font-size: 13px;
    font-weight: 400
}
.board-list td {
    overflow: hidden;
    padding: 23px 10px;
    border-bottom: 1px solid #e0e0e0;
    background-color: #fff;
    vertical-align: middle
}
.board-list td.td-l {
    padding-left: 20px;
    text-align: left
}
.board-list td.td-c {
    text-align: center
}
.board-list td.td-r {
    text-align: right
}
.board-list td.subject {
    padding-left: 30px;
    padding-right: 30px;
    text-align: left
}
.board-list td.subject button {
    text-align: left
}
.board-list td.subject span {
    font-size: 12px;
    line-height: 20px
}
.board-list td.subject .num {
    display: block;
    color: #1f1b1c;
    font-size: 14px;
    font-weight: 400
}
.board-list td.price {
    color: #999;
    font-size: 12px;
    text-align: right
}
.board-list td.price strong {
    display: block;
    color: #1f1b1c;
    font-size: 14px;
    font-weight: 400
}
.board-list td.price02 {
    padding-left: 30px;
    padding-right: 30px;
    background-color: #f6fffe;
    text-align: left
}
.board-list td.price02 ul li {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    line-height: 28px
}
.board-list td.price02 ul li span {
    color: #797979
}
.board-list td.price02 ul li div {
    color: #999
}
.board-list td.price02 ul li div strong {
    color: #1f1b1c;
    font-size: 13px;
    font-weight: 400
}
.board-list td.btn {
    padding-left: 30px;
    padding-right: 30px;
    text-align: center
}
.board-list td.btn a {
    width: 100%
}
.board-list td.btn a.btn-default-outline:hover {
    color: #fff;
    border-color: #004d45;
    background-color: #004d45
}
.board-list td.name {
    color: #1f1b1c
}
.board-list td.date {
    color: #999;
    font-size: 12px;
    text-align: left
}
.board-list td.date em,
.board-list td.date span,
.board-list td.date strong {
    display: block;
    font-weight: 400
}
.board-list td.date strong {
    margin-bottom: 8px
}
.board-list td.exchange-rate {
    color: #bfbfbf;
    font-size: 12px
}
.board-list td.exchange-rate strong {
    display: block;
    color: #1f1b1c;
    font-size: 13px;
    font-weight: 400
}
.board-list td.total {
    position: relative;
    color: #bfbfbf;
    font-size: 12px;
    text-align: right
}
.board-list td.total strong {
    display: block;
    color: #1f1b1c;
    font-size: 16px;
    font-weight: 500
}
.board-list td.input {
    position: relative
}
.board-list td.input input {
    width: 60%;
    height: 40px;
    text-align: center
}
.board-list td.input:before {
    content: "+";
    position: absolute;
    left: -11px;
    top: 30px;
    width: 22px;
    height: 22px;
    background: #004d45;
    border-radius: 100%;
    color: #fff;
    font-size: 22px;
    font-weight: 500;
    line-height: 20px
}
.board-list td.input+.total:after {
    content: "=";
    position: absolute;
    left: -11px;
    top: 30px;
    width: 22px;
    height: 22px;
    background: #004d45;
    border-radius: 100%;
    color: #fff;
    font-size: 22px;
    font-weight: 500;
    line-height: 20px;
    text-align: center
}
.board-list td .section {
    display: block;
    margin-top: 15px
}
.board-list td .btn-delete {
    display: inline-block;
    width: 20px;
    height: 20px;
    background-image: url("../images/common/btn_delete.png");
    vertical-align: middle;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
.board-list td>.btn-more:after {
    content: "";
    display: inline-block;
    width: 10px;
    height: 6px;
    margin-left: 10px;
    background-image: url("../images/common/icon_select04.png");
    background-size: 14px 16px;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
.board-list td .file-name {
    display: block
}
.board-list td .label-outline02 {
    min-width: auto;
    margin-left: 10px
}
.board-list tr:not([data-toggle=wrap]) td.non-border {
    border-bottom: none
}
.board-list tr.details {
    overflow: hidden;
    font-size: 12px
}
.board-list tr.details > td {
    height: auto;
    padding: 0;
    border: none
}
.board-list tr.details > td .details-wrap {
    border-top: none;
    max-height: 0;
    margin-top: -1000px;
    transition: all 0.5s cubic-bezier(1, 0, 1, 1)
}
.board-list tr.details > td .data-a {
    position: relative;
    margin-top: 20px
}
.board-list tr.details > td .data-a .radio-check {
    position: absolute;
    left: -40px
}
.board-list tr.details > td .board-list {
    margin: 10px 0
}
.board-list tr.details .row {
    display: flex;
    align-items: center;
    padding: 20px 0;
    border-top: 1px solid #e0e0e0
}
.board-list tr.details .row:first-child {
    border: none
}
.board-list tr.details .col {
    flex: 1
}
.board-list tr.details .col.num {
    flex: none;
    width: 180px;
    padding-left: 60px;
    text-align: left
}
.board-list tr.details .col.location {
    flex: none;
    width: 200px;
    text-align: left
}
.board-list tr.details .col.location span {
    margin-right: 5px
}
.board-list tr.details .col.price {
    flex: none;
    width: 120px;
    padding-right: 50px;
    color: #999;
    text-align: right
}
.board-list tr.details .col.price strong {
    display: block;
    color: #1f1b1c;
    font-weight: 400
}
.board-list tr.selected .btn-more {
    background-color: #004d45;
    color: #fff
}
.board-list tr.selected .btn-more:after {
    background-image: url("../images/common/icon_select05.png")
}
.board-list tr.selected .btn-icon-more:before {
    transform: rotate(180deg)
}
.board-list tr.selected+tr .details-wrap {
    max-height: 2000px;
    margin-top: 0;
    transition: all 0.4s cubic-bezier(0, 0, 0, 1)
}
.board-list .flex-group {
    width: 100%;
    margin: 0
}
.board-list .flex-group label {
    margin-right: 20px
}
.stit+.board-list,
.stit+.board-info {
    margin-top: -1px
}
.board-info {
    border-top: 1px solid #1f1b1c;
    color: #1f1b1c;
    font-size: 13px;
    line-height: 26px
}
.board-info.board-type {
    font-size: 14px;
    border-bottom: 1px solid #e0e0e0
}
.board-info.board-type tr:first-child th {
    padding-top: 30px
}
.board-info.board-type tr:first-child td {
    padding-top: 20px
}
.board-info.board-type tr:last-child th {
    padding-bottom: 30px
}
.board-info.board-type tr:last-child td {
    padding-bottom: 20px
}
.board-info.board-type tr.type-last th,
.board-info.board-type tr.type-last td {
    padding-bottom: 20px;
    vertical-align: top
}
.board-info.board-type tr.type-last+tr {
    border-top: 1px solid #e0e0e0
}
.board-info.board-type tr.type-last+tr th {
    padding-top: 30px
}
.board-info.board-type tr.type-last+tr td {
    padding-top: 20px
}
.board-info.board-type th {
    height: auto;
    padding: 17px 30px;
    border: none
}
.board-info.board-type td {
    height: auto;
    padding: 5px 30px 5px 0;
    border: none;
    color: #797979;
    vertical-align: top
}
.board-info.board-type.view tr:first-child th,
.board-info.board-type.view tr:first-child td {
    padding-top: 23px
}
.board-info.board-type.view tr:last-child th,
.board-info.board-type.view tr:last-child td {
    padding-bottom: 25px
}
.board-info.board-type.view tr.type-last th,
.board-info.board-type.view tr.type-last td {
    padding-bottom: 23px
}
.board-info.board-type.view tr.type-last+tr th,
.board-info.board-type.view tr.type-last+tr td {
    padding-top: 23px;
    padding-bottom: 23px
}
.board-info.board-type.view th,
.board-info.board-type.view td {
    padding-top: 7px;
    padding-bottom: 7px
}
.board-info:not(.board-type).view th,
.board-info:not(.board-type).view td {
    height: 54px;
    padding-top: 13px;
    padding-bottom: 13px;
    vertical-align: top
}
.board-info th {
    height: 71px;
    padding: 22px 0 22px 30px;
    border-bottom: 1px solid #e0e0e0;
    font-weight: 400;
    text-align: left
}
.board-info td {
    height: 71px;
    padding: 10px 100px 10px 0;
    border-bottom: 1px solid #e0e0e0;
    vertical-align: middle
}
.board-info td .flex-box input {
    width: 100%;
    font-size: 13px
}
.board-info td .txt-outline {
    display: block;
    width: 90px;
    height: 30px;
    border: 1px solid #666;
    border-radius: 15px;
    text-align: center;
    line-height: 28px
}
.board-info td .input-form .section {
    width: 320px;
    margin-top: 10px
}
.board-info td .input-form .section:first-child {
    margin: 0
}
.board-info td .input-form .section input {
    width: 100%
}
.board-info td .input-form .invalid-feedback {
    margin-bottom: -5px
}
.board-info td .input-form .msg {
    margin-top: 5px;
    font-size: 12px
}
.board-info td textarea {
    width: 100%
}
.data-a {
    width: 100%;
    border-top: 1px solid #444;
    border-bottom: 1px solid #e0e0e0;
    table-layout: fixed
}
.data-a.type-line th,
.data-a.type-line td {
    border-right: 1px solid #e0e0e0
}
.data-a.type-line td {
    vertical-align: top
}
.data-a:not(.type-line) th:first-child,
.data-a:not(.type-line) td:first-child {
    border-left: none
}
.data-a.vertical-top td {
    vertical-align: top
}
.data-a th {
    height: 40px;
    padding: 7px 10px;
    border-left: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    background-color: #fbfbfb;
    color: #1f1b1c;
    font-size: 13px;
    font-weight: 400;
    vertical-align: middle
}
.data-a td {
    padding: 15px 10px;
    border-left: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    background-color: #fff;
    font-size: 13px;
    line-height: 20px;
    text-align: center;
    vertical-align: middle
}
.data-a td.td-l {
    padding-left: 20px;
    padding-right: 20px;
    text-align: left
}
.data-a td.td-r {
    text-align: right
}
.data-a td select,
.data-a td input[type=text],
.data-a td input[type=password],
.data-a td input[type=number],
.data-a td input[type=email] {
    width: 100%;
    height: 40px;
    font-size: 13px
}
.data-a td .flex-box {
    display: flex;
    align-items: center;
    width: 100%
}
.data-a td .flex-box .col4 {
    width: calc((100% - 5px)*.45)
}
.data-a td .flex-box .col6 {
    width: calc((100% - 5px)*.55)
}
.data-a td .flex-box div+div {
    margin-left: 5px
}
.data-a td > input[type=radio].custom-radio+label {
    vertical-align: top
}
.data-a td>input[type=radio].custom-radio+label.type-block:before {
    display: block;
    margin: 0 auto 5px
}
.data-a td>input[type=radio].custom-radio+label.type-block:after {
    left: 50%;
    margin-left: -5px
}
.data-a td .custom-radio-group {
    display: flex;
    width: 100%
}
.data-a td .custom-radio-group label {
    flex: 1;
    min-width: auto !important
}
.data-a td .custom-radio-group.input-box {
    margin-top: 15px
}
.data-a td .input-box {
    margin: -5px 0
}
.data-a td .input-box+.input-box {
    margin-top: 10px
}
.data-a .t-light-block {
    display: block;
    color: #999;
    font-size: 12px
}
.data-b {
    width: 100%;
    margin-top: 50px;
    table-layout: fixed;
    font-size: 13px
}
.data-b th {
    padding: 11px 20px;
    border-left: 1px solid #1f1b1c;
    background-color: #004d45;
    color: #fff;
    font-weight: 400;
    vertical-align: middle
}
.data-b th:last-child {
    border-right: 1px solid #1f1b1c
}
.data-b th.th-l {
    text-align: left
}
.data-b td {
    padding: 17px 20px;
    border-left: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    background-color: #f5f7fa;
    color: #1f1b1c;
    text-align: right
}
.data-b td:last-child {
    border-right: 1px solid #e0e0e0
}
.data-b td.td-l {
    text-align: left
}
.data-b td .section {
    margin-top: 10px
}
.data-b tbody tr:nth-child(odd) td {
    background-color: #fff
}
.data-c {
    width: 100%;
    margin-top: 20px;
    table-layout: fixed;
    font-size: 12px;
    line-height: 18px
}
.data-c.type-line td {
    border-left: 1px solid #e0e0e0
}
.data-c.type-line td:last-child {
    border-right: 1px solid #e0e0e0
}
.data-c.type-line2 th {
    border-left: 1px solid #1f1b1c
}
.data-c.type-line2 th:first-child {
    border-left: none
}
.data-c.type-line2 th:last-child {
    border-right: none
}
.data-c.type-line2 td {
    border-left: 1px solid #e0e0e0
}
.data-c.type-line2 td:first-child {
    border-left: none
}
.data-c.type-line2 td:last-child {
    border-right: none
}
.data-c.type-bg th {
    background-color: #1b2d4c
}
.data-c.type-bg td {
    padding-top: 20px;
    padding-bottom: 20px;
    line-height: 16px;
    vertical-align: top
}
.data-c.type-bg td .row {
    line-height: 24px
}
.data-c tr.details > td {
    height: auto;
    padding: 0;
    border-bottom: none
}
.data-c tr.details > td .details-wrap {
    border-top: none;
    max-height: 0;
    margin-top: -1000px;
    transition: all 0.5s cubic-bezier(1, 0, 1, 1)
}
.data-c tr.details > td .details-wrap .details-box {
    padding: 10px
}
.data-c tr.details > td .details-wrap .data-c {
    margin: 0
}
.data-c tr.details > td .details-wrap .data-c td {
    background-color: #fff
}
.data-c tr.selected td .btn-toggle:before {
    transform: rotate(180deg)
}
.data-c tr.selected+tr .details-wrap {
    max-height: 2000px;
    margin-top: 0;
    transition: all 0.4s cubic-bezier(0, 0, 0, 1)
}
.data-c th {
    padding: 11px 20px;
    background-color: #004d45;
    color: #fff;
    font-weight: 400;
    vertical-align: middle
}
.data-c th.th-l {
    text-align: left
}
.data-c th.th-r {
    text-align: right
}
.data-c td {
    overflow: hidden;
    height: 50px;
    padding: 9px 20px 10px;
    border-bottom: 1px solid #e0e0e0;
    vertical-align: middle;
    text-align: center
}
.data-c td:first-child {
    border-left: 1px solid #e0e0e0
}
.data-c td:last-child {
    border-right: 1px solid #e0e0e0
}
.data-c td.td-l {
    text-align: left
}
.data-c td.group-bg {
    background-color: #f5f7fa
}
.data-c td.group-bg2 {
    background-color: #f6fffe
}
.data-c td.type-balloon {
    overflow: visible
}
.data-c td .btn-toggle {
    position: relative;
    display: block;
    width: 100%;
    height: 30px;
    padding-left: 35px;
    text-align: left;
    font-size: 0
}
.data-c td .btn-toggle:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 14px;
    height: 8px;
    margin-top: -4px;
    background-image: url("../images/common/icon_select.png");
    transition: all 0.2s cubic-bezier(0, 0, 0, 1)
}
.data-c td .balloon-wrap {
    position: relative
}
.data-c td .balloon-wrap a:hover+.balloon-box {
    display: block
}
.data-c td .balloon-wrap .balloon-box {
    display: none;
    position: absolute;
    top: 30px;
    left: 50%;
    padding: 20px;
    background: rgba(23, 175, 152, .9);
    border-radius: 20px;
    color: #fff;
    font-size: 13px;
    white-space: nowrap;
    transform: translateX(-50%)
}
.data-c td .balloon-wrap .balloon-box:before {
    content: "";
    position: absolute;
    top: -10px;
    left: 50%;
    margin-left: -5px;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 10px solid rgba(23, 175, 152, .9)
}
.data-c td .balloon-wrap .balloon-box span {
    color: #fffa76
}
.data-c .align-l {
    text-align: left
}
.data-c .align-r {
    text-align: right
}
.data-c .row {
    display: flex
}
.data-c .row .col {
    width: 33%
}
.data-c .row .col-1 {
    width: 8.33333333%
}
.data-c .row .col-2 {
    width: 16.66666667%
}
.data-c .row .col-3 {
    width: 25%
}
.data-c .row .col-4 {
    width: 33.33333333%
}
.data-c .row .col-5 {
    width: 41.66666667%
}
.data-c .row .col-6 {
    width: 50%
}
.data-c .row .col-7 {
    width: 58.33333333%
}
.data-c .row .col-8 {
    width: 66.66666667%
}
.data-c .row .col-9 {
    width: 75%
}
.data-c .row .col-10 {
    width: 83.33333333%
}
.data-c .row .col-11 {
    width: 91.66666667%
}
.data-c .row .col-12 {
    width: 100%
}
.data-c .route-wrap+.row {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #e0e0e0
}
.search-container {
    position: relative;
    padding: 30px 30px 80px
}
.search-container .ctab {
    flex-wrap: wrap;
    margin-bottom: 40px
}
.search-container .ctab li {
    flex: none
}
.search-container .ctab li a {
    width: 110px;
    height: 40px
}
.search-container .ctab+.search-check {
    position: absolute;
    right: 30px;
    top: 23px;
    margin: 0
} /*2023-06-16 수정 (원 : top: 40px;) */
.search-container .ctab+.search-check label {
    margin-left: 5px; /*2023-06-19 조지민 (원 : margin-left: 10px;) */
}
.search-container .search-check {
    margin-bottom: 30px
}
.search-container .search-check:first-child {
    position: absolute;
    right: 30px;
    top: 30px;
    margin: 0;
    z-index: 1
}
.search-container .content-section {
    position: relative;
    display: flex;
    flex-wrap: wrap
}
.search-container .content-section+.content-section {
    margin-top: 20px
}
.search-container .content-section .btn-switch {
    position: absolute;
    right: 30px;
    top: 38px;
    width: 40px;
    height: 40px;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px;
    background-color: #004d45;
    background-image: url("../images/common/icon_switch.png");
    background-size: 14px 16px;
    border-radius: 100%;
    transition: all 0.5s cubic-bezier(0, 0, 0, 1)
}
.search-container .content-section .btn-switch:hover {
    transform: rotate(-180deg)
}
.search-container .content-section .section-col {
    width: 50%;
    margin-right: -1px
}
.search-container .content-section .section-col .section-inner .datepicker input,
.search-container .content-section .section-col .section-inner .dropdown input {
    padding: 0;
    background-image: none !important;
    text-align: center
}
.search-container .content-section .section-col .section-inner .datepicker+.dropdown,
.search-container .content-section .section-col .section-inner .dropdown+.dropdown {
    width: 45%
}
.search-container .content-section .title {
    display: block;
    width: 100%;
    margin-bottom: 15px;
    color: #1f1b1c;
    font-weight: 400
}
.search-container .content-section .section-inner {
    position: relative;
    display: flex;
    width: 100%;
    margin-top: -1px
}
.search-container .content-section .section-inner > input {
    display: block;
    width: 100%;
    height: 60px;
    padding: 0 30px 3px;
    color: #1f1b1c;
    font-size: 20px;
    font-weight: 700
}
.search-container .content-section .section-inner > input::-moz-placeholder {
    color: #999;
    font-size: 15px;
    font-weight: 400
}
.search-container .content-section .section-inner>input:-ms-input-placeholder {
    color: #999;
    font-size: 15px;
    font-weight: 400
}
.search-container .content-section .section-inner > input::placeholder {
    color: #999;
    font-size: 15px;
    font-weight: 400
}
.search-container .content-section .section-inner > div {
    flex: 1;
    position: relative
}
.search-container .content-section .section-inner > div.num {
    padding: 18px 0 0 30px
}
.search-container .content-section .section-inner > div > input {
    position: relative;
    width: 100%;
    height: 60px;
    padding: 0 30px;
    background-color: #fff;
    color: #1f1b1c;
    font-size: 15px;
    text-align: left;
    cursor: pointer
}
.search-container .content-section .section-inner > div > input::-moz-placeholder {
    color: #999
}
.search-container .content-section .section-inner>div>input:-ms-input-placeholder {
    color: #999
}
.search-container .content-section .section-inner > div > input::placeholder {
    color: #999
}
.search-container .content-section .section-inner > div > input.lg {
    font-size: 20px;
    font-weight: 700
}
.search-container .content-section .section-inner > div.datepicker > input {
    background-position: right 30px center;
    background-image: url("../images/common/icon_calendar.png") !important
}
.search-container .content-section .section-inner > div.datepicker+.dropdown {
    flex: none;
    width: 37%
}
.search-container .content-section .section-inner > div.datepicker+.dropdown input {
    border-left: none
}
.search-container .content-section .section-inner > div.dropdown > input {
    background-size: 14px 8px;
    background-position: right 30px center;
    background-repeat: no-repeat;
    background-image: url("../images/common/icon_select.png")
}
.search-container .dropdown-box {
    overflow: hidden;
    position: absolute !important;
    bottom: 1px;
    left: 0;
    transform: translateY(100%);
    width: 100%;
    min-width: 160px;
    max-height: 220px;
    padding: 20px 10px 20px 30px;
    border: 1px solid #e0e0e0;
    background-color: #fff;
    line-height: 1.5;
    z-index: 5
}
.search-container .dropdown-list li a {
    display: block;
    padding-left: 23px;
    background-size: 13px 13px;
    background-position: left 9px;
    background-repeat: no-repeat;
    color: #1f1b1c;
    line-height: 30px
}
.search-container .dropdown-list.time li a {
    background-image: url("../images/common/icon_time.png")
}
.search-container .dropdown-list.location li a {
    background-size: 10px 15px;
    background-image: url("../images/common/icon_location.png")
}
.search-container .dropdown-list.location li a strong {
    color: #17af98;
    font-weight: 400
}
.search-container .personnel-box {
    position: absolute;
    top: 59px;
    width: 100%;
    padding-bottom: 50px;
    border: 1px solid #e0e0e0;
    background-color: #fff;
    line-height: 1.5;
    z-index: 5
}
.search-container .personnel-box .section-box {
    padding: 20px 30px
}
.search-container .personnel-box .section-box+.section-box {
    border-top: 1px solid #e7e7e7;
    background: #f7f7f7
}
.search-container .personnel-box .section-box .noti {
    font-size: 12px
}
.search-container .personnel-box .section-box .noti strong {
    color: #17af98;
    font-weight: 400
}
.search-container .personnel-box .section-box .personnel {
    display: flex;
    flex-wrap: wrap
}
.search-container .personnel-box .section-box .personnel li {
    display: flex;
    align-items: center;
    width: 50%;
    margin-top: 10px
}
.search-container .personnel-box .section-box .personnel li label {
    width: 70px;
    color: #1f1b1c;
    font-size: 12px;
    line-height: 18px
}
.search-container .personnel-box .section-box .personnel li label em {
    display: block;
    color: #fa4156
}
.search-container .personnel-box .section-box .age {
    display: flex;
    flex-wrap: wrap
}
.search-container .personnel-box .section-box .age li {
    display: flex;
    align-items: center;
    width: 50%;
    margin-top: 10px
}
.search-container .personnel-box .section-box .age li span {
    width: 35px;
    font-size: 12px
}
.search-container .personnel-box .section-box .age li input {
    width: 40px;
    height: 40px;
    padding: 0;
    text-align: center
}
.search-container .personnel-box .section-box .txt-refer {
    margin-top: 15px;
    font-size: 12px
}
.search-container .personnel-box .section-box .txt-refer a {
    color: #4d7ce5;
    text-decoration: underline
}
.search-container .personnel-box .section-box .btn-area {
    height: 50px
}
.plus-minus {
    position: relative;
    width: 110px;
    height: 35px;
    text-align: center
}
.plus-minus input {
    width: 42px;
    height: 100%;
    padding: 0;
    border-color: #e0e0e0;
    text-align: center
}
.plus-minus button {
    position: absolute;
    top: 0;
    width: 35px;
    height: 35px;
    border: 1px solid #e0e0e0;
    background-color: #f5f5f5;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px
}
.plus-minus button.plus {
    right: 0
}
.plus-minus button.plus:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1px;
    height: 13px;
    margin: -6px 0 0;
    background-color: #797979
}
.plus-minus button.minus {
    left: 0
}
.plus-minus button:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 13px;
    height: 1px;
    margin: 0 0 0 -6px;
    background-color: #797979
}
.route-wrap {
    position: relative;
    color: #1f1b1c
}
.route-wrap .route-section {
    position: relative
}
.route-wrap .route-section:after {
    content: "";
    position: absolute;
    left: 91px;
    top: 7px;
    bottom: 7px;
    width: 2px;
    background: #e0e0e0
}
.route-wrap .route-section .route {
    position: relative;
    display: flex;
    font-size: 13px;
    line-height: 22px
}
.route-wrap .route-section .route span {
    flex: 1
}
.route-wrap .route-section .route:after {
    content: "";
    position: absolute;
    left: 87px;
    top: 7px;
    width: 6px;
    height: 6px;
    border: 2px solid #ccc;
    background-color: #f5f7fa;
    border-radius: 100%;
    z-index: 2
}
.route-wrap .route-section .route em {
    display: block;
    width: 125px
}
.route-wrap .route-section .details {
    padding: 16px 0 16px 125px
}
.route-wrap .route-section .details div {
    padding: 5px 0
}
.route-wrap .route-section .details div [class^=icon-] {
    margin-right: 15px
}
.route-wrap .route-section .details div [class^=icon-]:last-child {
    margin: 0
}
.route-wrap .route-section .details div .logo {
    display: inline-block;
    height: 30px;
    width: 75px;
    margin-right: 25px;
    vertical-align: middle
}
.route-wrap .route-section .details div object {
    width: 75px;
    height: 40px;
    pointer-events: none
}
.route-wrap .transfer {
    position: relative;
    padding: 20px 0 20px 125px;
    color: #999;
    font-size: 12px;
    font-weight: 300
}
.route-wrap .transfer:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 87px;
    width: 10px;
    height: 10px;
    margin-top: -4px;
    background-color: #1f1b1c;
    border-radius: 100%
}
.route-wrap .transfer:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 91px;
    border-left: 2px dotted #e0e0e0
}
.route-wrap .btn-more {
    position: absolute;
    left: 20px;
    top: 50px;
    width: 20px;
    height: 20px;
    border: 1px solid #c8c8c8;
    background: #fff;
    font-size: 0;
    padding: 0;
    cursor: pointer;
    z-index: 1
}
.route-wrap .btn-more:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: transparent;
    background-image: url("../images/common/icon_plus.png");
    background-repeat: no-repeat;
    background-position: center center
}
.route-wrap > strong {
    display: block;
    color: #1f1b1c;
    font-size: 13px;
    font-weight: 400;
    line-height: 24px
}
.route-wrap > span {
    display: block;
    font-size: 13px;
    line-height: 24px
}
.route-wrap > .logo {
    height: 30px;
    width: 75px;
    margin: 10px 0
}
.route-wrap > .logo object {
    width: 75px;
    height: 30px;
    pointer-events: none
}
.route-wrap.type-transfer:not(.selected) .details,
.route-wrap.type-transfer:not(.selected) .transfer~.transfer,
.route-wrap.type-transfer:not(.selected) .route-section,
.route-wrap.type-transfer:not(.selected) .btn-more+.route-section .route:last-child,
.route-wrap.type-transfer:not(.selected) .route-section:last-child .route:first-child {
    display: none
}
.route-wrap.type-transfer:not(.selected) .btn-more+.route-section,
.route-wrap.type-transfer:not(.selected) .route-section:last-child {
    display: block
}
.route-wrap.type-transfer:not(.selected) .transfer {
    height: 80px;
    font-size: 0
}
.route-wrap.type-transfer:not(.selected) .transfer:before {
    left: 91px;
    top: -10px;
    bottom: -10px;
    border-left: 2px solid #e0e0e0
}
.route-wrap.type-transfer:not(.selected) .transfer:after {
    display: none
}
.route-wrap.selected .btn-more:after {
    background-image: url("../images/common/icon_minus.png");
    background-size: 8px 2px;
    background-position: center center
}
.route-wrap+.btn-area {
    display: flex;
    margin-top: 30px
}
.route-wrap+.btn-area [class^=btn-] {
    margin-right: 5px
}
.route-wrap .row {
    margin-top: 15px;
    line-height: 26px
}
.route-wrap .row object,
.route-wrap .row img {
    height: 26px;
    vertical-align: top
}
.route-wrap .row:first-child {
    margin-top: 0
}
.route-wrap .row .textEllipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}
.flex-group {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 50px
}
.flex-group+.flex-group {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #1f1b1c
}
.flex-group.flex-start {
    justify-content: flex-start
}
.flex-group.align-start {
    align-items: flex-start
}
.flex-group.stit-group {
    align-items: flex-start;
    margin: 0;
    border-bottom: 1px solid #1f1b1c
}
.flex-group.stit-group+.board-list,
.flex-group.stit-group+.board-info {
    margin-top: -1px
}
.flex-group.stit-group .stit {
    border: none !important
}
.flex-group .group-r {
    overflow: hidden;
    line-height: 0
}
.flex-group .group-r a,
.flex-group .group-r button,
.flex-group .group-r select {
    vertical-align: middle
}
.flex-group .group-r select {
    margin-left: 30px
}
.flex-group .tit {
    font-size: 16px
}
.flex-group .txt {
    color: #1f1b1c
}
.flex-group .noti {
    font-size: 13px
}
.flex-group .exchange {
    color: #999;
    font-size: 12px
}
.flex-group .btn {
    min-width: 120px;
    text-align: right
}
.flex-group .btn .btn-icon-more:before {
    width: 14px;
    height: 8px;
    background-image: url("../images/common/icon_select.png")
}
.flex-group .btn [class^=btn-] {
    vertical-align: middle
}
.flex-group .btn [class^=btn-]+[class^=btn-] {
    margin-left: 10px
}
.flex-group select {
    height: 40px
}
.flex-group+.board-info {
    margin-top: 20px
}
.flex-group+.data-c.type-bg {
    margin: 0
}
.layer-popup .layer-cont .railtel-view .view-middle {
    margin: 0
}
.layer-popup .layer-cont .railtel-view .view-middle-inner {
    width: 100%;
    margin-top: 50px
}
.layer-popup .layer-cont .railtel-view .view-photo {
    justify-content: center
}
.layer-popup .layer-cont .railtel-view .view-photo div {
    margin-bottom: 20px
}
.layer-popup .layer-cont .board-info.board-type input {
    height: 40px
}
.layer-popup .layer-cont .board-info.board-type tr:last-child th,
.layer-popup .layer-cont .board-info.board-type tr:first-child th {
    padding-top: 23px
}
.layer-popup .layer-cont .board-info.board-type tr:last-child td,
.layer-popup .layer-cont .board-info.board-type tr:first-child td {
    padding-top: 20px
}
.layer-popup .layer-cont .board-info.board-type tr:last-child th,
.layer-popup .layer-cont .board-info.board-type tr.type-last th {
    padding-bottom: 23px
}
.layer-popup .layer-cont .board-info.board-type tr:last-child td,
.layer-popup .layer-cont .board-info.board-type tr.type-last td {
    padding-bottom: 20px
}
.layer-popup .layer-cont .board-info.board-type th {
    height: auto;
    padding-top: 10px;
    padding-bottom: 10px
}
.layer-popup .layer-cont .board-info.board-type td {
    height: auto;
    padding-top: 3px;
    padding-bottom: 3px
}
.layer-popup .layer-cont .board-info th {
    height: 60px;
    padding-left: 20px
}
.layer-popup .layer-cont .board-info td {
    height: 60px;
    padding: 10px 0
}
.report-wrap .contents-inner {
    display: flex
}
.report-wrap .contents-inner .stit {
    padding-bottom: 25px;
    border-bottom: 1px solid #1f1b1c;
    font-size: 30px
}
.report-wrap .search-inquire-wrap .search-inquire-top {
    position: relative;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: -1px;
    padding: 30px 0;
    border-bottom: 1px solid #e0e0e0;
    z-index: 2
}
.report-wrap .search-inquire-wrap .search-inquire-top .title {
    margin-right: 20px;
    padding-left: 30px;
    background-size: 14px 15px;
    background-position: left center;
    background-repeat: no-repeat;
    background-image: url("../images/common/icon_calendar02.png");
    font-weight: 400
}
.report-wrap .search-inquire-wrap .search-inquire-top .custom-radio-group {
    flex: 1
}
.report-wrap .search-inquire-wrap .search-inquire-top .custom-radio-group button {
    margin-left: 3px
}
.report-wrap .search-inquire-wrap .search-inquire-top .btn-details {
    position: relative;
    width: 130px;
    height: 40px;
    padding: 0 0 0 20px;
    border: 1px solid #c8c8c8;
    text-align: left
}
.report-wrap .search-inquire-wrap .search-inquire-top .btn-details:before {
    content: "";
    position: absolute;
    right: 20px;
    top: 16px;
    width: 14px;
    height: 8px;
    background-image: url("../images/common/icon_select.png");
    transition: all 0.2s cubic-bezier(0, 0, 0, 1)
}
.report-wrap .search-inquire-wrap .search-inquire-top .repo_row {
    width: 100%;
    margin-bottom: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center
}
.report-wrap .search-inquire-wrap .search-inquire-top .repo_row .repo_select {
    height: 40px;
    margin-top: -1px
}
.report-wrap .search-inquire-wrap .search-inquire-btm {
    overflow: hidden
}
.report-wrap .search-inquire-wrap .search-inquire-btm-inner {
    position: relative;
    padding: 20px 200px 20px 30px;
    border: 1px solid #e0e0e0;
    background-color: #fbfbfb;
    max-height: 0;
    margin-top: -1000px;
    transition: all 0.5s cubic-bezier(1, 0, 1, 1)
}
.report-wrap .search-inquire-wrap .search-inquire-btm .section {
    margin-top: 10px
}
.report-wrap .search-inquire-wrap .search-inquire-btm .section:first-child {
    margin: 0
}
.report-wrap .search-inquire-wrap .search-inquire-btm .section-inner,
.report-wrap .search-inquire-wrap .search-inquire-btm .section {
    display: flex;
    flex-wrap: wrap;
    flex: 1
}
.report-wrap .search-inquire-wrap .search-inquire-btm .section-inner .section,
.report-wrap .search-inquire-wrap .search-inquire-btm .section .section {
    flex: none;
    width: 100%;
    margin-top: 5px
}
.report-wrap .search-inquire-wrap .search-inquire-btm .section-inner .repo_row .custom-check,
.report-wrap .search-inquire-wrap .search-inquire-btm .section .repo_row .custom-check {
    margin-top: 10px
}
.report-wrap .search-inquire-wrap .search-inquire-btm .section-inner .repo_row label,
.report-wrap .search-inquire-wrap .search-inquire-btm .section .repo_row label {
    margin-top: 10px;
    margin-right: 16px
}
.report-wrap .search-inquire-wrap .search-inquire-btm .section-inner .repo_row input[type=text],
.report-wrap .search-inquire-wrap .search-inquire-btm .section .repo_row input[type=text] {
    width: 100%;
    height: 40px
}
.report-wrap .search-inquire-wrap .search-inquire-btm .title {
    float: left;
    width: 70px;
    line-height: 40px;
    font-weight: 400
}
.report-wrap .search-inquire-wrap .search-inquire-btm .custom-radio-group {
    margin-right: 23px
}
.report-wrap .search-inquire-wrap .search-inquire-btm .custom-radio-group label {
    width: 90px
}
.report-wrap .search-inquire-wrap .search-inquire-btm .input-search-box {
    position: relative
}
.report-wrap .search-inquire-wrap .search-inquire-btm .input-search-box input {
    width: 100%;
    margin: 0;
    padding-right: 50px
}
.report-wrap .search-inquire-wrap .search-inquire-btm .input-search-box .btn-search {
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    height: 100%;
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
    overflow: hidden;
    color: transparent;
    font-size: 1px;
    text-indent: -9999px;
    background-image: url("../images/common/icon_search02.png");
    background-size: 12px 12px
}
.report-wrap .search-inquire-wrap .search-inquire-btm .section-r {
    position: absolute;
    right: 30px;
    top: 20px;
    width: 160px
}
.report-wrap .search-inquire-wrap .search-inquire-btm .section-r a {
    width: 100%
}
.report-wrap .search-inquire-wrap .search-inquire-btm .section-r .btn-icon-search {
    height: 80px;
    margin-top: 10px
}
.report-wrap .search-inquire-wrap .search-inquire-btm [class^=col] {
    position: relative;
    width: 140px;
    height: 40px;
    margin-right: 5px
}
.report-wrap .search-inquire-wrap .search-inquire-btm [class^=col] input:not([type=radio]),
.report-wrap .search-inquire-wrap .search-inquire-btm [class^=col] select {
    width: 100%;
    height: 100%
}
.report-wrap .search-inquire-wrap .search-inquire-btm [class^=col] .custom-check {
    margin-top: 10px
}
.report-wrap .search-inquire-wrap .search-inquire-btm [class^=col] label {
    margin-top: 10px
}
.report-wrap .search-inquire-wrap .search-inquire-btm .col2 {
    width: 280px
}
.report-wrap .search-inquire-wrap.selected .btn-details:before {
    transform: rotate(180deg)
}
.report-wrap .search-inquire-wrap.selected .search-inquire-btm-inner {
    max-height: 600px;
    margin-top: 0;
    transition: all 0.4s cubic-bezier(0, 0, 0, 1)
}
.report-wrap .agree-section .agree-row {
    padding-left: 30px;
    padding-right: 30px
}
.report-wrap .agree-section .agree-row strong {
    width: 100px
}
.contents-inner .terms-box {
    width: 100%
}
.contents-inner .terms-box .terms-Stitle {
    color: #1f1b1c;
    font-size: 17px;
    font-weight: 700;
    margin-bottom: 20px
}
.contents-inner .terms-box .terms-title {
    color: #1f1b1c;
    font-size: 15px;
    font-weight: 500;
    margin: 20px 0 10px
}
.contents-inner .terms-box .terms-inner-title {
    margin: 10px 0
}
.contents-inner .terms-box .top-section {
    width: 100%;
    background-color: #f5f7fa;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    color: #797979;
    font-size: 13px;
    padding: 20px 15px;
    margin-bottom: 30px
}
.contents-inner .terms-box .terms-info {
    width: 100%;
    padding-left: 15px;
    color: #797979;
    font-size: 14px;
    line-height: 24px
}
.contents-inner .terms-box .terms-info a {
    color: #999;
    font-size: 13px;
    text-decoration: underline
}





/* -------------------------------------------------------------------------------------- 변경되는 css - START -------------------------------------------------------------------------------------- */
.board-list.trt-modified tr.details .col.num {padding: 0 20px; width: 160px;}
.board-list.trt-modified tr.details .col.location {width: 236px;}
.board-list.trt-modified tr.details .col.price {width: 110px}
.board-list.trt-modified td td {padding: 23px 14px;}
.board-list.trt-modified td .btn-icon-more {margin: 0 auto;}
.board-list.trt-modified td.btn {padding: 23px 10px;}
.board-list.trt-modified td.subject {padding: 23px 10px;}
.board-list.trt-modified td.subject .channel {display: block; margin-bottom: 5px;}
.board-list.trt-modified td.subject .channel span {line-height: 1;}
.board-list.trt-modified td .partner-txt {height: 40px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;}
.board-list.trt-modified .btn-default-outline {padding: 0 15px;}


.board-list.trt-modified .board-section-wrap .board-section .view {margin-top: -1800px; max-height: 1800px;}
.board-list.trt-modified .board-section-wrap.selected .board-section .view {margin-top: 0;}

.board-list.trt-modified tr.selected+tr .details-wrap {max-height: unset;}

.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list {margin-top: 0; padding: 21px 0; border-top: 1px solid #e0e0e0;}
.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list + .list {border-top: 1px solid #e0e0e0;}
.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list2 {margin-top: 0;}
.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list:first-child {padding-top: 0; margin-top: 0; border-top: 0;}
.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list:last-child {border-bottom: 1px solid #e0e0e0;}


.details-wrap.trt-modified .details-box .board-section-wrap .section-top {/* padding: 15px 0; */ height: auto; min-height: 50px;}
.details-wrap.trt-modified .details-box .board-section-wrap .section-top > span.box-r {align-self: stretch; height: auto;}
.details-wrap.trt-modified .details-box .board-section-wrap .section-top > span:first-child {padding-top: 15px; padding-bottom: 15px;}
.details-wrap.trt-modified .details-box .board-section-wrap .section-top:before {top: 50%; margin-top: -4px;}
.details-wrap.trt-modified .details-box .board-section-wrap .section-top>span.box-l>span:nth-child(1) {line-height: 1.46;}

.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list.passenger-info li {display: block;}
.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list.passenger-info li + li {margin-top: 21px;}
.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list.passenger-info li .route {margin-bottom: 7px; font-size: 12px; line-height: 18px; color: #1f1b1c;}
.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list.passenger-info li .passenger {display: flex;}
.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list.passenger-info li .passenger span {margin-right: 20px; font-size: 12px; color: #797979;}
.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list.passenger-info li .passenger span:last-child {margin-right: 0;}

.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list2 li.check-traveler span:nth-child(3) {margin-right: 35px; width: auto;}
.details-wrap.trt-modified .details-box .board-section-wrap .board-section .view .section-l .list2 li.check-traveler span:nth-child(4) {width: auto;}

.payment-amount-wrap.trt-modified .payment-amount-contents .payment-amount-inner ul li.division {position: relative; padding-left: 20px;}
.payment-amount-wrap.trt-modified .payment-amount-contents .payment-amount-inner ul li.division:before {content: ''; display: block; position: absolute; left: 0; top: 6px; width: 16px; height: 16px; background: url(../images/common/icon-line-bullet.svg) center center no-repeat;}
.payment-amount-wrap.trt-modified .payment-amount-contents .payment-amount-inner .total .total-box-w {display: flex; justify-content: space-between; width: 100%;}
.payment-amount-wrap.trt-modified .payment-amount-contents .payment-amount-inner ul li.has-dash-border {position: relative; margin-top: 5px; padding-top: 5px;}
.payment-amount-wrap.trt-modified .payment-amount-contents .payment-amount-inner ul li.has-dash-border :before {content: ''; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 1px; background: url("/mobile_web_asp/images/icon-border-dashed.svg") 0 0 repeat-x;}

.search-result-content.trt-modified .content-section-r {/* width: 35%; */ width: 430px; min-height: 190px;}
.search-result-content.trt-modified .content-section-r .section .row label {flex-wrap: wrap; height: auto; padding-top: 9px; padding-bottom: 9px; width: 130px; height: 65px;}
.search-result-content.trt-modified .content-section-r .section .row input[type=radio].custom-radio.type-outline:checked+label {font-weight: 400;}
.search-result-content.trt-modified .content-section-r .section .row label .detail-txt {display: block; margin-top: 2px; width: 100%; text-align: center; font-size: 10px; line-height: 11px;}
.search-result-content.trt-modified .content-section-r .section .row input[type=radio].custom-radio.type-outline:checked+label .detail-txt {font-weight: 400;}
.search-result-content.trt-modified .content-section-b-r .price-list li .price .noti-txt {font-style: normal; text-decoration: none; color: #999; font-size: 12px;}


.data-b.trt-modified tr.title-cell th {border-bottom: 1px solid #1f1b1c;}
.data-b.trt-modified th {padding: 11px;}
.data-b.trt-modified td {padding: 17px 16px; word-wrap: break-word;}
.data-c.type-bg.type-line.trt-modified td span[class^=label-pill]:first-child {margin-right: 15px;}

.mypage-wrap.trt-modified .search-inquire-wrap .search-inquire-btm .section-r .btn-icon-search {height: 40px;}



/* 신규 */
.partner-name-box {margin: 20px 0;}

/* 약관 동의 */
.trt-terms-list-area {margin-top: 50px; border-top: 1px solid #1f1b1c;}
.trt-terms-list-area .indent-con {margin-top: 20px; padding-left: 30px;}
.trt-terms-list-area .invalid-feedback {padding-left: 30px;}
.trt-terms-list-area .all-agree {padding: 30px 0; border-bottom: 1px solid #c8c8c8;}
.trt-terms-list-area .all-agree .all+label {font-size: 20px; font-weight: 500;}
.trt-terms-list-area .all-agree .all+label .desc {display: block; margin-top: 15px; color: #797979; font-size: 14px; font-weight: 400;}
.trt-terms-list-area .terms-list {position: relative; border-bottom: 1px solid #c8c8c8;}
.trt-terms-list-area .terms-list .top-area {position: relative; padding: 30px 0;}
.trt-terms-list-area .terms-list .top-area label {width: auto; padding: 0;}
.trt-terms-list-area .terms-list .top-area label:before {top: 0;}
.trt-terms-list-area .terms-list .top-area label:after {top: 7px !important}
.trt-terms-list-area .terms-list .bot-area .terms-detail-wrap {margin-bottom: 32px; padding: 20px; max-height: 225px; border: 1px solid #c8c8c8; overflow-y: auto;}
.trt-terms-list-area .terms-list .bot-area .terms-detail-wrap .txt {line-height: 1.85;}
.trt-terms-list-area .terms-list .btn-accordion-open {position: absolute; top: 50%; right: 30px; margin-top: -7px; width: 14px; height: 14px; background: url("../images/common/icon-terms-arr-down.svg") center center no-repeat; transform: rotate(0);}
.trt-terms-list-area+.noti {margin-top: 15px; font-size: 12px; line-height: 20px;}
.layer-popup .trt-terms-list-area {margin-top: 20px;}

/* 아코디언 */
.trt-accordion-wrap .accordion-list .top-area {position: relative;}
.trt-accordion-wrap .accordion-list .top-area .btn-accordion-open {transition: transform .3s ease;}
.trt-accordion-wrap .accordion-list .bot-area {display: none;}
.trt-accordion-wrap .accordion-list.on .top-area .btn-accordion-open {transform: rotate(180deg);}

/* 안내 문구 */
.trt-noti-section {display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 30px; padding: 30px; border-top: 1px solid #e0e0e0; border-bottom: 1px solid #e0e0e0; background-color: #f6fffe;}
.trt-noti-section ul li {font-size: 13px; line-height: 24px;}
.trt-noti-section div {width: 100%; margin-top: 10px;}
/* -------------------------------------------------------------------------------------- 변경되는 css - End -------------------------------------------------------------------------------------- */

/* 조회화면 상품 선택시 말풍선 효과 */
.full-text-position{
    position: relative;
}

.short-text {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: inline-block;
    max-width: 100px;
    vertical-align: top;
    text-align: center;
    font-size: 11px;
}

.full-text {
    display: none;
    position: absolute;
    background: #fff;
    border: 1px solid #ccc;
    padding: 5px;
    z-index: 10;
    width: max-content;
    max-width: 200px;
    top: -50%;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    font-size: 12px;
}

.row:hover .full-text {
    display: block;
    cursor: pointer;
}

 .scrollable-table-wrapper {
    max-height: 500px; /* 원하는 높이 설정 */
    overflow-y: auto;
  }

  .scrollable-table-wrapper table {
    width: 100%;
    border-collapse: collapse;
  }

  .scrollable-table-wrapper th,
  .scrollable-table-wrapper td {
    padding: 8px;
    text-align: center;
    border-bottom: 1px solid #ddd;
  }