.sub_title{
    text-align: center;
    color: #888;
    font-size:30px;
    font-weight:500;
    line-height: normal;
    letter-spacing: 3px;
    margin:0px 0px 50px 0px;
}
.sub_title > span{
    color: #777;
    font-size:15px;
    line-height: normal;
    display:inline-block;
    padding:0px 0px 0px 23px;
}
@media screen and (max-width: 768px){
    h2.main_title{margin-bottom:30px}
    .sub_title{
        padding:0px 0px 30px 0px;
        display: flex;
        gap: 5px;
        flex-direction: column;
        align-items: center;
        align-self: stretch;
        font-size: 21.6px;
        line-height: normal;
        letter-spacing:2.25px;
        margin:0px;
    }
    .sub_title > span{
        padding:0px;
        font-size: 11px;
    }
}


.about-box{
    display: flex;
    padding: 40px 0 60px 0;
    flex-direction: column;
    align-items: center;
    gap: 30px;
    align-self: stretch;
    color:#555;
}
.about-box > h3{
    font-size: 23px;
    font-weight: 400;
    line-height: 36px;
    letter-spacing: 0.92px;
    text-align: center;
    margin:0px;
}
.about-box > p{
    text-align: center;
    font-size: 15px;
    font-weight:normal;
    line-height:24px;
    letter-spacing: 0.6px;
    margin:0;
    padding:0;
}
@media screen and (max-width: 768px){
    .about-box{
        padding:30px 0px 40px 0px;
        gap: 20px;
    }
    .about-box > h3{
        font-size:18px;
        line-height: 30px;
    }
    .about-box > p{
        font-size: 13px;
        line-height: 26px;
    }
}

.genre{
    background: #DBCCB5;
    padding: 20px 0;
    flex-direction: column;
    align-items: center;
    align-self: stretch;
}
.genre-box{
    display: flex;
    max-width: 1000px;
    justify-content: center;
    align-items: flex-start;
    gap: 70px;
    align-self: stretch;
    margin:auto;
}
.genre-box > div{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap:10px;
}
.genre-box > div > h4{
    width: 240px;
    padding: 2px 0;
    margin:0;
    flex-direction: column;
    align-items: center;
    background-color: #FFF;
    text-align: center;
    color: #555;
    font-size: 18px;
    letter-spacing: 1.5px;
}
.genre-box > div > p{
    color:#555;
    text-align: center;
    font-size: 15px;
    letter-spacing: 1.5px;
    padding: 0;
    margin:0;
}
.genre > .check{
    text-align: center;
    color: #555;
    font-size: 13px;
    line-height: normal;
    padding:0;
    margin:0;
}
@media screen and (max-width: 768px){
    .genre{
        padding: 25px 0 15px 0;
        gap: 10px;
        flex-direction: column;
        align-items: center;
        flex-wrap: wrap;
    }
    .genre-box{
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }
    .genre-box > div > h4{
        color: #444;
        font-size: 17px;
        line-height: normal;
        letter-spacing:1.5px;
    }
    .genre-box > div > p{
        color: #444;
        font-size:15px;
        line-height: normal;
        letter-spacing:1.5px;
    }
    .genre > .check{
        font-size: 11px;
        line-height: normal;
        padding:10px 0px 0px 0px;
    }
}

.party-plan{
    display: flex;
    padding: 40px 0 60px 0;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    align-self: stretch;
}
.party-plan > h3{
    color: #555;
    text-align: center;
    font-size: 24px;
    line-height: normal;
    font-weight:400;
    letter-spacing: 1.5px;
    margin:0;
    padding:0;
}
.party-plan .main-img{
    display:inline-block;
    vertical-align: bottom;
}
.party-plan > h4{
    margin:0;
    padding:0;
    color: #555;
    text-align: center;
    font-size: 20px;
    font-weight: 400;
    line-height:28px;
    letter-spacing: 0.8px;
}
.party-plan > .plan{
    display: flex;
    align-items: center;
    gap: 30px;
}
.party-plan > .plan > h5{
    display: flex;
    padding: 6px 15px 7px 15px;
    justify-content: center;
    align-items: center;
    margin:0;
    background: #DBCCB5;
    color: #555;
    text-align: center;
    font-size: 17px;
    line-height: normal;
    letter-spacing:1.65px;
    font-weight: normal;
}
.party-plan .check{
    color: #555;
    text-align: center;
    font-size: 13px;
    line-height: normal;
    padding:0;
    margin:-10px 0px 0px 0;
}
.party-plan .title{
    width: 222px;
    padding: 3px 1px;
    flex-direction: column;
    align-items: center;
    border-radius: 20px;
    border: 1px solid #DBCCB5;
    text-align: center;
    color: #555;
    font-size:18px;
    line-height: normal;
    letter-spacing: 1.8px;
    padding:0;
    margin:0;
}
.party-plan .plan-list{
    color: #555;
    font-size: 18px;
    line-height:28px;
    letter-spacing: 0.72px;
    padding:0px;
    margin:0px;
}
.party-plan .plan-list > li{padding:0px 0px 4px 0px;}
.party-plan .plan-list > li > span{
    display:inline-block;
    position: relative;
}
.party-plan .plan-list > li > span::after{
    content:"";
    width: 48px;
    height: 22px;
    display: block;
    background-image: url(../images/hermitage-party/paid_icon.svg);
    background-size: cover;
    position:absolute;
    top:0;
    bottom:0;
    right:-58px;
    margin:auto;
}
.party-plan .plan-list > .free > span::after{background-image: url(../images/hermitage-party/free_icon.svg);}
@media screen and (max-width: 768px){
    .party-plan{
        padding:30px 0px;
        gap:30px;
    }
    .party-plan > h3{
        font-size:18px;
        letter-spacing:1.5px;
    }
    .party-plan .main-img{width:100%;}
    .party-plan .main-img img{width:100%;}
    .party-plan > h4{
        font-size: 18px;
        line-height: normal;
        letter-spacing: 1px;
    }
    .party-plan > .plan{
        flex-direction: column;
        align-items: center;
        gap: 20px;
    }
    .party-plan > .plan > h5{
        color: #444;
        font-size: 16px;
        line-height: normal;
        letter-spacing: 1.65px;
    }
    .party-plan .check{
        font-size: 11px;
        line-height: 16px;
    }
    .party-plan .title{margin-top:20px;}
    .party-plan .plan-list{
        font-size: 13px;
        line-height: normal;
    }
    .party-plan .plan-list > li > span::after{
        width: 38px;
        height: 17px;
        right: -45px;
    }
}

.plan-detail > h3{
    background: #DBCCB5;
    padding: 6px 0px 5px 0px;
    margin:0px;
    color: #555;
    text-align: center;
    font-size: 18px;
    line-height: normal;
    letter-spacing: 1.75px;
}
.plan-detail > h3 > span{
    font-size: 14px;
    line-height: normal;
    padding:0px 0px 0px 35px;
    display:inline-block;
    font-weight: 400;
}
ul#tab{
    padding:60px 0px 0px 0px;
    margin:0px auto;
}
.menu_box{
    padding:40px 0px;
    text-align:center;
    display:none;
}
div.active{display: block;}
.menu_box > h4{
    color: #A99664;
    text-align: center;
    font-size: 23px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 2.25px;
    margin:0;
    padding:0px 0px 10px 0px;
    position: relative;
}
.menu_box > h4 > span{
    display: block;
    font-size: 16px;
    line-height: normal;
}
.menu_box > h4::after{
    content:"";
    display: block;
    width: 72px;
    height: 2px;
    background: #DBCCB5;
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    margin:auto;
}
.menu_box .menu-list{
    list-style:none;
    padding:15px 0 35px 0px;
    margin:0;
}
.menu_box .menu-list li{
    color: #555;
    font-size:15px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 1.5px;
    padding-bottom:2px;
}
.free-drink{
    width:99%;
    max-width:1000px;
    border: 1px solid #DBCCB5;
    margin:0px auto;
    padding:30px 0px 40px 0px;
}
.free-drink > h4{
    color: #A99664;
    font-size: 22px;
    text-align: center;
    font-weight: 500;
    line-height: normal;
    padding:0px;
    margin: 0px;
}
.free-drink > .drink{
    padding:24px 0px 0px 0px;
    margin:0 auto;
    color: #444;
    font-size:15px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 1.5px;
    list-style:none;
    display: grid;
    width: 856px;
    column-gap: 24px;
    grid-template-columns: repeat(4,fit-content(100%));
    grid-template-rows: repeat(4,fit-content(100%));
}
.free-drink > .drink li{width: 200px;}
.plan-detail .check{
    color: #555;
    font-size: 13px;
    font-weight: 500;
    line-height: normal;
    text-align: center;
    padding:0px;
    margin:30px 0px 0px 0px; 
}
@media screen and (max-width: 768px){
    .plan-detail > h3{
        padding: 10px 0;
        flex-direction: column;
        align-items: center;
        gap: 5px;
        align-self: stretch;
        color: #444;
        font-size: 17px;
        line-height: normal;
        letter-spacing: 1.75px;
    }
    .plan-detail > h3 > span{
        padding: 0;
        color: #444;
        font-size: 10px;
        font-weight: var(--font-weight-500, 500);
        line-height: normal;
        display: block;
    }
    ul#tab{
        padding:15px 0px 0px 0px;
        color: #555;
        font-size: 8px;
        font-weight: 500;
        line-height: normal;
    }
    .menu_box{
        padding: 30px 0px 0px 0px;
        gap: 30px;
    }
    .menu_box > h4{
        font-size: 18px;
        line-height: normal;
        letter-spacing:1.65px;
    }
    .menu_box > h4 > span{
        font-size: 13px;
        line-height: normal;
        letter-spacing: 1.65px;
    }
    .menu_box > h4::after{display:none;}
    .menu_box .menu-list li{
        font-size:15px;
        font-weight: normal;
        line-height: normal;
        letter-spacing:1.5px;
    }
    .free-drink{
        width:calc(100% - 50px);
        padding:20px 0px;
    }
    .free-drink > h4{
        font-size: 18px;
        line-height: normal;
    }
    .free-drink > .drink{
        display:block;
        padding:25px 0px 0px 50px;
        width:calc(100% - 50px);
    }
    .free-drink > .drink li{
        font-size:15px;
        font-weight: normal;
        width:100%;
        padding-bottom:4px;
    }
    .plan-detail .check{
        font-size:11px;
        line-height: 16px;
    }
}