.visual_area {
    background: url(../img/discount_visual.jpg) no-repeat center;
    background-size: cover;
}
.discount_top .num {
    width: 328px;
    height: 50px;
    box-sizing: border-box;
    border-radius: 25px;
    border: 2px solid #ddd;
    margin: 0 auto;
    margin-bottom: 20px;
    font-size: 1.25em;
    font-weight: 700;
    text-align: center;
    line-height: 50px;
}
.discount_top .num span {
    color: #ff1f1f;
}
.discount_top .tit {
    text-align: center;
    font-size: 2.375em;
    font-weight: 100;
    margin-bottom: 50px;
}
.discount_top .tit strong {
    font-weight: 500;
}
.discount_top ul {
    padding: 40px 120px;
    background: #f8f8f8;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
.discount_top ul li {
    width: 33.33%;
    position: relative;
}
.discount_top ul li::after {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: url(../img/guide_arrow.png) no-repeat center #99586b;
    position: absolute;
    right: -15px;
    top: 50%;
    margin-top: -10px;
}
.discount_top ul li:last-of-type:after {
    display: none;
}
.discount_top ul li dl {
    display: flex;
    align-items: center;
    justify-content: center;
}
.discount_top ul li dt {
    font-size: 1.375em;
    font-weight: 700;
    color: #99586b;
    margin-right: 25px;
}
.discount_top ul li dd {
    font-weight: 300;
}
.discount_top .sub {
    font-size: .875em;
    font-weight: 300;
    color: #444;
}
.discount h4 {
    font-size: 1.5em;
    font-weight: 700;
    padding-bottom: 20px;
    border-bottom: 2px solid #000;
    margin-bottom: 30px;
}
.mar2 {
    margin-bottom: 30px !important;
}
.pay_info table {
    width: 100%;
}
.pay_info th {
    padding: 10px 0;
    text-align: center;
    width: 23.75%;
    background: #4d5973;
    color: #fff;
    border: 1px solid #fff;
    border-top: none;
    border-bottom: none;
    font-weight: 500;
}
.pay_info th:first-of-type {
    width: 5%;
}
.pay_info td {
    text-align: center;
    font-weight: 300;
    border: 1px solid #ddd;
    padding: 10px 0;
}
.pay_info td:last-of-type {
    background: #f8f8f8;
    font-weight: 700;
}
.pay_info td input[type=radio] {
    display: none;
}
.pay_info td input[type=radio] + label {
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    box-sizing: border-box;
    border: 1px solid #ddd;
    overflow: hidden;
    text-indent: -999999999999999999%;
    margin: 0 auto;
    position: relative;
}
.pay_info td input[type=radio]:checked + label {
    border-color: #000;
}
.pay_info td input[type=radio]:checked + label::after {
    content: '';
    display: block;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #000;
    position: absolute;
    left: 50%;
    margin-left: -2px;
    top: 50%;
    margin-top: -2px;
}
.pay_method ul {
    padding: 30px 0;
    background: #f8f8f8;
    display: flex;
    align-items: center;
    justify-content: center;
}
.pay_method ul li {
    margin-right: 120px;
}
.pay_method ul li:last-of-type {
    margin-right: 0;
}
.pay_method ul li input[type=radio] {
    display: none;
}
.pay_method ul li input[type=radio] + label {
    display: block;
    font-weight: 300;
    position: relative;
}
.pay_method ul li input[type=radio] + label::after {
    content: '';
    display: block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    box-sizing: border-box;
    border: 1px solid #ccc;
    position: absolute;
    left: -24px;
    top: 50%;
    margin-top: -8px;
}
.pay_method ul li input[type=radio]:checked + label::after {
    border-color: #000;
}
.pay_method ul li input[type=radio]:checked + label::before {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #000;
    position: absolute;
    left: -19px;
    top: 50%;
    margin-top: -3px;
}
.note p {
    text-align: center;
    font-weight: 300;
    color: #444;
    line-height: 2em;
}
.discount button {
    display: block;
    width: 250px;
    height: 60px;
    text-align: center;
    line-height: 60px;
    margin: 0 auto;
    background: #99586b;
    color: #fff;
    font: 700 1em 'Noto Sans KR', sans-serif;
    border: none;
    cursor: pointer;
    margin-top: 60px;
}
.pay_method .user_info {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.pay_method .user_info li {
    width: 33.33%;
    margin: 0;
    display: flex;
    align-items: center;
}
.pay_method .user_info li label {
    width: 30%;
    text-align: center;
}
.pay_method .user_info li input {
    width: 60%;
    height: auto;
    padding: 15px 0;
    padding-left: 10px;
    box-sizing: border-box;
}
/**************************
일반 pc
************************/
@media screen and (max-width:1280px) {
    .discount_top ul {
        padding: 30px;
    }
    .discount_top ul li::after {
        right: -10px;
    }
    .discount_top ul li dt {
        margin-right: 10px;
    }
    
}
/**************************
태블릿
************************/
@media screen and (max-width:1024px) {
    .discount_top ul li {
        width: 100%;
        margin-bottom: 40px;
    }
    .discount_top ul li::after {
        left: 50%;
        margin-left: -20px;
        top: 100%;
        margin-top: 10px;
        transform: rotate(90deg);
    }
    .discount_top ul li dl {
        justify-content: flex-start;
    }
    .discount_top ul li dt {
        width: 50%;
        text-align: right;
        box-sizing: border-box;
        padding-right: 5%;
    }
    .pay_method .user_info li {
        width: 50%;
        margin-bottom: 20px;
    }
    .pay_method .user_info li:last-of-type {
        margin-bottom: 0;
    }
}
/**************************
모바일
************************/
@media screen and (max-width:640px) {
    .discount_top .tit {
        font-size: 1.7em;
        margin-bottom: 30px;
    }
    .discount_top .pay_info {
        width: auto;
    }
    .discount_top ul {
        padding: 20px 10px;
        margin-bottom: 10px;
    }
    .discount_top ul li dt {
        width: 35%;
        text-align: center;
    }
    .discount_top ul li dd {
        width: 65%;
    }
    .discount h4 {
        padding-bottom: 10px;
        margin-bottom: 20px;
    }
    .pay_info th {
        width: 22.5%;
    }
    .pay_info th:first-of-type {
        width: 10%;
    }
    .pay_info td {
        font-size: .875em;
    }
    .pay_method ul li {
        margin-right: 30px;
    }
    .note p {
        font-size: .875em;
    }
    .pay_method .user_info li {
        width: 100%;
        margin-bottom: 10px;
    }
}
#contentArea .refund{
    height: 200px;
    overflow-y: scroll;
    margin-top: 40px;
    box-sizing: border-box;
    border: 1px solid #ddd;
    padding: 20px 30px;
}
#contentArea  .refund strong{
    display: block;
    font-size: 1.25em;
    margin-bottom: 20px
}
#contentArea  .refund p{
    font-size: .875em;
    line-height: 2.5em;
    color: #666
}

/*****결제창****/
#contentArea #sod_frm_pay {
    width: 1200px;
    margin: 0 auto;
    margin-bottom: 50px;
}
.sod_frm_point{
    text-align: right
}
.sod_frm_point>div:first-of-type{
    margin-bottom: 10px;
    font-size: .875em;
}
#sod_frm_pt span>strong{
    color: #017900;
    display: inline-block;
    margin: 0 5px;
}
#sod_frm_pt .max_point_box strong{
    color: #ec9a38
}
.btn_confirm{
    overflow: hidden;
    width: 50%;
    margin: 0 auto
}
.btn_confirm input{
    display: block;
    width: 49%;
    margin-right: 2%;
    box-sizing: border-box;
    background: #017900;
    color: #fff;
    font-size: 1em;
    border-radius: 0;
    height: 50px;
    line-height: 50px;
    float: left
}
.btn_confirm a.btn01{
    display: block;
    width: 49%;
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    border: 1px solid #ddd;
    background: none;
    float: left;
    border-radius: 0;
    height: 50px;
    line-height: 50px
}
.btn_confirm a.btn_cancel{
    width: 49%;
    box-sizing: border-box;
    border: 1px solid #ddd;
    background: none;
    float: left;
    height: 50px;
    line-height: 50px;
}
@media screen and (max-width:1024px) {
    #contentArea #sod_frm_pay {
        width: 96%;
    }
}