body {
    letter-spacing: -1px;
    line-height: 1;
}
/* 공통 */
.wrap-promotion02 {
    max-width: 1903px;
    width: 100%;
    margin: 0 auto;
}
.container {
    max-width: 800px;
    width: 100%;
    padding: 0 23px;
    margin: 0 auto;
}
.sec01 {
    position: relative;
    height: 42.6169vw;
    background: center / cover no-repeat url(../images/sec01-pc.jpg);
    overflow: hidden;
}
.sec01 .is-icon {
    position: absolute;
}
.sec01 .icon01 {
    top: 200px;
    left: 130px;
}
.sec01 .icon01 img {
    position: absolute;
    top: 0;
    left: 0;
}
.sec01 .icon01 img:nth-child(1) {
    transform: rotate(20deg);
}
.sec01 .icon01 img:nth-child(1).active {
    opacity:0;
}
.sec01 .icon01 img:nth-child(2) {
    opacity: 0;
    left: -140px;
}
.sec01 .icon01 img:nth-child(2).active {
    opacity: 1;
}
.sec01 .icon02 {
    top: 55px;
    left: 1000px;
}
.sec01 .icon02 img.active {
    transform: rotate(-45deg);
}
.sec01 .icon03 {
    top: 25px;
    right: -280px;
    animation: icon03 1.3s forwards ease-in-out;
    animation-delay: 1s;
}
@keyframes icon03 {
    0%{right: -280px;}
    100%{right: -80px;}
}
.sec02 {
    height: 1249px;
    padding-top: 500px;
    background: center / cover no-repeat url(../images/sec02.jpg);
}
.sec03 {
    position: relative;
    height: 929px;
    padding-top: 315px;
    background: center / cover no-repeat url(../images/sec03.jpg);
}
.sec03 .is-icon {
    position: absolute;
    top: 90px;
    left: 319px;
    animation: sec03_icon 1.5s infinite ease-in-out;
}
@keyframes sec03_icon {
    0% {transform: scale(.8);}
    50% {transform: scale(1.1);}
    100% {transform: scale(.8);}
}
.sec04 {
    height: 482px;
    padding-top: 230px;
    background: center / cover no-repeat url(../images/sec04.jpg);
}
.sec05 {
    height: 735px;
    padding-top: 265px;
    background: center / cover no-repeat url(../images/sec05.jpg);
}
.sec06 {
    position: relative;
    height: 738px;
    padding-top: 260px;
    background: center / cover no-repeat url(../images/sec06.jpg);
}
.sec06 .is-icon {
    position: absolute;
    top: 27px;
    left: 450px;
    animation: promotion_h 1.3s infinite ease-in-out;
}
@keyframes promotion_h {
    0% {
        top: 0;
        transform: scale3d(1, 1, 1);
        border-radius: 100%;
        animation-timing-function: ease-in;
    }
    45% {
    transform: scale3d(1, 1, 1);
    }
    50% {
    top: 50px;
    animation-timing-function: ease-out;
    transform: scale3d(1.3, .8, 1);
    }
    55% {
    transform: scale3d(1, 1, 1);
    }
    60% {
    transform: scale3d(.8, 1.1, 1);
    }
    70% {
    transform: scale3d(.95, 1.05, 1);
    }
    72% {
    transform: scale3d(1, 1, 1);
    }
    100% {
    transform: scale3d(1, 1, 1);
    top: 0;
    border-radius: 100%;
    }
}
.sec07 {
    height: 608px;
    padding-top: 280px;
    background: center / cover no-repeat url(../images/sec07.jpg);
}
.sec08 {
    height: 428px;
    padding-top: 240px;
    background: center / cover no-repeat url(../images/sec08.jpg);
}
.sec09 {
    position: relative;
    height: 835px;
    padding-top: 365px;
    background: center / cover no-repeat url(../images/sec09.jpg);
}
.sec09 .is-icon {
    position: absolute;
    top: -43px;
    right: 380px;
    animation: sec09 3s infinite ease-in-out;
}
@keyframes sec09 {
    0%{transform: rotate(0);}
    100%{transform: rotate(360deg);}
}
.sec10 {
    height: 904px;
    padding-top: 20px;
    background: center / cover no-repeat url(../images/sec10.jpg);
}


.cont li {
    z-index: 1;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
}
.cont li:not(.num-kr)::before{
    z-index: -1;
    content: "";
    position: absolute;
    left: 0;
    bottom: 4px;
    height: 18px;
    width: 0;
    transition: all .7s;
}
.cont li:not(.num-kr).active::before {
    z-index: -1;
    content: "";
    position: absolute;
    left: 0;
    bottom: 4px;
    height: 18px;
    width:100%;
    transition: all .7s;
}
.cont li:not(.num-kr) p {
    position: relative;
}
.cont li:not(.num-kr) p::before {
    z-index: -1;
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    height: 18px;
    width: 0;
    transition: all .7s;
}
.cont li:not(.num-kr):hover p::before {
    z-index: -2;
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    height: 18px;
    width: 100%;
    transition: all .7s;
}
.sec02 li:not(.num-kr).active::before,
.sec02 li:not(.num-kr):hover p::before {
    background: #fff582;
}
.sec03 li:not(.num-kr).active::before,
.sec03 li:not(.num-kr):hover p::before {
    background: #f799ff;
}
.sec04 li:not(.num-kr).active::before,
.sec04 li:not(.num-kr):hover p::before {
    background: #8ddafd;
}
.sec05 li:not(.num-kr).active::before,
.sec05 li:not(.num-kr):hover p::before {
    background: #ffd387;
}
.sec06 li:not(.num-kr).active::before,
.sec06 li:not(.num-kr):hover p::before {
    background: #ffb0aa;
}
.sec07 li:not(.num-kr).active::before,
.sec07 li:not(.num-kr):hover p::before {
    background: #dbb8f5;
}
.sec08 li:not(.num-kr).active::before,
.sec08 li:not(.num-kr):hover p::before {
    background: #97f7eb;
}
.sec09 li:not(.num-kr).active::before,
.sec09 li:not(.num-kr):hover p::before {
    background: #d3ff84;
}
.cont li+li {
    margin-top: 10px;
}
.cont li .plus {
    position: relative;
}
.cont li .plus::after {
    position: absolute;
    left: 12px;
    top: -10px;
    content: "";
    width: 45px;
    height: 40px;
    background: url(../images/plus.png) no-repeat;
    background-size: 100%;
}
.cont li.num-kr {
    margin-top: 20px;
    margin-bottom: 20px;
}
.cont li p {
    font-family:'edb-b';
    font-size: 35px;
    color: #111111;
}
.cont li  p.plus {
    padding-left: 65px;
}
/* .cont li p.first-line {
    z-index: 1;
    position: relative;
} */
/* .cont li p.first-line::before {
    z-index: -1;
    content: "";
    position: absolute;
    left: 50%;
    bottom: -4px;
    transform: translateX(-50%);
    height: 18px;
    width: 110%;
} */
/* .sec02 .cont li p.first-line::before {
    background: #fff582;
}
.sec03 .cont li p.first-line::before {
    background: #f799ff;
}
.sec04 .cont li p.first-line::before {
    background: #8ddafd;
}
.sec05 .cont li p.first-line::before {
    background: #ffd387;
}
.sec06 .cont li p.first-line::before {
    background: #ffb0aa;
}
.sec07 .cont li p.first-line::before {
    background: #dbb8f5;
}
.sec08 .cont li p.first-line::before {
    background: #97f7eb;
}
.sec09 .cont li p.first-line::before {
    background: #d3ff84;
} */

.cont li p.text-icon01 {
    position: relative;
}
.cont li p.text-icon01::after {
    z-index: -1;
    content: "";
    position: absolute;
    top: 0;
    right: -130px;
    width: 110px;
    height: 42px;
    background: url(../images/text-icon01.png) no-repeat;
    background-size: 100%;
}
.cont li p.text-icon02 {
    position: relative;
}
.cont li p.text-icon02::after {
    z-index: -1;
    content: "";
    position: absolute;
    top: 0;
    right: -180px;
    width: 163px;
    height: 42px;
    background: url(../images/text-icon02.png) no-repeat;
    background-size: 100%;
}

.cont li .price label {
    position: relative;
    font-family:'edb-r';
    font-size: 30px;
    color: #111111;
    cursor: pointer;
}
.cont li .price label.before-icon::before {
    position: absolute;
    content: "~";
    top: 50%;
    right: -20px;
    transform: translateY(-50%);
}
.cont li .price label b {
    letter-spacing: -2px;
    font-style: italic;
    font-family:'consola';
    font-size: 60px;
    display: inline-block;
    color: #111111;
}
.cont li .price label b.text-kr {
    font-family:'edb-b';
    font-size: 50px;
    font-style: normal;
} 
.cont .price-num {
    display: none;
}
.cont .price-num-kr {
    display: none;
}

.total-price {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.total-price h6 {
    font-family:'consola';
    font-size: 45px;
    font-style: normal;
    color: #df2d2d;
}
.total-price p {
    font-family:'consola';
    font-style: italic;
    font-size: 70px;
    display: inline-block;
    color: #df2d2d;
}
.total-price span {
    font-family: 'edb-r';
    font-size: 30px;
    color: #df2d2d;
    display: inline;
    margin-left: 5px;
}

.now-form {
    z-index: 100;
    position: fixed;
    padding: 15px 180px;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0, 0, 0, .7);
}
.now-form .custom-mo {
    align-items: center;
}
.now-form > p {
    font-family: 'S-CoreDream-4Regular';
    font-size: 32px;
    margin-bottom: 13px;
    color: #fff;
}
.now-form > p b {
    font-family: 'S-CoreDream-6Bold';
}
.now-form .now-form-cont {
    display: flex;
}
.now-form .now-form-cont > li > ul {
    display: flex;
}
.now-form .now-form-cont li+li {
    margin-left: 15px;
}
.now-form .now-form-cont li input {
    font-family: 'S-CoreDream-3Light';
    font-size: 14px;
    width: 240px;
    height: 40px;
    line-height: 40px;
    padding: 0 16px;
    background: #fff;
    border: none;
    color: #111111;
    border-radius: 0;
}
.now-form .now-form-cont li input::placeholder {
    font-family: 'S-CoreDream-3Light';
    font-size: 14px;
    color: #b8b8b8;
}
.now-form .now-form-cont li select {
    font-family: 'S-CoreDream-3Light';
    font-size: 14px;
    width: 240px;
    height: 40px;
    line-height: 40px;
    padding: 0 16px;
    background: #fff;
    border: none;
    color: #b8b8b8;
}
.now-form .now-form-cont li select::-ms-expand{display:none}
.now-form .now-form-cont li select {
    border-radius:0;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
}
.now-form .now-form-cont li select option {
    color: #111111;
}

.now-form .now-form-cont02 {
    display: flex;
    /* margin-left: 15px; */
}
.now-form .now-form-cont02 label {
    font-family: 'S-CoreDream-3Light';
    font-size: 14px;
    color: #fff;
    display: flex;
    align-items: center;
}
.now-form .now-form-cont02 ul li:first-child {
    margin-bottom: 4px;
}

input[id="agree_checkbox01"] {
    display: none;
}
input#agree_checkbox01 + label:before {
    content:"";
    display:inline-block;
    margin-right: 5px;
    width:18px;
    height:18px;
    line-height:18px;
    border:2px solid #fff;
    vertical-align:middle;/*체크 전과 체크 후 높이 차이 때문에 설정*/
    box-sizing: border-box;
}
input#agree_checkbox01:checked + label:before{
    content: "";
    border: 2px solid #df2d2d;
    color:#fff;
    text-align:center;
    background: url(../images/check-icon.png) no-repeat;
    background-color: #df2d2d;
    background-position: center;
}
input[id="agree_checkbox02"] {
    display: none;
}
input#agree_checkbox02 + label:before {
    content:"";
    display:inline-block;
    margin-right: 5px;
    width:18px;
    height:18px;
    line-height:18px;
    border:2px solid #fff;
    vertical-align:middle;/*체크 전과 체크 후 높이 차이 때문에 설정*/
    box-sizing: border-box;
}
input#agree_checkbox02:checked + label:before{
    content: "";
    border: 2px solid #df2d2d;
    color:#fff;
    text-align:center;
    background: url(../images/check-icon.png) no-repeat;
    background-color: #df2d2d;
    background-position: center;
}
.now-form .now-form-cont02 > li:nth-of-type(1) {
    margin-right: 25px;
}
.now-form .now-form-cont02 ul li:nth-child(2) a {
    font-family: 'S-CoreDream-2ExtraLight';
    font-size: 10px;
    width: 56px;
    height: 16px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-left: 5px;
    color: #292929;
    background: rgba(255, 255, 255, .6);
}
.now-form .now-form-cont02 li button {
    font-family: 'S-CoreDream-7ExtraBold';
    font-size: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 250px;
    height: 60px;
    color: #fff;
    background: #df2d2d;
    border: none;
}
.now-form .now-form-cont02 li button img {
    margin-left: 15px;
}
.now-form .custom-abs {
    position: absolute;
    bottom: 10px;
}
.now-form span.custom-span {
    font-family: 'S-CoreDream-3Light';
    font-size: 10px;
    left: 150px;
    bottom: 28px;
    opacity: .6;
    display: inline-block;
    color: #ffffff;
}