@charset "UTF-8";

:root {
    --ob-section-title-icon-red: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='28' viewBox='0 0 21 28' fill='none'%3E%3Cpath d='M19.1912 4.77586L11.8852 0.637493C11.0819 0.180732 9.91796 0.180732 9.12014 0.637493L1.80867 4.77586C1.01085 5.22711 0.404297 6.26171 0.404297 7.18623V20.8065C0.404297 21.7476 0.994461 22.7601 1.8032 23.2169L9.10922 27.3553C9.49719 27.5754 9.989 27.702 10.4917 27.702H10.4972C10.9999 27.702 11.4863 27.5809 11.8688 27.3663L19.1803 23.2279C19.9945 22.7656 20.5901 21.7531 20.5901 20.8175V7.18623C20.5901 6.26171 19.989 5.22711 19.1857 4.77586H19.1912ZM10.142 25.5282L2.82506 21.3899C2.67206 21.3073 2.48626 20.9826 2.48626 20.8065V7.18073C2.48626 7.01013 2.67752 6.67994 2.82506 6.5974L10.1311 2.45903C10.1966 2.42601 10.3333 2.38749 10.4972 2.38749H10.5682C10.7103 2.38749 10.8087 2.42601 10.8633 2.45353L18.1748 6.5974C18.3223 6.68545 18.5136 7.01013 18.5136 7.18073V20.801C18.5136 20.9771 18.3278 21.2963 18.1748 21.3843L10.8633 25.5227C10.6994 25.6163 10.3005 25.6163 10.142 25.5227V25.5282Z' fill='%23AD0000'/%3E%3C/svg%3E");
    --ob-section-title-icon-blue: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='28' viewBox='0 0 21 28' fill='none'%3E%3Cpath d='M19.1912 4.77586L11.8852 0.637493C11.0819 0.180732 9.91796 0.180732 9.12014 0.637493L1.80867 4.77586C1.01085 5.22711 0.404297 6.26171 0.404297 7.18623V20.8065C0.404297 21.7476 0.994461 22.7601 1.8032 23.2169L9.10922 27.3553C9.49719 27.5754 9.989 27.702 10.4917 27.702H10.4972C10.9999 27.702 11.4863 27.5809 11.8688 27.3663L19.1803 23.2279C19.9945 22.7656 20.5901 21.7531 20.5901 20.8175V7.18623C20.5901 6.26171 19.989 5.22711 19.1857 4.77586H19.1912ZM10.142 25.5282L2.82506 21.3899C2.67206 21.3073 2.48626 20.9826 2.48626 20.8065V7.18073C2.48626 7.01013 2.67752 6.67994 2.82506 6.5974L10.1311 2.45903C10.1966 2.42601 10.3333 2.38749 10.4972 2.38749H10.5682C10.7103 2.38749 10.8087 2.42601 10.8633 2.45353L18.1748 6.5974C18.3223 6.68545 18.5136 7.01013 18.5136 7.18073V20.801C18.5136 20.9771 18.3278 21.2963 18.1748 21.3843L10.8633 25.5227C10.6994 25.6163 10.3005 25.6163 10.142 25.5227V25.5282Z' fill='%230055AA'/%3E%3C/svg%3E");
    --ob-check-circle-blue: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='9' stroke='%235F97F0' stroke-width='2'/%3E%3Cpath d='M9 12L11 14L15 10' stroke='%235F97F0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    --ob-check-circle-gray: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='9' stroke='%23C8C8C8' stroke-width='2'/%3E%3Cpath d='M9 12L11 14L15 10' stroke='%23C8C8C8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    --ob-check-circle-dark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M3 12C3 13.1819 3.23279 14.3522 3.68508 15.4442C4.13738 16.5361 4.80031 17.5282 5.63604 18.364C6.47177 19.1997 7.46392 19.8626 8.55585 20.3149C9.64778 20.7672 10.8181 21 12 21C13.1819 21 14.3522 20.7672 15.4442 20.3149C16.5361 19.8626 17.5282 19.1997 18.364 18.364C19.1997 17.5282 19.8626 16.5361 20.3149 15.4442C20.7672 14.3522 21 13.1819 21 12C21 10.8181 20.7672 9.64778 20.3149 8.55585C19.8626 7.46392 19.1997 6.47177 18.364 5.63604C17.5282 4.80031 16.5361 4.13738 15.4442 3.68508C14.3522 3.23279 13.1819 3 12 3C10.8181 3 9.64778 3.23279 8.55585 3.68508C7.46392 4.13738 6.47177 4.80031 5.63604 5.63604C4.80031 6.47177 4.13738 7.46392 3.68508 8.55585C3.23279 9.64778 3 10.8181 3 12Z' stroke='%23000000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9 12L11 14L15 10' stroke='%23000000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* 추가 - base/layout.css */
h4,
h4 .h4_s,
h5,
h6 {text-align: inherit;padding: 0;margin: 0;color: inherit;letter-spacing: inherit;background: none;}

/* --------------------------------------------------------------------------------------------
    ## COMMON
-------------------------------------------------------------------------------------------- */
/* FONTS */
html,
body,
select,
input,
textarea,
button {
    font-family: 'SCoreDream', 'Apple SD Gothic Neo', Helvetica, Dotum, '돋움', sans-serif;
    font-weight: normal;
}

/* SITE SETTING */
html,
body {
    height: 100%;
    background: #f5f5f5;
}
body {
    position: relative;
    letter-spacing: -0.05rem;
    -webkit-overflow-scrolling: touch;
    -webkit-tap-highlight-color: transparent;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: none;
        -ms-text-size-adjust: none;
}
body.main,
body.main a {
    color: #292929;
}
body.main a {
    -webkit-transition: color 250ms ease;
       -moz-transition: color 250ms ease;
            transition: color 250ms ease;
}
body.main a:hover {
    color: #264b96;
}
.inner,
.wide-inner {
    width: 95%;
    max-width: 1480px;
    margin-left:  auto;
    margin-right: auto;
}
.wide-inner {
    position: relative;
    max-width: 1740px;
}
.iblock {
    display: block;
}
.btn-tab {
    color: #000;
    background: #fff;
    border: 1px solid #e5e5e5;
    border-left: 0;
    transition: color 250ms ease, background 250ms ease, border 250ms ease;
}
.btn-tab:first-child {
    border-left: 1px solid #e5e5e5;
}
.btn-tab:hover {
    color: #b6985a;
}
.btn-tab.active,
.btn-tab.active:hover {
    color: #fff;
    background: #b6985a;
    border-color: #b6985a;
}
.tab-cont {
    display: none;
}


/* --------------------------------------------------------------------------------------------
    ## HEADER
-------------------------------------------------------------------------------------------- */
#header {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 97;
    background: #fff;
}
#header,
.hblank {
    width: 100%;
    height: 150px;
}
#header .h-top-area {
    height: 40px;
    background: #1762dd;
}
#header .h-top-area .group {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
}
#header .h-top-area .group .title {
    background-color: #1a3c6e;
    color: #fff;
    font-size: 16px;
    line-height: 40px;
    padding: 0 15px;
    margin: 0;
}
/* 수정 : 20230329 */
#header .h-top-area a {
    display: inline-block;
    line-height: 30px;
    margin: 5px 0 5px 26px;
    color: #fff;
}
/* 삭제 : 20230329
#header .h-top-area a.first {
    margin-left: 0;
}*/
#header .h-top-area a:hover {
    text-decoration: underline;
}
#header .h-btm-area {
    width: 100%;
    height: 110px;
    background: #fff;
}
#header .h-btm-area .wide-inner {
    position: relative;
    display: flex;
    height: 100%;
    justify-content: center;
    align-items: center;
    z-index: 10;
}
#header .wide-inner h1 {
    position: absolute;
    width: 240px;
    height: 62px;
    margin: -31px 0 0 0;
    top: 50%;
    left: 0;
    z-index: 11;
}
#header .wide-inner h1 a {
    display: block;
    width: 100%;
    height: 100%;
    background-image: url('../img/common/logo.png');
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: contain;
}
#header #menu {
    margin: 0;
    z-index: 10;
    transition: margin 350ms ease;
}
#header #menu a {
    display: block;
    height: 100%;
    margin: 0;
    padding: 0;
    color: #000;
    text-align: center;
    -webkit-transition: color 250ms ease;
       -moz-transition: color 250ms ease;
            transition: color 250ms ease;
}
#header #menu #gnb {
    width: 100%;
    height: 100%;
}
/* 클래스명 변경 */
#header #menu #gnb .gnb2 {
    display: flex;
    height: 100%;
}
#header #menu #gnb h3 {
    position: relative;
    width: 100%;
    height: 100%;
    font-size: 1.25rem;
}
#header #menu #gnb h3 a {
    position: relative;
    height: 110px;
    padding: 0 20px;
    line-height: 110px;
    text-transform: uppercase;
}
#header #menu #gnb .dep1 h3 a:hover,
#header #menu #gnb .dep1.current h3 a {
    color: #1762dd;
}
#header #menu #gnb h3 strong {
    display: block;
    font-weight: 400;
}
#header #menu #gnb .dep1 h3 .toggle_gnb {
    display: none;
}
#header #menu #gnb .dep2 {
    position: absolute;
    display: none;
    width: 100%;
    height: 68px;
    top: 110px;
    left: 0;
    overflow: hidden;
}
#header #menu #gnb .dep2 ul {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
}
#header #menu #gnb .dep2 ul li {
    width: 15%;
}
/*
#header #menu #gnb .dep2 .colspan2 {width: 50%;}
#header #menu #gnb .dep2 .colspan3 {width: 33.33333333333333%;}
#header #menu #gnb .dep2 .colspan4 {width: 25%;}
#header #menu #gnb .dep2 .colspan5 {width: 20%;}
#header #menu #gnb .dep2 .colspan6 {width: 16.66666666666667%;}
*/
#header #menu #gnb li li a {
    display: block;
    width: 100%;
    height: 68px;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: 1.0625rem;
    line-height: 68px;
    transition: background 250ms ease;
}
#header #menu #gnb li li a:hover,
#header #menu #gnb li li.current a {
    background: #1762dd;
}
#header .snb-bg {
    position: absolute;
    display: block;
    width: 100%;
    height: 0;
    top: 150px;
    left: 0;
    opacity: 0;
    background-color: rgba(54,46,43,0.7);
    transition: height 300ms ease, opacity 300ms ease;
}
.openmenu #header .snb-bg {
    height: 68px;
    opacity: 1;
    transition: height 300ms ease, opacity 300ms ease;
}
#header .h-btm-area .other {
    position: absolute;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
#header .h-btm-area .other .btn-h-search {
    margin-right: 20px;
    font-size: 1.25rem;
}
#header .h-btm-area .other .btn-h-smenu {
    position: relative;
    display: block;
    width: 23px;
    height: 20px;
    cursor: pointer;
}
#header .h-btm-area .other .btn-h-smenu span {
    position: absolute;
    display: block;
    width: 100%;
    height: 3px;
    background: #000;
    border-radius: 9px;
    left: 0;
    -webkit-transform: rotate(0deg);
       -moz-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-transition: -webkit-transform 250ms ease;
       -moz-transition:    -moz-transform 250ms ease;
            transition:         transform 250ms ease;
}
#header .h-btm-area .other .btn-h-smenu span:nth-child(1) { top:  1px; }
#header .h-btm-area .other .btn-h-smenu span:nth-child(2) { top: 10px; }
#header .h-btm-area .other .btn-h-smenu span:nth-child(3) { top: 19px; }
.open_othermenu #header .h-btm-area .other .btn-h-smenu span { background: #000; }
.open_othermenu #header .h-btm-area .other .btn-h-smenu span:nth-child(1) {
    top: 10px;
    -webkit-transform: rotate(135deg);
       -moz-transform: rotate(135deg);
            transform: rotate(135deg);
}
.open_othermenu #header .h-btm-area .other .btn-h-smenu span:nth-child(2) {
    opacity: 0;
    left: -30px;
}
.open_othermenu #header .h-btm-area .other .btn-h-smenu span:nth-child(3) {
    top: 10px;
    -webkit-transform: rotate(-135deg);
       -moz-transform: rotate(-135deg);
            transform: rotate(-135deg);
}



/* --------------------------------------------------------
    -- HEADER MOBILE - MENU
-------------------------------------------------------- */
/* MOBILE MENU TOGGLE BTN */
#header #btn_m_toggle {
    position: fixed;
    display: none;
    width: 23px;
    height: 20px;
    top: 25px;
    right: 25px;
    z-index: 999;
    cursor: pointer;
    opacity: 0;
    -ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    -webkit-transition: top 300ms ease, right 300ms ease, opacity 300ms ease;
       -moz-transition: top 300ms ease, right 300ms ease, opacity 300ms ease;
            transition: top 300ms ease, right 300ms ease, opacity 300ms ease;
}
#header #btn_m_toggle .toggle_group {
    position: relative;
    margin: 0 auto;
    width: 100%;
    height: 100%;
}
#header #btn_m_toggle .toggle_group span {
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    background: #333;
    border-radius: 9px;
    left: 0;
    -webkit-transform: rotate(0deg);
       -moz-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-transition: -webkit-transform 250ms ease;
       -moz-transition:    -moz-transform 250ms ease;
            transition:         transform 250ms ease;
}
#header #btn_m_toggle .toggle_group span:nth-child(1) { top:  1px; }
#header #btn_m_toggle .toggle_group span:nth-child(2) { top: 10px; }
#header #btn_m_toggle .toggle_group span:nth-child(3) { top: 19px; }
.open_mobilemenu #header #btn_m_toggle { right: calc(85% + 10px); }
.open_mobilemenu #header #btn_m_toggle .toggle_group span { background: #fff; }
.open_mobilemenu #header #btn_m_toggle .toggle_group span:nth-child(1) {
    top: 10px;
    -webkit-transform: rotate(135deg);
       -moz-transform: rotate(135deg);
            transform: rotate(135deg);
}
.open_mobilemenu #header #btn_m_toggle .toggle_group span:nth-child(2) {
    opacity: 0;
    left: -30px;
}
.open_mobilemenu #header #btn_m_toggle .toggle_group span:nth-child(3) {
    top: 10px;
    -webkit-transform: rotate(-135deg);
       -moz-transform: rotate(-135deg);
            transform: rotate(-135deg);
}

/* MOBILE HEADER SIDEBAR AREA */
#mobile_menu {
    position: fixed;
    width: 85%;
    height: 100%;
    top: 0;
    right: -101%;
    z-index: 999;
    background: #f4f4f4;
    border-right: 1px solid #1f1f1f;
    -webkit-transition: right 300ms ease;
       -moz-transition: right 300ms ease;
            transition: right 300ms ease;
}
.open_mobilemenu #mobile_menu {
    right: 0;
}
#mobile_menu .m-top-menu {
    position: relative;
    width: 100%;
    height: 60px;
    padding: 20px;
    background: #fff;
}
#mobile_menu .m-top-menu ul {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
#mobile_menu .m-top-menu li {
    position: relative;
    margin-left: 10px;
    padding-left: 10px;
}
#mobile_menu .m-top-menu a {
    display: block;
    height: 20px;
    color: #000;
    font-size: 14px;
    line-height: 20px;
    transition: color 250ms ease;
}
#mobile_menu .m-top-menu a:hover {
    color: #264b96;
}
#mobile_menu .msgroup {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    overflow-y: scroll;
}
/* 수정 */
#mobile_menu .msgroup::before {
    position: absolute;
    display: block;
    content: '';
    width: 130px;
    height: 100%;
    min-height: 430px;
    top: 0;
    left: 0;
    background: #1762dd;
}
#mobile_menu .colsgroup li {
    position: relative;
    width: 50%;
    float: left;
    text-align: center;
}
#mobile_menu .colsgroup li:first-child::before {
    position: absolute;
    content: '';
    width: 1px;
    height: 12px;
    margin-top: -6px;
    top: 50%;
    right: 0;
    background: #454545;
}
#mobile_menu .colsgroup li.full_width {
    width: 100%;
    clear: left;
    background: #40b9d7;
}
#mobile_menu .colsgroup li a {
    display: block;
    padding: 0 5px;
    color: #303030;
    line-height: 39px;
    -webkit-transition: color 250ms ease, background 250ms ease;
       -moz-transition: color 250ms ease, background 250ms ease;
            transition: color 250ms ease, background 250ms ease;
}
#mobile_menu .colsgroup li.full_width a {

}
#mobile_menu .colsgroup li a:hover {
    color: #264b96;
}

/* MOBILE LOGED AREA */
#header .mobile_loged {
    color: #fff;
    border-top: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
}
#header .mobile_loged .mob_loged {
    display: none;
}
#header .mobile_loged .mob_loged.on {
    display: block;
}
#header .mobile_loged .loged_section {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    height: 100%;
    padding: 0 10px;
    color: #fff;
    -webkit-box-align: center;
       -moz-box-align: center;
       -ms-flex-align: center;
    -webkit-align-items: center;
            align-items: center;
}
#header .mobile_loged .loged_icon span {
    position: absolute;
    width: 100%;
    top: -2px;
    font-size: 24px;
    text-align: center;
}
#header .mobile_loged p {
    font-size: 13px;
}

/* MOBILE MENU */
#mobile_menu #mgnb h3 {
    position: relative;
    width: 130px;
    border-bottom: 1px solid rgba(255,255,255,0.25);
}
#mobile_menu #mgnb h3 a {
    display: block;
    padding: 20px 10px;
    color: #fff;
    font-size: 15px;
    text-align: center;
    background-color: transparent;
    -webkit-transition: color 300ms ease, background 300ms ease;
       -moz-transition: color 300ms ease, background 300ms ease;
            transition: color 300ms ease, background 300ms ease;
}
#mobile_menu #mgnb li.current h3 a,
#mobile_menu #mgnb li h3 a:hover {
    color: #264b96;
}
/* 수정 */
#mobile_menu #mgnb .dep1.current h3 a,
#mobile_menu #mgnb .dep1 h3:hover a,
#mobile_menu #mgnb .dep1.openlist h3 a {
    color: #fff;
    background: #264b96;
}
#mobile_menu #mgnb h3 strong {
    font-weight: normal;
}
#mobile_menu #mgnb h3 a p span {
    position: relative;
    display: inline-block;
    margin-left: 6px;
    padding-left: 10px;
    font-size: 13px;
    letter-spacing: 0.025em;
}
#mobile_menu #mgnb h3 a p span:before {
    position: absolute;
    display: block;
    content: '';
    width: 1px;
    height: 11px;
    left: 0;
    bottom: 3px;
    background: #3f3f3f;
    -webkit-transition: background 300ms ease;
       -moz-transition: background 300ms ease;
            transition: background 300ms ease;
}
#mobile_menu #mgnb li a:hover p span:before,
#mobile_menu #mgnb li.current h3 a p span:before,
#mobile_menu #mgnb li .current a p span:before {
    background: #264b96;
}
#mobile_menu #mgnb h3 a.current span:before,
#mobile_menu #mgnb .dep1:hover h3 a span:before,
#mobile_menu #mgnb .dep1.openlist h3 a span:before {
    background: #fff;
}
#mobile_menu .toggle_gnb {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    z-index: 10;
    cursor: pointer;
}
#mobile_menu .btn_gnb_arrow {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    text-indent: -9999px;
}
#mobile_menu .dep1:hover .btn_gnb_arrow::before {
    color: #fff;
}
#mobile_menu .dep1.openlist .btn_gnb_arrow::before {
    color: #fff;
    -webkit-transform: rotate(180deg);
       -moz-transform: rotate(180deg);
            transform: rotate(180deg);
}
#mobile_menu #mgnb h3 a.current + .toggle_gnb .btn_gnb_arrow::before {
    color: #fff;
}
#mobile_menu #mgnb .dep2 {
    position: absolute;
    display: none;
    height: 100%;
    top: 0;
    left: 130px;
    right: 0;
    background: #f4f4f4;
}

#mobile_menu #mgnb .dep1.current .dep2 {
    display: block;
}
#mobile_menu #mgnb .dep2 li {
    position: relative;
    margin-left: 10px;
    padding: 0;
    border-bottom: 1px solid #ccc;
}
#mobile_menu #mgnb .dep2 li:first-child {
    border-top: 1px solid #ccc;
}
#mobile_menu #mgnb .dep2 li a {
    position: relative;
    display: block;
    padding: 15px 0;
    color: #000;
    font-size: 14px;
}
#mobile_menu #mgnb .dep2 li a:hover,
#mobile_menu #mgnb .dep2 li.current a {
    color: #264b96;
    transition: color 250ms ease;
}
#mobile_menu #mgnb .dep2 li.current a {
    font-weight: 500;
}
.mobile_menu_overlay {
    position: fixed;
    display: none;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 998;
    background: rgba(0,0,0,0.9);
}


/* --------------------------------------------------------------------------------------------
    ## SEARCH LAYER POPUP
-------------------------------------------------------------------------------------------- */
.search-popup-layer {
    position: fixed;
    display: none;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    top: 0;
    left: 0;
    z-index: 998;
}
.search-popup-layer .s-p-wrap {
    position: fixed;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    top: 0;
    left: 0;
    z-index: 1000;
}
.search-popup-layer .search-text-input {
    width: 85%;
    max-width: 640px;
    margin: 0 auto 40px;
}
.search-popup-layer .search-input-bar {
    width: 100%;
    height: 70px;
    padding: 10px 20px;
    font-size: 1.375rem;
    line-height: 47px;
    color: #fff;
    background: rgba(0,0,0,0.15);
    border-bottom: 3px solid rgba(247,181,44,0.75);
    transition: color 250ms ease, background 250ms ease, border 250ms ease;
}
.search-popup-layer .search-input-bar:hover,
.search-popup-layer .search-input-bar:focus {
    outline: 0;
    background: rgba(0,0,0,0.5);
    border-color: rgba(247,181,44,1);
}
.search-popup-layer .search-btn-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}
.search-popup-layer .search-input-submit,
.search-popup-layer .search-cancel-btn {
    display: block;
    width: 150px;
    height: 44px;
    color: #dfdfdf;
    font-size: 1rem;
    font-weight: 500;
    line-height: 38px;
    background: rgba(0,0,0,0.15);
    border: 2px solid rgba(247,181,44,1);
    border-radius: 30px;
    transition: color 250ms ease, background 250ms ease, border 250ms ease;
}
.search-popup-layer .search-input-submit {
    margin-right: 20px;
}
.search-popup-layer .search-input-submit:hover,
.search-popup-layer .search-cancel-btn:hover {
    color: #fff;
    background: rgba(247,181,44,1);
}
.search-popup-overlay {
    position: fixed;
    display: block;
    width: 100%;
    height: 100%;
    top: -110%;
    left: 0;
    z-index: 997;
    opacity: 0;
    transition: opacity 250ms ease 50ms;
}
.open-search-popup .search-popup-overlay {
    top: 0;
    opacity: 1;
}
.search-popup-overlay::before {
    position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    background: rgba(0, 0, 0, 0.75);
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAieSURBVGhDddqBkVXHDoTh3cVOwmlAGhAGpGGHYdIwYUAchMHTN7x/rL2FVSVL02q15syZPcaLn//+++/fn8Y+f/78NPnT27dvn56fn08Os/727dutwfjXr19vvV6m9+PHj7eHbV56capvPaZWLpa/e/fuxLTZqf348eP3SY6P2IlTO7naNBxsBl88Xj0crwjXq0fUl8N43PKtVb88nXjhe76akzgA0TZT0VpjwvHU21R8663TwM2BbXzz64fz5vGd4+7eai+fPn06rzkb8AkmetXyGXxqIoypj9C5AnwED85wujbpxEsTHsZo2Ud72f1dp0d+uvKXBDJNmsP2ptoAa4NtTGS4emFs11haMA+PW8/eB6xZ9pjBuDq3XzOeB/Rq7sYSrcm6jRjsh9mbib/75Ey/AXtjnSDDM1wdFq8+1j70dSgM1izcW3dfBzzuvk3h1R0OH42Dqct3xFHDi797OU1eTa/1nifC1eOrq21vrnrc8/l1KhPPk03h5tM0Pf+aE5iN3ByXbZ7T6sTSYzPsniBTk/c2aeD2hpqfVrp64mXyN//8888biz/++OPp/fv3h/z9+/enP//88+nDhw8H0/jXX3+dGl5COHJD4V++fDn8DIYDU2u4aEM9mHmc6TFXnweB48PjlTOz5xnOfb2vuWsAsw4TN5bD+GzmrGfw5RV/hYlw2mbr5/BcPTwN/Hj1cuuX+cc9YSfUqcE8rbcQJg/DZXgMNkNOznY/PA1xHubms6ET8fhs+vDlGUxP+7Nuvhz3RdJmCMgbrLnGLV6NtQFOHO4B9LC0rRvK4fUwmh4q27Px+qNPOKMBE+8bQf7VGyjyeJpxPBxnPWgaRdZmW4vl9dHec/vznl41D2Cutciri+er1QZF3r8rYDaE2KC9AWuulni9cePVx/BaNxMns87q9bZoq7W2t3rfzBfgjYUvAcDXhVkjMpgN9TUh5Kuhry/dHs7qoUErHqyaL2EazaeLx1lfqX2gm6PnfCnn9O5P/hDPV0WcUzu5r4M1DgwPLqqFFatXE2E0qnF6YXJY8+uLGy8dWFq4+p81uGeebgrnCYc8tZ+vdRpePb21ems9TsuaqacBs2ZdA/bYM5t5xWXWNOLFSbc3lL34hwJxD2QTEYttnpi8H0DrfvgYrGF04ofJmbWamfU+auhn4QzWHtOKh/jqdfHHa8Hj8HrEHGfkjuvj8rjpxAmX02yWGC5Xk+9++O6X++m/DeUaFPmuh53G/wsS2xvaPem0CfVimtbxcWm1Tq8ZsDTjWJvtFR2SpjaUSAMbXtyCHCamtYfGS/NRj3cI8vbCt9b2ZtbLz79HpjD5z/sm39F9ZdN0/N7Jsen95c9I/dZZP2uZ+sbSmg2+wkXeXLU4TH72OILniTzQNByHWefW8HiiE+H1OalyuB4xzTB5mmF64+2T371pma0nLX72JAG2yYYk8Lg2IH5rnAZXl9djHaZPPMMnx9+YmGbY1qyvtZoZ5z91B7xXqJxP7dU1kYte6wicqzDClwuXj/DVe7Q9i169RSbHo0c/bboZztZBuk/a6XUicjVRjU/f5e4+uVr83VMu4tAXq+sJk4el1UzeG4hXz0tPL3bi/ZGZDfmeXGtmjVvfDDk1fXDmjaVfjlcvq5fBcj1xqzN7Y7DzJsbMPf9m7wEaoCDvAYjK+1KIDWM429LqwfaXjTWPNYfjwJvD6nuM7YvRN+y8ogHPaxJH7NXrhcebk7hXpXq4XOxqdg3ipm8t7uu08a0fT14MLzfr/ocVEwe8J8pa9xb4iNxTriaf4bfXCZ+TGiviMPV46YvWYfrpMfryzWfy7MWdM0iR758PRCIECPXKDZnTOVGNxdtGr03sDdDH5TBre+h62UNabZYOTj1pqcPOr0xZBKaJKG9QedYpszamvg8FznYvHo659fWw1eN2yI+WHi4/c0bw3L1Z3DtnPcI3cnXrMH2wavUX00wHpsd69nJrsPriqsOLm1N978P6WXGS85RTPLETkrMROdHTM2uOV95Jcn2je7j79Ioz/L4VGqyauWr1s3L1anrD9D57qr2hBJmGHqYG6zaQGGv9+PBi1yP9jH6z2O591JKL+PIO2hr3N0liCW9iFi9/rDeMd4JiJ595YG9+f1TEZqpbi+bQlYvZ1pPjIdx7zafwKrqLojc3fa/ubB5OJ74c1jpvlp6N45qhLuoLK9ajlk4z79+PeKoBj8udEJw9rkf4YJ3UDLl395zOmLy63nrgTM7hLH06s7H7JuHx6P2X/efPCAHW5kSYaAje3lQ5a0NMzcbE5sRt89ZqIh4rsseH0NfDXl6vcQTPa+LW8Gq7PqL3NccVYWJ43PjV04bTTD9MpFFMMw4P2/m5WiMw+U/rlbJOLIM7AT4C961lnY6aPvVOWq81l3fCs5kTt1Zvjl5cvH3daG67f2PF2gBvEKwN9hAswW1qDdDfJuY0D4bfBvF8uRgs2/PwaVSH95BMzcOdw/DKPMwI3GsynBOn4dT2Op7Xqiaqi+U45Xp49dZq9XOacFj55obRxtk5P/9hNeBwf16rKZ4TnOJ97epcDY7HrOF4ToqWeidavxhWD15m3Ww63kT70pumtchxWbm/P3yj0d/DRfLb7jbWb8qJ+C16v4WHcRzcNqhOr3V9eBlNmN/s48uZ2Kz+ftJv7PtNvhqj3WyGA3x1BeRzCvcaWON0nWDWRVg9sNZzijffvPrSCKffDL1cncPxYfXFjzca//6+Vmxoza3F6hrD5cS26N5EDkuHtxG5WvFXc6vTac6OeO7g2WBNyHtgm9cEF+PI1R8fMDekgT0MXK8114vzmLcW065P3DV+/hg/wLlvIusTx2f4/cT1+WSiNRuNE/HgtPB9XuvjcrV+hrZVF5vdB4DvPvuzL1j7vv/jGat5TuVEZFjiTK6ZGRwvrKF5G0wbJs+t9+Zgeral8zinvX779u3pf6Ar4821qINrAAAAAElFTkSuQmCC), linear-gradient(to bottom, rgba(0,0,0, 0.2) 0%, rgba(0,0,0, 0.2) 100%);
}
.search-popup-overlay::before {
    background-color: rgba(0, 0, 0, 0.75);
    -webkit-backdrop-filter: blur(2px) saturate(100%);
            backdrop-filter: blur(2px) saturate(100%);
}


/* --------------------------------------------------------------------------------------------
    ## FOOTER
-------------------------------------------------------------------------------------------- */
#footer {
    padding: 50px 0 30px;
    color: #b2b2b2;
    font-size: 1rem;
    letter-spacing: 0;
    background: #21201e;
}
#footer .flogo {
    position: absolute;
    display: block;
    width: 240px;
    height: 62px;
    top: 0;
    left: 0;
    background-image: url('../img/common/flogo.png');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
}
#footer .group {
    margin-left: 280px;
}
#footer .floc {
    margin-top: 15px;
}
#footer .floc:first-child {
    margin-top: 0;
}
#footer .floc strong {
    color: #fff;
}
#footer .floc a {
    color: #b2b2b2;
}
#footer .first-inner {
    padding-bottom: 30px;
}
#footer .fbottom {
    padding-top: 30px;
    color: #fff;
    border-top: 1px solid #626262;
}
#footer .fbottom .wide-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    line-height: 18px;
}
#footer .fbottom .fmenu {
    text-align: right;
}
#footer .fbottom li {
    display: inline-block;
}
#footer .fbottom .fmenu li {
    position: relative;
    margin-left: 10px;
    padding-left: 20px;
}
#footer .fbottom .fmenu li::before {
    position: absolute;
    display: block;
    content: '';
    width: 1px;
    top: 3px;
    left: 0;
    bottom: 3px;
    background: #fff;
}
#footer .fbottom .fmenu li:first-child {
    margin-left: 0;
    padding-left: 0;
}
#footer .fbottom .fmenu li:first-child::before {
    display: none;
}
#footer .fbottom .fmenu a {
    display: block;
    color: #fff;
}
#footer .fbottom .fmenu strong {
    font-weight: 600;
}
#footer .mview {
    display: none;
}
.main #footer {
    margin-top: 70px;
}


/* --------------------------------------------------------------------------------------------
    ## VISUAL
-------------------------------------------------------------------------------------------- */
#visual {
    position: relative;
    height: 300px;
    z-index: 50;
    -webkit-transition: height 250ms ease;
       -moz-transition: height 250ms ease;
            transition: height 250ms ease;
}
#visual .wide-inner {
    height: 100%;
}
#visual h2 {
    position: absolute;
    width: 100%;
    margin-top: -30px;
    top: 50%;
    left: 0;
    z-index: 2;
    color: #fff;
    font-size: 2.25rem;
    font-weight: 500;
    text-align: center;
    line-height: 1.2;
    text-shadow: 3px 3px 7px rgba(0,0,0,0.36);
    -webkit-transform: translate(0, -50%);
       -moz-transform: translate(0, -50%);
            transform: translate(0, -50%);
}
#visual .pbg {
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url('../img/page/visual/svisual.jpg');
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}
#visual .pbg1 {background-image: url('../img/page/visual/svisual1.jpg');}
#visual .pbg2 {background-image: url('../img/page/visual/svisual2.jpg');}
#visual .pbg3 {background-image: url('../img/page/visual/svisual3.jpg');}
#visual .pbg4 {background-image: url('../img/page/visual/svisual4.jpg');}
#visual .pbg5 {background-image: url('../img/page/visual/svisual5.jpg');}
#visual .pbg6 {background-image: url('../img/page/visual/svisual6.jpg');}
#visual .pbg7 {background-image: url('../img/page/visual/svisual7.jpg');}



/* MAIN VISUAL */
.main #visual {
    height: 445px;
    padding-top: 0;
}
.main #visual .wide-inner {
    position: relative;
    overflow: hidden;
}
.main #visual .wide-inner,
.main #visual .swiper,
.main #visual .swiper-wrapper,
.main #visual .swiper-slide,
.main #visual .inner {
    height: 100%;
}
.main #visual .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
}
.main #visual .text-area {
    z-index: 10;
    color: #fff;
    text-align: center;
    text-shadow: 1px 1px 8px rgba(0,0,0,0.75);
}
.main #visual h3 {
    margin-bottom: 30px;
    font-size: 2.25rem;
    font-weight: 500;
    line-height: 1.2;
}
.main #visual p {
    font-size: 1.5rem;
    font-weight: 300;
}
.main #visual p .iblock:not(:last-child) {
    margin-bottom: 5px;
}
.main #visual .vlnk {
    position: absolute;
    bottom: -30px;
    right: 54px;
    z-index: 10;
}
.main #visual .vlnk a {
    display: flex;
    justify-content: center;
	align-items: center;
    width: 265px;
    height: 77px;
    color: #fff;
    font-size: 20px;
    border-radius: 35px;
    background: linear-gradient(130deg, #1762dd 45%, #033c88 45%);
}
.main #visual .vlnk a:hover {
    background: #1762dd;
}
.main #visual .vlnk a strong {
    margin-left: 5px;
}
.main #visual .vlnk a .icon {
    display: inline-block;
    width: 32px;
    height: 42px;
    background-image: url('../img/main/001.png');
    background-repeat: no-repeat;
    margin-right: 10px;
}
.main #visual .bbox {
    height: auto;
    overflow: initial;
}
.main #visual .swiper-slide .slide-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
}


/* THEMES */
.main #visual .swiper-button-prev,
.main #visual .swiper-button-next {
    position: absolute;
    width: 60px;
    height: 60px;
    margin-top: -30px;
    top: 50%;
    bottom: 100px;
    z-index: 10;
    cursor: pointer;
    opacity: 0;
    border-radius: 50%;
    transition: opacity 350ms ease;
}
.main #visual:hover .swiper-button-prev,
.main #visual:hover .swiper-button-next {
    opacity: 1;
}
.main #visual .swiper-button-prev.swiper-button-disabled,
.main #visual .swiper-button-next.swiper-button-disabled {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    cursor: auto;
    pointer-events: none;
}
#visual .swiper-button-prev {
    left: 0;
}
#visual .swiper-button-next {
    right: 0;
}
#visual .swiper-button-prev,
#visual .swiper-container-rtl .swiper-button-next,
#visual .swiper-button-next,
#visual .swiper-container-rtl .swiper-button-prev,
#visual .swiper-button-prev.swiper-button-black,
#visual .swiper-container-rtl .swiper-button-next.swiper-button-black,
#visual .swiper-button-prev.swiper-button-white,
#visual .swiper-container-rtl .swiper-button-next.swiper-button-white,
#visual .swiper-button-next.swiper-button-black,
#visual .swiper-container-rtl .swiper-button-prev.swiper-button-black,
#visual .swiper-button-next.swiper-button-white,
#visual .swiper-container-rtl .swiper-button-prev.swiper-button-white {
    background-image: none;
}
.main #visual .swiper-button-prev::after,
.main #visual .swiper-button-next::after,
.main #visual .swiper-container-rtl {
    content: '' !important;
}
.main #visual .arrow-icon-position {
    position: relative;
    width: 100%;
    height: 100%;
}
.main #visual .arrow-icon-position span {
    display: block;
    color: #fff;
    font-size: 50px;
    text-align: center;
    line-height: 60px;
    transition: color 350ms ease;
}
.main #visual .swiper-button-prev:hover span,
.main #visual .swiper-button-next:hover span {
    color: #1762dd;
}
.main #visual .swiper-pagination {
    position: absolute;
    width: auto;
    left: 100px;
    bottom: 70px;
    text-align: right;
}
.main #visual .swiper-pagination .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    margin-left: 4px;
    background: #fff;
    opacity: 1;
    border-radius: 10px;
    transition: width 250ms ease, background 250ms ease, border 250ms ease;
}
.main #visual .swiper-pagination .swiper-pagination-bullet:hover {
    background: #1762dd;
}
.main #visual .swiper-pagination .swiper-pagination-bullet-active {
    width: 38px;
    height: 12px;
    background: #1762dd;
}


/* --------------------------------------------------------------------------------------------
    ## CONTAINER && CONTENTS
-------------------------------------------------------------------------------------------- */
#container {
    position: relative;
    width: 95%;
    max-width: 1740px;
    min-height: 640px;
    margin-left:  auto;
    margin-right: auto;
    background: #fff;
    padding-bottom:60px;
}
.main #container {
    width: 100%;
    max-width: 100%;
    background: transparent;
}
.main #content {
    margin-left: 0;
}


/* --------------------------------------------------------------------------------------------
    ## INDEX
-------------------------------------------------------------------------------------------- */
.main section {
    margin-top: 70px;
}
.main section .wide-inner {
    position: relative;
    background: #fff;
    border-radius: 10px;
}
.main section .mstitle {
    margin-bottom: 35px;
    text-align: center;
    line-height: 1.2;
}
.main section .mstitle h3 {
    font-size: 1.875rem;
    font-weight: 300;
}
.main section .mstitle h3 strong {
    font-weight: 800;
}
.main section .mstitle p {
    margin-top: 15px;
    font-weight: 300;
    text-align: left;
}

.main .ms01 {
    position: relative;
    margin-top: 0;
    z-index: 10;
}
.main .ms01 .info-slider {
    position: relative;
    padding-left: 240px;
    overflow: hidden;
}
.main .ms01 .wide-inner {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
.main .ms01 .title {
    position: absolute;
    display: flex;
    width: 242px;
    height: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    top: 0;
    left: 0;
    z-index: 10;
    text-align: center;
    background: #fff;
    border-radius: 10px;
}
.main .ms01 h3 {
    margin-bottom: 15px;
    font-size: 1.5rem;
    font-weight: 300;
}
.main .ms01 h3 strong {
    font-weight: 800;
}
.main .ms01 .info-btn-area {
    display: flex;
    justify-content: center;
    align-items: center;
}
.main .ms01 .slide-info {
    margin: 0 10px;
    color: #707070;
}
.main .ms01 .slide-info .spn {
    color: #1762dd;
    font-weight: 500;
}
.main .ms01 .swiper-wrapper {
    position: relative;
    display: flex;
    width: calc(100% - 340px);
}
.main .ms01 .swiper-slide {
    position: relative;
    height: 100%;
    padding: 40px 50px;
}
.main .ms01 .swiper-slide::before {
    position: absolute;
    display: block;
    content: '';
    width: 1px;
    height: 60px;
    margin-top: -30px;
    top: 50%;
    left: 0;
    background: #dcdcdc;
}
.main .ms01 .swiper-slide h4 {
    margin-bottom: 10px;
    color: #000;
    font-size: 1.125rem;
    font-weight: 500;
    transition: color 250ms ease;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.main .ms01 .swiper-slide p {
    margin-bottom: 10px;
    color: #707070;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.main .ms01 .group {
    display: block;
}
.main .ms01 .group .lnk {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
}
.main .ms01 .group .lnk span {
    color: #000;
    transition: color 250ms ease;
}
.main .ms01 .group .lnk .arrow {
    position: relative;
    width: 50px;
    height: 11px;
    margin: 0 0 2px 5px;
    background: url('../img/common/arrow_type_1.png') 0 0 no-repeat;
    background-size: 50px 11px;
}
.main .ms01 .group .lnk .arrow .over {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    background: #fff url('../img/common/arrow_type_1_over.png') 0 0 no-repeat;
    background-size: 50px 11px;
    transition: opacity 250ms ease;
}
.main .ms01 .group:hover h4,
.main .ms01 .group:hover .lnk span {
    color: #1762dd;
}
.main .ms01 .group:hover .lnk .arrow .over {
    opacity: 1;
}
.main .ms01 .swiper-button-prev,
.main .ms01 .swiper-button-next {
    position: static;
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 0;
    color: #b5b5b5;
    text-align: center;
    line-height: 28px;
    border: 1px solid #d2d2d2;
    transition: color 250ms ease, border 250ms ease;
}
.main .ms01 .swiper-button-prev:hover,
.main .ms01 .swiper-button-next:hover {
    color: #1762dd;
    border-color: #1762dd;
}
.main .ms01 .swiper-button-prev::after,
.main .ms01 .swiper-button-next::after,
.main .ms01 .swiper-container-rtl {
    content: '' !important;
}

.main .ms02 {
    padding: 18px 0 8px;
    background: #f3f3f3;
}
.main .ms02 .wide-inner {
    padding: 0;
    background: transparent;
    border-radius: 0;
}
.main .ms02 .ms02-box {
    position: relative;
    padding: 72px 56px 60px;
    background: #fff;
    border-radius: 10px;
}
.main .ms02 .mstitle {
    margin-bottom: 42px;
}
.main .ms02 .tab-menu {
    display: flex;
    gap: 18px;
    margin-bottom: 48px;
    justify-content: center;
    align-items: center;
}
.main .ms02 .tab-cont {
    position: relative;
    display: none;
    height: auto;
    overflow: visible;
}
.main .ms02 .tab-cont.active {
    display: block;
}
.main .ms02 .btn-tab {
    display: block;
    min-width: 148px;
    padding: 16px 28px;
    color: #1f1b18;
    font-size: 1.25rem;
    font-weight: 600;
    text-align: center;
    line-height: 1;
    background: #fff;
    border: 1px solid #1f1b18;
    border-left: 1px solid #1f1b18;
    border-radius: 999px;
    transition: color 250ms ease, background 250ms ease, border 250ms ease;
}
.main .ms02 .btn-tab:hover {
    color: #fff;
    background: #1f1b18;
    border-color: #1f1b18;
}
.main .ms02 .btn-tab.active,
.main .ms02 .btn-tab.active:hover {
    color: #fff;
    background: #1f1b18;
    border-color: #1f1b18;
}
.main .ms02 .tab-slider {
    position: relative;
    margin: 0;
    padding: 4px 24px;
    overflow: hidden;
}
.main .ms02 .swiper-wrapper {
    align-items: stretch;
}
.main .ms02 .swiper-wrapper > .swiper-slide:only-child {
    width: 100% !important;
}
.main .ms02 .swiper-slide {
    height: auto;
    padding-top: 2px;
}
.main .ms02 .swiper-slide a {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: #fff;
    border: 1px solid #e4e7ec;
    border-radius: 24px;
    overflow: hidden;
    transition: border 250ms ease, box-shadow 250ms ease, transform 250ms ease;
}
.main .ms02 .swiper-slide-active a,
.main .ms02 .swiper-slide a:hover {
    border-color: #2563eb;
    transform: translateY(-2px);
}
.main .ms02 .tab-cont .swiper-button-prev,
.main .ms02 .tab-cont .swiper-button-next {
    position: absolute;
    width: 30px;
    height: 30px;
    margin: -15px 0;
    padding: 0;
    top: 50%;
    left: auto;
    right: auto;
    z-index: 2;
    color: #2563eb;
    text-align: center;
    line-height: 28px;
    background: #fff;
    border: 1px solid #d8dce2;
    transition: color 250ms ease, border 250ms ease, box-shadow 250ms ease;
}
.main .ms02 .tab-cont .swiper-button-prev {
    left: 0;
}
.main .ms02 .tab-cont .swiper-button-next {
    right: 0;
}
.main .ms02 .tab-cont .swiper-button-next.swiper-button-disabled,
.main .ms02 .tab-cont .swiper-button-prev.swiper-button-disabled {
    opacity: 0.45;
}
.main .ms02 .tab-cont .swiper-button-prev:hover,
.main .ms02 .tab-cont .swiper-button-next:hover {
    border-color: #2563eb;
    box-shadow: 0 8px 20px rgba(37, 99, 235, 0.16);
}
.main .ms02 .tab-cont .swiper-button-prev::after,
.main .ms02 .tab-cont .swiper-button-next::after,
.main .ms02 .tab-cont .swiper-container-rtl {
    content: '' !important;
}
.main .ms02 .cont-top {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: space-between;
    padding: 36px 34px 28px;
    font-weight: 300;
    min-height: 330px;
}
.main .ms02 .cont-top .pcont + .pcont {
    margin-top: 8px;
}
.main .ms02 .cont-top .pcate {
    margin-bottom: 20px;
    color: #2563eb;
    font-size: 1.125rem;
    font-weight: 500;
}
.main .ms02 .cont-top h4 {
    width: 100%;
    margin-bottom: 22px;
    color: #111827;
    font-size: 1.125rem;
    font-weight: 700;
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-height: 1.5;
}
.main .ms02 .cont-top .ptitle {
    margin: 0 0 22px;
}
.main .ms02 .cont-top .pcont {
    display: -webkit-box;
    width: 100%;
    margin-top: 2px;
    overflow: hidden;
    font-size: 16px;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: #111827;
    font-weight: 400;
    line-height: 1.45;
}
.main .ms02 .cont-top .pcont.pcont-sub {
    color: #a3a3a3;
    font-size: 14px;
}
.main .ms02 .cont-top .pdate {
    display: -webkit-box;
    width: 100%;
    margin-top: auto;
    padding-top: 22px;
    overflow: hidden;
    font-size: 16px;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    color: #a3a3a3;
    line-height: 1.45;
}
.main .ms02 .cont-btm {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 34px;
    color: #fff;
    font-size: 1.125rem;
    font-weight: 700;
}
.main .ms02 .group_wait .cont-btm {background: #8b95a1;}
.main .ms02 .group1 .cont-btm {background: #2563eb;}
.main .ms02 .group2 .cont-btm {background: #39b36b;}
.main .ms02 .group3 .cont-btm {background: #c8c8c8;}
.main .ms02 .cont-btm p {
    width: auto;
}
.main .ms02 .cont-btm .pday {
    text-align: right;
}
.main .ms02 .program-empty {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 320px;
    color: #666;
    font-size: 1.125rem;
    font-weight: 500;
    background: #fafafa;
    border: 1px solid #ececec;
    border-radius: 24px;
}
.main .ms02 .moreview-area {
    display: flex;
    justify-content: center;
    margin-top: 46px;
}
.main .ms02 .tab-cont .moreview {
    display: inline-block;
    min-width: 248px;
    height: 52px;
    margin: 0;
    padding: 0 32px;
    color: #1f1b18;
    font-weight: 700;
    text-align: center;
    line-height: 50px;
    background: #fff;
    border: 1px solid #1f1b18;
    transition: color 250ms ease, background 250ms ease, border 250ms ease;
}
.main .ms02 .tab-cont .moreview:hover {
    color: #fff;
    background: #1f1b18;
    border-color: #1f1b18;
}

@media screen and (min-width: 569px) {
    .main .ms02 .swiper-wrapper > .swiper-slide:only-child {
        width: calc((100% - 20px) / 2) !important;
    }
}

@media screen and (min-width: 769px) {
    .main .ms02 .swiper-wrapper > .swiper-slide:only-child {
        width: calc((100% - 50px) / 3) !important;
    }
}

@media screen and (min-width: 1153px) {
    .main .ms02 .swiper-wrapper > .swiper-slide:only-child {
        width: calc((100% - 90px) / 4) !important;
    }
}




/* --------------------------------------------------------------------------------------------
    ## PAGE
-------------------------------------------------------------------------------------------- */
/* LOCATION */
.loc-area {
    position: absolute;
    width: 100%;
    height: 60px;
    left: 0;
    bottom: 0;
    z-index: 2;
    text-align: center;
}
.loc-area .inner {
    position: relative;
    background: #fff;
    border-bottom: 1px solid #dcdcdc;
}
.loc-area .loc-group {
    display: flex;
    align-items: center;
}
.loc-area .loc-dep1 {
    position: relative;
    height: 100%;
    border-right: 1px solid #dcdcdc;
}
.loc-area .loc-dep1 a {
    display: block;
    margin: 10px auto;
    padding: 0 20px;
    color: #000;
    font-size: 1.375rem;
    line-height: 40px;
}
.loc-area .loc-dep1 button {
    position: relative;
    display: block;
    width: 240px;
    height: 60px;
    padding: 0 20px;
    color: #000;
    font-size: 1.1rem;
    text-align: left;
    line-height: 60px;
    transition: color 250ms ease;
}
.loc-area .loc-dep1 button.btn-loc-2 {
    /* 긴 제목으로 인한 줄바꿈 방지 */
    padding-right: 42px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.loc-area .loc-dep1 button span {
    position: absolute;
    top: 50%;
    right: 20px;
    text-align: center;
    transform: translateY(-50%);
    transition: transform 250ms ease;
}
.loc-area .loc-dep1 button.open span {
    transform: translateY(-50%) rotate(180deg);
}
.loc-area .loc-dep2 {
    position: absolute;
    display: none;
    padding: 0 20px;
    top: 60px;
    left: -1px;
    right: -1px;
    background: #fff;
    border: 1px solid #dcdcdc;
}
.loc-area .loc-dep2 li {
    border-top: 1px dashed #dcdcdc;
}
.loc-area .loc-dep2 li:first-child {
    border: none;
}
.loc-area .loc-dep2 a {
    display: block;
    margin: 0;
    overflow: hidden;
    font-size: 1rem;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.loc-area .page-menu {
    position: absolute;
    display: flex;
    top: 50%;
    right: 0;
    justify-content: center;
    align-items: center;
    transform: translateY(-50%);
}
.loc-area .page-menu button {
    position: relative;
    display: block;
    width: 27px;
    height: 26px;
    margin: 0 20px;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: 27px 26px;
}
.loc-area .page-menu .btn-print::after {
    position: absolute;
    display: block;
    content: '';
    width: 1px;
    height: 100%;
    top: 50%;
    right: -20px;
    border-right: 1px solid #dcdcdc;
    transform: translateY(-50%);
}
.loc-area .page-menu .btn-print {background-image: url('../img/common/ico_print.png');}
.loc-area .page-menu .btn-share {background-image: url('../img/common/ico_share.png');}




/* 공통요소 */
.psc {
    margin-bottom: 100px;
    font-size: 1.25rem;
}
.psc:last-child {
    margin-bottom: 125px;
}
.psc .cont {
    font-size: 1.125rem;
    font-weight: 300;
}


.list-type .strong,
.list-type li,
.list-type .pstxt {
    position: relative;
    padding-left: 20px;
}
.list-type .strong::before,
.list-type li::before,
.list-type .pstxt::before {
    position: absolute;
    display: block;
    content: '※';
    top: 0;
    left: 0;
}
.list-type li::before {
    content: '＊';
}
.list-type .pstxt::before {
    content: '－';
}


.image-group {
    position: relative;
    line-height: 0;
}
.image-group .ori-img-link {
    position: absolute;
    display: none;
    width: 40px;
    height: 40px;
    top: -1px;
    right: -1px;
    z-index: 1;
    color: #fff;
    font-size: 20px;
    text-align: center;
    line-height: 38px;
    opacity: 0.5;
    background: rgba(0,0,0,1);
    border: 1px solid #333;
    transition: opacity 250ms ease;
}
.ori-img-link:hover {
    opacity: 1;
}


.tbl-area {
    width: 100%;
    padding-bottom: 15px;
    overflow-x: auto;
}
.tbl-area table {
    width: 100%;
    min-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    border-collapse: collapse;
    border-spacing: 0;
}
.tbl-area table th,
.tbl-area table td {
    padding: 20px 10px;
    font-weight: 300;
}
.tbl-area table th {
    font-size: 1.25rem;
    font-weight: 600;
}


.ptitle {
    margin: 80px auto 100px;
}
.ptitle h3 {
    font-size: 2.25rem;
    font-weight: 500;
    text-align: center;
}


.pstitle {
    position: relative;
    margin-bottom: 25px;
    padding-left: 35px;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 30px;
}
.pstitle::before {
    position: absolute;
    display: block;
    content: '';
    width: 24px;
    height: 24px;
    top: 3px;
    left: 0;
    line-height: 1.4;
    background-image: url('../img/common/depth_bullet.png');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
}
.pstitle a {
    position: absolute;
    display: inline-block;
    margin-left: 10px;
    padding: 2px 10px;
    top: 50%;
    color: #fff;
    font-size: 1rem;
    background: #1762dd;
    transform: translateY(-50%);
}


.txt-dep2 {
    margin-left: 35px;
}
.txt-dep3 {
    margin-left: 70px;
}
.txt-dep2 .txt-dep3.list-type {
    margin-left: 15px;
}
.txt-dep4 {
    margin-left: 105px;
}


.border-link-area {
    display: flex;
}
.border-link {
    width: 23.5%;
    margin-left: 2%;
}
.border-link:first-child {
    margin-left: 0;
}
.border-link a {
    position: relative;
    display: block;
    height: 100%;
    padding: 20px 25px;
    color: #b6985a;
    font-size: 1.125rem;
    font-weight: 500;
    border: 1px solid #b6985a;
    transition: color 250ms ease, border 250ms ease;
}
.border-link a::before {
    position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border: 1px solid #1762dd;
    opacity: 0;
    transition: opacity 250ms ease;
}
.border-link a p {
    margin-bottom: 5px;
    color: #000;
}
.border-link a .arrow {
    position: relative;
    display: inline-block;
    font-size: 1rem;
}
.border-link a:hover {
    color: #1762dd;
    border-color: #1762dd;
}
.border-link a:hover::before {
    opacity: 1;
}
.border-link a .arrow::before,
.border-link a .arrow::after {
    position: absolute;
    display: block;
    content: '';
    width: 50px;
    height: 11px;
    right: -58px;
    bottom: 3px;
    background-color: #fff;
    background-image: url('../img/common/arrow_type_1.png');
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 50px 11px;
}
.border-link a .arrow::after {
    background-image: url('../img/common/arrow_type_1_over.png');
    opacity: 0;
    transition: opacity 250ms ease;
}
.border-link a:hover .arrow::after {
    opacity: 1;
}


/* PAGE */
.cont .dot-list {
    position: relative;
    margin-top: 5px;
    padding-left: 20px;
    line-height: 1.5;
}
.cont .dot-list:first-child {
    margin-top: 0;
}
.cont .dot-list i {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    color: #1762dd;
    line-height: 1.5;
    transform: scale(0.8);
}





.gwnu-a-popup {
    position: fixed;
    display: none;
    width: 90%;
    max-width: 420px;
    padding: 30px 10px;
    top: 50%;
    left: 50%;
    z-index: 997;
    font-size: 1em;
    font-weight: 400;
    text-align: center;
    background: #fff;
    border: 1px solid #1762dd;
    transform: translate(-50%, -50%);
    box-shadow: 9px 9px 0 rgba(174,0,85,0.35);
}
.gwnu-a-popup a {
    color: #000;
    transition: color 250ms ease;
}
.gwnu-a-popup a:hover {
    color: #1762dd;
}
/* 클래스명 변경 */
.gwnu-a-popup .close-message-popup {
    display: block;
    width: 120px;
    height: 40px;
    margin: 30px auto 0;
    color: #fff;
    font-weight: 500;
    text-align: center;
    line-height: 40px;
    background: #1762dd;
}

.marbtm100 {
    margin-bottom: 100px;
}
.flex-align-center {
    justify-content: center;
}
.marbtm70 {
    margin-bottom: 70px;
}



/* --------------------------------------------------------------------------------------------
    ## SITEMAP
-------------------------------------------------------------------------------------------- */
.sitemap .group {
    position: relative;
    display: flex;
    margin-top: 55px;
    padding: 20px 0;
}
.sitemap .group::after {
    position: absolute;
    content: '';
    width: 1px;
    height: 100%;
    top: 0;
    left: 22%;
    background: #d2d2d2;
}
.sitemap .group:first-child {
    margin-top: 0;
}
.sitemap .pstitle {
    width: 20%;
    margin-right: 4%;
    margin-bottom: 0;
}
.sitemap .pstitle p {
}
.sitemap .pstitle span {
    font-size: 1.125rem;
    font-weight: 300;
}
.sitemap .cont {
    position: relative;
    display: flex;
    width: 76%;
    flex-wrap: wrap
}
.sitemap .cont .colspan {
    width: 23.5%;
    margin-top: 2%;
    margin-left: 2%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}
.sitemap .cont .colspan:nth-child(-n+4) {
    margin-top: 0;
}
.sitemap .cont .colspan:nth-child(4n+1) {
    margin-left: 0;
}
.sitemap .cont .colspan a {
    display: block;
    color: #000;
    transition: color 250ms ease, border 250ms ease;
}
.sitemap .cont .colspan > a {
    padding: 15px 5px;
    font-size: 1.25rem;
    text-align: center;
    line-height: 1.4;
    border: 1px solid #d2d2d2;
    flex: 1;
}
.sitemap .cont .colspan a:hover {
    color: #1762dd;
    border-color: #1762dd;
}
.sitemap .cont .dep2 li {
    margin-left: 5px;
}
.sitemap .cont .dep2 li a {
    display: block;
    margin-top: 15px;
}

.tbl-scroll {width: 100%;overflow-y: auto;}
.tbl-scroll .tbl {min-width: 700px;}

/* --------------------------------------------------------------------------------------------
    ## LGOIN
-------------------------------------------------------------------------------------------- */
.login-wrap {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 10;
}
.login-inner {
    position: absolute;
    width: 90%;
    max-width: 520px;
    margin: 0;
    padding: 50px;
    top: 50%;
    left: 50%;
    background: #fff;
    border: 1px solid #dcdcdc;
    box-shadow: 13px 13px 2px rgba(34,31,31,0.2);
    transform: translate(-50%, -50%);
}
.login-header {
    margin-bottom: 40px;
}
.login-header .logo {
    width: 240px;
    height: 62px;
    margin: 0 auto;
}
.login-header .logo a {
    display: block;
    width: 100%;
    height: 100%;
    text-indent: -9999px;
    line-height: 0;
    outline: 0;
    background-image: url('../img/common/logo.png');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
}
.login-content {
    margin-bottom: 30px;
}
.login-content .input-text {
    display: block;
    width: 100%;
    height: 70px;
    margin-top: 15px;
    padding: 0 15px;
    color: #777;
    font-size: 1.125rem;
    line-height: 68px;
    border: 1px solid #dcdcdc;
    transition: border 250ms ease;
}
.login-content .input-text:first-child {
    margin-top: 0;
}
.login-content .input-text:hover,
.login-content .input-text:focus {
    border-color: #1762dd;
}
.login-content .login-button {
    display: block;
    width: 100%;
    height: 70px;
    margin-top: 30px;
    color: #fff;
    font-size: 1.25rem;
    font-weight: 500;
    text-align: center;
    line-height: 70px;
    background: #1762dd;
    border-radius: 7px;
}
.login-content .login-auto {
    position: relative;
    display: block;
    width: 150px;
    margin-top: 15px;
    color: #777;
    cursor: pointer;
}
.login-content .login-auto input {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    line-height: 0;
    opacity: 0;
    border: 1px solid transparent;
}
.login-content .checkbox-area {
    position: relative;
    width: 100%;
    height: 30px;
    font-size: 1.25rem;
    line-height: 0;
}
.login-content .login-auto i,
.login-content .login-auto span {
    position: absolute;
    width: 100%;
    height: 30px;
    top: 50%;
    left: 0;
    font-size: 1.25rem;
    line-height: 30px;
    transform: translateY(-50%);
    transition: color 250ms ease, opacity 250ms ease;
}
.login-content .login-auto .auto-login-no {
    color: #dcdcdc;
    opacity: 1;
}
.login-content .login-auto .auto-login-ok {
    color: #1762dd;
    opacity: 0;
}
.login-content .login-auto input:checked + .checkbox-area .auto-login-no {
    opacity: 0;
}
.login-content .login-auto input:checked + .checkbox-area .auto-login-ok {
    opacity: 1;
}
.login-content .login-auto input:hover + .checkbox-area i,
.login-content .login-auto input:focus + .checkbox-area i {
    color: #1762dd;
}
.login-content .login-auto span {
    left: 30px;
    font-size: 1.125rem;
}

.login-footer .pos-rel {
    position: relative;
    display: flex;
    justify-content: center;
    width: 100%;
    line-height: 0;
    border: 1px solid #dcdcdc;
}
.login-footer a {
    position: relative;
    display: block;
    width: 50%;
    height: 60px;
    padding: 0 5px;
    color: #777;
    font-size: 1rem;
    text-align: center;
    line-height: 60px;
    letter-spacing: -0.075rem;
    transition: color 250ms ease;
}
.login-footer a:hover {
    color: #1762dd;
}
.login-footer a::before {
    position: absolute;
    content: '';
    width: 1px;
    height: 16px;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background: #dcdcdc;
}
.login-footer a:first-child::before {
    display: none;
}
.login-background {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(130deg, #1762dd 45%, #033c88 45%);
}



/* --------------------------------------------------------------------------------------------
    ## BOARD
-------------------------------------------------------------------------------------------- */
.join-step-area {
    display: flex;
}
.join-step-area div {
    width: 33.33333333333333%;
    height: 66px;
    font-size: 1.375rem;
    color: #000;
    text-align: center;
    line-height: 64px;
    background: #fff;
    border: 1px solid #dcdcdc;
    border-left: 0;
}
.join-step-area div:first-child {
    border-left: 1px solid #dcdcdc;
}
.join-step-area .current {
    color: #fff;
    background: #1762dd;
    border-color: #1762dd;
}
.member_join_s1 .abtn-area {
    text-align: right;
}
.member_join_s1 .abtn-area label {
    position: relative;
    display: inline-block;
    cursor: pointer;
}
.member_join_s1 .abtn-area label input {
    position: absolute;
    width: 0;
    height: 0;
    top: 0;
    left: 0;
    overflow: hidden;
    border: 0;
}
.member_join_s1 .abtn-area label span {
    position: relative;
    display: block;
    width: 100%;
    height: 50px;
    padding: 0 25px;
    z-index: 1;
    color: #7d7d7d;
    font-size: 1.125rem;
    text-align: center;
    line-height: 48px;
    background: #fff;
    border: 1px solid #dcdcdc;
    transition: color 250ms ease, background 250ms ease, border 250ms ease;
}
.member_join_s1 .abtn-area label .agreement-btn:focus + span {
    color: #1762dd;
    border-color: #1762dd;
}
.member_join_s1 .abtn-area label .agreement-btn:hover + span,
.member_join_s1 .abtn-area label .agreement-btn:checked + span,
.member_join_s1 .abtn-area label .agreement-btn:checked:hover + span,
.member_join_s1 .abtn-area label .agreement-btn:checked:focus + span {
    color: #fff;
    background: #1762dd;
    border-color: #1762dd;
}
.member_join_s1 .atxt-box-area {
    height: 280px;
    margin-bottom: 25px;
    padding: 20px;
    overflow: auto;
    font-size: 1.125rem;
    border: 1px solid #dcdcdc;
}

.member_join_s2 .help-text {
    margin: 0 0 30px 35px;
    font-size: 1.125rem;
    font-weight: 300;
}
.member_join_s2 .help-text i,
.member_join_s2 i.required {
    color: #1762dd;
}
.member_join_s2 .ifield {
    padding: 20px 0;
    font-size: 1.125rem;
    border-top: 3px solid #000;
}
.member_join_s2 .cgroup {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #dcdcdc;
}
.member_join_s2 .lsubject {
    width: 210px;
    margin-right: 40px;
    padding: 35px 20px 35px 30px;
    font-size: 1.25rem;
}
.member_join_s2 .rcont {
    display: flex;
    width: calc(100% - 250px);
    padding: 20px 0;
    align-items: center;
}
.member_join_s2 .lsubject .ion-ios-medical,
.member_join_s2 .rcont .fa-circle-exclamation {
    color: #1762dd;
}
.member_join_s2 .field-1 {
    width: 480px;
}
.member_join_s2 .field-2,
.member_join_s2 .field-3 {
    margin-left: 15px;
}
.member_join_s2 .cgroup1 .field-3,
.member_join_s2 .cgroup2 .field-2 {
    width: 100%;
    margin: 10px 0 0 0;
}
.member_join_s2 .check-button {
    display: block;
    width: 125px;
    height: 50px;
    color: #fff;
    text-align: center;
    line-height: 50px;
    background: #535353;
    transition: background 250ms ease;
}
.member_join_s2 .rcont .itext {
    width: 100%;
    height: 50px;
    padding: 0 20px;
    line-height: 48px;
    border: 1px solid #dcdcdc;
}
.member_join_s2 .rcont select {
    height: 50px;
    padding: 0 20px;
    line-height: 48px;
    border: 1px solid #dcdcdc;
}
.member_join_s2 .row-wrap {
    flex-flow: row wrap;
}
.member_join_s2 .cmail-area .field-1 {
    width: 480px;
}
.member_join_s2 .cmail-area .field-2 {
    width: 125px;
}
.member_join_s2 .cmail-area .gap {
    width: calc(100% - 620px);
    height: 10px;
}
.member_join_s2 .cmail-area .input-mail {
    width: calc(100% - 208px);
}
.member_join_s2 .cmail-area .at-sign {
    width: 15px;
    text-align: center;
}
.member_join_s2 .cmail-area .choice-mail {
    width: 185px;
}
.member_join_s2 .cmail-area p {
    display: block;
    width: 100%;
    margin-top: 10px;
}
.member_join_s2 .phone-number .rcont input {
    width: calc(33.3333333333333% - 5px);
    text-align: center;
}
.member_join_s2 .phone-number .rcont input:first-child {
    width: calc(33.3333333333333% - 22px);
}
.member_join_s2 .phone-number .hyphen {
    width: 10px;
}
.member_join_s2 .check-button:hover {
    background: #1762dd;
}

.member_join_s3_02 .inner {
    text-align: center;
}
.member_join_s3_02 .member-join-logo {
    width: 240px;
    height: 62px;
    margin: 0 auto 50px;
    background-image: url('../img/common/logo.png');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
}
.member_join_s3_02 .join-complete-txt {
    margin: 0 auto 100px;
    font-size: 1.5rem;
    font-weight: 500;
    text-align: center;
}
.member_join_s3_02 .join-loged-btn {
    display: block;
    width: 100%;
    max-width: 340px;
    height: 66px;
    margin: 0 auto 250px;
    padding: 0 5px;
    z-index: 1;
    color: #fff;
    font-size: 1.5rem;
    text-align: center;
    line-height: 64px;
    background: #1762dd;
    border: 1px solid #1762dd;
    transition: color 250ms ease, background 250ms ease, border 250ms ease;
}
.member_join_s3_02 .join-loged-btn:hover {
    color: #1762dd;
    background: #fff;
    border-color: #1762dd;
}

.member-join-btn-area .top-text-area {
    margin: 0 auto 45px;
    padding-top: 75px;
    font-size: 1.125rem;
    font-weight: 300;
    text-align: center;
    border-top: 2px dashed #dcdcdc;
}
.member-join-btn-area .top-text-area i {
    color: #1762dd;
}
.member-join-btn-area .top-text-area strong {
    font-weight: 500;
}
.member-join-btn-area .btm-btn-area {
    display: flex;
    justify-content: center;
    align-items: center;
}
.member-join-btn-area .btm-btn-area a,
.member-join-btn-area .btm-btn-area button,
.member-join-btn-area .btm-btn-area input {
    display: block;
    width: 100%;
    max-width: 340px;
    height: 66px;
    padding: 0 5px;
    z-index: 1;
    color: #1762dd;
    font-size: 1.5rem;
    text-align: center;
    line-height: 64px;
    background: #fff;
    border: 1px solid #1762dd;
    transition: color 250ms ease, background 250ms ease, border 250ms ease;
}
.member-join-btn-area .btm-btn-area a:first-child,
.member-join-btn-area .btm-btn-area button:first-child,
.member-join-btn-area .btm-btn-area input:first-child {
    margin-right: 15px;
}
.member-join-btn-area .btm-btn-area a:hover,
.member-join-btn-area .btm-btn-area button:hover,
.member-join-btn-area .btm-btn-area input:hover {
    color: #fff;
    background: #1762dd;
    border-color: #1762dd;
}
.member-join-btn-area .btm-btn-area-2 a,
.member-join-btn-area .btm-btn-area-2 button,
.member-join-btn-area .btm-btn-area-2 input {
    color: #fff;
    background: #1762dd;
    border-color: #1762dd;
}
.member-join-btn-area .btm-btn-area-2 a:first-child,
.member-join-btn-area .btm-btn-area-2 button:first-child,
.member-join-btn-area .btm-btn-area-2 input:first-child {
    color: #000;
    background: #fff;
    border-color: #dcdcdc;
}
.member-join-btn-area .btm-btn-area-2 a:hover,
.member-join-btn-area .btm-btn-area-2 button:hover,
.member-join-btn-area .btm-btn-area-2 input:hover {
    color: #1762dd;
    background: #fff;
    border-color: #1762dd;
}



/* --------------------------------------------------------------------------------------------
    ## BOARD
-------------------------------------------------------------------------------------------- */



/* --------------------------------------------------------------------------------------------
    ## INTERNET EXPLORER
-------------------------------------------------------------------------------------------- */
.msie {}


/* --------------------------------------------------------------------------------------------
    ## MOBILE
-------------------------------------------------------------------------------------------- */
@media (-webkit-min-device-pixel-ratio: 2) {
    .mobile #footer .flogo                       {background-image: url('../img/common/flogo_small@2x.png');}
    .mobile .loc-area .page-menu .btn-print      {background-image: url('../img/common/ico_print@2x.png');}
    .mobile .loc-area .page-menu .btn-share      {background-image: url('../img/common/ico_share@2x.png');}
    .mobile .pstitle::before                     {background-image: url('../img/common/depth_bullet@2x.png');}
    .mobile .login-header .logo a                {background-image: url('../img/common/logo@2x.png');}
    .mobile .member_join_s3_02 .member-join-logo {background-image: url('../img/common/logo@2x.png');}
}
@media (-webkit-min-device-pixel-ratio: 3) {
    .mobile #footer .flogo                       {background-image: url('../img/common/flogo_small@3x.png');}
    .mobile .loc-area .page-menu .btn-print      {background-image: url('../img/common/ico_print@3x.png');}
    .mobile .loc-area .page-menu .btn-share      {background-image: url('../img/common/ico_share@3x.png');}
    .mobile .pstitle::before                     {background-image: url('../img/common/depth_bullet@3x.png');}
    .mobile .login-header .logo a                {background-image: url('../img/common/logo@3x.png');}
    .mobile .member_join_s3_02 .member-join-logo {background-image: url('../img/common/logo@3x.png');}
}

@media (-webkit-min-device-pixel-ratio: 1) and (max-width: 1024px) {
    .mobile #header .wide-inner h1 a {background-image: url('../img/common/logo_small.png');}
    .mobile #footer .flogo           {background-image: url('../img/common/flogo_small.png');}
}
@media (-webkit-min-device-pixel-ratio: 2) and (max-width: 1024px) {
    .mobile #header .wide-inner h1 a {background-image: url('../img/common/logo_small@2x.png');}
    .mobile #footer .flogo           {background-image: url('../img/common/flogo_small@2x.png');}
}
@media (-webkit-min-device-pixel-ratio: 3) and (max-width: 1024px) {
    .mobile #header .wide-inner h1 a {background-image: url('../img/common/logo_small@3x.png');}
    .mobile #footer .flogo           {background-image: url('../img/common/flogo_small@3x.png');}
}


/* --------------------------------------------------------------------------------------------
    ## RESPONSIVE
-------------------------------------------------------------------------------------------- */
@media screen and (max-width: 1440px) {
    .main section .mstitle p {
        text-align: center;
    }
}


@media screen and (max-width: 1400px) {
    #footer .flogo {
        position: static;
        margin-bottom: 35px;
    }
    #footer .group {
        margin-left: 0;
    }
}


@media screen and (max-width: 1280px) {
    /* Google Nexus 7 Landscape */

    #header #menu {
        margin-left: 160px;
    }

    .member_join_s2 .help-block {margin-top: 10px;margin-left: 0;}
}


@media screen and (max-width: 1200px) {
    /* FONT SIZE */
    #header #menu #gnb h3 strong {
        font-size: 1.125rem;
    }
    #header #menu #gnb li li a {
        font-size: 1rem;
    }

    .main #visual h3,
    #visual h2,
    .ptitle h3 {
        font-size: 2.25rem;
    }

    .main section .mstitle h3,
    .main .ms01 h3 {
        font-size: 2rem;
    }

    .main .ms01 .swiper-page-num2,
    .main .ms01 .swiper-slide .news-title {
        font-size: 1.625rem;
    }

    .main #visual p,
    .main .ms02 a .noti-title,
    .pstitle {
        font-size: 1.375rem;
    }

    .main #visual .hash a,
    .main section .mstitle p,
    .main .ms01 .swiper-slide .news-conts,
    .main .ms01 .swiper-slide .news-date,
    .main .ms02 a .noti-conts,
    .main .ms02 a .noti-date {
        font-size: 1.125rem;
    }

    #footer {
        font-size: 1rem;
    }

    .main #visual .text-area,
    .main #visual .swiper-pagination {
        left: 60px;
    }
    .main #visual .text-area {
        top: 50px;
        right: 60px;
    }
    .main #visual .swiper-pagination {
        bottom: 50px;
    }
}

@media screen and (max-width: 1024px) {
    /* Tablet Landscape */


    /* HEADER - MOBILE MENU ACTIVATION */
    #header {
        position: fixed;
        width: 100%;
        background: rgba(255, 255, 255, 0.95);
        border-bottom: 1px solid #dcdcdc;
    }
    #header,
    #header .h-btm-area,
    .hblank {
        height: 70px;
    }
    #header .h-top-area {
        display: none;
    }

    /* MOBILE MENU TOGGLE BTN */
    #header #btn_m_toggle {
        display: block;
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        filter: alpha(opacity=100);
    }
    #header .wide-inner h1 {
        width: 194px;
        height: 50px;
        margin: -25px 0 0 -97px;
        left: 50%;
    }
    #header .wide-inner h1 a {
        background-image: url('../img/common/logo_small.png');
    }
    #header #menu,
    #header .h-btm-area .other {
        display: none;
    }

    /* DESKTOP GNB HIDDEN */
    #header .gnbline {
        display: none;
    }

    #footer .flogo {
        width: 155px;
        height: 40px;
        background-image: url('../img/common/flogo_small.png');
    }
    #footer .frgroup {
        margin: 0 0 0 150px;
        line-height: 1.4;
    }

    #footer .fbottom {
        padding-top: 0;
    }
    #footer .fbottom .wide-inner {
        display: block;
    }
    #footer .fbottom .copyright {
        padding-top: 60px;
    }
    #footer .fbottom .fmenu {
        position: absolute;
        top: 30px;
        left: 0;
        text-align: left;
    }


    .main .open_time .right_group {
        position: static;
        height: auto;
        margin: 0 0 0 70px;
        text-align: left;
    }


    .asnb {
        width: 0;
        left: 0;
        visibility: hidden;
        overflow: hidden;
    }
    #content {
        margin-left: 0;
    }


    .main .ms02 .colspan::before {
        display: none;
    }
    .main .ms02 .colspan a {
        position: static;
        padding: 20px 20px 7.5vw;
    }
    .main .ms02 a .noti-title {
        margin-bottom: 1.5vw;
    }
    .main .ms02 a .noti-date {
        padding: 0 20px 20px;
    }

    .image-group .ori-img-link {
        display: block;
    }



    .border-link-area {
        flex-wrap: wrap;
        justify-content: center;
    }
    .border-link {
        width: 300px;
        margin-top: 2%;
        margin-left: 2%;
    }
    .border-link:nth-child(-n+2) {
        margin-top: 0;
    }
    .border-link:nth-child(2n+1) {
        margin-left: 0;
    }
    .border-link a {
        padding: 15px;
    }


    .sitemap .group {
        flex-direction: column;
    }
    .sitemap .group::after {
        position: absolute;
        content: '';
        width: 100%;
        height: 1px;
        top: 70px;
        left: 0;
    }
    .sitemap .group:first-child {
        margin-top: 0;
    }
    .sitemap .pstitle {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
        padding-bottom: 20px;
    }
    .sitemap .pstitle p {
        display: inline-block;
    }
    .sitemap .cont {
        width: 100%;
    }




    .login-content .input-text,
    .login-content .checkbox-area {
        height: 60px;
        line-height: 58px;
    }
    .login-content .login-button,
    .login-content .login-auto i,
    .login-content .login-auto span {
        height: 60px;
        line-height: 60px;
    }
    .login-content .login-auto i,
    .login-content .login-auto span {
        height: 25px;
        line-height: 25px;
    }


    .join-step-area div {
        font-size: 1.125rem;
    }
    .member_join_s2 .cgroup {
        margin-bottom: 40px;
        padding-bottom: 40px;
        flex-direction: column;
    }
    .member_join_s2 .lsubject {
        width: 100%;
        margin-right: 0;
        padding: 0 0 20px 0;
    }
    .member_join_s2 .rcont {
        width: 100%;
        padding: 0;
        flex-wrap: wrap;
    }
    .member_join_s2 .field-1,
    .member_join_s2 .cmail-area .field-1 {
        width: calc(100% - 140px);
    }
    .member-join-btn-area .btm-btn-area a,
    .member-join-btn-area .btm-btn-area button,
    .member-join-btn-area .btm-btn-area input,
    .member_join_s3_02 .join-loged-btn {
        max-width: 240px;
        height: auto;
        padding: 20px 10px;
        font-size: 1.25rem;
        line-height: 1.1;
    }
}

@media screen and (max-width: 880px) {
    .main .ms01 .info-slider {
        padding-left: 0;
    }
    .main .ms01 .title {
        position: static;
        width: 100%;
        padding-top: 50px;
        justify-content: center;
    }
    .main .ms01 h3 {
        position: relative;
        margin-bottom: 0;
        z-index: 20;
    }
    .main .ms01 .info-btn-area {
        position: absolute;
        width: 280px;
        justify-content: space-between
    }
    .main .ms01 .slide-info {
        display: none;
    }
    .main .ms01 .swiper-wrapper {
        margin-left: -1px;
    }

    .main #visual .vlnk {
        right: 50%;
        transform: translateX(50%);
    }
    .main #visual .vlnk a {
        width: 220px;
        height: 60px;
        font-size: 18px;
    }
}


@media screen and (max-width: 800px) {
    /* Google Nexus 7 Landscape */

}


@media screen and (max-width: 768px) {
    /* Tablet Portrait */
    html {
        font-size: 15px;
    }

    .main #visual h3,
    #visual h2,
    .ptitle h3 {
        font-size: 1.75rem;
        letter-spacing: -0.15rem;
    }

    .main section .mstitle h3,
    .main .ms01 h3 {
        font-size: 1.5rem;
    }

    .main .ms01 .swiper-page-num2,
    .main .ms01 .swiper-slide .news-title {
        font-size: 1.375rem;
    }

    .main #visual p,
    .main .ms02 a .noti-title,
    .pstitle {
        font-size: 1.25rem;
    }

    .main .ms02 .ms02-box {
        padding: 56px 32px 48px;
    }

    .main .ms02 .btn-tab {
        min-width: 132px;
        padding: 14px 22px;
        font-size: 1.125rem;
    }

    .main #visual .hash a,
    .main section .mstitle p,
    .main .ms01 .swiper-slide .news-conts,
    .main .ms01 .swiper-slide .news-date,
    .main .ms02 a .noti-conts,
    .main .ms02 a .noti-date,
    .psc .cont {
        font-size: 1rem;
    }

    #footer {
        font-size: 0.875rem;
    }

    .main #visual .swiper-pagination {
        top: 15px;
        left: 30px;
    }
    .main #visual .text-area {
        padding: 45px 0;
        left: 60px;
        right: 60px;
    }
    .main #visual h3 {
        margin-bottom: 30px;
    }
    .main #visual p {
        margin-bottom: 30px;
    }

    #visual {
        height: 200px;
    }
    .loc-area .inner {
        width: 100%;
        border-left: 1px solid #dcdcdc;
        border-right : 0;
    }
    .loc-area .loc-group {
        flex-wrap: wrap;
    }
    .loc-area .loc-dep1 {
        width: 50%;
        z-index: 20;
    }
    .loc-area .loc-dep1 button {
        width: 100%;
    }
    .loc-area .loc-dep1:first-child {
        display: none;
    }
    .loc-area .page-menu {
        height: 50px;
        top: 70px;
        right: 0;
        transform: translateY(0);
    }
    .mobile-snb {
        display: block;
    }


    .main .ms01 .swiper-wrapper {
        width: 100%;
    }
    .main .ms01 .swiper-slide {
        margin-right: 1px;
        padding: 40px 20px;
    }
    .main .ms01 h3,
    .main .ms01 .news-top-area .pos-rel {
        line-height: 30px;
    }
    .main .ms01 .swiper-page-num2 {
        padding: 0 50px;
    }
    .main .ms01 .swiper-button-next,
    .main .ms01 .swiper-button-prev {
        width: 30px;
        height: 30px;
    }



    .sitemap .group::after {
        top: 65px;
    }
    .sitemap .cont .colspan {
        width: 32%;
    }
    .sitemap .cont .colspan:nth-child(-n+4) {
        margin-top: 2%;
    }
    .sitemap .cont .colspan:nth-child(4n+1) {
        margin-left: 2%;
    }
    .sitemap .cont .colspan:nth-child(-n+3) {
        margin-top: 0;
    }
    .sitemap .cont .colspan:nth-child(3n+1) {
        margin-left: 0;
    }
}


@media screen and (max-width: 736px) {
    /* iPhone 6 Plus Landscape */

}


@media screen and (max-width: 720px) {
    .border-link-area {
        width: 100%;
        flex-direction: column;
    }
    .border-link {
        width: 100%;
        max-width: 360px;
        margin: 2% auto 0;
    }
    .border-link:nth-child(-n+3),
    .border-link:nth-child(-n+2) {
        margin-top: 2%;
    }
    .border-link:nth-child(2n+1) {
        margin: 2% auto 0;
    }
    .border-link:first-child {
        margin-top: 0;
    }
}


@media screen and (max-width: 667px) {
    /* iPhone 6 Landscape */

}


@media screen and (max-width: 640px) {
    /* Mobile Landscape */
    .main .ms01 .colspan {
        padding: 30px;
    }
    .main .ms01 .ms-event {
        padding-top: 0;
    }

    .psc {
        margin-bottom: 60px;
    }
    .psc:last-child {
        margin-bottom: 85px;
    }

    .sitemap .cont .colspan {
        width: 49%;
    }
    .sitemap .cont .colspan:nth-child(-n+3) {
        margin-top: 2%;
    }
    .sitemap .cont .colspan:nth-child(3n+1) {
        margin-left: 2%;
    }
    .sitemap .cont .colspan:nth-child(-n+2) {
        margin-top: 0;
    }
    .sitemap .cont .colspan:nth-child(2n+1) {
        margin-left: 0;
    }

    .join-step-area div {
        height: 50px;
        line-height: 48px;
        font-size: 1rem;
    }
    .member_join_s2 .field-1,
    .member_join_s2 .cmail-area .field-1,
    .member_join_s2 .field-2,
    .member_join_s2 .cmail-area .field-2,
    .member_join_s2 .field-3 {
        width: 100%;
        margin-left: 0;
    }
    .member_join_s2 .field-2 {
        margin-top: 10px;
    }
    .member_join_s2 .check-button {
        width: 100%;
        margin: 0 auto;
    }
    .member-join-btn-area .btm-btn-area a,
    .member-join-btn-area .btm-btn-area button,
    .member-join-btn-area .btm-btn-area input,
    .member_join_s3_02 .join-loged-btn {
        max-width: 220px;
        font-size: 1.125rem;
    }
    .member_join_s2 .lsubject {
        font-size: 1.125rem;
    }
    .member_join_s2 .ifield {
        font-size: 1rem;
    }
}

@media screen and (max-width: 568px) {
    /* iPhone 5 Landscape */

    /* 추가 */
    .main .ms02 .ms02-box {
        padding: 42px 22px 36px;
    }

    .main .ms02 .tab-menu {
        gap: 10px;
        margin-bottom: 32px;
    }

    .main .ms02 .btn-tab {
        min-width: 112px;
        padding: 13px 18px;
        font-size: 1rem;
    }

    .main .ms02 .tab-slider {
        padding: 0 14px;
    }

    .main .ms02 .cont-top {
        min-height: auto;
        padding: 28px 24px 22px;
    }

    .main .ms02 .cont-top .pcate {
        margin-bottom: 16px;
    }

    .main .ms02 .cont-top h4 {
        margin-bottom: 18px;
    }

    .main .ms02 .cont-btm {
        padding: 15px 24px;
        font-size: 1rem;
    }

    .main .ms02 .moreview-area {
        margin-top: 32px;
    }

    .main .ms02 .tab-cont .moreview {
        min-width: 220px;
    }
}


@media screen and (max-width: 560px) {
    .join-step-area {
        flex-direction: column;
    }
    .join-step-area div {
        width: 100%;
        border: 1px solid #dcdcdc;
    }
    .join-step-area div:nth-child(2) {
        border-top: 0;
        border-bottom: 0;
    }
    .join-step-area .current {
        display: block;
        font-size: 1.125rem;
        opacity: 1;
    }
}


@media screen and (max-width: 480px) {
    .sitemap .group {
        margin-top: 15px;
    }
    .sitemap .cont .colspan {
        width: 100%;
        margin-top: 4%;
        margin-left: 0;
    }
    .sitemap .cont .colspan:nth-child(-n+4),
    .sitemap .cont .colspan:nth-child(-n+3),
    .sitemap .cont .colspan:nth-child(-n+2) {
        margin-top: 4%;
    }
    .sitemap .cont .colspan:nth-child(4n+1),
    .sitemap .cont .colspan:nth-child(3n+1),
    .sitemap .cont .colspan:nth-child(2n+1) {
        margin-left: 0;
    }
    .sitemap .cont .colspan:nth-child(-n+1) {
        margin-top: 0;
    }


    .member_join_s1 .abtn-area label {
        display: block;
    }
    .member-join-btn-area .btm-btn-area {
        flex-direction: column;
    }
    .member-join-btn-area .btm-btn-area a,
    .member-join-btn-area .btm-btn-area button,
    .member-join-btn-area .btm-btn-area input {
        display: block;
        max-width: 100%;
        margin: 10px auto 0;
    }
    .member-join-btn-area .btm-btn-area a:first-child,
    .member-join-btn-area .btm-btn-area button:first-child,
    .member-join-btn-area .btm-btn-area input:first-child {
        margin: 0;
    }
    .member-join-btn-area .btm-btn-area-2 {
        flex-direction: row;
    }
    .member-join-btn-area .btm-btn-area-2 a,
    .member-join-btn-area .btm-btn-area-2 button,
    .member-join-btn-area .btm-btn-area-2 input {
        display: block;
        max-width: 49%;
        margin: 0 0 0 2%;
    }
    .member-join-btn-area .btm-btn-area-2 a:first-child,
    .member-join-btn-area .btm-btn-area-2 button:first-child,
    .member-join-btn-area .btm-btn-area-2 input:first-child {
        margin-left: 0;
    }
}


@media screen and (max-width: 430px) {
    /* iPhone 14 Pro Max Portrait */
    /* FONT SIZE */
    html {
        font-size: 14px;
    }

    .main #visual h3 {
        font-size: 1.375rem;
        letter-spacing: -0.15rem;
    }

    .main section .mstitle h3,
    .main .ms01 h3 {
        font-size: 1.25rem;
    }

    .main .ms01 .swiper-page-num2,
    .main .ms01 .swiper-slide .news-title {
        font-size: 1.125rem;
    }

    .main #visual p,
    .main .ms02 a .noti-title {
        font-size: 1rem;
    }

    .main #visual .hash a,
    .main section .mstitle p,
    .main .ms01 .swiper-slide .news-conts,
    .main .ms01 .swiper-slide .news-date,
    .main .ms02 a .noti-conts,
    .main .ms02 a .noti-date {
        font-size: 0.875rem;
    }

    #footer {
        padding: 30px 0;
        font-size: 0.75rem;
    }
    #footer .copyright {
        width: 100%;
        margin-top: 0;
        padding-top: 0;
        text-align: center;
    }
    #footer .fbottom .fmenu {
        position: absolute;
        width: 100%;
        left: 0;
        text-align: center;
    }

    #visual {
        height: 260px;
    }
    .loc-area {
        bottom: 20px;
    }
    .loc-area .loc-dep1 {
        width: 100%;
    }
    /* 수정 */
    /* 항상 1번째는 숨김 */
    .loc-area .loc-dep1:nth-child(1) {
        display: none;
    }
    /* 3개 이상일 때만 2번째 숨김 (3번째가 있을 때) */
    .loc-area .loc-dep1:nth-child(2):nth-last-child(n+2) {
        display: none;
    }
    /* 삭제 */
    /*.loc-area .loc-dep1 button {
        height: 40px;
        line-height: 40px;
    }*/
    /* 추가 */
    .loc-area {
        padding-top: 20px;
    }
    /* 수정 */
    .loc-area .loc-dep2 {
        top: 60px;
        z-index: 999;
    }
    .loc-area .page-menu {
        top: 80px;
    }
    .main #visual {
        height: 350px;
    }
    .main #visual .text-area {
        top: 20px;
        left: 45px;
        right: 45px;
    }
    .main #visual .swiper-button-prev,
    .main #visual .swiper-button-next {
        width: 40px;
        height: 40px;
        content: '';
    }

    .main .ms02 .wide-inner {
        padding: 0;
    }

    .main #visual .arrow-icon-position span {
        font-size: 36px;
        line-height: 40px;
    }


    .main section {
        margin-top: 35px;
    }
    .main .ms01 .info-btn-area {
        width: 200px;
    }

    .main .ms02 .ms02-box {
        padding: 34px 16px 30px;
    }
    .main .ms02 .tab-slider {
        padding: 0 10px;
    }
    .main .ms02 .cont-top {
        padding: 24px 20px 20px;
    }
    .main .ms02 .cont-top h4 {
        margin: 0 0 16px;
    }
    .main .ms02 .cont-top .pcont,
.main .ms02 .cont-top .pcont.pcont-sub {
    font-size: 13px;
    color: #6b7280;
}
.main .ms02 .cont-top .pdate {
        font-size: 15px;
    }
    .main .ms02 .cont-btm {
        padding: 14px 20px;
    }
    .main .ms02 .tab-cont .moreview {
        width: 100%;
        min-width: 0;
        max-width: 220px;
    }

    #footer .flogo {
        margin-left: auto;
        margin-right: auto;
    }
    #footer .lnk01 {
        width: 120px;
        height: 36px;
        line-height: 34px;
    }
    #footer .floc {
        margin-top: 10px;
    }
    #footer .floc:first-child {
        margin-top: 0;
    }
    #footer .floc span {
        display: block;
        line-height: 20px;
    }
    #footer .floc .slush {
        display: none;
    }
    #footer .copyright {
        text-align: center;
    }
    #footer .copyright span {
        display: block;
    }
    #footer .copyright .mshow {
        display: none;
    }
    #footer .copyright .mview {
        display: inline;
    }

    .ptitle {
        margin: 80px auto 40px;
    }
    .pstitle {
        margin-bottom: 10px;
    }

    .marbtm100 {
        margin-bottom: 60px;
    }
    .marbtm70 {
        margin-bottom: 35px;
    }


    .sitemap .cont .colspan > a {
        padding: 12px 5px;
        font-size: 1.125rem;
    }
    .sitemap .cont .dep2 li a {
        margin-top: 5px;
    }


    .login-inner {
        max-width: 320px;
        padding: 30px;
    }
    .login-header {
        margin-bottom: 30px;
    }
    .login-header .logo {
        width: 170px;
        height: 44px;
    }
    .login-content {
        margin-bottom: 15px;
    }
    .login-content .input-text,
    .login-content .checkbox-area,
    .login-content .login-button,
    .login-content .login-auto i,
    .login-content .login-auto span {
        height: 40px;
        font-size: 1rem;
        line-height: 40px;
    }
    .login-content .input-text {
        margin-top: 10px;
    }
    .login-content .login-button {
        margin-top: 20px;
    }
    .login-content .login-auto {
        margin-top: 0;
    }
    .login-content .login-auto i,
    .login-content .login-auto span {
        height: 20px;
        line-height: 20px;
    }
    .login-content .login-auto span {
        left: 25px;
    }
    .login-footer a {
        height: 40px;
        font-size: 13px;
        line-height: 40px;
    }


    .member_join_s2 .cmail-area .input-mail,
    .member_join_s2 .cmail-area .choice-mail {
        width: 100%;
    }
    .member_join_s2 .cmail-area .input-mail {
        margin-bottom: 2px;
    }
    .member_join_s2 .cgroup5 .field-1 span {
        display: none;
    }
    .member_join_s2 .rcont .itext,
    .member_join_s2 .rcont select {
        height: 42px;
        padding: 0 15px;
        line-height: 40px;
    }
    .member-join-btn-area .btm-btn-area a,
    .member-join-btn-area .btm-btn-area button,
    .member-join-btn-area .btm-btn-area input {
        padding: 15px 10px;
        font-size: 1.125rem;
    }
}


@media screen and (max-width: 428px) {
    /* iPhone 12/13 Pro Max Portrait */

}


@media screen and (max-width: 414px) {
    /* iPhone 6/7/8 Plus/11Pro Max Portrait */

}


@media screen and (max-width: 412px) {
    /* Galaxy Note 20, Galaxy S20 Ultra Portrait */

}


@media screen and (max-width: 390px) {
    /* iPhone 12 Plus Pro Portrait */

}


@media screen and (max-width: 384px) {
    /* Galaxy Note 20/S20 Plus Portrait */

}


@media screen and (max-width: 375px) {
    /* iPhone 6/7/8/11Pro/12/13Mini/se2 Portrait */

}


@media screen and (max-width: 360px) {
    /* Mobile Portrait */
}


@media screen and (max-width: 359px) {
    /* iPhone 5 Portrait */
    .login-footer a {
        font-size: 11px;
    }

    .member_join_s1 .abtn-area label span {
        padding: 0 10px;
        font-size: 1.0625rem;
    }
}


@media screen and (max-width: 319px) {
    /* iPhone 5 Portrait */
    .member_join_s1 .abtn-area label span {
        font-size: 0.975rem;
    }
}
