@charset "utf-8";
/*-------------------------------------------------
Style Sheet
Version : 1.0
Author :  강혜연
Create date : 2021. 10. 22.
-------------------------------------------------*/

/* layout */
.contents_wrap {
    min-width: 1200px;
    padding-top: 280px;
    padding-bottom: 160px;
}
.container02 {
    max-width: 328px;
    margin: auto;
}
.container03 {
    max-width: 1080px;
    margin: auto;
}
/* header */
header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    background: #fff;
    z-index: 100;
    min-width: 1200px;
}
.container {
    width: 1200px;
    padding: 0 8px;
    box-sizing: border-box;
    margin: auto;
}
.gnb {
    width: 100%;
    padding: 30px 0;
    border-bottom: 1px solid #ccc;
}
.gnb h1 {
    float: left;
    margin-right: 70px;
}
.gnb h1 a {
    display: block;
}
.gnb h1 a img {
    width: 176px;
}
.gnb > div fieldset {
    float: left;
    display: block;
    width: 50%;
    max-width: 500px;
    height: 48px;
    border: 2px solid #596BFF;
    box-sizing: border-box;
    border-radius: 5em;
    position: relative;
    margin: 4px 0;
}
.gnb > div fieldset input {
    display: block;
    width: 100%;
    height: 44px;
    line-height: 44px;
    border: 0;
    padding-left: 16px;
    box-sizing: border-box;
    border-radius: 5em;
    padding-right: 20px;
}
.gnb > div fieldset a {
    position: absolute;
    top: 11px;
    right: 21px;
}
.gnb > div fieldset a i {
    display: block;
    width: 25.5px;
    height: 25.5px;
    background: url(https://sonsp.azureedge.net/img/img_v4/search_b.png) no-repeat center;
    background-size: cover;
}
.gnb .logout_state,
.gnb .login_state {
    float: right;
}
.gnb div > a {
    display: inline-block;
    color: #999;
    font-weight: 500;
    line-height: 56px;
    margin-left: 8px;
    padding-left: 12px;
}
.gnb div > a:nth-child(1) {
    position: relative;
    padding: 0;
    margin: 0;
}
.gnb div > a:nth-child(1):before {
    content: '';
    width: 1px;
    height: 16px;
    background: #E6E6E6;
    position: absolute;
    top: 20px;
    right: -12px;
}
.gnb div.hamburger > a:nth-child(1):before {
    display: none;
}
.gnb .login_state {
    position: relative;
}
.gnb .login_state .alarm {
    position: absolute;
    top: 18px;
    left: -30px;
    margin: 0;
    padding: 0;
}
.gnb .login_state .alarm.on:before {
    content: '';
    width: 4px;
    height: 4px;
    background: #FF6666;
    border-radius: 50%;
    position: absolute;
    top: 0;
    right: 0;
}

.alarm_i {
    display: block;
    width: 20px;
    height: 20px;
    background: url(https://sonsp.azureedge.net/img/img_v4/alarm_i.png) no-repeat center;
    background-size: cover;
}
.lnb {
    border-bottom: 1px solid #ccc
}
.lnb ul {
    text-align: center;
    padding: 25px 0;
}
.lnb ul li {
    display: inline-block;
}
.lnb ul li a {
    padding: 0 40px;
    font-size: 18px;
    font-weight: 500;
}
.lnb ul li:nth-child(3) a {
    padding-right: 68px;
}
.lnb ul li a.round_btn {
    padding: 0 13px;
}

.aside {
    position: fixed;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: #fff;
    z-index: 200;
    overflow: auto;
}
.aside_head {
    padding: 11px 0;
    border-bottom: 1px solid #E5E5E5;
}
.logout_state .aside_head {
    background: #596BFF;
    border: 0;
}
.logout_area {
    padding: 22px 20px 25px;
    box-sizing: border-box;
    background: #596BFF;
    display: none;
}
.logout_state .logout_area {
    display: block;
}
.logout_area p {
    font-size: 20px;
    color: #fff;
    font-weight: 500;
}
.logout_area a {
    display: block;
    font-size: 13px;
    color: #fff;
    margin-top: 3px;
}
.logout_area a i {
    display: inline-block;
    width: 11px;
    height: 11px;
    background: url(https://taxsp.azureedge.net/img/arrow_w.png) no-repeat center;
    background-size: cover;
    margin-left: 4px;
}
.aside_head h2 {
    margin: auto;
    text-align: center;
}
.aside_head h2 a {
    display: block;
}
.aside_head h2 a img {
    width: 92px;
}
.aside_head h2 a img.white_logo {
    display: none;
}
.logout_state .aside_head h2 a img {
    display: none;
}
.logout_state .aside_head h2 a img.white_logo {
    display: block;
    margin: auto;
}
.gnb .hamburger {
    display: none;
    position: absolute;
    top: 16px;
    left: 0;
}
.gnb .hamburger a {
    display: block;
    
    width: 24px;
    height: 24px;
    background: url(https://taxsp.azureedge.net/img/hamburger.png) no-repeat center center;
    background-size: cover;
}

.dock_wrap {
    position: fixed;
    width: 100%;
    bottom: 0;
    left: 0;
    z-index: 150;
    background: #fff;
    padding: 7px 0;
    border-top: 1px solid #E6E6E6;
    display: none;
}
.dock_wrap ul li {
    float: left;
    width: 20%;
}
.dock_wrap ul li a {
    display: block;
    text-align: center;
    font-size: 11px;
    color: #666;
}
.dock_wrap ul li a.active {
    color: #596BFF;
    font-weight: 500;
}
.dock_wrap ul li a i {
    display: block;
    width: 24px;
    height: 24px;
    background-size: cover !important;
    margin: auto;
    margin-bottom: 2px;
}
.dock_01 {
    background: url(https://sonsp.azureedge.net/img/img_v4/dock_01.png) no-repeat center;
}
.dock_02 {
    background: url(https://sonsp.azureedge.net/img/img_v4/dock_02.png) no-repeat center;
}
.dock_03 {
    background: url(https://sonsp.azureedge.net/img/img_v4/dock_03.png) no-repeat center;
}
.dock_04 {
    background: url(https://sonsp.azureedge.net/img/img_v4/dock_04.png) no-repeat center;
}
.dock_05 {
    background: url(https://sonsp.azureedge.net/img/img_v4/dock_05.png) no-repeat center;
}
.dock_wrap ul li a.active .dock_01 {
    background: url(https://sonsp.azureedge.net/img/img_v4/dock_01_on.png) no-repeat center;
}
.dock_wrap ul li a.active .dock_02 {
    background: url(https://sonsp.azureedge.net/img/img_v4/dock_02_on.png) no-repeat center;
}
.dock_wrap ul li a.active .dock_03 {
    background: url(https://sonsp.azureedge.net/img/img_v4/dock_03_on.png) no-repeat center;
}
.dock_wrap ul li a.active .dock_04 {
    background: url(https://sonsp.azureedge.net/img/img_v4/dock_04_on.png) no-repeat center;
}
.dock_wrap ul li a.active .dock_05 {
    background: url(https://sonsp.azureedge.net/img/img_v4/dock_05_on.png) no-repeat center;
}

.aside_head .close_btn {
    display: block;
    width: 28px;
    height: 28px;
    background: url(https://taxsp.azureedge.net/img/close_btn.png) no-repeat center;
    background-size: cover;
    position: absolute;
    top: 11px;
    right: 16px;
    z-index: 150;
}
.logout_state .aside_head .close_btn {
    background: url(https://taxsp.azureedge.net/img/close_btn_w.png) no-repeat center;
    background-size: cover;
}
.aside .container {
    padding: 0 20px;
}
.aside_top {
    padding: 30px 0 10px;
}
.aside_top > a {
    display: block;
    text-align: right;
    font-size: 13px;
    font-weight: 500;
    margin-top: 25px;
}
.aside_top > a i {
    display: inline-block;
    width: 11px;
    height: 11px;
    background: url(https://taxsp.azureedge.net/img/aside_arrow.png) no-repeat center;
    background-size: cover;
    margin-left: 4px;
}
.aside_top ul li {
    float: left;
    width: 33.333%;
    text-align: center;
}
.aside_top ul li a {
    display: block;
}
.aside_top ul li a i {
    display: block;
    width: 68px;
    height: 68px;
    margin: auto;
    background: url(https://taxsp.azureedge.net/img/aside_i_01.png) no-repeat center;
    background-size: cover !important;
}
.aside_top ul li a i.aside_i_02 {
    background: url(https://taxsp.azureedge.net/img/aside_i_02.png) no-repeat center;
}
.aside_top ul li a i.aside_i_03 {
    background: url(https://taxsp.azureedge.net/img/aside_i_03.png) no-repeat center;
}
.aside_top ul li a p {
    text-align: center;
    margin-top: 10px;
}
.aside_menu {
}
.logout_state .aside_menu {
    border: 0;
}
.aside_menu .menu {
    padding: 12.5px 0;
    border-bottom: 1px solid #ccc;
}
.aside_menu .menu li a {
    display: block;
    font-size: 19px;
    font-weight: 500;
    padding: 12.5px 0;
    box-sizing: border-box;
}
.aside_menu > a {
    display: block;
    overflow: hidden;
    padding-top: 26px;
    color: #596BFF;
    font-size: 19px;
    font-weight: 500;
}
.aside_menu > a span {
    float: right;
    font-size: 13px;
    line-height: 26px;
    font-weight: 400;
}
.aside_menu > a span i {
    display: inline-block;
    width: 11px;
    height: 11px;
    background: url(https://taxsp.azureedge.net/img/blue_arrow.png) no-repeat center;
    background-size: cover;
    margin-left: 3px;
}
.aside_menu .board {
    padding-top: 16px;
}
.aside_menu .board li a {
    display: block;
    color: #999;
    padding: 10px 0;
}

.logout_state .aside_top {
    display: none;
}
.logout_state .container .aside_top {
    border-bottom: 2px solid #333;
}
.aside > p {
    position: absolute;
    bottom: 30px;
    left: 20px;
}
.aside > p span {
    margin-right: 12px;
}
.aside > p a {
    display: inline-block;
    height: 26px;
    line-height: 26px;
    background: #666;
    padding: 0 14px;
    font-size: 11px;
    color: #fff;
    border-radius: 5em;
}
.aside_top {
    border-bottom: 2px solid #333;
}
.aside_top.accountant {
    padding: 30px 20px 35px;
    background: #596BFF;
    position: relative;
    border: 0;
}
.aside_top.accountant > a {
    display: block;
    overflow: hidden;
    text-align: left;
    margin-top: 0;
}
.aside_top.accountant .logout_btn {
    position: absolute;
    bottom: 35px;
    right: 20px;
    font-size: 10px;
    color: #fff;
    opacity: .7;
}
.aside_top.accountant .mypage_btn p {
    float: left;
    width: 41px;
    height: 41px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
    background-color: #fff;
    border-radius: 50%;
}
.aside_top.accountant .mypage_btn dl {
    display: table-cell;
    height: 41px;
    vertical-align: middle;
    padding-left: 10px;
    color: #fff;
}
.aside_top.accountant .mypage_btn dl dt {
    font-size: 10px;
}
.aside_top.accountant .mypage_btn dl dd {
    font-size: 13px;
}
.aside_top.accountant .mypage_btn dl dd strong {
    font-size: 20px;
    font-weight: 500;
}
.aside_top.accountant .mypage_btn dl dd i {
    display: inline-block;
    width: 11px;
    height: 11px;
    background: url(https://taxsp.azureedge.net/img/white_arrow.png) no-repeat center;
    background-size: cover;
    vertical-align: -1px;
    margin-left: 4px;
}
.aside_top.accountant ul li {
    float: left;
    width: 33.333%;
    text-align: center;
}
.aside_top.accountant ul li a {
    display: block;
}
.aside_top.accountant ul li a i {
    display: block;
    width: 68px;
    height: 68px;
    margin: auto;
    background: url(https://taxsp.azureedge.net/img/aside_i_01.png) no-repeat center;
    background-size: cover !important;
}
.aside_top.accountant ul li a i.aside_i_02 {
    background: url(https://taxsp.azureedge.net/img/aside_i_02.png) no-repeat center;
}
.aside_top.accountant ul li a i.aside_i_03 {
    background: url(https://taxsp.azureedge.net/img/aside_i_03.png) no-repeat center;
}
.aside_top.accountant ul li a p {
    text-align: center;
    margin-top: 10px;
}


.aside.accountant {
    position: fixed;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: #fff;
    z-index: 999;
}
.accountant .aside_cont {
    height: calc(100% - 80px);
    overflow: auto;
    padding-top: 0;
    box-sizing: border-box;
    margin-top: -1px;
}
.accountant .aside_head {
    padding: 15px 0;
    background: #596BFF;
}
.accountant .aside_head h2 {
    margin: auto;
    text-align: center;
}
.accountant .aside_head h2 a {
    display: block;
}
.accountant .aside_head h2 a img {
    width: 92px;
}
.accountant .aside_head .close_btn {
    display: block;
    width: 28px;
    height: 28px;
    background: url(https://taxsp.azureedge.net/img/close_btn_w.png) no-repeat center;
    background-size: cover;
    position: absolute;
    top: 11px;
    right: 16px;
    z-index: 150;
}
.aside.accountant .container {
    padding: 0 20px;
}
.accountant .aside_top {
    padding: 30px 20px 35px;
    background: #596BFF;
    position: relative;
}
.accountant .aside_top > a {
    display: block;
    overflow: hidden;
    margin-top: 0;
}
.accountant .aside_top .logout_btn {
    position: absolute;
    bottom: 35px;
    right: 20px;
    font-size: 10px;
    color: #fff;
    opacity: .7;
}
.accountant .aside_top .mypage_btn p {
    float: left;
    width: 41px;
    height: 41px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top;
    background-color: #fff;
    border-radius: 50%;
}
.accountant .aside_top .mypage_btn dl {
    display: table-cell;
    height: 41px;
    vertical-align: middle;
    padding-left: 10px;
    color: #fff;
}
.accountant .aside_top .mypage_btn dl dt {
    font-size: 10px;
    text-align: left;
}
.accountant .aside_top .mypage_btn dl dd {
    font-size: 13px;
}
.accountant .aside_top .mypage_btn dl dd strong {
    font-size: 20px;
    font-weight: 500;
}
.accountant .aside_top .mypage_btn dl dd i {
    display: inline-block;
    width: 11px;
    height: 11px;
    background: url(https://taxsp.azureedge.net/img/white_arrow.png) no-repeat center;
    background-size: cover;
    vertical-align: -1px;
    margin-left: 4px;
}
.accountant .aside_top ul li {
    float: left;
    width: 33.333%;
    text-align: center;
}
.accountant .aside_top ul li a {
    display: block;
}
.accountant .aside_top ul li a i {
    display: block;
    width: 68px;
    height: 68px;
    margin: auto;
    background: url(https://sonsp.azureedge.net/img/img_v4/aside_i_01.png) no-repeat center;
    background-size: cover !important;
}
.accountant .aside_top ul li a i.aside_i_02 {
    background: url(https://sonsp.azureedge.net/img/img_v4/aside_i_02.png) no-repeat center;
}
.accountant .aside_top ul li a i.aside_i_03 {
    background: url(https://sonsp.azureedge.net/img/img_v4/aside_i_03.png) no-repeat center;
}
.accountant .aside_top ul li a p {
    text-align: center;
    margin-top: 10px;
}
.accountant .aside_menu {
    border-top: 0;
}
.accountant .aside_menu .menu {
    padding: 0 0 22px;
    border-bottom: 1px solid #ccc;
}
.accountant .aside_menu .menu > li > a {
    display: block;
    font-size: 19px;
    font-weight: 500;
    padding-top: 26px;
    box-sizing: border-box;
}
.accountant .aside_menu .menu > li > a.active {
    color: #596BFF;
}
.accountant .aside_menu .menu > li > ul {
    display: none;
}
.accountant .aside_menu .menu > li > ul li a {
    display: block;
    font-size: 14px;
    color: #666;
    margin-top: 16px;
    padding: 0;
    padding-left: 10px;
}
.accountant .aside_menu .board {
    padding-top: 16px;
}
.accountant .aside_menu .board li a {
    display: block;
    color: #999;
    padding: 10px 0;
}

/* footer */

footer {
    border-top: 1px solid #ccc;
}
footer h2 {
    float: left;
}
footer .foot_top {
    padding-top: 49px;
}
footer .foot_sns {
    float: right;
}
footer ul {
    margin-top: 40px;
}
footer ul li p {
    display: inline-block;
    line-height: 12px;
    color: #808080;
    padding-right: 11px;
    margin-right: 11px;
    border-right: 1px solid #808080;
}
footer ul li a {
    display: inline-block;
    font-size: 14px;
    line-height: 12px;
    margin-right: 20px;
    color: #808080;
}
footer ul li a:last-child {
    text-decoration: underline;
}
footer ul li p:last-child {
    border-right: 0;
}
/*footer ul li a:last-child {
    border: 0;
    margin: 0;
    padding: 0;
}*/
footer .copyright {
    padding: 32px 0;
    text-align: left;
    margin: 0;
    font-size: 12px;
    color: #ccc;
}


/* button */
.round_btn {
    display: inline-block;
    height: 33px;
    line-height: 31px;
    padding: 0 13px;
    border: 1px solid #596BFF;
    box-sizing: border-box;
    text-align: center;
    color: #596BFF;
    font-size: 18px;
    font-weight: 500;
    border-radius: 5em;
}
.bg_btn {
    display: block;
    width: 100%;
    height: 48px;
    line-height: 46px;
    border-radius: 4px;
    border: 1px solid #ccc;
    background: #ccc;
    color: #fff;
    text-align: center;
    box-sizing: border-box;
    font-size: 16px;
}
.bg_btn.on {
    background: #596BFF;
    border-color: #596BFF;
}
.border_btn {
    display: block;
    width: 100%;
    height: 48px;
    line-height: 46px;
    border: 1px solid #596BFF;
    border-radius: 4px;
    background: #fff;
    color: #596BFF;
    text-align: center;
    box-sizing: border-box;
    font-size: 16px;
}
.blue_txt {
    color: #596BFF !important;
}
.red_txt {
    color: #FF6666 !important;
}
.error_txt {
    font-size: 10px;
    line-height: 16px;
    display: block;
    color: #FF6666;
    margin-top: 8px;
}


/* input */
input {
    display: block;
    width: 100%;
    height: 65px;
    line-height: 65px;
    border: 0;
    border-bottom: 1px solid #CCC8C8;
    background: #fff;
    box-sizing: border-box;
    font-size: 18px;
}
input:disabled{
    border-bottom-color: #E5E5E5;
}
input:focus {
    border-bottom-color: #596BFF;
    caret-color: #596BFF;
}
input.error:focus {
    border-bottom-color: #FF6666;
    caret-color: #FF6666;
}
input::placeholder {
    color: #ccc !important;
}
input:-ms-input-placeholder {
  color: #ccc !important;
}

/* 체크박스 */
.checkbox {
    position: relative;
    box-sizing: border-box;
    padding-left: 30px;
    margin-left: 5px;
}
.checkbox input[type="checkbox"] {
    width: 15px;
    height: 15px;
    color: #757575;
    position: absolute;
    top: 2px;
    left: 0;
    cursor: pointer;
}
.checkbox input[type="checkbox"] + span::before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    z-index: 1;
    -webkit-transform: rotate(-50deg);
    -moz-transform: rotate(-50deg);
    -ms-transform: rotate(-50deg);
    -o-transform: rotate(-50deg);
    transform: rotate(-50deg);
    height: .4rem;
    left: 2px;
    top: 4px;
    width: 10px;
    border-color: #CCCCCC;
    border-left: 2px solid #CCCCCC;
    border-bottom: 2px solid #CCCCCC;
    border-top-style: none;
    border-right-style: none;
    border-radius: 0;
}
.checkbox input[type="checkbox"] + span::after {
    content: "";
    position: absolute;
    top: -2px;
    left: -4px;
    width: 20px;
    height: 20px;
    background: #fff;
    cursor: pointer;
    border: 2px solid #CCCCCC;
    border-radius: 50px;
}
.checkbox input[type="checkbox"]:checked + span::before {
    border-color: #fff;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    background: #596BFF;
}
.checkbox input[type="checkbox"]:checked + span::after {
    border: 2px solid #596BFF;
    background: #596BFF;
}
.checkbox span {
    font-size: 15px;
    line-height: 20px;
}

/* 셀렉트박스 */
select {
    display: block;
    width: 100%;
    height: 65px;
    line-height: 65px;
    font-size: 16px;
    border: 0;
    border-bottom: 1px solid #CCC8C8;
    background: url(https://sonsp.azureedge.net/img/img_v4/select_arrow.png) no-repeat right center #fff;
    background-size: 24px;
    box-sizing: border-box;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* dl */
.dl_area dl {
    margin-top: 50px;
}
.dl_area dl dt {
    font-size: 16px;
    line-height: 24px;
    color: #707070;
}
.dl_area dl dd {
    margin-top: 4px;
}
.dl_area dl:nth-of-type(1) {
    margin-top: 40px;
}

.container02 .dl_area dl {
    margin-top: 24px;
}
.container02 .dl_area dl:nth-of-type(1) {
    margin-top: 40px;
}
.container02 .dl_area dl dt {
    font-size: 12px;
    line-height: 18px;
    color: #707070;
}
.container02 input {
    font-size: 14px;
    height: 44px;
    line-height: 44px;
}
.container02 select {
    font-size: 14px;
    height: 44px;
    line-height: 44px;
}

/* 가이드 텍스트 */
.guide_txt {
    margin-top: 20px;
}
.guide_txt > p {
    font-size: 16px;
    color: #707070;
    margin-bottom: 16px;
}
.guide_txt ul li {
    font-size: 15px;
    line-height: 26px;
    color: #999;
    padding-left: 9px;
    box-sizing: border-box;
    position: relative;
    word-break: keep-all;
}
.guide_txt ul li:before {
    content: '·';
    font-size: 10px;
    color: #999;
    position: absolute;
    top: 0;
    left: 0;
}
.guide_txt ul li a {
    color: #596BFF;
    text-decoration: underline;
}

.container02 .guide_txt ul li {
    font-size: 10px;
    line-height: 16px;
    color: #999;
    padding-left: 9px;
    box-sizing: border-box;
    position: relative;
}


input[type="radio"] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

input[type="radio"] + label {
    display: inline-block;
    position: relative;
    padding-left: 25px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    line-height: 15px;
}
.checks input[type="radio"] + label {
    line-height: 20px;
}
input[type="radio"] + label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 16px;
    height: 16px;
    text-align: center;
    background: #fff;
    border: 2px solid #ccc;
    border-radius: 100%;
    box-sizing: border-box;
}
.checks input[type="radio"] + label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 21px;
    height: 21px;
    text-align: center;
    background: #fff;
    border: 2px solid #ccc;
    border-radius: 100%;
    box-sizing: border-box;
}

input[type="radio"]:checked + label:after {
    content: '';
    position: absolute;
    top: 4px;
    left: 4px;
    width: 8px;
    height: 8px;
    background: #596BFF;
    border-radius: 100%;
}

/* 레이어 */
.layer_bg {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,.6);
    z-index: 900;
    display: none;
}
.layer {
    width: 100%;
    height: calc(100% - 160px);
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    margin: 80px 0;
    z-index: 921;
}
.layer_wrap {
    position: fixed;
    width: 420px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    z-index: 997;
    word-break: keep-all;
}
.layer .layer_wrap {
    position: absolute;
}
.layer .layer_wrap {
    top: 0;
    transform: translate(-50%, 0);
}
.layer_wrap .layer_body {
    padding: 26px;
    box-sizing: border-box;
}
.layer_wrap .layer_head {
    position: relative;
}
.layer_wrap .layer_head .layer_close {
    display: block;
    width: 42px;
    height: 42px;
    background: url(https://sonsp.azureedge.net/img/img_v4/layer_close.png) no-repeat center;
    background-size: cover;
    position: absolute;
    top: 16px;
    right: 16px;
}
.layer_wrap .layer_body h3 {
    text-align: center;
    font-size: 22px;
    line-height: 44px;
    font-weight: 500;
}
.layer_wrap .layer_body p {
    text-align: center;
    font-size: 18px;
    line-height: 33px;
    margin-top: 12px;
    word-break: keep-all;
}
.layer_wrap .layer_foot > button {
    border-radius: 0;
}
.layer_wrap .layer_foot.two_btn > button {
    float: left;
    width: 50%;
}

/* 회원가입 레이어 */
.layer_wrap.hello .layer_body {
    color: #666;
}
.layer_wrap.hello .layer_body h3 {
    background: url(https://sonsp.azureedge.net/img/img_v4/hello_img.png) no-repeat center top;
    background-size: 70px 70px;
    padding-top: 86px;
}
.layer_wrap.hello .layer_body h3 strong {
    color: #333;
}
.layer_wrap.hello .layer_body p {
    font-size: 12px;
    line-height: 18px;
}

textarea {
    display: block;
    width: 100%;
    margin-top: 20px;
    background: #fff;
    box-sizing: border-box;
    line-height: 28px;
    border: 0;
    resize: none;
    font-size: 18px;
}
textarea::placeholder {
    color: #ccc;
}

/* file */
.file_upload {
    margin-top: 22px;
}

.filebox label {
    display: inline-block;
    height: 32px;
    line-height: 30px;
    border: 1px solid #596BFF;
    background: #596BFF;
    box-sizing: border-box;
    padding: 0 12px;
    color: #fff;
    font-size: 14px;
    border-radius: 5em;
    margin-top: 20px;
}

.filebox input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

/* 약관 */
.terms h2 {
    font-size: 24px;
    line-height: 36px;
    font-weight: 500;
    border-bottom: 1px solid #333;
    padding-bottom: 20px;
    box-sizing: border-box;
    margin-top: 60px;
}
.terms h3 {
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;
    margin-top: 32px;
}
.terms h3:nth-of-type(1) {
    margin-top: 32px;
}
.terms p {
    font-size: 14px;
    line-height: 26px;
    margin-top: 14px;
}
.terms table {
    display: block;
    width: 100%;
    border: 1px solid #ccc;
}
.terms table thead th {
    text-align: center;
    border-right: 1px solid #ccc;
    padding: 10px;
    font-size: 13px;
}
.terms table thead th:last-child {
    border-right: 0;
}
.terms table tbody td {
    border: 1px solid #ccc;
    border-bottom: 0;
    border-left: 0;
    padding: 10px;
    font-size: 12px;
}
.mt20 {
    margin-top: 20px !important;
}

.tab_menu {
    
}
.tab_menu ul {
    padding-bottom: 6px;
    border-bottom: 1px solid #E5E5E5;
}
.tab_menu ul li {
    float: left;
}
.tab_menu ul li a {
    margin-right: 80px;
    color: #999;
    padding-bottom: 6px;
    font-size: 20px;
}
.tab_menu ul li a.active {
    color: #596BFF;
    border-bottom: 1px solid #596BFF;
    font-weight: 500;
}
.empty {
    padding: 80px 0;
}
.empty p {
    font-size: 23px;
    text-align: center;
    padding-top: 210px;
    background: url(https://sonsp.azureedge.net/img/img_v4/empty_img.png) no-repeat center top;
    background-size: 197px;
}