@charset "utf-8";

/*공통*/
@font-face {
    font-family: 'Cafe24Ssukssuk';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_twelve@1.1/Cafe24Ssukssuk.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

h1, h2, h3, h4, h5 {line-height: 1.3;}
img {max-width: 100%;}
.title {
    margin-bottom: 50px;
    text-align: center;
}
.title h2 {
    font-size: 50px;
    font-weight: bold;
    word-break: keep-all;
}
.title h2 span {color: #428eea;}
.title h2 img {
    margin-top: -8px;
    display: inline-block;
}
.title h3 {font-size: 36px;}
.title p {
    font-size: 24px;
    margin: 25px 0;
    line-height: 1.6;
    word-break: keep-all;
}
.title p:first-child {margin-top: 0;}
.title p:last-child {margin-bottom: 0;}
.title p b {font-weight: 600;}
.title strong {
    display: block;
    font-size: 30px;
    margin-bottom: 15px;
}
.desc {
    font-size: 17px;
    line-height: 1.6;
    word-break: keep-all;
}
.desc span {color: #428eea;}
.blue {color: #428eea;}
.more-btn {
    min-width: 180px;
    width: fit-content;
    height: 55px;
    line-height: 55px;
    border-radius: 55px;
    padding: 0 30px;
    font-size: 17px;
    font-weight: bold;
    background: #428eea;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: all .3s;
}
.more-btn:hover {background: #0079d2;}
.more-btn img {margin-right: 10px;}
.prev-btn,
.next-btn {
    width: 36px;
    height: 36px;
    border-radius: 36px;
    background: #428eea;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    cursor: pointer;
}
.slider-controls {
    position: relative;
    display: flex;
    align-items: center;
    z-index: 1;
}
.slider-controls .slider-pagination {
    font-size: 15px;
    font-weight: bold;
    margin: 0 15px;
    color: #111;
    width: auto;
}
.fade-up {
    opacity: 0;
    transition: all 0.8s ease-in-out;
    transform: translate3d(0, 100px, 0);
}
.fade-up.move-up {
    opacity: 1;
    transform: translateZ(0);
}
.fade-right {
    opacity: 0;
    transition: all 0.8s ease-in-out;
    transform: translate3d(-100px, 0, 0);
}
.fade-right.move-right {
    opacity: 1;
    transform: translateZ(0);
}
.fade-left {
    opacity: 0;
    transition: all 0.8s ease-in-out;
    transform: translate3d(100px, 0, 0);
}
.fade-left.move-left {
    opacity: 1;
    transform: translateZ(0);
}
.fade-in {
    opacity: 0;
    transition: all 0.5s ease-in;
}
.fade-in.fade-in-visible {
    opacity: 1;
}
.delay-100 {transition-delay: 0.1s;}
.delay-200 {transition-delay: 0.2s;}
.delay-300 {transition-delay: 0.3s;}
.delay-400 {transition-delay: 0.4s;}
.delay-500 {transition-delay: 0.5s;}
.video-wrap .video {
    position: relative;
    width: 100%;
    height: auto;
    padding-top: 56.25%;
}
.video-wrap .video iframe {
    z-index: 1;
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 100%;
}
.table-wrap {
    border-radius: 10px 10px 0 0;
    overflow: hidden;
}
.table-wrap table {
    font-size: 16px;
    width: 100%;
    border-collapse: collapse;
}
.table-wrap table th {
    background: #595c66;
    padding: 10px;
    text-align: center;
    font-weight: 600;
    border: 1px solid rgba(255,255,255,0.2);
    color: #fff;
}
.table-wrap table td {
    background: #fff;
    border: 1px solid rgba(0,0,0,0.1);
    padding: 15px;
    text-align: center;
    color: #595c66;
}
.table-wrap table td.td-bg {
    background: #d9e2ee;
    font-weight: 600;
    color: #111;
}
.table-wrap table td.td-delete {width: 60px;}

/*fullpage 네비게이션*/
body #fp-nav.right {right: 0;}
body #fp-nav ul li {
    width: 60px;
    height: 20px;
    margin: 0 0 30px;
}
body #fp-nav ul li:last-child {display: none;}
body #fp-nav ul li a {
    width: 100%;
    height: 100%;
}
body #fp-nav ul li a span {
    width: 100%;
    height: 2px;
    background: #428eea;
    top: 50%;
    left: auto;
    right: 0;
    transform: translateY(-50%);
    margin: 0;
    border-radius: 0;
    opacity: 0;
}
body #fp-nav ul li a.active span,
body #fp-nav ul li:hover a.active span {
    opacity: 1;
    width: 100%;
    height: 2px;
    margin: 0;
    border-radius: 0;
}
body #fp-nav ul li .fp-tooltip {
    font-size: 15px;
    font-weight: bold;
    color: #111;
    opacity: 0.4;
    width: auto;
    transition: all .2s;
}
body #fp-nav ul li .fp-tooltip.right {right: 70px;}
body #fp-nav ul li a.active + .fp-tooltip,
body #fp-nav ul li:hover a.active + .fp-tooltip {opacity: 1;}
@media all and (max-width: 1200px) {
    .fade-up,
    .fade-in {
        opacity: 1;
        transform: none;
    }
}
@media all and (max-width: 767px) {
    .title {margin-bottom: 30px;}
    .title h2 {font-size: 28px;}
    .title h3 {font-size: 22px;}
    .title h2 img {width: 30px;}
    .title p {
        font-size: 17px;
        margin: 20px 0;
        line-height: 1.5;
    }
    .title strong {
        font-size: 24px;
        margin-bottom: 10px;
    }
    .desc {font-size: 16px;}
    .more-btn {
        height: 50px;
        line-height: 50px;
        font-size: 16px;
    }
    .table-wrap table {font-size: 15px;}
}

/*메인*/
.main .section {
    position: relative;
    overflow: hidden;
}
.main #about .swiper-slide {
    position: relative;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    height: 100vh;
}
.main #about .slide-01 {background-image: url(/img/assets/main_about_bg_01.jpg)}
.main #about .slide-02 {background-image: url(/img/assets/main_about_bg_02.jpg)}
.main #about .slide-03 {background-image: url(/img/assets/main_about_bg_03.jpg)}
.main #about .txt {
    position: absolute;
    left: calc((100% - 1400px)/2);
    bottom: 300px;
}
.main #about .txt p {
    font-size: 24px;
    font-weight: bold;
    color: #428eea;
    margin-bottom: 20px;
}
.main #about .txt h2 {
    font-size: 50px;
    margin-bottom: 40px;
}
.main #about .txt h2 span {color: #428eea;}
.main #about .slider-controls {
    position: absolute;
    left: calc((100% - 1400px)/2);
    bottom: 180px;
}
.main #about .slider-controls .prev-btn {background: #595c66;}
.main #problem {background: url(/img/assets/main_problem_bg.jpg) center / cover no-repeat;}
.main #problem ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 1000px;
    margin: 0 auto -20px;
}
.main #problem ul li {
    position: relative;
    margin: 0 10px 20px;
    text-align: center;
}
.main #problem ul li:first-child {transform: rotate(-4deg)}
.main #problem ul li:nth-child(2) {transform: rotate(2deg)}
.main #problem ul li:nth-child(4) {transform: rotate(-8deg)}
.main #problem ul li:nth-child(5) {transform: rotate(4deg)}
.main #problem ul li .txt {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
}
.main #problem ul li .txt h3 {
    font-family:'Cafe24Ssukssuk', dotum, sans-serif;
    font-size: 26px;
    margin-bottom: 20px;
    font-weight: normal;
}
.main #solution {background: #f5f5f5;}
.main #solution ul {
    display: flex;
    flex-wrap: wrap;
}
.main #solution ul li {
    width: calc((100% - 80px)/5);
    margin-right: 20px;
    text-align: center;
    background: #fff;
    box-shadow: 0 5px 10px rgba(0,0,0,0.1);
    border-radius: 10px;
    padding: 0 15px 30px;
}
.main #solution ul li:last-child {margin-right: 0;}
.main #solution ul li .number {
    background: #428eea;
    width: 40px;
    height: 50px;
    line-height: 50px;
    border-radius: 0 0 5px 5px;
    margin: 0 auto 30px;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
}
.main #solution ul li .ico {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 72px;
}
.main #solution ul li h3 {
    font-size: 24px;
    margin: 30px 0 20px;
    height: 85px;
    font-weight: 600;
}
.main #solution ul li h3 span {
    font-size: 18px;
    opacity: 0.5;
    display: block;
}
.main #review .inner {
    display: flex;
    flex-wrap: wrap;
    height: 100%;
}
.main #review .left {
    width: 32%;
    background: #428eea;
    padding-left: calc((100% - 1400px)/2);
    padding-right: 50px;
    color: #fff;
    text-align: left;
    display: flex;
    align-items: center;
}
.main #review .left .title {
    text-align: left;
    margin-bottom: 30px;
}
.main #review .left .more-btn {
    background: #fff;
    color: #428eea;
    margin-top: 120px;
}
.main #review .right {
    width: 68%;
    padding-left: 100px;
    padding-right: calc((100% - 1400px)/2);
    background: url(/img/assets/main_review_bg.jpg) center / cover no-repeat;
}
.main #review .slider-wrap {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
}
.main #review .review-slider .swiper-slide {
    background: #fff;
    border-radius: 10px;
    padding: 45px 40px 40px;
    height: 100%;
}
.main #review .review-slider .subject {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 25px;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* 라인수 */
    -webkit-box-orient: vertical;
    word-wrap:break-word;
    line-height: 1.3em;
    height: 2.6em;
    overflow: hidden;
}
.main #review .review-slider .desc {
    font-size: 16px;
    opacity: 0.8;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 6; /* 라인수 */
    -webkit-box-orient: vertical;
    word-wrap:break-word;
    line-height: 1.4em;
    height: 8.3em;
    overflow: hidden;
}
.main #review .review-slider .info {
    border-top: 1px solid #ddd;
    padding-top: 20px;
    margin-top: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.main #review .review-slider .info .name {
    font-size: 14px;
    opacity: 0.6;
}
.main #review .slider-controls {position: static;}
.main #review .prev-btn,
.main #review .next-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
}
.main #review .prev-btn {left: -25px;}
.main #review .next-btn {right: -25px;}
.main #faq .faq-wrap {
    max-width: 1200px;
    margin: 0 auto;
}
.main #faq .tab-menu {
    display: flex;
    flex-wrap: wrap;
}
.main #faq .tab-menu li {
    width: 20%;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
    height: 55px;
    line-height: 55px;
    border-radius: 10px 10px 0 0;
}
.main #faq .tab-menu li.active {
    background: #428eea;
    color: #fff;
}
.main #faq .tab-content {
    border: 1px solid #428eea;
    border-radius: 0 0 10px 10px;
    padding: 50px;
}
.main #faq .tab-content > div {
    display: none;
    flex-wrap: wrap;
    align-items: center;
}
.main #faq .tab-content > div.active {display: flex;}
.main #faq .tab-content .video-wrap,
.main #faq .tab-content .txt {width: calc((100% - 50px)/2);}
.main #faq .tab-content .txt {margin-left: 50px;}
.main #faq .tab-content .txt li {
    background: #f5f5f5;
    height: 55px;
    line-height: 55px;
    padding: 0 30px;
    margin-bottom: 20px;
    display: flex;
    font-size: 17px;
    position: relative;
}
.main #faq .tab-content .txt li:last-child {margin-bottom: 0;}
.main #faq .tab-content .txt li b {color: #428eea;}
.main #faq .tab-content .txt li span {font-weight: 500;}
.main #faq .tab-content .txt li::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
    background: url(/img/assets/arrow_right_blue.svg) center / cover no-repeat;
    width: 7px;
    height: 12px;
}
@media all and (max-width: 1400px) {
    .main #about .txt, .main #about .slider-controls {left: 30px;}
    .main #review .left {padding-left: 30px;}
    .main #review .next-btn {right: 25px;}
    #fp-nav {display: none !important;}
}
@media all and (max-width: 1200px) {
    .main .section {
        padding: 120px 0;
        height: auto !important;
    }
    .main .fp-tableCell {height: auto !important;}
    .main #about {padding: 0;}
    .main #solution ul {
        margin-bottom: -20px;
        justify-content: center;
    }
    .main #solution ul li {
        width: calc((100% - 40px)/3);
        margin-bottom: 20px;
    }
    .main #solution ul li:nth-child(3n) {margin-right: 0;}
    .main #review {padding: 0;}
    .main #review .left {
        padding-top: 120px;
        padding-bottom: 120px;
    }
    .main #footer {display: none;}
}
@media all and (max-width: 1024px) {
    .main #review .left {
        width: 100%;
        padding: 80px 30px;
        text-align: center;
        display: block;
    }
    .main #review .left .title {text-align: center;}
    .main #review .left .more-btn {margin: 30px auto 0;}
    .main #review .right {
        width: 100%;
        padding: 80px 30px;
        padding-right: 0;
    }
    .main #review .prev-btn {left: -10px;}
    .main #faq .tab-content .video-wrap, .main #faq .tab-content .txt {width: 100%;}
    .main #faq .tab-content .txt {margin: 50px 0 0;}
}
@media all and (max-width: 991px) {
    .main #about .slide-01 {background-position: center left -200px}
    .main #about .slide-03 {background-position: center left -400px}
    .main #solution ul li {width: calc((100% - 20px)/2)}
    .main #solution ul li:nth-child(3n) {margin-right: 20px;}
    .main #solution ul li:nth-child(2n) {margin-right: 0;}
}
@media all and (max-width: 767px) {
    .main .section {padding: 80px 0;}
    .main #about .slide-01 {background-image: url(/img/assets/main_about_bg_01_m.jpg); background-position: center bottom;}
    .main #about .slide-02 {background-image: url(/img/assets/main_about_bg_02_m.jpg); background-position: center bottom;}
    .main #about .slide-03 {background-image: url(/img/assets/main_about_bg_03_m.jpg); background-position: center bottom;}
    .main #about .txt {
        top: 100px;
        bottom: auto;
    }
    .main #about .txt p {font-size: 18px;}
    .main #about .txt h2 {
        font-size: 30px;
        margin-bottom: 30px;
    }
    .main #about .slider-controls {bottom: 20px;}
    .main #problem ul li {width: calc((100% - 40px) / 2);}
    .main #problem ul li .txt h3 {
        font-size: 18px;
        margin-bottom: 10px;
    }
    .main #problem ul li .txt .desc {
        font-size: 14px;
        line-height: 1.4;
    }
    .main #solution ul li {
        width: 100%;
        margin: 0 0 15px !important;
    }
    .main #solution ul li:last-child {margin-bottom: 0 !important;}
    .main #solution ul li .number {
        height: 40px;
        line-height: 40px;
        font-size: 16px;
        margin-bottom: 20px;
    }
    .main #solution ul li h3 {
        font-size: 20px;
        margin: 20px 0 12px;
        height: auto;
    }
    .main #solution ul li h3 span {font-size: 16px;}
    .main #review .left {padding: 50px 15px;}
    .main #review .right {
        padding: 50px 15px;
        padding-right: 0;
    }
    .main #review .review-slider .swiper-slide {padding: 30px;}
    .main #review .review-slider .subject {
        font-size: 20px;
        margin-bottom: 15px;
    }
    .main #review .review-slider .desc {font-size: 15px;}
    .main #review .review-slider .info {
        padding-top: 10px;
        margin-top: 20px;
    }
    .main #review .prev-btn, .main #review .next-btn {width: 36px; height: 36px;}
    .main #review .prev-btn {left: -5px;}
    .main #review .next-btn {right: 10px;}
    .main #faq .tab-menu li {
        font-size: 16px;
        height: auto;
        line-height: 1.3;
        padding: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .main #faq .tab-content {padding: 20px;}
    .main #faq .tab-content .txt {margin-top: 20px;}
    .main #faq .tab-content .txt li {
        height: auto;
        line-height: 1.3;
        padding: 10px 15px;
        margin-bottom: 10px;
        font-size: 16px;
    }
    .main #faq .tab-content .txt li::after {right: 15px;}
    .main #faq .tab-content .txt li a {padding-right: 30px;}
}
@media all and (max-width: 480px) {
    .main #faq .tab-menu li {
        font-size: 14px;
        word-break: keep-all;
    }
    .main #faq .tab-content .txt li a {font-size: 15px;}
}
@media all and (max-width: 390px) {
    .main #problem ul li .txt h3 {font-size: 16px;}
    .main #problem ul li .txt .desc {font-size: 12px;}
}

/*서브 공통*/
.sub section {padding: 120px 0;}
.sub .title {margin-bottom: 70px;}
.sub-category {
    background: #eee;
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    margin-bottom: 120px;
}
.sub-category li {flex: 1;}
.sub-category li a {
    display: block;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    height: 60px;
    line-height: 60px;
    transition: all .3s;
}
.sub-category li a:hover {color: #113158;}
.sub-category li.active a {
    background: #113158;
    color: #fff;
    border-radius: 10px;
}
@media all and (max-width: 767px) {
    .sub section {padding: 60px 0;}
    .sub .title {margin-bottom: 30px;}
    .sub-category {margin-bottom: 40px;}
    .sub-category li a {
        font-size: 15px;
        line-height: 1.4;
        padding: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
    }
}

/*어떻게 준비하나요?*/
.sub-prepare .process {background: #f5f5f5;}
.sub-prepare .process ul {
    display: flex;
    flex-wrap: wrap;
}
.sub-prepare .process ul li {
    width: calc((100% - 300px)/6);
    margin-right: 60px;
    border-radius: 10px;
    background: #fff;
    padding: 40px 20px 45px;
    box-shadow: 0 5px 10px rgba(0,0,0,0.1);
    text-align: center;
    position: relative;
}
.sub-prepare .process ul li:last-child {margin-right: 0;}
.sub-prepare .process ul li::after {
    content: "";
    background: url(/img/assets/arrow_process.svg) center / cover no-repeat;
    display: block;
    width: 28px;
    height: 14px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -44px;
}
.sub-prepare .process ul li:last-child::after {content: none;}
.sub-prepare .process ul li .ico {
    margin: 0 auto;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sub-prepare .process ul li .step {
    font-size: 16px;
    font-weight: bold;
    color: #428eea;
    margin: 35px 0 12px;
}
.sub-prepare .process ul li p {
    font-size: 21px;
    font-weight: 600;
}
.sub-prepare .service ul {
    max-width: 1000px;
    margin: 0 auto;
}
.sub-prepare .service ul li {
    padding: 0 50px;
    border: 2px dashed transparent;
}
.sub-prepare .service ul li .inner {
    border-bottom: 1px solid #ddd;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 30px 0;
}
.sub-prepare .service ul li .number {
    width: 36px;
    height: 36px;
    border-radius: 5px;
    background: #3d3a36;
    text-align: center;
    line-height: 34px;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
}
.sub-prepare .service ul li h3 {
    width: 200px;
    font-size: 24px;
    padding: 0 12px;
}
.sub-prepare .service ul li .desc {
    width: calc(100% - 296px);
    border-left: 1px solid #ddd;
    padding: 0 40px;
}
.sub-prepare .service ul li a {
    width: 60px;
    font-size: 15px;
    color: #428eea;
    display: flex;
    align-items: center;
    justify-content: right;
}
.sub-prepare .service ul li a b {margin-right: 8px;}
.sub-prepare .service ul li.blue {background: #f5f7fb;}
.sub-prepare .service ul li.blue .number {background: #428eea;}
.sub-prepare .service ul li.blue:first-child {
    border-color: #428eea;
    border-bottom: none;
    border-radius: 10px 10px 0 0;
}
.sub-prepare .service ul li.blue:nth-child(2) {
    border-right-color: #428eea;
    border-left-color: #428eea;
}
.sub-prepare .service ul li.blue:nth-child(3) {
    border-color: #428eea;
    border-top: none;
    border-radius: 0 0 10px 10px;
}
.sub-prepare .service ul li.blue:nth-child(3) .inner {border-bottom: none;}
.sub-prepare .service .btn-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin-top: 80px;
}
.sub-prepare .service .btn-wrap a {
    max-width: 350px;
    width: 100%;
    height: 70px;
    line-height: 70px;
    border-radius: 70px;
    font-size: 20px;
}
.sub-prepare .service .btn-wrap a:first-child {
    background: #3d3a36;
    margin-right: 30px;
}
@media all and (max-width: 1200px) {
    .sub-prepare .process ul li {
        width: calc((100% - 120px)/3);
        margin-bottom: 40px;
    }
    .sub-prepare .process ul li:nth-child(3n) {margin-right: 0;}
    .sub-prepare .process ul li:nth-child(3n)::after {content: none;}
}
@media all and (max-width: 767px) {
    .sub-prepare .process ul li {
        width: calc((100% - 30px) / 2);
        margin-right: 30px;
        margin-bottom: 20px;
        padding: 30px 15px;
    }
    .sub-prepare .process ul li:nth-child(3n) {margin-right: 30px;}
    .sub-prepare .process ul li:nth-child(3n)::after {content: ""}
    .sub-prepare .process ul li:nth-child(2n) {margin-right: 0;}
    .sub-prepare .process ul li:nth-child(2n)::after {content: none;}
    .sub-prepare .process ul li::after {
        width: 20px;
        height: 10px;
        right: -25px;
    }
    .sub-prepare .process ul li .step {
        font-size: 14px;
        margin: 20px 0 10px;
    }
    .sub-prepare .process ul li p {font-size: 18px;}
    .sub-prepare .service ul li {padding: 0 20px;}
    .sub-prepare .service ul li .inner {padding: 20px 0;}
    .sub-prepare .service ul li .number {
        width: 30px;
        height: 30px;
        line-height: 28px;
        font-size: 16px;
    }
    .sub-prepare .service ul li h3 {
        width: auto;
        font-size: 20px;
        padding: 0 10px;
    }
    .sub-prepare .service ul li .desc {
        width: 100%;
        padding: 10px 0 0;
        border: none;
    }
    .sub-prepare .service ul li a {
        width: 100%;
        font-size: 14px;
        margin-top: 5px;
    }
    .sub-prepare .service .btn-wrap {margin-top: 30px;}
    .sub-prepare .service .btn-wrap a {
        height: 50px;
        line-height: 50px;
        font-size: 16px;
        display: block;
    }
    .sub-prepare .service .btn-wrap a:first-child {margin: 0 0 15px;}
}

/*서비스 소개*/
.sub-service .intro {padding-bottom: 0;}
.sub-service .intro .sub-category {margin: 120px 0 0;}
.sub-service .about ul {
    display: flex;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto -20px;
}
.sub-service .about ul li {
    width: calc((100% - 20px)/2);
    margin-right: 20px;
    margin-bottom: 20px;
    background: #f5f7fb;
    border-radius: 10px;
    padding: 70px 50px;
    text-align: center;
}
.sub-service .about ul li:nth-child(2n) {margin-right: 0;}
.sub-service .about ul li h3 {
    font-size: 30px;
    line-height: 1.4;
    word-break: keep-all;
}
.sub-service .about ul li h3 span {color: #428eea;}
.sub-service .about ul li .ico {
    background: #fff;
    width: 140px;
    height: 140px;
    border-radius: 140px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 30px auto 35px;
}
.sub-service .network ul {
    display: flex;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
}
.sub-service .network ul li {
    width: 25%;
    height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
}
.sub-service .network ul li img {
    max-width: 250px;
    max-height: 80px;
}
.sub-service .network .more-btn {
    height: 70px;
    width: 100%;
    max-width: 350px;
    margin: 80px auto 0;
    font-size: 20px;
    transition: all .3s;
}
.sub-service .network .more-btn:hover {background: #0079d2;}

.sub-air .price {
    background: url(/img/assets/air_price_bg.jpg) center / cover no-repeat;
    text-align: center;
}
.sub-air .price .title {color: #fff;}
.sub-air .price .box-txt {
    font-size: 36px;
    display: inline-block;
    border-radius: 10px;
    padding: 0 15px 5px;
    font-weight: bold;
    background: #fff;
    margin-bottom: 40px;
}
.sub-air .price .box-txt span {color: #428eea;}
.sub-air .price .top-area {}
.sub-air .price .top-area table {
    width: 100%;
    color: #fff;
    font-weight: bold;
    border-collapse: collapse;
    box-sizing: border-box;
}
.sub-air .price .top-area table th {
    background: #2c2e34;
    padding: 15px;
    font-size: 20px;
    width: 25%;
}
.sub-air .price .top-area table td {
    background: #464952;
    font-size: 24px;
    padding: 30px 15px;
    width: 25%;
    color: #fff;
}
.sub-air .price .top-area table .bg {
    background: #f68f28;
    border: 8px solid #f68f28;
}
.sub-air .price .top-area table td .box {
    background: #fff;
    display: inline-block;
    padding: 0 30px 5px;
    border-radius: 60px;
}
.sub-air .price .top-area table td .box b {
    font-size: 40px;
    color: #111;
}
.sub-air .price .top-area table td .box span {
    font-size: 20px;
    color: #595c66;
}
.sub-air .price .top-area table th:first-child {border-radius: 10px 0 0 0;}
.sub-air .price .top-area table th:last-child {border-radius: 0 10px 0 0;}
.sub-air .price .top-area table td:first-child {border-radius: 0 0 0 10px;}
.sub-air .price .top-area table td:last-child {border-radius: 0 0 10px 0;}

.sub-air .price .bottom-area {margin-top: 30px;}
.sub-air .price .bottom-area table {
    width: 100%;
    font-weight: bold;
    border-collapse: collapse;
    box-sizing: border-box;
    font-size: 18px;
}
.sub-air .price .bottom-area table th {
    background: #d9e2ee;
    width: 25%;
    padding: 12px;
    border-bottom: 1px solid rgba(0,0,0,0.1);
    color: #111;
}
.sub-air .price .bottom-area table td {
    background: #fff;
    width: 25%;
    color: #666;
    padding: 12px;
    border-bottom: 1px solid rgba(0,0,0,0.1);
}
.sub-air .price .bottom-area table td.border {
    border-left: 8px solid #f68f28;
    border-right: 8px solid #f68f28;
    font-size: 24px;
    color: #111;
}
.sub-air .price .bottom-area table tr:first-child td.border {border-top: 8px solid #f68f28;}
.sub-air .price .bottom-area table tr:last-child td.border {border-bottom: 8px solid #f68f28;}
.sub-air .price .bottom-area table td.border img {width: 30px;}
.sub-air .price .bottom-area table tr:first-child th {border-radius: 10px 0 0 0;}
.sub-air .price .bottom-area table tr:first-child td:last-child {border-radius: 0 10px 0 0;}
.sub-air .price .bottom-area table tr:last-child th {border-radius: 0 0 0 10px;}
.sub-air .price .bottom-area table tr:last-child td:last-child {border-radius: 0 0 10px 0;}

.sub-ocean .about {padding-bottom: 0;}
.sub-ocean .about ul li h3 {min-height: 85px;}

.sub-storage .recommend {
    padding-bottom: 0;
    overflow: hidden;
}
.sub-storage .recommend .box-wrap {
    border: 2px dashed #428eea;
    border-radius: 10px;
    padding: 0 50px 50px;
    max-width: 1100px;
    margin: 0 auto;
    position: relative;
    background: #fff;
}
.sub-storage .recommend .box-wrap h3 {
    font-size: 36px;
    font-style: italic;
    background: #fff;
    padding: 0 20px;
    margin: -25px auto 50px;
    width: fit-content;
    text-align: center;
}
.sub-storage .recommend .box-wrap h3 span {color: #428eea;}
.sub-storage .recommend .box-wrap ul li {
    background: #f8f8f8;
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 20px 40px;
    margin-bottom: 20px;
}
.sub-storage .recommend .box-wrap ul li:last-child {margin-bottom: 0;}
.sub-storage .recommend .box-wrap ul li .ico {
    width: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sub-storage .recommend .box-wrap ul li .number {
    background: #428eea;
    width: 42px;
    height: 42px;
    border-radius: 10px;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    margin-left: 35px;
    margin-right: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sub-storage .recommend .box-wrap ul li p {
    font-size: 24px;
    font-weight: bold;
    width: calc(100% - 177px);
    word-break: keep-all;
}
.sub-storage .recommend .box-wrap .img-wrap > div {
    position: absolute;
    bottom: 10px;
    z-index: -1;
}
.sub-storage .recommend .box-wrap .img-wrap .img-01 {left: -360px;}
.sub-storage .recommend .box-wrap .img-wrap .img-02 {right: -380px;}
@media all and (max-width: 767px) {
    .sub-service .intro .sub-category {margin-top: 40px;}
    .sub-service .about ul li {
        width: 100%;
        margin-right: 0;
        margin-bottom: 15px;
        padding: 30px 20px;
    }
    .sub-service .about ul li h3 {font-size: 20px;}
    .sub-service .about ul li .ico {
        width: 80px;
        height: 80px;
        margin: 15px auto 20px;
    }
    .sub-service .about ul li .ico img {
        max-width: 55px;
        max-height: 55px;
    }
    .sub-service .network ul li {
        width: 50%;
        height: 100px;
    }
    .sub-service .network ul li img {
        max-width: 120px;
        max-height: 50px;
    }
    .sub-service .network .more-btn {
        height: 50px;
        margin-top: 30px;
        font-size: 16px;
    }
    .sub-air .price .box-txt {
        font-size: 20px;
        margin-bottom: 30px;
    }
    .sub-air .price .top-area table th {
        font-size: 15px;
        padding: 8px;
    }
    .sub-air .price .top-area table th img {width: 80px;}
    .sub-air .price .top-area table td {
        font-size: 15px;
        padding: 8px;
    }
    .sub-air .price .top-area table td b {font-size: 16px;}
    .sub-air .price .top-area table td .box {
        padding: 0 10px 5px;
        border-radius: 10px;
    }
    .sub-air .price .top-area table td .box b {font-size: 20px;}
    .sub-air .price .top-area table td .box span {
        font-size: 15px;
        display: block;
    }
    .sub-air .price .bottom-area table {font-size: 15px;}
    .sub-air .price .bottom-area table th {padding: 8px;}
    .sub-air .price .bottom-area table td {padding: 8px;}
    .sub-air .price .bottom-area table td img {width: 18px;}
    .sub-air .price .bottom-area table td.border {font-size: 16px;}
    .sub-air .price .bottom-area table td.border img {width: 24px;}
    .sub-ocean .about ul li h3 {min-height: auto;}
    .sub-storage .recommend .box-wrap {padding: 0 20px 30px;}
    .sub-storage .recommend .box-wrap h3 {
        font-size: 24px;
        margin: -20px auto 20px;
        padding: 0 10px;
    }
    .sub-storage .recommend .box-wrap ul li {
        padding: 20px;
        margin-bottom: 15px;
        text-align: center;
    }
    .sub-storage .recommend .box-wrap ul li .ico {width: 100%;}
    .sub-storage .recommend .box-wrap ul li .ico img {
        max-width: 55px;
        max-height: 55px;
    }
    .sub-storage .recommend .box-wrap ul li .number {
        width: 36px;
        height: 36px;
        font-size: 16px;
        margin: 20px auto 10px;
    }
    .sub-storage .recommend .box-wrap ul li p {
        width: 100%;
        font-size: 18px;
    }
}

/*카카오톡 상담*/
.sub-kakao ul {
    display: flex;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto;
}
.sub-kakao ul li {
    width: calc((100% - 60px)/3);
    margin-right: 30px;
    text-align: center;
    border: 1px solid #ddd;
    border-radius: 10px;
    overflow: hidden;
    padding: 0 30px 40px;
}
.sub-kakao ul li:last-child {margin-right: 0;}
.sub-kakao ul li .number {
    background: #428eea;
    width: 40px;
    height: 50px;
    line-height: 50px;
    border-radius: 0 0 5px 5px;
    margin: 0 auto 30px;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
}
.sub-kakao ul li h3 {
    font-size: 24px;
    margin: 25px 0;
    font-weight: 600;
}
.sub-kakao ul li p {font-size: 16px;}
.sub-kakao ul li .qr {
    width: 150px;
    height: 150px;
    border-radius: 10px;
    border: 1px solid #ddd;
    margin: 20px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sub-kakao ul li .talk-id {
    font-size: 24px;
    font-weight: bold;
    color: #428eea;
    text-decoration: underline;
    margin-top: 50px;
}
.sub-kakao ul li .more-btn {
    width: 100%;
    max-width: 200px;
    height: 50px;
    margin: 50px auto 0;
}
@media all and (max-width: 767px) {
    .sub-kakao ul li {
        width: 100%;
        margin: 0 0 15px;
        padding: 0 20px 30px;
    }
    .sub-kakao ul li .number {
        height: 40px;
        line-height: 40px;
        font-size: 16px;
        margin-bottom: 20px;
    }
    .sub-kakao ul li h3 {
        font-size: 20px;
        margin: 20px 0 15px;
    }
    .sub-kakao ul li p {word-break: keep-all;}
    .sub-kakao ul li .talk-id {
        font-size: 20px;
        margin-top: 20px;
    }
    .sub-kakao ul li .more-btn {margin-top: 20px;}
}

/*신청/견적*/
.sub-apply .title {margin-bottom: 45px;}
.sub-apply .inner {
    display: flex;
    flex-wrap: wrap;
    align-items: start;
}
.sub-apply .inner .left {
    width: calc(100% - 330px);
    margin-right: 30px;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 50px;
}
.sub-apply .inner .right {
    position: sticky;
    top: 130px;
    width: 300px;
    border: 1px solid #428eea;
    border-radius: 10px;
    background: #f6f8fc;
    padding: 30px;
    align-self: flex-start;
}
.sub-apply .indicator {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin-bottom: 70px;
}
.sub-apply .indicator li {
    display: flex;
    align-items: center;
}
.sub-apply .indicator li::after {
    content: "";
    background: url(/img/assets/arrow_right_black.svg) center / cover no-repeat;
    width: 8px;
    height: 14px;
    display: block;
    margin: 0 25px;
}
.sub-apply .indicator li:last-child::after {content: none;}
.sub-apply .indicator li .number {
    width: 28px;
    height: 28px;
    line-height: 28px;
    text-align: center;
    border-radius: 8px;
    background: #c4c9d7;
    font-size: 14px;
    font-weight: bold;
    color: #fff;
}
.sub-apply .indicator li b {
    font-size: 18px;
    opacity: 0.5;
    padding-left: 10px;
    margin-top: -3px;
    cursor: pointer;
}
.sub-apply .indicator li.active .number {background: #428eea;}
.sub-apply .indicator li.active b {opacity: 1;}
.sub-apply .form-wrap > li {margin-bottom: 50px;}
.sub-apply .form-wrap > li:last-child {margin-bottom: 0;}
.sub-apply .form-label {
    font-size: 18px;
    font-weight: 600;
    display: block;
    margin-bottom: 15px;
}
.sub-apply .form-label span {
    font-size: 15px;
    color: #666;
    font-weight: normal;
}
.sub-apply .form-input {
    width: 100%;
    height: 50px;
    border: 1px solid #ccc;
    padding: 0 20px;
    font-size: 18px;
}
.sub-apply .form-input::placeholder {color: rgba(0,0,0,0.3)}
.sub-apply .radio-group {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -10px;
}
.sub-apply .radio-group > div {
    width: calc((100% - 10px)/2);
    margin-right: 10px;
    margin-bottom: 10px;
}
.sub-apply .radio-group > div:nth-child(2n),
.sub-apply .radio-group > div:last-child {margin-right: 0;}
.sub-apply .radio-group input {
    overflow: hidden;
    display: none;
    width: 0px;
    height: 0px;
    border: 0 none;
    font-size: 0;
    line-height: 0;
    clip: rect(0 0 0 0);
    opacity: 0;
}
.sub-apply .radio-group input + label {
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 15px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    color: rgba(0,0,0,0.4);
    cursor: pointer;
    transition: all .3s;
    box-sizing: border-box;
    height: 100%;
}
.sub-apply .radio-group input + label .ico {
    opacity: 0.4;
    transition: all .3s;
}
.sub-apply .radio-group input + label b {margin-left: 8px;}
.sub-apply .radio-group input + label span {
    font-size: 16px;
    color: #666;
    font-weight: normal;
    margin-left: 3px;
}
.sub-apply .radio-group input + label b span {
    font-size: 20px;
    font-weight: 600;
    color: #428eea;
    opacity: 0.4;
}
.sub-apply .radio-group input + label .desc {
    font-size: 16px;
    display: block;
    margin-top: 5px;
    color: #111;
    opacity: 0.4;
}
.sub-apply .radio-group input + label:hover {color: #111;}
.sub-apply .radio-group input:checked + label {
    border: 1px solid #428eea;
    outline: 1px solid #428eea;
    color: #111;
}
.sub-apply .radio-group input + label:hover .ico,
.sub-apply .radio-group input:checked + label .ico {opacity: 1;}
.sub-apply .radio-group input + label:hover b span,
.sub-apply .radio-group input:checked + label b span {opacity: 1;}
.sub-apply .radio-group input + label:hover .desc,
.sub-apply .radio-group input:checked + label .desc {opacity: 1;}
.sub-apply .size-group {margin-top: 40px;}
.sub-apply .size-group .top {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
}
.sub-apply .size-group .top > div {margin-right: 20px;}
.sub-apply .size-group .top > div:last-child {margin-right: 0;}
.sub-apply .size-group .top .form-label {
    font-size: 16px;
    margin-bottom: 6px;
}
.sub-apply .size-group .top .form-input {
    max-width: 160px;
    padding: 0 15px;
    height: 42px;
    font-size: 16px;
}
.sub-apply .size-group .top .add-btn {
    width: 80px;
    height: 42px;
    line-height: 42px;
    border-radius: 42px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
    transition: all .3s;
    border: none;
    background: #428eea;
}
.sub-apply .size-group .top .add-btn:hover {background: #0079d2;}
.sub-apply .size-group .bottom {margin-top: 30px;}
.sub-apply .input-group input {margin-right: 5px;}
.sub-apply .input-group input:last-child {margin-right: 0;}
.sub-apply .address-group {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -10px;
}
.sub-apply .address-group .form-input {margin-bottom: 10px;}
.sub-apply .address-group .half-input {
    width: calc((100% - 10px)/2);
    margin-right: 10px;
}
.sub-apply .address-group .no-margin {margin-right: 0;}
.sub-apply .address-group select.form-input {
    background-color: #fff;
    background-image: url(/img/assets/arrow_bottom_blue.svg);
    background-repeat: no-repeat;
    background-position: center right 15px;
    background-size: 14px 8px;
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
}

.sub-apply .form-list {border-top: 2px solid #111;}
.sub-apply .form-list > div {border-bottom: 1px solid #ddd;}
.sub-apply .form-list .recommend {position: relative;}
.sub-apply .form-list .recommend::after {
    content: "";
    background: url(/img/assets/badge_recommend.svg) center / cover no-repeat;
    width: 40px;
    height: 34px;
    display: inline-block;
    position: absolute;
    top: -15px;
    right: -50px;
    animation: recommend 0.5s ease-in-out 0s infinite alternate;
}
@keyframes recommend {
    0% {transform: translateY(-2px)}
    100% {transform: translateY(2px)}
}
.sub-apply .form-list .subject {
    padding: 25px 30px;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    cursor: pointer;
}
.sub-apply .form-list .subject .arrow {
    width: 36px;
    text-align: center;
}
.sub-apply .form-list .subject .arrow img {transition: all .3s;}
.sub-apply .form-list .active .subject .arrow img {transform: rotate(180deg)}
.sub-apply .form-list .subject .name {
    width: calc(100% - 120px);
    font-size: 18px;
    font-weight: 600;
    padding: 0 15px;
}
.sub-apply .form-list .subject .name span {
    font-size: 16px;
    color: #666;
    font-weight: normal;
}
.sub-apply .form-list .subject .price {
    width: 84px;
    font-size: 18px;
    color: #428eea;
    font-weight: bold;
    text-align: right;
}
.sub-apply .form-list .content {
    display: none;
    position: relative;
    background: #f6f8fc;
}
.sub-apply .form-list .content .padding {
    padding: 30px;
    min-height: 100px;
}
.sub-apply .form-list .content select.form-input {
    border: none;
    width: 120px;
    height: 36px;
    border-radius: 36px;
    -webkit-appearance:none; /* for chrome */
    -moz-appearance:none; /*for firefox*/
    appearance:none;
    background-color: #fff;
    background-image: url("/img/assets/arrow_bottom_blue.svg");
    background-repeat: no-repeat;
    background-position: center right 15px;
    background-size: 14px 8px;
}
.sub-apply .form-list .content .note {color: #428eea;}
.sub-apply .form-list .quantity {font-size: 18px;}
.sub-apply .form-list .quantity > div {margin-bottom: 10px;}
.sub-apply .form-list .price-wrap {
    display: flex;
    align-items: center;
    position: absolute;
    top: 30px;
    right: 30px;
}
.sub-apply .form-list .price-wrap .form-label {
    font-size: 16px;
    color: #666;
    font-weight: normal;
    width: auto;
    display: inline-block;
    margin: 0;
    margin-right: 10px;
}
.sub-apply .form-list .price-wrap .quantity {margin-right: 30px;}
.sub-apply .form-list .price-wrap .price {
    display: flex;
    align-items: center;
}
.sub-apply .form-list .price-wrap .price b {
    font-size: 18px;
    font-weight: 600;
}
.sub-apply .delete-btn {
    background: none;
    border: none;
    font-size: 0;
}
.sub-apply .delete-btn img {width: 16px; height: 16px;}
.sub-apply .box-wrap {
    background: #f6f8fc;
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
}
.sub-apply .box-wrap > div {
    width: 50%;
    padding: 40px;
    text-align: center;
}
.sub-apply .box-wrap > div:first-child {border-right: 1px solid #e0e4ed;}
.sub-apply .box-wrap input {display: none;}
.sub-apply .box-wrap .flatpickr-calendar {margin: 0 auto;}
.sub-apply .note {
    font-size: 15px;
    color: #666;
    margin-top: 15px;
}
.sub-apply .btn-group {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 80px;
}
.sub-apply .btn-group .btn {
    border-radius: 55px;
    padding: 0 30px;
    font-weight: bold;
    background: #428eea;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: all .3s;
    height: 60px;
    width: 100%;
    max-width: 350px;
    font-size: 18px;
    border: none;
}
.sub-apply .btn-group .back-btn {
    background: #595c66;
    margin-bottom: 10px;
}
.sub-apply .btn-group .submit-btn img {margin-right: 10px;}
.sub-apply .btn-group .submit-btn:hover {background: #0079d2; cursor:pointer}
.sub-apply .right .price li {margin-bottom: 20px;}
.sub-apply .right .price li:last-child {margin-bottom: 0;}
.sub-apply .right .price li h4 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 5px;
}
.sub-apply .right .price li h4 span {
    font-size: 16px;
    font-weight: normal;
    color: #666;
}
.sub-apply .right .price li p {
    text-align: right;
    font-size: 20px;
    font-weight: bold;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.sub-apply .right .price li p.blue {font-size: 24px;}
.sub-apply .right .price li p b {margin-left: auto;}
.sub-apply .right .price li p span {
    font-size: 14px;
    font-weight: normal;
    color: #666;
}
.sub-apply .right .btn-group {margin-top: 30px;}
.sub-apply .right .btn-group  {margin-top: 30px;}

.sub-apply .step0 {
    max-width: 960px;
    margin: 0 auto;
}
.sub-apply .step0 .radio-group input + label .ico {
    border: 1px solid #ddd;
    border-radius: 40px;
}
.sub-apply .step0 .btn-group .btn {
    height: 70px;
    font-size: 20px;
}
.sub-apply .step0 .agree-group {
    margin-top: 20px;
    font-size: 16px;
}
.sub-apply .step0 .agree-group > div {margin-bottom: 5px;}
.sub-apply .step0 .agree-group > div:last-child {margin-bottom: 0;}
.sub-apply .step0 .agree-group input[type=checkbox] {width: 16px; height: 16px;}
.sub-apply .step0 .agree-group input[type=checkbox] + label {
    cursor: pointer;
    padding-left: 5px;
}

.sub-apply .step1 .radio-group > div {width: calc((100% - 20px)/3);}
.sub-apply .step1 .radio-group > div:nth-child(2n) {margin-right: 10px;}
.sub-apply .step1 .radio-group input + label,
.sub-apply .step3 .radio-group input + label {padding: 30px 15px;}
.sub-apply .step1 .radio-group input + label .ico,
.sub-apply .step3 .radio-group input + label .ico {
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sub-apply .step1 .radio-group input + label b,
.sub-apply .step3 .radio-group input + label b {
    display: block;
    width: 100%;
    margin: 10px 0 0;
}
.sub-apply .step2 .form-list .subject .name,
.sub-apply .step4 .form-list .subject .name {
    width: calc(100% - 84px);
    padding-left: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.sub-apply .step2 .form-list .subject {padding: 0;}
.sub-apply .step2 .form-list .subject input {
    overflow: hidden;
    display: none;
    width: 0px;
    height: 0px;
    border: 0 none;
    font-size: 0;
    line-height: 0;
    clip: rect(0 0 0 0);
    opacity: 0;
}
.sub-apply .step2 .form-list .subject input + label {
    padding: 30px;
    width: 100%;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    cursor: pointer;
}
.sub-apply .step2 .form-list .subject .check .ico {
    width: 36px;
    height: 36px;
    border-radius: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ecf0f6;
    cursor: pointer;
}
.sub-apply .step2 .form-list .subject .check svg {width: 13px; height: 8px;}
.sub-apply .step2 .form-list .subject .check .color {
    fill: none;
    stroke: #ddd;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.5px;
}
.sub-apply .step2 .form-list .subject input:checked + label .ico {background: #428eea;}
.sub-apply .step2 .form-list .subject input:checked + label .ico .color {stroke: #fff;}
.sub-apply .step2 .form-list .subject .name b {
    width: calc(100% - 36px);
    padding-left: 15px;
}

.sub-apply .step4 .form-list .subject {cursor: default;}
.sub-apply .step4 .form-list .subject .name b {width: 150px;}
.sub-apply .step4 .form-list .subject .name .option-list {
    width: calc(100% - 150px);
    display: flex;
    align-items: center;
}
.sub-apply .step4 .form-list .subject .name .option-list li {
    font-size: 16px;
    color: #777;
    font-weight: normal;
}
.sub-apply .step4 .form-list .subject .name .option-list li::after {
    content: "";
    background: #ddd;
    width: 1px;
    height: 12px;
    display: inline-block;
    margin: 0 10px;
}
.sub-apply .step4 .form-list .subject .name .option-list li:last-child::after {content: none;}

@media all and (max-width: 1200px) {
    .sub-apply .indicator li .number {
        width: 20px;
        height: 20px;
        line-height: 20px;
        font-size: 12px;
    }
    .sub-apply .indicator li b {font-size: 14px;}
    .sub-apply .indicator li::after {
        width: 5px;
        height: 10px;
        margin: 0 12px;
    }
}
@media all and (max-width: 1024px) {
    .sub-apply .inner .left {
        width: 100%;
        margin: 0 0 30px;
    }
    .sub-apply .inner .right {
        width: 100%;
        position: static;
    }
    .sub-apply .btn-group .back-btn {margin-right: 10px;}
    .sub-apply .size-group .top > div {
        width: 100%;
        margin-right: 0;
        margin-bottom: 10px;
    }
    .sub-apply .size-group .top .form-input {width: calc((100% - 10px)/3);}
    .sub-apply .size-group .top .add-btn {width: 100%;}
}
@media all and (max-width: 767px) {
    .sub-apply .inner .left {
        padding: 20px;
        margin-bottom: 15px;
    }
    .sub-apply .inner .right {padding: 20px;}
    .sub-apply .indicator {display: none;}
    .sub-apply .title {margin-bottom: 20px;}
    .sub-apply .form-wrap > li {margin-bottom: 30px;}
    .sub-apply .form-label {
        font-size: 15px;
        margin-bottom: 10px;
    }
    .sub-apply .form-label span {
        display: block;
        font-size: 14px;
    }
    .sub-apply .form-input {
        font-size: 16px;
        padding: 0 12px;
    }
    .sub-apply .radio-group input + label {
        padding: 12px;
        font-size: 16px;
        word-break: keep-all;
    }
    .sub-apply .radio-group input + label b span {
        font-size: 16px;
        display: block;
    }
    .sub-apply .radio-group input + label span {
        font-size: 14px;
        margin: 3px 0 0;
        width: 100%;
    }
    .sub-apply .radio-group input + label .desc {font-size: 14px;}
    .sub-apply .form-list .quantity {font-size: 16px;}
    .sub-apply .form-list .quantity > div {word-break: keep-all}
    .sub-apply .form-list .subject {padding: 15px 5px;}
    .sub-apply .form-list .subject .arrow {width: 24px;}
    .sub-apply .form-list .subject .arrow > img {width: 12px;}
    .sub-apply .form-list .subject .name {
        width: calc(100% - 74px);
        font-size: 16px;
        padding: 0 10px;
    }
    .sub-apply .form-list .subject .name span {font-size: 14px;}
    .sub-apply .form-list .subject .price {
        font-size: 16px;
        width: 50px;
    }
    .sub-apply .form-list .content .padding {
        padding: 15px;
        display: flex;
        flex-wrap: wrap;
    }
    .sub-apply .form-list .content select.form-input {
        width: 80px;
        height: 30px;
    }
    .sub-apply .form-list .desc {
        width: 100%;
        order: 1;
    }
    .sub-apply .form-list .price-wrap {
        width: 100%;
        order: 3;
        position: static;
        margin-top: 20px;
        justify-content: space-between;
    }
    .sub-apply .form-list .price-wrap .form-label {font-size: 14px;}
    .sub-apply .form-list .price-wrap .quantity {
        font-size: 16px;
        margin-right: 0;
    }
    .sub-apply .form-list .recommend::after {
        width: 30px;
        height: 25px;
        top: -5px;
        right: -30px;
    }
    .sub-apply .form-list .quantity .recommend::after {
        top: auto;
        bottom: 0;
    }
    .sub-apply .note {font-size: 14px}
    .sub-apply .size-group {
        margin-top: 30px;
        order: 2;
        width: 100%;
    }
    .sub-apply .size-group .top .form-label {
        font-size: 15px;
        width: 100%;
    }
    .sub-apply .size-group .top .form-input {
        font-size: 15px;
        padding: 0 12px;
    }
    .sub-apply .size-group .top .add-btn {
        height: 32px;
        line-height: 32px;
        font-size: 15px;
    }
    .sub-apply .size-group .bottom {margin-top: 20px;}
    .sub-apply .size-group .bottom .table-wrap {
        width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
        padding-bottom: 15px;
    }
    .sub-apply .size-group .bottom .table-wrap::-webkit-scrollbar {height: 6px;}
    .sub-apply .size-group .bottom .table-wrap::-webkit-scrollbar-thumb {background-color: #428eea; border-radius: 6px;}
    .sub-apply .size-group .bottom .table-wrap::-webkit-scrollbar-track {background-color: #ddd; border-radius: 6px;}
    .sub-apply .size-group .bottom .table-wrap table {width: 500px;}
    .sub-apply .form-list > div:last-child .price-wrap .price {
        text-align: right;
        justify-content: right;
        width: 100%;
    }
    .sub-apply .input-group {display: flex;}
    .sub-apply .btn-group {margin-top: 30px;}
    .sub-apply .btn-group .btn {
        height: 50px;
        font-size: 16px;
        padding: 0 15px;
    }

    .sub-apply .right .price li {margin-bottom: 10px;}
    .sub-apply .right .price li h4 {font-size: 15px;}
    .sub-apply .right .price li h4 span {font-size: 14px;}
    .sub-apply .right .price li p {font-size: 18px;}
    .sub-apply .right .price li p.blue {font-size: 20px;}
    .sub-apply .right .btn-group {
        margin-top: 20px;
        display: flex;
    }
    .sub-apply .right .btn-group .btn {
        width: calc((100% - 10px)/2);
    }

    .sub-apply .step0 .agree-group {font-size: 14px;}
    .sub-apply .step0 .btn-group .btn {
        height: 50px;
        font-size: 16px;
    }
    .sub-apply .step1 .radio-group input + label,
    .sub-apply .step3 .radio-group input + label {padding: 15px;}
    .sub-apply .step1 .radio-group input + label .ico,
    .sub-apply .step3 .radio-group input + label .ico {height: 50px;}
    .sub-apply .step1 .radio-group input + label .ico img,
    .sub-apply .step3 .radio-group input + label .ico img {
        max-width: 50px;
        max-height: 50px;
    }

    .sub-apply .step2 .form-list .subject .check .ico {
        width: 24px;
        height: 24px;
    }
    .sub-apply .step2 .form-list .subject .name,
    .sub-apply .step4 .form-list .subject .name {width: calc(100% - 50px)}
    .sub-apply .step2 .form-list .subject .name b {
        width: calc(100% - 24px);
        padding-left: 10px;
    }
    .sub-apply .step2 .form-list .subject input + label {padding: 15px 5px;}

    .sub-apply .box-wrap > div {
        width: 100%;
        padding: 30px;
    }
    .sub-apply .box-wrap > div:first-child {
        border-right: none;
        border-bottom: 1px solid #e0e4ed;
    }
    .sub-apply .box-wrap .flatpickr-calendar {width: 100%;}
    .sub-apply .flatpickr-days {width: 100%;}
    .sub-apply .dayContainer {
        width: 100%;
        min-width: auto;
    }

    .sub-apply .step4 .form-list .subject .name b {width: 100%;}
    .sub-apply .step4 .form-list .subject .name .option-list {width: 100%;}
    .sub-apply .step4 .form-list .subject .name .option-list li {font-size: 14px;}
}

/*마이페이지*/
.mypage-wrap > .status {
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 30px;
    margin-bottom: 50px;
}
.mypage-wrap > .status h3 {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}
.mypage-wrap > .status h3 b {
    font-size: 20px;
    padding-left: 10px;
}
.mypage-wrap > .status ul {
    display: flex;
    flex-wrap: wrap;
}
.mypage-wrap > .status ul li {
    width: calc((100% - 200px)/5);
    position: relative;
    margin-right: 50px;
    border: 5px solid #eee;
    border-radius: 10px;
    background: #f5f5f5;
    padding: 15px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 80px;
}
.mypage-wrap > .status ul li:last-child {margin-right: 0;}
.mypage-wrap > .status ul li::after {
    content: "";
    background: url(/img/assets/arrow_process_black.svg) center / cover no-repeat;
    width: 24px;
    height: 12px;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -42px;
}
.mypage-wrap > .status ul li:last-child::after {content: none;}
.mypage-wrap > .status ul li b {
    font-size: 20px;
    display: block;
    color: rgba(0,0,0,0.5);
    word-break: keep-all;
}
.mypage-wrap > .status ul li.active {
    background: #428eea;
    border-color: #428eea;
    animation: flicker 1s ease 0s infinite alternate;

}
.mypage-wrap > .status ul li.active b {color: #fff;}
@keyframes flicker {
    0% {background: #428eea;}
    100% {background: #0079d2;}
}
.mypage-wrap > .inner {
    display: flex;
    flex-wrap: wrap;
    align-items: start;
}
.mypage-menu {
    width: 200px;
    padding: 20px 0;
    padding-right: 30px;
}
.mypage-menu h2 {
    font-size: 24px;
    margin-bottom: 30px;
}
.mypage-menu li {margin-bottom: 20px;}
.mypage-menu li a {
    font-size: 18px;
    transition: all .2s;
    display: block;
}
.mypage-menu li a:hover,
.mypage-menu li.active a {
    font-weight: bold;
    color: #428eea;
}
.mypage-content {
    width: calc(100% - 200px);
    border-left: 1px solid #ddd;
    padding: 20px 0;
    padding-left: 100px;
    min-height: 500px;
}
.mypage-content h3 {
    font-size: 24px;
    margin-bottom: 20px;
}
.mypage-content h3 span {color: #428eea;}
.mypage-content .mypage section {margin-bottom: 50px;}
.mypage-content .mypage section:last-child {margin-bottom: 0;}
@media all and (max-width: 1200px) {
    .mypage-content {padding-left: 50px;}
}
@media all and (max-width: 1024px) {
    .mypage-menu h2 {display: none;}
    .mypage-wrap > .status {padding: 20px;}
    .mypage-wrap > .status ul li {
        min-height: 60px;
        padding: 10px;
    }
    .mypage-wrap > .status ul li b {font-size: 16px;}
    .mypage-menu {
        width: 100%;
        padding: 0;
    }
    .menu-wrap {overflow-x: auto;}
    .mypage-menu ul {display: flex;}
    .mypage-menu li {
        margin-right: 30px;
        margin-bottom: 0;
    }
    .mypage-menu li a {padding-bottom: 20px;}
    .mypage-content {
        width: 100%;
        min-height: auto;
        border: none;
        border-top: 1px solid #ddd;
        padding: 50px 0 0;
    }
}
@media all and (max-width: 767px) {
    .mypage-wrap > .status {
        padding: 15px;
        margin-bottom: 30px;
    }
    .mypage-wrap > .status h3 {margin-bottom: 10px;}
    .mypage-wrap > .status h3 img {width: 18px;}
    .mypage-wrap > .status h3 b {
        font-size: 15px;
        padding-left: 6px;
    }
    .mypage-wrap > .status ul {margin-bottom: -10px;}
    .mypage-wrap > .status ul li {
        width: calc((100% - 60px)/3);
        margin-right: 30px;
        margin-bottom: 10px;
        border-width: 3px;
    }
    .mypage-wrap > .status ul li:nth-child(3n) {margin-right: 0;}
    .mypage-wrap > .status ul li::after {
        width: 16px;
        height: 8px;
        right: -27px;
    }
    .mypage-wrap > .status ul li:nth-child(3n)::after {content: none;}
    .mypage-wrap > .status ul li b {
        font-size: 14px;
        line-height: 1.2;
    }
    .mypage-menu h2 {
        font-size: 18px;
        margin-bottom: 15px;
    }
    .mypage-menu ul li {
        margin-right: 20px;
        flex: 1 0 auto !important;
        align-items: stretch;
    }
    .mypage-menu li a {
        font-size: 16px;
        padding-bottom: 15px;
    }
    .mypage-content {padding-top: 30px;}
    .mypage-content .mypage section {margin-bottom: 30px;`}
    .mypage-content h3 {
        font-size: 18px;
        margin-bottom: 15px;
    }
}

/*주문관리*/
.mypage .btn-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: right;
}
.mypage .mypage-table .btn-wrap {justify-content: center;}
.mypage .btn-wrap .btn {
    font-size: 14px;
    font-weight: 500;
    border-radius: 30px;
    height: 30px;
    line-height: 28px;
    display: inline-block;
    min-width: 90px;
    text-align: center;
    padding: 0 20px;
    transition: all .3s;
    margin-right: 10px;
    word-break: keep-all;
    background: #fff;
}
.mypage .btn-wrap .btn:last-child {margin-right: 0;}
.mypage .btn-wrap .line-btn.gray {
    border: 1px solid #595c66;
    color: #595c66;
}
.mypage .btn-wrap .line-btn.gray:hover {
    background: #595c66;
    color: #fff;
}
.mypage .btn-wrap .line-btn.blue {
    border: 1px solid #428eea;
    color: #428eea;
}
.mypage .btn-wrap .line-btn.blue:hover {
    background: #428eea;
    color: #fff;
}
.mypage .btn-wrap .fill-btn.blue {
    background: #428eea;
    color: #fff;
}
.mypage .btn-wrap .fill-btn.blue:hover {background: #0079d2;}
.mypage .btn-wrap .fill-btn.gray {
    background: #595c66;
    color: #fff;
}
.mypage .btn-wrap .fill-btn.gray:hover {background: #43464e;}
.mypage .btn-wrap .btn span {display: none;}
.mypage .form-input {
    width: 100%;
    height: 50px;
    padding: 0 15px;
    font-size: 16px;
    border: 1px solid #ddd;
}
.mypage .form-input::placeholder {color: rgba(0,0,0,0.3)}
.mypage .input-group {display: flex;}
.mypage .form-btn {
    font-size: 16px;
    font-weight: bold;
    border: 1px solid #428eea;
    color: #428eea;
    height: 50px;
    padding: 0 30px;
    line-height: 50px;
    background: #fff;
    margin-left: 10px;
}
.mypage .submit-btn {
    background: #428eea;
    height: 50px;
    line-height: 50px;
    border-radius: 50px;
    width: 230px;
    margin: 0 auto;
    text-align: center;
    font-size: 18px;
    color: #fff;
    font-weight: bold;
    border: none;
    display: block;
    transition: all .3s;
    margin-top: 30px;
}
.mypage .submit-btn:hover {background: #0079d2;}
.mypage .underline {text-decoration: underline;}

.mypage .number {
    width: 32px;
    height: 32px;
    line-height: 32px;
    border-radius: 3px;
    background: #e4e8ed;
    font-size: 16px;
    font-weight: bold;
    color: #595c66;
    text-align: center;
    margin-right: 15px;
}
.mypage .box-title b {font-size: 16px;}
.mypage .note {
    font-size: 14px;
    color: #595c66;
    margin-top: 15px;
}
.mypage .note a {
    display: block;
    margin-top: 5px;
}

.mypage .mypage-table table {
    width: 100%;
    font-size: 16px;
    border-collapse: collapse;
    border-top: 2px solid #111;
}
.mypage .mypage-table table th {
    font-weight: 600;
    padding: 20px;
    text-align: center;
    border-bottom: 1px solid #ddd;
}
.mypage .mypage-table table td {
    padding: 25px 20px;
    text-align: center;
    border-bottom: 1px solid #ddd;
}
.mypage .mypage-table table tbody td span {display: none;}
.mypage .mypage-table table tbody td.detail .btn-wrap {width: 200px;}
.mypage .step-list > div {
    background: #f3f5f9;
    border-radius: 10px;
    overflow: hidden;;
    margin-bottom: 20px;
}
.mypage .step-list > div:last-child {margin-bottom: 0;}
.mypage .step-list .subject {
    padding: 25px 30px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
}
.mypage .step-list .subject .arrow img {transition: all .3s;}
.mypage .step-list .subject .step {
    font-size: 16px;
    font-weight: bold;
    color: #428eea;
    margin-left: 30px;
    margin-right: 15px;
}
.mypage .step-list .subject .name b {font-size: 20px;}
.mypage .step-list .subject .name span {
    font-size: 16px;
    color: #666;
    margin-left: 10px;
}
.mypage .step-list .content p {
    font-size: 16px;
    color: #666;
}
.mypage .step-list .content p b {
    display: block;
    font-size: 18px;
    color: #111;
    margin-bottom: 5px;
}
.mypage .step-list .content .inner {
    border-top: 1px solid #ddd;
    padding: 30px;
}
.mypage .step-list .content .box-list {margin-bottom: 20px;}
.mypage .step-list .content .box-list:last-child {margin-bottom: 0;}
.mypage .step-list .content .box-list > li {
    background: #fff;
    border-radius: 10px;
    padding: 30px;
    margin-bottom: 20px;
}
.mypage .step-list .content .box-list > li:last-child {margin-bottom: 0;}
.mypage .step-list .content .box-list .top {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.mypage .step-list .content .box-list .top .box-title {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.mypage .step-list .content .box-list .top .total {
    font-size: 16px;
    font-weight: bold;
}
.mypage .step-list .content .box-list .bottom {
    border-top: 1px solid #ddd;
    padding-top: 20px;
    margin-top: 20px;
}
.mypage .step-list .content .box-list .bottom.no-line {
    border-top: none;
    padding-top: 0;
}
.mypage .step-list .content .box-list .bottom .detail-list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -8px;
}
.mypage .step-list .content .box-list .bottom .detail-list li {
    width: calc((100% - 50px)/2);
    margin-right: 50px;
    font-size: 16px;
    font-weight: 500;
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
}
.mypage .step-list .content .box-list .bottom .detail-list li:nth-child(2n) {margin-right: 0;}
.mypage .step-list .content .box-list .bottom .detail-list li span {color: #777;}
.mypage .step-list .content .box-list .bottom .detail-list li b {font-weight: 500;}

.mypage .step-list .content .box-list .price-list {
    border-bottom: 1px solid #ddd;
    padding-bottom: 30px;
}
.mypage .step-list .content .box-list .price-list li {
    margin-bottom: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.mypage .step-list .content .box-list .price-list li:last-child {margin-bottom: 0;}
.mypage .step-list .content .box-list .price-list li .price {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 16px;
}
.mypage .step-list .content .box-list .price-list li .price span {
    font-size: 16px;
    color: #777;
}
.mypage .step-list .content .box-list .price-list li.border-bottom {
    padding-bottom: 15px;
    border-bottom: 1px solid #666;
    margin-bottom: 15px;
}
.mypage .step-list .content .box-list .price-list li.last-li .price span {
    color: #111;
    font-weight: bold;
}
.mypage .step-list .content .box-list .price-list li.last-li .price b {font-size: 18px;}

.mypage .step-list > div.active .subject .arrow img {transform: rotate(-180deg)}
.mypage .step-list > div.active .content {display: block;}
.mypage .step-list .step01 .box-list .btn-wrap {
    width: 100%;
    justify-content: start;
    margin-top: 15px;
}
.mypage .step-list .step01 .box-list .bottom p {color: #111;}
.mypage .step-list .step01 .box-list .bottom p span {
    font-weight: bold;
    color: #428eea;
}
.mypage .step-list .step01 .textarea-group {margin-top: 20px;}
.mypage .step-list .step01 .textarea-group .form-label {
    font-size: 16px;
    font-weight: 500;
    display: block;
    margin-bottom: 10px;
}
.mypage .step-list .step01 .textarea-group .form-input {
    height: 150px;
    padding: 15px;
    resize: none;
}
.mypage .step-list .step02 .input-group .form-input {max-width: 400px;}
.mypage .step-list .step03 .box-list {
    max-width: 500px;
    margin: 0 auto;
}
.mypage .step-list .step03 .price {width: calc(100% - 110px)}
.mypage .step-list .step03 .btn-wrap {width: 110px;}

.order-view .file-group > div {
    margin-bottom: 10px;
    border: 1px solid #ddd;
    height: 40px;
    line-height: 40px;
    display: flex;
    align-items: center;
    padding: 0 10px;
}
.order-view .file-group > div:last-child {margin-bottom: 0;}
.order-view .file-group > div .lb_icon {
    font-size: 16px;
    color: #ccc;
    padding-right: 20px;
}

@media all and (max-width: 1024px) {
    .mypage .mypage-table {overflow-x: auto;}
    .mypage .mypage-table table {width: 1000px;}
}
@media all and (max-width: 767px) {
    .mypage .btn-wrap .btn {
        font-size: 13px;
        padding: 0 15px;
        min-width: 80px;
    }
    .mypage .btn-wrap .btn span {display: inline-block;}
    .mypage .form-btn {
        font-size: 14px;
        width: 130px;
        height: 42px;
        line-height: 42px;
        padding: 0 12px;
        word-break: keep-all;
        margin-left: 5px;
    }
    .mypage .submit-btn {
        height: 42px;
        line-height: 42px;
        width: 100%;
        font-size: 16px;
        margin-top: 15px;
    }
    .mypage .underline {width: 100%;}
    .mypage .form-input {
        height: 42px;
        font-size: 15px;
    }
    .mypage .mypage-table table {
        width: 100%;
        font-size: 15px;
        display: block;
        border: none;
    }
    .mypage .mypage-table table thead {display: none;}
    .mypage .mypage-table table tbody {display: block;}
    .mypage .mypage-table table tbody tr {
        margin-bottom: 15px;
        border: 1px solid #ddd;
        border-radius: 10px;
        padding: 15px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .mypage .mypage-table table tbody tr:last-child {margin-bottom: 0;}
    .mypage .mypage-table table tbody td {
        display: block;
        border: none;
        padding: 0;
        text-align: left;
        order: 3;
        width: 100%;
    }
    .mypage .mypage-table table tbody td.date {
        border-bottom: 1px solid #ddd;
        padding-bottom: 10px;
        order: 2;
        width: 80px;
    }
    .mypage .mypage-table table tbody td.order-number {
        border-bottom: 1px solid #ddd;
        padding-bottom: 10px;
        order: 1;
        width: calc(100% - 80px);
    }
    .mypage .mypage-table table tbody td.service {
        font-size: 16px;
        font-weight: 600;
        padding: 10px 0 5px;
    }
    .mypage .mypage-table table tbody td.price {
        font-weight: 600;
        color: #428eea;
    }
    .mypage .mypage-table table tbody td.status {
        background: #f5f6fa;
        border-radius: 3px;
        padding: 5px 10px;
        color: #666;
        margin-top: 2px;
        margin-bottom: 6px;
    }
    .mypage .mypage-table table tbody td.detail {margin-top: 15px;}
    .mypage .mypage-table table tbody td.detail .btn-wrap {width: 100%;}
    .mypage .mypage-table table tbody td.detail .btn-wrap .btn {
        width: calc((100% - 10px)/2);
        font-size: 14px;
    }
    .mypage .mypage-table table tbody td span {display: inline-block;}

    .mypage .number {
        width: 24px;
        height: 24px;
        line-height: 24px;
        font-size: 14px;
        margin-right: 10px;
    }
    .mypage .box-title b {font-size: 14px;}

    .mypage .step-list > div {margin-bottom: 10px;}
    .mypage .step-list .subject {padding: 15px;}
    .mypage .step-list .subject .step {
        margin-left: 15px;
        margin-right: 10px;
        font-size: 13px;
    }
    .mypage .step-list .subject .arrow img {width: 12px;}
    .mypage .step-list .subject .name {width: 100%;}
    .mypage .step-list .subject .name b {font-size: 16px;}
    .mypage .step-list .subject .name span {
        font-size: 14px;
        display: block;
        margin-left: 0;
    }
    .mypage .step-list .content .inner {padding: 15px;}
    .mypage .step-list .content p {font-size: 14px;}
    .mypage .step-list .content p b {font-size: 16px;}
    .mypage .step-list .content .box-list > li {
        padding: 20px;
        margin-bottom: 10px;
    }
    .mypage .step-list .content .box-list .top .btn-wrap {
        width: 100%;
        margin-top: 10px;
    }
    .mypage .step-list .content .box-list .top .btn-wrap .btn {
        width: 100%;
        margin: 0 0 10px;
    }
    .mypage .step-list .content .box-list .top .btn-wrap .btn:last-child {margin: 0;}
    .mypage .step-list .content .box-list .top .total {font-size: 14px;}
    .mypage .step-list .content .box-list .bottom {
        padding-top: 15px;
        margin-top: 15px;
    }
    .mypage .step-list .content .box-list .bottom .detail-list li {
        width: 100%;
        font-size: 14px;
        margin-right: 0;
    }
    .mypage .step-list .content .box-list .price-list {padding-bottom: 15px;}
    .mypage .step-list .content .box-list .price-list li .price span {font-size: 14px;}
    .mypage .step-list .content .box-list .price-list li .price b {font-size: 15px;}
    .mypage .step-list .content .box-list .price-list li.last-li .price b {font-size: 16px;}

    .mypage .step-list .step01 .textarea-group .form-label {font-size: 14px;}
    .mypage .step-list .step03 .price {width: calc(100% - 90px);}
    .mypage .step-list .step03 .btn-wrap {width: 80px;}

    .order-view .mypage-table table tbody td.detail {
        width: calc((100% - 10px)/2);
        margin-right: 10px;
    }
    .order-view .mypage-table table tbody td.detail:last-child {margin-right: 0;}
    .order-view .file-group > div .lb_icon {
        font-size: 14px;
        padding-right: 10px;
    }
}

.order-modal .modal-dialog {max-width: 1000px;}
.order-modal .modal-content {padding: 50px;}
.order-modal .btn-close {
    position: absolute;
    top: 30px;
    right: 30px;
    background: none;
    border: none;
}
.order-modal .modal-header {
    padding: 0 0 50px;
    border: none;
    display: block;
}
.order-modal .modal-header h3 {font-size: 24px;}
.order-modal .modal-header p {
    font-size: 18px;
    margin-top: 10px;
}
.order-modal .modal-body {padding: 0;}
.order-modal .form-label {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
    display: block;
}
.order-modal .table-wrap .form-input {
    width: 100%;
    padding: 0 15px;
    height: 42px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 0;
}
.order-modal .form-group {margin-bottom: 30px;}
.order-modal .radio-group {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -10px;
}
.order-modal .radio-group > div {
    width: calc((100% - 40px)/5);
    margin-right: 10px;
    margin-bottom: 10px;
}
.order-modal .radio-group > div:nth-child(5n) {margin-right: 0;}
.order-modal .radio-group input[type=radio] {
    overflow: hidden;
    display: none;
    width: 0px;
    height: 0px;
    border: 0 none;
    font-size: 0;
    line-height: 0;
    clip: rect(0 0 0 0);
    opacity: 0;
}
.order-modal .radio-group input[type=radio] + label {
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 10px;
    padding: 15px;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    color: rgba(0, 0, 0, 0.4);
    cursor: pointer;
    transition: all .3s;
    box-sizing: border-box;
    display: block;
}
.order-modal .radio-group input[type=radio] + label:hover {color: #111;}
.order-modal .radio-group input[type=radio]:checked + label {
    border: 1px solid #428eea;
    outline: 1px solid #428eea;
    color: #111;
}
.order-modal .table-wrap {margin-top: 30px;}
.order-modal .table-wrap th {
    word-break: keep-all;
    padding: 15px 10px;
}
.order-modal .table-wrap td {padding: 10px;}
.order-modal .table-wrap .td-item {width: 40%;}
.order-modal .table-wrap .td-delete {width: 60px;}
.order-modal .table-wrap .delete-btn {
    background: none;
    border: none;
    font-size: 0;
}
.order-modal .table-wrap .delete-btn img {width: 16px;}
.order-modal .total {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
}
.order-modal .file-group {
    background: #f5f6fa;
    border-radius: 10px;
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -10px;
}
.order-modal .file-group > div {
    width: calc((100% - 30px)/4);
    margin-right: 10px;
    margin-bottom: 10px;
    text-align: center;
}
.order-modal .file-group > div:last-child {margin-right: 0;}
.order-modal .file-group > div label {
    border: 1px dashed #428eea;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    cursor: pointer;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #fff;
}
.order-modal .file-group > div label b {
    font-size: 15px;
    color: #b1b4bc;
    display: block;
    margin: 10px 0;
}
.order-modal .file-group > div input[type=file] {
    overflow: hidden;
    display: none;
    width: 0px;
    height: 0px;
    border: 0 none;
    font-size: 0;
    line-height: 0;
    clip: rect(0 0 0 0);
    opacity: 0;
}
.order-modal .file-group > div p {
    font-size: 16px;
    font-weight: 600;
    padding: 10px;
    border-radius: 10px;
    background: #ddd;
    margin-top: 5px;
}
.order-modal .file-group > div p span {
    display: block;
    font-size: 14px;
    font-weight: 400;
    margin-top: 2px;
    color: #666;
}
.order-modal .radio-group .etc-group {
    width: 100%;
    display: flex;
}
.order-modal .radio-group .etc-group .form-input {max-width: 400px;}

.address-modal .form-label {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
}
.address-modal .form-input {
    width: 100%;
    font-weight: normal;
    max-width: 440px;
}
.address-modal .addr-group > div {margin-bottom: 10px;}
.address-modal .addr-group > div:last-child {margin-bottom: 0;}
.address-modal .addr-group .form-input {max-width: none;}
.address-modal .addr-group .zip-group {display: flex;}
.address-modal .addr-group .zip-group .form-input {max-width: 300px;}

.pac-container {z-index: 2000 !important}
#senderAddressModal .addr-group input {margin-bottom: 10px}
#senderAddressModal .addr-group select {margin-bottom: 10px}

#deliveryModal .delivery-list {
    background: #f5f6fa;
    border-radius: 10px;
    padding: 30px;
}
#deliveryModal .delivery-list li {
    margin-bottom: 10px;
    background: #fff;
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 20px;
}
#deliveryModal .delivery-list li:last-child {margin-bottom: 0;}
#deliveryModal .delivery-list li .box-title {
    display: flex;
    align-items: center;
}

@media all and (max-width: 1000px) {
    .order-modal .modal-content {margin: 50px 15px;}
}
@media all and (max-width: 767px) {
    .order-modal .modal-content {
        margin: 30px 15px;
        padding: 20px;
    }
    .order-modal .modal-header {padding-bottom: 30px;}
    .order-modal .modal-header h3 {font-size: 18px;}
    .order-modal .modal-header p {
        font-size: 15px;
        margin-top: 5px;
    }
    .order-modal .btn-close {
        top: 15px;
        right: 15px;
    }
    .order-modal .form-label {
        font-size: 15px;
        margin-bottom: 12px;
    }
    .order-modal .radio-group {margin-bottom: -5px;}
    .order-modal .radio-group > div {
        width: calc((100% - 5px) / 2);
        margin-right: 5px;
        margin-bottom: 5px;
    }
    .order-modal .radio-group > div:nth-child(5n) {margin-right: 5px;}
    .order-modal .radio-group > div:nth-child(2n) {margin-right: 0;}
    .order-modal .radio-group input[type=radio] + label {
        font-size: 14px;
        padding: 10px;
        border-radius: 5px;
    }
    .order-modal .table-wrap {
        margin-top: 20px;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        -ms-overflow-style: -ms-autohiding-scrollbar;
        padding-bottom: 15px;
    }
    .order-modal .table-wrap::-webkit-scrollbar {height: 6px;}
    .order-modal .table-wrap::-webkit-scrollbar-thumb {background-color: #428eea; border-radius: 6px;}
    .order-modal .table-wrap::-webkit-scrollbar-track {background-color: #ddd; border-radius: 6px;}
    .order-modal .table-wrap table {width: 500px;}
    .order-modal .total {margin-top: 20px;}
    .order-modal .file-group {
        padding: 15px;
        margin: 0;
    }
    .order-modal .file-group > div {width: calc((100% - 10px)/2);}
    .order-modal .file-group > div:nth-child(2n) {margin-right: 0;}
    .order-modal .file-group > div:last-child {margin-bottom: 0;}
    .order-modal .file-group > div label {border-radius: 5px;}
    .order-modal .file-group > div label b {font-size: 13px;}
    .order-modal .file-group > div p {
        font-size: 14px;
        padding: 8px;
        border-radius: 5px;
    }
    .order-modal .submit-btn {
        height: 42px;
        line-height: 42px;
        width: 100%;
        font-size: 16px;
        margin-top: 15px;
    }

    .address-modal .form-label {font-size: 15px;}

    #deliveryModal .delivery-list {padding: 20px;}
    #deliveryModal .delivery-list li {padding: 15px;}
    #deliveryModal .delivery-list li .box-title {
        width: 100%;
        margin-bottom: 10px;
    }
    #deliveryModal .delivery-list li .btn-wrap,
    #deliveryModal .delivery-list li .btn {width: 100%;}
}

/*마이페이지 결제하기*/
.pay-wrap {text-align: center;}
.pay-wrap .logo {margin-bottom: 40px;}
.pay-wrap .box {
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
    background: #fff;
    border-radius: 10px;
    padding: 50px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
.pay-wrap .box .title {margin-bottom: 30px;}
.pay-wrap .box .title h2 {font-size: 30px;}
.pay-wrap .box .price-wrap {
    background: #f5f5f5;
    padding: 15px 20px;
    border-radius: 10px;
}
.pay-wrap .box .price-wrap b {
    font-size: 16px;
    display: block;
    text-align: left;
}
.pay-wrap .box .price-wrap .price {
    font-size: 20px;
    font-weight: bold;
    text-align: right;
    color: #428eea;
}
.pay-wrap .box .submit-btn {
    width: 100%;
    background: #428eea;
    height: 60px;
    line-height: 60px;
    border-radius: 30px;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.2);
    transition: all .3s;
    display: inline-block;
    margin-top: 30px;
    cursor: pointer;
}
.pay-wrap .box .submit-btn:hover {
    background: #0079d2;
    box-shadow: none;
}
@media all and (max-width: 480px) {
    .pay-wrap .box {
        width: calc(100% - 30px);
        padding: 30px;
    }
    .pay-wrap .box .title {margin-bottom: 20px;}
    .pay-wrap .box .title h2 {font-size: 24px;}
    .pay-wrap .box .price-wrap b {font-size: 14px;}
    .pay-wrap .box .price-wrap .price {font-size: 18px;}
    .pay-wrap .box .submit-btn {
        height: 50px;
        line-height: 50px;
        font-size: 16px;
        margin-top: 15px;
    }
}

/*인보이스*/
.mypage.invoice .inner {padding: 20px;}
.mypage.invoice .top {
    display: flex;
    justify-content: space-between;
    font-size: 16px;
}
.mypage.invoice .top .box-title {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.mypage.invoice .bottom {
    border-top: 1px solid #ddd;
    padding-top: 20px;
    margin-top: 20px;
}
.mypage.invoice .bottom.no-line {
    border-top: none;
    padding-top: 0;
}
.mypage.invoice .price-list li {
    margin-bottom: 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.mypage.invoice .price-list li:last-child {margin-bottom: 0;}
.mypage.invoice .price-list li .price {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 16px;
    width: 100%;
}
.mypage.invoice .price-list li .price span {
    font-size: 16px;
    color: #777;
}
.mypage.invoice .price-list li.border-bottom {
    padding-bottom: 15px;
    border-bottom: 1px solid #666;
    margin-bottom: 15px;
}
.mypage.invoice .price-list li.last-li .price span {
    color: #111;
    font-weight: bold;
}
.mypage.invoice .price-list li.last-li .price b {font-size: 18px;}
.mypage.invoice .btn-wrap {
    justify-content: center;
    margin-top: 20px;
}
.mypage.invoice .btn-wrap .btn {
    border: 1px solid #111;
    height: 36px;
    line-height: 36px;
    border-radius: 5px;
    font-size: 15px;
    text-align: center;
    padding: 0;
    width: 80px;
}
.mypage.invoice .btn-wrap .print-btn {
    background: #111;
    color: #fff;
}
@media print {
    .btn-wrap {display: none !important;}
}