@import url('slick.css'); 

/* login_box */
.login_container {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: calc(var(--vh, 1vh) * 100);
}
.login_box {
    width: 72.222vw;
}
.login_box h1 {
    margin-bottom: 12.500vw;
}
.login_box h1 img {
    display: block;
    margin: 0 auto;
    width: 39.722vw;
}
.login_box h1 span {
    display: block;
    margin-top: 5.556vw;
    font-size: 5.556vw;
    font-weight: 500;
    color: #666666;
    text-align: center;
}
.login_box input {
    display: block;
    border: 1px solid #dddddd;
    width: 100%;
    height: 10vw;
    font-size: 3.889vw;
    font-weight: 500;
    color: #454545;
    text-align: center;
    box-sizing: border-box;
}
.login_box input + input {
    margin-top: 2.778vw;
}
.login_box .login_btn {
    display: block;
    margin-top: 11.111vw;
    width: 100%;
    height: 12.500vw;
    font-size: 4.444vw;
    font-weight: 500;
    color: #fff;
    background: #f0353c;
}

/* 결제하기 */
.pay_container {
    padding-top: 14.028vw;
}
.pay_container .pay_link {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 4.167vw 0 11.111vw;
}
.pay_container .pay_link a {
    display: block;
    border: 1px solid #da3232;
    width: 44.444vw;
    height: 11.111vw;
    line-height: 11.111vw;
    text-align: center;
    font-size: 3.889vw;
    font-weight: 500;
    color: #da3232;
    box-sizing: border-box;
}
.pay_container .pay_link a.on {
    color: #fff;
    background: #da3232;
}
.pay_container .pay_title {
    margin-bottom: 6.389vw;
    font-size: 3.889vw;
    font-weight: 500;
    color: #000000;
}
.pay_container .pay_form {
    padding-bottom: 14.889vw;
}
.pay_container .pay_type li {
    border-bottom: 1px solid #e5e5e5;
}
.pay_container .pay_type .radio_item input {
    display: none;
}
.pay_container .pay_type .radio_item input + label {
    display: block;
    padding-left: 7.778vw;
    line-height: 12.500vw;
    font-size: 4.167vw;
    font-weight: 400;
    color: #000000;
    letter-spacing: -0.04em;
    background-position: left center;
    background-repeat: no-repeat;
    background-size: 5vw;
    background-image: url(../img/ico/radio_ico.png);
}
.pay_container .pay_type .radio_item input:checked + label {
    background-image: url(../img/ico/radio_ico_on.png);
}
.pay_container .submit_btn {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 13.889vw;
    font-size: 4.444vw;
    font-weight: 500;
    color: #fff;
    background: #f0353c;
}
.pay_container.finish {
    background: #f3f4f5;
}
.pay_container .finish_pay {
    padding: 5.833vw 0 4.167vw;
    height: calc(100vh - 14.028vw);
    height: calc(var(--vh, 1vh) * 100 - 14.028vw);
    box-sizing: border-box;
}
.pay_container .finish_pay .inner {
    display: flex;
    flex-direction: column;
}
.pay_container .finish_pay_info {
    position: relative;
    border: 1px solid #dbdbdb;
    border-bottom: 0;
    background: #fff;
}
.pay_container .finish_pay_info::after {
    position: absolute;
    top: 100%;
    left: -1px;
    right: -1px;
    height: 2.222vw;
    background: url(../img/sub/finish_pay_border.png) center bottom no-repeat;
    background-size: 100%;
    content: '';
}
.pay_container .finish_pay_info .top {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-bottom: 1px dashed #dbdbdb;
    height: 44.444vw;
}
.pay_container .finish_pay_info .top img {
    display: block;
    margin: 0 auto;
    width: 11.111vw;
}
.pay_container .finish_pay_info .top h2 {
    margin-top: 4.167vw;
    font-size: 5.833vw;
    font-weight: 500;
    color: #000000;
}
.pay_container .finish_pay_info .top h2 strong {
    font-weight: 500;
    color: #da3232;
}
.pay_container .finish_pay_info .bottom {
    padding: 6.944vw 4.167vw 10.278vw;
}
.pay_container .finish_pay_info .bottom dl {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.pay_container .finish_pay_info .bottom dl + dl {
    margin-top: 4.444vw;
}
.pay_container .finish_pay_info .bottom dt {
    font-size: 4.167vw;
    font-weight: 500;
    color: #000000;
}
.pay_container .finish_pay_info .bottom dd {
    width: calc(100% - 18.056vw);
    font-size: 4.167vw;
    font-weight: 400;
    color: #000000;
    text-align: right;
}
.pay_container .finish_pay .ok_btn {
    display: block;
    margin-top: auto;
    width: 100%;
    height: 12.500vw;
    text-align: center;
    line-height: 12.500vw;
    font-size: 4.444vw;
    font-weight: 500;
    color: #fff;
    background: #f0353c;
}



.policy_wrap {
    background: #fafafa;
    padding-bottom: 100px;
}
.policy_header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    line-height: 100px;
    text-align: center;
    font-size: 0;
    background: #f0353c;
}
.policy_header img {
    width: 142px;
    vertical-align: middle;
}
.policy_box {
    margin: 140px auto 0;
    max-width: 1180px;
    width: calc(100% - 30px);
}
.policy_box h2 {
    width: 100%;
    height: 40px;
    border: 2px solid #333333;
    line-height: 36px;
    text-align: center;
    font-size: 16px;
    font-weight: 400;
    color: #333333;
    box-sizing: border-box;
}
.policy_box .policy_desc {
    margin-top: 15px;
    border: 1px solid #dddddd;
    padding: 22px;
    background: #fff;
    font-size: 14px;
    font-weight: 400;
    color: #252525;
    line-height: 1.5;
}