@charset "utf-8";
h1 {
    font-size: 32px;
    letter-spacing: 1;
    font-weight: 300;
        padding-top: 7px;
}
h2 {
    font-size: 20px;
    padding-top: 15px;
    font-weight: 300;
    line-height: 1.5;
}
h2 span {
    color: #f15353;
}
h3 {
    font-size: 12px;
    letter-spacing: 5px;
    color: #ab8d8d;
}
h4 {
    padding-top: 10px;
    font-weight: 300;
    font-size: 20px;
    color:#04a059;
}
button,input, textarea {
    font-family: 'Gowun Dodum', sans-serif;
    color: #999;
}
.ico_img {
    width: 30px;
    height: 30px;
}
.ico_img2 {
    width: 22px;
    height: 22px;
    margin-right: 5px;
}
.ico_img3 {
    width: 22px;
    height: 22px;
    margin-left: 8px;
}
.ico_img4 {
    width: 26px;
    height: 26px;
    border-radius: 5px;
    border: 1px solid #f1f1f1;
    margin-right: 7px;
}
.span_line {
    width:1px;
    height: 50px;
    background: #bbb;
    margin: 0 auto;
}
#invite_top .top_day {
    padding:45px 0;
}
#invite_top .top_pic img {
    width:100%;
}
#invite_top .top_hall {
        font-size: 17px;
    color: #666;
    padding: 40px 0 60px;
    line-height: 32px;
}

#invite_in .content {
    padding: 60px 0 40px;
    line-height: 31px;
    font-size: 16px;
}
#invite_in .content strong {
    font-size: 18px;
}
#invite_in .name {
    padding: 40px 0 0;
}
#invite_in .name p {
    padding:10px 0;
    margin:0;
    font-size: 14px;
}
#invite_in .name p span {
    color: #777;
    font-size: 12px;
    padding: 0 10px;
}
#invite_in .phone,
.more_btn,
.btn-open {
    padding: 10px 0;
    background: #f7f5f5;
    border:1px solid #f1f1f1;
    border-radius: 30px;
    width: 200px;
    margin: 30px auto;
    color: #333;
}
.account_btn.man,
.account_btn.woman{
    padding: 10px 0;
    background: #fff;
    border: 1px solid #ebe2e2;
    border-radius: 30px;
    width: 200px;
    margin: 30px auto;
    color: #615858;
}
#invite_in .days {
    padding: 70px 0;
    margin: 30px 0 0 0;
}
#invite_in .days .days_tit {
    font-size: 23px;
    color: #333;
    padding-bottom: 30px;
}
#invite_in .swiper, 
#invite_in .swiper-container {
    position: absolute;
}

#count {
    padding-top: 30px;
    color: #333;
}
#count p {
    font-size: 25px;
}
#count span {
    color: #f15353;
}

/* 달력 */
.days_cal {
    width:80%;
    margin: 0 auto;
}
.days_cal .days_num {
}
.days_cal .days_week:after,
.days_cal .days_num:after {
    clear: both;
    display: block;
    content: '';
}
.days_cal .days_week div,
.days_cal .days_num div {
    width: 14.2%;
    float: left;
    padding: 17px 0;
}
.days_cal .days_week {
    border-top: 1px solid #ebe2e2;
    border-bottom: 1px solid #ebe2e2;
}
.days_cal .days_week div:first-child,
.days_cal .days_num div:nth-child(1),
.days_cal .days_num div:nth-child(8),
.days_cal .days_num div:nth-child(15),
.days_cal .days_num div:nth-child(22),
.days_cal .days_num div:nth-child(29),
.days_cal .days_num div:nth-child(36){
    color: #b32223;
}
.days_cal .days_num .on {
    position: relative;
    color: #fff !important;
    z-index: 2;
}
.days_cal .days_num .on:before {
    position: absolute;
    background: #04a059;
    border-radius: 50%;
    content: '';
    display: block;
    width: 40px;
    height: 40px;
    z-index: -1;
    top: 6px;
    left: 17%;
}

/* 흩날 */
@-webkit-keyframes fall {
    0% {
        opacity: 0.9;
        top: 0
    }
    100% {
        opacity: 0.2;
        top: 100%
    }
}

@-o-keyframes fall {
    0% {
        opacity: 0.9;
        top: 0
    }
    100% {
        opacity: 0.2;
        top: 100%
    }
}

@-ms-keyframes fall {
    0% {
        opacity: 0.9;
        top: 0
    }
    100% {
        opacity: 0.2;
        top: 100%
    }
}

@-moz-keyframes fall {
    0% {
        opacity: 0.9;
        top: 0
    }
    100% {
        opacity: 0.2;
        top: 100%
    }
}

@keyframes fall {
    0% {
        opacity: 0.9;
        top: 0
    }
    100% {
        opacity: 0.2;
        top: 100%
    }
}

@-webkit-keyframes blow-soft-left {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: -50%
    }
}

@-o-keyframes blow-soft-left {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: -50%
    }
}

@-ms-keyframes blow-soft-left {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: -50%
    }
}

@-moz-keyframes blow-soft-left {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: -50%
    }
}

@keyframes blow-soft-left {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: -50%
    }
}

@-webkit-keyframes blow-medium-left {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: -100%
    }
}

@-o-keyframes blow-medium-left {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: -100%
    }
}

@-ms-keyframes blow-medium-left {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: -100%
    }
}

@-moz-keyframes blow-medium-left {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: -100%
    }
}

@keyframes blow-medium-left {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: -100%
    }
}

@-webkit-keyframes blow-soft-right {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: 50%
    }
}

@-o-keyframes blow-soft-right {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: 50%
    }
}

@-ms-keyframes blow-soft-right {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: 50%
    }
}

@-moz-keyframes blow-soft-right {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: 50%
    }
}

@keyframes blow-soft-right {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: 50%
    }
}

@-webkit-keyframes blow-medium-right {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: 100%
    }
}

@-o-keyframes blow-medium-right {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: 100%
    }
}

@-ms-keyframes blow-medium-right {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: 100%
    }
}

@-moz-keyframes blow-medium-lerightft {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: 100%
    }
}

@keyframes blow-medium-right {
    0% {
        margin-left: 0
    }
    100% {
        margin-left: 100%
    }
}

@-webkit-keyframes sway-0 {
    0% {
        -webkit-transform: rotate(-5deg)
    }
    40% {
        -webkit-transform: rotate(28deg)
    }
    100% {
        -webkit-transform: rotate(3deg)
    }
}

@-o-keyframes sway-0 {
    0% {
        -o-transform: rotate(-5deg)
    }
    40% {
        -o-transform: rotate(28deg)
    }
    100% {
        -o-transform: rotate(3deg)
    }
}

@-ms-keyframes sway-0 {
    0% {
        -ms-transform: rotate(-5deg)
    }
    40% {
        -ms-transform: rotate(28deg)
    }
    100% {
        -ms-transform: rotate(3deg)
    }
}

@-moz-keyframes sway-0 {
    0% {
        -moz-transform: rotate(-5deg)
    }
    40% {
        -moz-transform: rotate(28deg)
    }
    100% {
        -moz-transform: rotate(3deg)
    }
}

@keyframes sway-0 {
    0% {
        transform: rotate(-5deg)
    }
    40% {
        transform: rotate(28deg)
    }
    100% {
        transform: rotate(3deg)
    }
}

@-webkit-keyframes sway-1 {
    0% {
        -webkit-transform: rotate(10deg)
    }
    40% {
        -webkit-transform: rotate(43deg)
    }
    100% {
        -webkit-transform: rotate(15deg)
    }
}

@-o-keyframes sway-1 {
    0% {
        -o-transform: rotate(10deg)
    }
    40% {
        -o-transform: rotate(43deg)
    }
    100% {
        -o-transform: rotate(15deg)
    }
}

@-ms-keyframes sway-1 {
    0% {
        -ms-transform: rotate(10deg)
    }
    40% {
        -ms-transform: rotate(43deg)
    }
    100% {
        -ms-transform: rotate(15deg)
    }
}

@-moz-keyframes sway-1 {
    0% {
        -moz-transform: rotate(10deg)
    }
    40% {
        -moz-transform: rotate(43deg)
    }
    100% {
        -moz-transform: rotate(15deg)
    }
}

@keyframes sway-1 {
    0% {
        transform: rotate(10deg)
    }
    40% {
        transform: rotate(43deg)
    }
    100% {
        transform: rotate(15deg)
    }
}

@-webkit-keyframes sway-2 {
    0% {
        -webkit-transform: rotate(15deg)
    }
    40% {
        -webkit-transform: rotate(56deg)
    }
    100% {
        -webkit-transform: rotate(22deg)
    }
}

@-o-keyframes sway-2 {
    0% {
        -o-transform: rotate(15deg)
    }
    40% {
        -o-transform: rotate(56deg)
    }
    100% {
        -o-transform: rotate(22deg)
    }
}

@-ms-keyframes sway-2 {
    0% {
        -ms-transform: rotate(15deg)
    }
    40% {
        -ms-transform: rotate(56deg)
    }
    100% {
        -ms-transform: rotate(22deg)
    }
}

@-moz-keyframes sway-2 {
    0% {
        -moz-transform: rotate(15deg)
    }
    40% {
        -moz-transform: rotate(56deg)
    }
    100% {
        -moz-transform: rotate(22deg)
    }
}

@keyframes sway-2 {
    0% {
        transform: rotate(15deg)
    }
    40% {
        transform: rotate(56deg)
    }
    100% {
        transform: rotate(22deg)
    }
}

@-webkit-keyframes sway-3 {
    0% {
        -webkit-transform: rotate(25deg)
    }
    40% {
        -webkit-transform: rotate(74deg)
    }
    100% {
        -webkit-transform: rotate(37deg)
    }
}

@-o-keyframes sway-3 {
    0% {
        -o-transform: rotate(25deg)
    }
    40% {
        -o-transform: rotate(74deg)
    }
    100% {
        -o-transform: rotate(37deg)
    }
}

@-ms-keyframes sway-3 {
    0% {
        -ms-transform: rotate(25deg)
    }
    40% {
        -ms-transform: rotate(74deg)
    }
    100% {
        -ms-transform: rotate(37deg)
    }
}

@-moz-keyframes sway-3 {
    0% {
        -moz-transform: rotate(25deg)
    }
    40% {
        -moz-transform: rotate(74deg)
    }
    100% {
        -moz-transform: rotate(37deg)
    }
}

@keyframes sway-3 {
    0% {
        transform: rotate(25deg)
    }
    40% {
        transform: rotate(74deg)
    }
    100% {
        transform: rotate(37deg)
    }
}

@-webkit-keyframes sway-4 {
    0% {
        -webkit-transform: rotate(40deg)
    }
    40% {
        -webkit-transform: rotate(68deg)
    }
    100% {
        -webkit-transform: rotate(25deg)
    }
}

@-o-keyframes sway-4 {
    0% {
        -o-transform: rotate(40deg)
    }
    40% {
        -o-transform: rotate(68deg)
    }
    100% {
        -o-transform: rotate(25deg)
    }
}

@-ms-keyframes sway-4 {
    0% {
        -ms-transform: rotate(40deg)
    }
    40% {
        -ms-transform: rotate(68deg)
    }
    100% {
        -ms-transform: rotate(25deg)
    }
}

@-moz-keyframes sway-4 {
    0% {
        -moz-transform: rotate(40deg)
    }
    40% {
        -moz-transform: rotate(68deg)
    }
    100% {
        -moz-transform: rotate(25deg)
    }
}

@keyframes sway-4 {
    0% {
        transform: rotate(40deg)
    }
    40% {
        transform: rotate(68deg)
    }
    100% {
        transform: rotate(25deg)
    }
}

@-webkit-keyframes sway-5 {
    0% {
        -webkit-transform: rotate(50deg)
    }
    40% {
        -webkit-transform: rotate(78deg)
    }
    100% {
        -webkit-transform: rotate(40deg)
    }
}

@-o-keyframes sway-5 {
    0% {
        -o-transform: rotate(50deg)
    }
    40% {
        -o-transform: rotate(78deg)
    }
    100% {
        -o-transform: rotate(40deg)
    }
}

@-ms-keyframes sway-5 {
    0% {
        -ms-transform: rotate(50deg)
    }
    40% {
        -ms-transform: rotate(78deg)
    }
    100% {
        -ms-transform: rotate(40deg)
    }
}

@-moz-keyframes sway-5 {
    0% {
        -moz-transform: rotate(50deg)
    }
    40% {
        -moz-transform: rotate(78deg)
    }
    100% {
        -moz-transform: rotate(40deg)
    }
}

@keyframes sway-5 {
    0% {
        transform: rotate(50deg)
    }
    40% {
        transform: rotate(78deg)
    }
    100% {
        transform: rotate(40deg)
    }
}

@-webkit-keyframes sway-6 {
    0% {
        -webkit-transform: rotate(65deg)
    }
    40% {
        -webkit-transform: rotate(92deg)
    }
    100% {
        -webkit-transform: rotate(58deg)
    }
}

@-o-keyframes sway-6 {
    0% {
        -o-transform: rotate(65deg)
    }
    40% {
        -o-transform: rotate(92deg)
    }
    100% {
        -o-transform: rotate(58deg)
    }
}

@-ms-keyframes sway-6 {
    0% {
        -ms-transform: rotate(65deg)
    }
    40% {
        -ms-transform: rotate(92deg)
    }
    100% {
        -ms-transform: rotate(58deg)
    }
}

@-moz-keyframes sway-6 {
    0% {
        -moz-transform: rotate(65deg)
    }
    40% {
        -moz-transform: rotate(92deg)
    }
    100% {
        -moz-transform: rotate(58deg)
    }
}

@keyframes sway-6 {
    0% {
        transform: rotate(65deg)
    }
    40% {
        transform: rotate(92deg)
    }
    100% {
        transform: rotate(58deg)
    }
}

@-webkit-keyframes sway-7 {
    0% {
        -webkit-transform: rotate(72deg)
    }
    40% {
        -webkit-transform: rotate(118deg)
    }
    100% {
        -webkit-transform: rotate(68deg)
    }
}

@-o-keyframes sway-7 {
    0% {
        -o-transform: rotate(72deg)
    }
    40% {
        -o-transform: rotate(118deg)
    }
    100% {
        -o-transform: rotate(68deg)
    }
}

@-ms-keyframes sway-7 {
    0% {
        -ms-transform: rotate(72deg)
    }
    40% {
        -ms-transform: rotate(118deg)
    }
    100% {
        -ms-transform: rotate(68deg)
    }
}

@-moz-keyframes sway-7 {
    0% {
        -moz-transform: rotate(72deg)
    }
    40% {
        -moz-transform: rotate(118deg)
    }
    100% {
        -moz-transform: rotate(68deg)
    }
}

@keyframes sway-7 {
    0% {
        transform: rotate(72deg)
    }
    40% {
        transform: rotate(118deg)
    }
    100% {
        transform: rotate(68deg)
    }
}

@-webkit-keyframes sway-8 {
    0% {
        -webkit-transform: rotate(94deg)
    }
    40% {
        -webkit-transform: rotate(136deg)
    }
    100% {
        -webkit-transform: rotate(82deg)
    }
}

@-o-keyframes sway-8 {
    0% {
        -o-transform: rotate(94deg)
    }
    40% {
        -o-transform: rotate(136deg)
    }
    100% {
        -o-transform: rotate(82deg)
    }
}

@-ms-keyframes sway-8 {
    0% {
        -ms-transform: rotate(94deg)
    }
    40% {
        -ms-transform: rotate(136deg)
    }
    100% {
        -ms-transform: rotate(82deg)
    }
}

@-moz-keyframes sway-8 {
    0% {
        -moz-transform: rotate(94deg)
    }
    40% {
        -moz-transform: rotate(136deg)
    }
    100% {
        -moz-transform: rotate(82deg)
    }
}

@keyframes sway-8 {
    0% {
        transform: rotate(94deg)
    }
    40% {
        transform: rotate(136deg)
    }
    100% {
        transform: rotate(82deg)
    }
}

section {
    max-width: 540px;
    width: 100%;
    position: relative;
    overflow-x: hidden;
}
.sakura {
    width: 100%;
    max-width: 540px;
    background: -webkit-linear-gradient(120deg, rgba(255, 183, 197, 0.9), rgba(255, 197, 208, 0.9));
    background: -o-linear-gradient(120deg, rgba(255, 183, 197, 0.9), rgba(255, 197, 208, 0.9));
    background: -ms-linear-gradient(120deg, rgba(255, 183, 197, 0.9), rgba(255, 197, 208, 0.9));
    background: -moz-linear-gradient(120deg, rgba(255, 183, 197, 0.9), rgba(255, 197, 208, 0.9));
    background: linear-gradient(120deg, rgba(255, 183, 197, 0.9), rgba(255, 197, 208, 0.9));
    -webkit-border-radius: 12px 1px;
    -o-border-radius: 12px 1px;
    -ms-border-radius: 12px 1px;
    -moz-border-radius: 12px 1px;
    border-radius: 12px 1px;
    -webkit-pointer-events: none;
    -moz-pointer-events: none;
    -ms-pointer-events: none;
    -o-pointer-events: none;
    pointer-events: none;
    position: absolute;
}

.pic_swiper {
    display: none;
    position: fixed !important;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #000;
    justify-content: center;
    align-items: center;
    z-index: 2; 
}

.pic_swiper .swiper-pagination {
    bottom: 10% !important;
}

.swiper {
      width: 100%;
      height: 100%;
    }

    .swiper-slide {
      overflow: hidden;
        display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    }

.swiper-slide img {
    width: 100%;
}
.close {
   padding: 14px 0;
    position: absolute;
    right: 20px;
    top: 30px;
    transform: rotate(-45deg);
    z-index: 99;
    background: rgba(255, 255, 255, 0.5);
    width: 30px;
    height: 30px;
    border-radius: 500px;
}
.close:before {
    background: #ffffff;
    width: 16px;
    height: 2px;
    content: '';
    display: block;
    position: absolute;
    left: 7px;
}
.close:after {
    background: #ffffff;
    width: 16px;
    height: 2px;
    transform: rotate(90deg);
    content: '';
    display: block;
    position: absolute;
    left: 7px;
}
.blue {
    color: #678edb;
}
.pink {
    color: #e9a3a3;
}
.pic_box {
    margin:40px 20px;
}
.pic_box {
    padding-bottom: 20px;
}
.pic_box .pic_ori:after {
    clear: both;
    display: block;
    content: '';
}
.pic_box .pic_more:after {
    display: block;
    content: '';
    clear: both;
}
.pic_box .pic_img {
    width: 31%;
    margin: 1%;
    float: left;
    position: relative;
    overflow: hidden;
        border-radius: 6px;
}
.pic_box .pic_img .centered {
    width: 100%;
    padding-top: 100%;
    top: 0;
    left: 0;
}
.pic_box .pic_img .centered img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
}

.account_pop {
    margin:30px 0 60px;
}
.account_btn {
    width: 70%;
    background: #f6f6f6;
    border-radius: 30px;
    padding: 15px 0;
    margin: 15px auto;
}

.map_guide {
    width:90%;
    margin: 20px auto;
    text-align: left;
}
.map_guide ul li {
    border-bottom: 1px solid #eee;
    padding: 20px 0;
}
.map_guide ul li .guide_tit {
    padding-bottom: 10px;
    font-size: 16px;
}
.map_guide ul li .guide_span {
    color: #777;
    line-height: 1.5;
    font-size: 14px;
}
.map_guide ul li:last-child {
    border-bottom: 0;
}
.map_box {
    margin:30px 0;
}
.map_ico {
    display: flex;
    width: 90%;
    margin: 0 auto;
    align-items: center;
    justify-content: center;
    padding: 13px 0;
    background: #f1f1f1;
    font-size: 13px;
}
.map_ico a {
    width:33.33%;
    border-right: 1px solid #fff;
}
.map_ico a:last-child {
    border-right: 0;
}
.map .content {
    padding: 20px 0 70px !important;
    font-size: 18px !important;
}

.call_popup {
    position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(0,0,0,0.7);
    width: 100%;
    height: 100%;
    z-index: 3;
    top: 0;
    left: 0;
}
.call_box {
    position: relative;
    background: #fff;
    padding: 25px;
    border-radius: 8px;
}
.call_box .close {
    top: -50px;
    right: 0;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    background: rgba(255, 255, 255, 0.5);
}
.call_box ul {
    padding:13px 0;
}
.call_box ul li {
    padding:7px 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
.call_box ul:first-child {
    border-bottom: 1px solid #ddd;
}
.calltext {
    width: 70px;
    text-align: center;
    font-size: 14px;
}
.callname {
    width: 90px;
    font-size: 13px;
}
.callname span {
    font-size: 11px;
    display: block;
}
.flower a {
        width: 60%;
    margin: 20px auto;
    border: 1px solid #ebe2e2;
    background: #f3ebeb;
    display: inline-block;
    border-radius: 30px;
    padding: 13px 0px;
}
.account_popup,
.account_popup2 {
    display: none;
}
.account_popup {
    position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(0,0,0,0.7);
    width: 100%;
    height: 100%;
    z-index: 3;
    top: 0;
    left: 0;
}
.account_popup2 {
    position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(0,0,0,0.7);
    width: 100%;
    height: 100%;
    z-index: 3;
    top: 0;
    left: 0;
}
.account_box {
    position: relative;
    padding: 0px 10px;
    width:90%;
    border-radius: 8px;
    margin:0 auto;
}
.account_box .close {
    top:-60px;
    right: 0;
}
.account_box ul {
    padding:7px 0;
}
.account_box ul li,
.account_box ul li strong{
    padding:7px 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
.account_box .calltext {
    font-size: 13px;
}
.account_box .calltext span {
    font-size: 11px;
    display: block;
}
.callacc {
    display: flex;
    font-family: 'maru_l';
}
.callacc input {
    border: 0;
    width: 140px;
    text-align: center;
    background: none;
    font-size: 14px;
    padding: 3px 0;
    color: #222;
}
.callacc button {
    width: 57px;
    border-radius: 3px;
    font-size: 12px;
    padding:3px;
    display: inline-block;
    background: none;
}
.blue_line {
    border:1px solid #678edb;
    color: #678edb;
}
.pink_line {
    border:1px solid #e9a3a3;
    color: #e9a3a3;
}
.copylight {
    margin: 60px 0;
}
.copylight strong {
    font-size: 13px;
    font-weight: 300;
    display: block;
    padding: 10px 0 0 0;
    color: #aaa;
}

#kakao-link-btn {
    display: flex;
    padding: 5px 0;
    border: 1px solid #fae100;
    border-radius: 30px;
    width: 200px;
    margin: 0 auto;
    color: #3c1e1e;
    justify-content: center;
    align-items: center;
    background: #fae100;
    font-size: 13px;
    font-weight: 600;
}

#timer {
    font-size: 25px;
    display: flex;
    justify-content: center;
    width: 70%;
    margin: 30px auto 0;
}
.d_txt {
    padding-top: 30px;
    font-size: 16px;
    font-weight: 300;
}
/* #timer .d_color {
    color: #b32223;
}*/
#timer div {
    width:25%;
    display: flex;
    flex-direction: column;
}
#timer span {
    color: #555;
    font-size: 13px;
    margin-top:10px;
    font-family: 'maru_b';
}

.flower a {
    width: 60%;
    margin: 20px auto;
    border: 1px solid #ebe2e2;
    background: #f3ebeb;
    display: inline-block;
    border-radius: 30px;
    padding: 13px 0px;    font-size: 14px;
}

@media screen and (max-width:480px) {
    .days_cal {
        width: 300px;
        margin: 0 auto;
    }
    .days_cal .days_num .on:before {
        left:0px;
    }
}


#petalCanvas {
      position: fixed;
      inset: 0;
      width: 100%;
      height: 100%;
      pointer-events: none; /* 클릭 막지 않기 */
      z-index: 9999;        /* 최상단 */
    }

    /* 접근성: 모션 최소화 */
    @media (prefers-reduced-motion: reduce) {
      #petalCanvas { display: none; }
    }


/* 기본: 안 보이는 상태 */
.reveal {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .8s ease, transform .8s ease;
  will-change: opacity, transform;
}

/* 보이는 상태 */
.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* 순서대로(하나씩) 딜레이 주기: 필요 개수만큼 늘리세요 */
.reveal:nth-child(1) { transition-delay: 0ms; }
.reveal:nth-child(2) { transition-delay: 120ms; }
.reveal:nth-child(3) { transition-delay: 240ms; }
.reveal:nth-child(4) { transition-delay: 360ms; }
.reveal:nth-child(5) { transition-delay: 480ms; }

/* 접근성 */
@media (prefers-reduced-motion: reduce) {
  .reveal { transition: none; transform: none; opacity: 1; }
}


/* 참석의사 */
.page{
  margin:0 auto;
  padding:24px 14px 60px;
}
/* modal */
.overlay{
  position:fixed;
  inset:0;
  background:var(--bg);
  display:none;
  align-items:center; 
  justify-content:center;
  padding:14px;
  z-index:9999;
}
.overlay.show{ display:flex; }

.modal{
  width:min(520px, 100%);
  background:#f7f5f5;
  border-radius:22px;
  box-shadow:0 18px 60px rgba(0,0,0,.25);
  transform: translateY(10px);
  animation: up .18s ease-out forwards;
}
@keyframes up { to { transform: translateY(0); } }

.modal-header{
  padding:16px 16px 12px;
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.modal-title{
  font-size:16px;
  font-weight:900;
  letter-spacing:-0.2px;
}
.icon-btn{
      top: -40px;
    right: 0;
    border: 1px solid #ccc;
    padding: 4px 10px;
    border-radius: 3px;
    background: #fff;
}

.modal-body{
  padding:14px 16px 16px;
  max-height: calc(100vh - 180px);
  overflow:auto;
}

.section{
  margin-bottom:14px;
}
.label{
  font-size: 14px;
    color: var(--muted);
    margin: 6px 2px 8px;
    text-align: left;
}

.seg{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.seg button{
  flex: 1 1 0;
  min-width: 90px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--text);
  border-radius:14px;
  padding:12px 10px;
  cursor:pointer;
}
.seg button.active{
  border-color: rgba(43,108,176,.55);
  box-shadow: 0 0 0 4px rgba(43,108,176,.12);
  color: var(--accent);
}
.seg button.active.ok{ color: var(--accent2); border-color: rgba(31,138,112,.55); box-shadow:0 0 0 4px rgba(31,138,112,.12);}
.seg button.active.no{ color: var(--danger); border-color: rgba(214,69,69,.55); box-shadow:0 0 0 4px rgba(214,69,69,.12);}

input, textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px 12px;
  font-size:14px;
  outline:none;
  background:#fff;
}
textarea{ min-height:84px; resize:vertical; line-height:1.5; }
input:focus, textarea:focus{
  border-color: rgba(43,108,176,.5);
  box-shadow: 0 0 0 4px rgba(43,108,176,.12);
}

.agree-row{
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin-top:10px;
  padding-top:12px;
  border-top:1px dashed var(--line);
}
.agree-row input[type="checkbox"]{
  width:18px; height:18px; margin-top:2px;
}
.agree-text{
  font-size:13px;
  color:var(--text);
  line-height:1.4;
}
.agree-text .req{ color:var(--danger); font-weight:900; margin-right:4px; }
.agree-text a{
  color:var(--accent);
  text-decoration:none;
  padding-bottom:1px;
}

.modal-footer{
  padding:17px 0;
  border-top:1px solid var(--line);
  background:#f3dfdf;
  display:flex;
  gap:10px;
}
.btn-secondary{
  border:1px solid var(--line);
  color:#ab9999;
  flex: 1;
    background: none;
    font-size: 15px;
}
.btn-primary{
  background:var(--accent);
  flex: 2;
    font-size: 15px;
    color: #413838;
    font-weight: 600;
}
.hint{
  margin-top:10px;
  font-size:12px;
  color:var(--muted);
}

/* consent modal (small) */
.consent-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.55);
  display:none;
  align-items:center;
  justify-content:center;
  padding:14px;
  z-index:10000;
}
.consent-overlay.show{ display:flex; }

.consent{
  width:min(520px, 100%);
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 18px 60px rgba(0,0,0,.28);
}
.consent-header{
  padding:14px 16px 12px;
  border-bottom:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.consent-title{
  font-size:15px;
  font-weight:900;
}
.consent-body{
  padding:14px 16px 16px;
  font-size:13px;
  line-height:1.55;
  white-space:pre-wrap;
}
.consent-footer{
  padding:12px 16px 16px;
  border-top:1px solid var(--line);
}
.btn-close{
  width:100%;
  background:var(--accent);
  color:#fff;
}