@charset "utf-8";

.calc .form {
    width: auto; 
    height: auto; 
    padding: 40px 70px; 
    font-family: 'Noto Sans KR', sans-serif; 
    font-weight: 400; 
    letter-spacing: -1.5px; 
    overflow: auto; 
    background: #fff;
    border: 3px solid #646464;
}

.calc .form input {appearance: none; -webkit-appearance: none; -moz-appearance: none; border-radius: 0;}

.calc .form .title {
    margin-bottom: 25px; 
    line-height: 1; 
    font-size: 32px; 
    font-weight: 400; 
    color: #333333;}

.calc .form .title span {font-weight: bold;}

.calc .form dt {line-height: 1; font-size: 26px; font-weight: bold; color: #333333;}

.calc .form dd {
    margin: 10px 0; overflow: hidden;
}

.calc .form dd input {
    padding: 0 10px;
    width: 100%; 
    height: 60px; 
    font-family: 'Noto Sans KR', sans-serif; 
    font-size: 18px; 
    letter-spacing: -1.5px; 
    border: 1.5px solid #d9d9d9; 
    color: rgba(84, 84, 84, 0.7); 
    background: #fff;
    font-weight: 300;
}

.calc .form dl input.tel{
    width:100%;
}

.calc .form dd input::placeholder {color: rgba(84, 84, 84, 0.7);}
.calc .form dd input::-webkit-input-placeholder {color: rgba(84, 84, 84, 0.7);}
.calc .form dd input:-ms-input-placeholder {color: rgba(84, 84, 84, 0.7);}
.calc .form dd input::-ms-input-placeholder {color: rgba(84, 84, 84, 0.7);}

.calc .form dd .sex {
    display: flex; 
    overflow: rgba(84, 84, 84, 0.7);
}

.calc .form dd .sex input[type="radio"] {
    display: none;
}

.calc .form dd .sex label {
    display: inline-block; 
    width: 20px; 
    height: 20px; 
    background-image: url(../images/nocheck.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.calc .form dd .sex label:last-child {
    border-left: none;
    color: #a1a1a1;
    background: #fff;
}

.calc .form dd .sex input[type="radio"]:checked + label {
    background-image: url(../images/checked.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    color: #fff;
}

.calc .form dd .sex span {
    font-size: 18px;
    margin-left: 10px;
    font-weight: 500;
    position: relative;
    bottom: 4px;
}

.calc .form dd .sex .women {
    margin-left: 30px;
}

.focus {
    color: #104482;
}

.calc .form .agree_area {
    margin:20px 0;
}

.calc .form .agree_area label {
    display:flex; 
    overflow: hidden;
}

.calc .form .agree_area label:last-child {margin-bottom: 0;}

.btn_area {
    width: 100%;
}

.btn_area a {
    width: 100%;
}

.btn_area a img {
    width: 100%;
    height: 100%;
}

.btn_area a:last-child img {
    margin-top: 5px;
}

.calc .form .agree_area label input[type="checkbox"] {display:none;}

.calc .form .agree_area label span {
    display:inline-block; 
    float:left; 
    line-height: 28px; 
    font-size: 15px; 
    letter-spacing: -1px; 
    color: rgba(102, 102, 102, 0.7);
    font-weight: 300;
}

.calc .form .agree_area label .check_text {
    margin-left: 10px;
}

.calc .form .agree_area label span.check {
    margin-top: 5px; 
    width:20px; 
    height:20px; 
    background-image:url('../images/mo_dp_check_off.png');
    background-repeat: no-repeat;
    background-size: 100%;
}

.calc .form .agree_area label input[type="checkbox"]:checked + span.check {
    background-image:url('../images/mo_dp_check_on.png');
}

.calc .result_box {
    width: 100%;
    height: auto;
    background: #fff;
}

.calc .result_box .result {
    padding-top: 25px;
}

.calc .result_box .result .result_text {
    line-height: 1; 
    font-size: 25px; 
    text-align: center;
    color: #02c8e3;
    width: 26%;
    padding-bottom: 5px;
    border-bottom: 1px solid #fff;
    margin-left: 125px;
}

.calc .result_box .result span {
    font-size: 20px;
    font-weight: 300;
}

.calc .result_box .result span b {
    font-weight: 500;
}

.calc .result_box .result_price {
    display: flex;
    margin-top: 10px;
}

.calc .result_box .result_price .price {
    width: 100%;
    text-align: right;
    padding: 10px;
    border: 1px solid #ddd;
    color: #02c8e3;
    font-weight: bold;
    font-size: 20px;
}

.calc .result_box .result_price span {
    font-size: 20px;
    margin-left: 10px;
    margin-top: 10px;
}

.calc .form .result div {margin-top: 22px; overflow: hidden;}
.calc .form .result div span {display: inline-block; float: right; line-height: 65px; font-size: 26px; font-weight: bold; color: #333333; text-align: right;}
.calc .form .result div span.price {float: left; width: 420px; height: 65px; padding: 0 24px; line-height: 63px; font-size: 42px; border: 1.5px solid #d9d9d9; color: #f7900f;}

.popup {display: none; position: fixed; left: 0; top: 0; width: 100%; height: 100%;}
.popup .popup_wrap {width: 500px; height: 347px; margin: 32% auto 0; border: 6px solid #0148a4; background-color: #fff; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;}
.popup .popup_wrap p {line-height: 1.25; font-family: 'Noto Sans KR', sans-serif; font-size:24px; font-weight: 400; color: #666666;}
.popup .popup_wrap button {width: 300px; height: 60px; margin: 40px auto 0; font-family: 'Noto Sans KR', sans-serif; font-size:24px; border:none; background-color: #0148a4; color: #fff;}