@charset "utf-8";

.mt32{
    margin-top: 32px !important;
}
.mt52{
    margin-top: 52px !important;
}
.mb12{
    margin-bottom: 12px !important;
}
.fz42{
    font-size: 42px !important;
}
.fz56{
    font-size: 56px !important;
}
.fz58{
    font-size: 58px !important;
}
.line-height_26{
    line-height: 26px !important;
}
.line-height_20{
    line-height: 20px !important;
}
.notes_fz16_number {
    font-size: 16px;
    line-height: 27px;
    color: #333;
    text-align: center;
}
.col_D71920{
    color: #D71920;
}
@media screen and (max-width: 767px) {
    .notes_fz16_number {
        font-size: 12px !important;
        line-height: 20px;
    }
    .mt4_sp{
        margin-top: 4px !important;
    }
    .mb8_sp{
        margin-bottom: 8px !important;
    }
    .mt16_sp{
        margin-top: 16px !important;
    }
    .mb60_sp{
        margin-bottom: 60px !important;
    }
    .mt32_sp{
        margin-top: 32px !important;
    }
    .pb60_sp{
        padding-bottom: 60px !important;
    }
    .pt60_sp{
        padding-top: 60px !important;
    }
}
.sp_dis{
    display: none;
}
.tab_dis{
    display: none;
}
@media screen and (max-width: 767px) {
    img{
        max-width: 100%;
    }
    .sp_dis{
        display: block !important;
    }
}
@media screen and (min-width: 768px) and (max-width: 1040px) {
    img{
        width: 100%;
        max-width: unset;
    }
    .pc_dis{
        display: block !important;
    }
    .sp_dis{
        display: none !important;
    }
    .tab_dis{
        display: block !important;
    }
}
@media screen and (min-width: 1041px){
    .pc_dis{
        display: block !important;
    }
}
.inner_1040{
    max-width: 1040px;
    margin: 0 auto;
    height: auto;
}
.inner_958{
    max-width: 958px;
    margin: 0 auto;
    height: auto;
}
@media screen and (max-width: 767px) {
    .inner_339_sp{
        max-width: 339px;
    }
    .inner_345_sp{
        max-width: 345px;
    }
}
.disF_c{
    display: flex;
    justify-content: center;
}

.feature-box:nth-child(even) .cell-text {
    background-color: #EADDCB;
}
  
.feature-box:nth-child(odd) .cell-text {
    background-color: #FFFAF3;
}

.cp_date_fz24{
    font-size: 24px;
}
@media screen and (max-width: 767px) {
    .fz22_sp{
        font-size: 22px !important;
    }
}
.color_720000{
    color: #720000;
}

.c-kv {
    width: 100%;
}
.c-kv__inner {
    width: 100%;
}
.c-kv__main-image {
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-kv__main-image{
        padding-top: 50px;
    }
}
@media screen and (min-width: 768px) and (max-width: 1040px) {
    .header_official_kw{
        position: unset !important;
        background-color: #fff;
        border-bottom: 1px solid #aaa;
    }
    nav.header_nav_dropdown ul.ul_in_dropdown{
        justify-content: normal !important;
    }
}
#c-price{
    background: #FFFFFF;
}
.c-price__container{
    position: relative;
    background: #FBF0E1;
    display: flex;
    height: 200px;
    padding: 50px 24px 20px 24px;
    text-align: left;
    border-radius: 12px;
    gap: 24px;
}
.c-price__container.no_cp{
    padding: 32px 24px 32px 24px;
}
@media screen and (max-width: 767px) {
    .c-price__container{
        height: auto;
        flex-direction: column;
        padding: 24px 16px;
        gap: 16px;
    }
}
.c-price__label{
    position: absolute;
    top: -80px;
    left: 50%;
    transform: translateX(-50%);
}
.c-price__label-text{
    display: flex;
    justify-content: center;
    gap: 12px;
    align-items: center;
    margin-bottom: 7px;
}
.c-price__label-text::before{
    content: "";
    width: 26px;
    height: 2px;
    box-sizing: border-box;
    background-color: #333333;
    transform: rotate(60deg);
}
.c-price__label-text::after{
    content: "";
    width: 26px;
    height: 2px;
    box-sizing: border-box;
    background-color: #333333;
    transform: rotate(-60deg);
}
.c-price__label-text p{
    color: #333;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 28px;
}
.c-price__label .ribbon {
    display: inline-block;
    position: relative;
    height: 56px;
    text-align: center;
    box-sizing: border-box;
}
.c-price__label .ribbon:before {
    content: '';
    position: absolute;
    width: 69px;
    bottom: -25px;
    left: -54px;
    z-index: -2;
    border: 28px solid #FFDD00;
    border-left-color: transparent;
}
.c-price__label .ribbon:after {
    content: '';
    position: absolute;
    width: 69px;
    bottom: -25px;
    right: -54px;
    z-index: -2;
    border: 28px solid #FFDD00;
    border-right-color: transparent;
}
.c-price__label .ribbon p {
    display: inline-block;
    max-width: 552px;
    width: max-content;
    position: relative;
    margin: 0;
    padding: 12px 60px;
    background: #FD0;
    color: #D71920;
    text-align: center;
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%;
}
.c-price__label .ribbon p:before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 10px transparent;
    border-right: solid 15px #D6B900;
}
.c-price__label .ribbon p:after {
    position: absolute;
    content: '';
    top: 100%;
    right: 0;
    border: none;
    border-bottom: solid 10px transparent;
    border-left: solid 15px #D6B900;
}
@media screen and (min-width: 768px) and (max-width: 1040px) {
    .c-price__label{
        top: -67px;
    }
    .c-price__label-text p{
        font-size: 18px;
        line-height: 20px;
    }
    #c-price .c-price__label-text p .fz14_sp{
        font-size: 1.4rem !important;
    }
    .c-price__label-text::before,
    .c-price__label-text::after {
        width: 16px;
    }
    .c-price__label .ribbon{
        height: 56px;
    }
    .c-price__label .ribbon:before{
        width: 55px;
        bottom: -4px;
        left: -41px;
        border: 20px solid #FFDD00;
        border-left-color: transparent;
    }
    .c-price__label .ribbon:after{
        width: 55px;
        bottom: -4px;
        right: -41px;
        border: 20px solid #FFDD00;
        border-right-color: transparent;
    }
    .c-price__label .ribbon p{
        font-size: 18px;
        line-height: 20px;
    }
    .c-price__label .ribbon p .fz56{
        font-size: 32px !important;
    }
}
@media screen and (max-width: 767px) {
    .c-price__label {
        top: -68px;
    }
    .c-price__label-text {
        gap: 0px;
        margin-bottom: 6px;
    }
    .c-price__label-text::before,
    .c-price__label-text::after {
        width: 18px;
    }
    .c-price__label-text p {
        font-size: 18px;
        line-height: 20px;
    }
    .c-price__label .ribbon {
        height: 70px;
    }
    .c-price__label .ribbon:before {
        width: 49px;
        border: 22px solid #FFDD00;
        border-left-color: transparent;
        bottom: 7px;
        left: -33px;
    }
    .c-price__label .ribbon:after {
        width: 49px;
        border: 22px solid #FFDD00;
        border-right-color: transparent;
        bottom: 7px;
        right: -33px;
    }
    .c-price__label .ribbon p {
        max-width: 280px;
        font-size: 22px;
        padding: 8px 14px;
        line-height: 28px;
    }
    .c-price__label .ribbon p:before {
        border-bottom: solid 15px transparent;
        border-right: solid 16px #D6B900;
    }
    .c-price__label .ribbon p:after {
        border-bottom: solid 15px transparent;
        border-left: solid 16px #D6B900;
    }
    .c-price__label .ribbon p span{
        font-size: 36px !important;
    }
}

.c-price__head{
    flex-shrink: 0;
    align-items: center;
    display: flex;
    max-width: 628px;
    width: max-content;
    gap: 16px;
}
@media screen and (min-width: 768px) and (max-width: 1040px) {
    .c-price__head{
        max-width: 540px;
    }
}
@media screen and (max-width: 767px) {
    .c-price__head{
        flex-direction: column;
        gap: 16px;
        margin: 0 auto;
    } 
}
.c-price__img{
    max-width: 130px;
}
@media screen and (max-width: 767px) {
    .c-price__img{
        max-width: 100px;
    }
}
.c-price__img img{
    width: 100%;
}
.c-price__head .c-price__detail{
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.c-price__head .c-price__detail .c-price__detail__txt{
    font-size: 24px;
    font-weight: 600;
    line-height: 32px;
}
@media screen and (max-width: 767px) {
    .c-price__head .c-price__detail .c-price__detail__txt{
        text-align: center;
        font-size: 18px;
        line-height: 26px;
    }
}
.c-price__head .c-price__detail .c-price__detail__price{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
}
.c-price__head .c-price__detail .c-price__detail__price_cp{
    display: flex;
    gap: 8px;
}
.c-price__head .c-price__detail .c-price__detail__price p{
    font-size: 20px;
    font-weight: 700;
    line-height: 24px;
}
.c-price__head .c-price__detail .c-price__detail__price img{
    width: 21px;
}
@media screen and (max-width: 767px) {
    .c-price__head .c-price__detail .c-price__detail__price{
        text-align: center;
        flex-direction: column;
    }
    .c-price__head .c-price__detail .c-price__detail__price img{
        width: 15px;
    }
    .c-price__head .c-price__detail .c-price__detail__price p{
        font-size: 42px !important;
        line-height: 36px !important;
    }
}
@media screen and (min-width: 768px) and (max-width: 1040px) {
    .c-price__img{
        max-width: 100px;
    }
    .c-price__container{
        padding: 30px 24px 16px 24px;
        gap: 12px;
    }
    .c-price__container.no_cp{
        padding: 16px 24px;
    }
    .c-price__head .c-price__detail .c-price__detail__txt{
        font-size: 18px;
        line-height: 20px;
    }
    .c-price__head .c-price__detail .c-price__detail__price{
        font-size: 32px;
        line-height: 32px;
    }
    #c-price .c-price__head .c-price__detail .c-price__detail__price .fz24_sp{
        font-size: 2.4rem !important;
    }
    #c-price .c-price__head .c-price__detail .c-price__detail__price .fz22_sp{
        font-size: 2.2rem !important;
    }
    .c-price__head .c-price__detail .c-price__detail__price_cp p{
        font-size: 40px !important;
    }
    .c-price__head .c-price__detail .c-price__detail__price img{
        width: 17px;
    }
}
.c-price__body{
    width: 100%;
    align-items: center;
    display: flex;
    justify-content: center;
    border-left: 2px solid var(--gray, #EDE3E3);
}
@media screen and (max-width: 767px) {
    .c-price__body{
        border: none;
    }
}
.c-price__body .c-price__detail{
    width: 100%;
    padding-left: 24px;
}
@media screen and (min-width: 768px) and (max-width: 1040px) {
    .c-price__body .c-price__detail{
        padding-left: 12px;
    }
}
@media screen and (max-width: 767px) {
    .c-price__body .c-price__detail{
        padding-left: 0;
    }
}
.c-price__body .l-price__detail__btn_top{
    display: flex;
    height: 61px;
    position: relative;
    padding: 0 24px 0 32px;
    align-items: center;
    border-radius: 100px;
    background: #D71920;
    box-shadow: 0 6px 0 0 rgba(215, 25, 32, 0.15);
    color: #FFF;
    font-size: 24px;
    font-weight: 500;
    text-decoration: none;
    justify-content: center;
}
.c-price__body .l-price__detail__btn_top::before{
    display: inline-block;
    position: absolute;
    left: 12px;
    vertical-align: middle;
    content: "";
    width: 1.5em;
    height: 1.5em;
    background-image: url(/assets/images/icon/2025/icon_btn_buy.svg);
    background-repeat: no-repeat;
    background-size: contain;
}
.c-price__body .l-price__detail__btn_top:hover{
    -webkit-transform: translateY(6px);
    -moz-transform: translateY(6px);
    transform: translateY(6px);
    opacity: 0.8;
    color:#fff;
    box-shadow: 0 1px 0 0 rgba(215, 25, 32, 0.15);
    transition: all 0.2s;
}
@media screen and (min-width: 768px) and (max-width: 900px) {
    .c-price__body .l-price__detail__btn_top{
        line-height: 24px;
        padding: 5px 0 5px 50px;
    }
}
@media screen and (min-width: 768px) and (max-width: 840px) {
    .c-price__head .c-price__detail .c-price__detail__price{
        flex-direction: column;
        align-items: flex-start;
    }
    .c-price__body .l-price__detail__btn_top{
        padding: 5px 0 5px 20px;
    }
}
@media screen and (max-width: 767px) {
    .c-price__body .l-price__detail__btn_top{
        font-size: 24px;
        line-height: 20px;
        height: 46px;
    }
    .c-price__body .l-price__detail__btn_top::before{
        width: 32px;
        height: 32px;
    }
}
.c-price__body .l-price__detail__btn_bottom{
    display: flex;
    height: 54px;
    padding: 0 24px 0 12px;
    align-items: center;
    gap: 8px;
    align-self: stretch;
    border-radius: 100px;
    border: 2px solid var(--TREND-RED, #D71920);
    background: #FFF;
    box-shadow: 0 6px 0 0 rgba(215, 25, 32, 0.15);
    color: var(--TREND-RED, #D71920);
    font-size: 20px;
    font-weight: 500;
    text-decoration: none;
    justify-content: center;
    width: fit-content;
    margin: 0 auto;
}
.c-price__body .l-price__detail__btn_bottom::before{
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: 1.5em;
    height: 1.5em;
    background-image: url(/assets/images/icon/2025/icon_btn_buy.svg);
    background-repeat: no-repeat;
    background-size: contain;
}
@media screen and (max-width: 767px) {
    .c-price__body .l-price__detail__btn_bottom{
        height: 46px;
        font-size: 16px;
        line-height: 20px;
    }
}
.c-price__head.no_cp{
    width: 100%;
}
@media screen and (min-width: 768px) and (max-width: 900px) {
    .c-price__head.no_cp{
        width: 65%;
    }
}
@media screen and (max-width: 767px) {
    .c-price__head.no_cp{
        width: max-content;
    }
}

.title{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}
.title h2{
    color: #094977;
    text-align: center;
    font-size: 44px;
    font-style: normal;
    font-weight: 600;
    line-height: 62px;
    padding: 0;
}
@media screen and (min-width: 768px) and (max-width: 1040px) {
    .title h2{
        font-size: 40px;
        line-height: 56px;
        white-space: nowrap;
        flex-shrink: 0;
    }
}
@media screen and (max-width: 767px) {
    .title{
        max-width: 345px;
        margin: 0 auto;
    }
    .title h2{
        font-size: 24px;
        line-height: 32px;
    }
}
.center-line{
    max-width: 300px;
    width: 0;
    height: 2px;
    background-color: #094977;
    flex-grow: 1;
}
#c-movie .taC.mt32{
    max-width: 820px;
    width: 100%;
    margin: auto;
}
#c-movie .taC.mt32 iframe{
    border-radius: 12px;
    aspect-ratio: 16 / 9;
    width: 100%;
    height: 100%;
}
@media screen and (max-width: 767px) {
    #c-movie .taC.mt32{
        max-width: 345px;
    }
}
.movie-text{
    font-size: 20px;
    line-height: 36px;
    width: 100%;
    font-weight: 600;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .movie-text{
        font-size: 18px;
        line-height: 30px;
        white-space: nowrap;
    }
}
.movie-text-box{
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
}
.movie-text-box p{
    text-align: center;
}
@media screen and (max-width: 767px) {
    .movie-text-box{
        max-width: 345px;
        margin: 0 auto;
    }
    .movie-text-box .fz14_sp{
        text-align: left;
        line-height: 26px;
    }
}
.movie-btn{
    display: flex;
    width: 351px;
    height: 63px;
    position: relative;
    align-items: center;
    border: 2px solid var(--Trend-RED, #D71920);
    box-shadow: 0 6px 0 0 rgba(215, 25, 32, 0.15);
    border-radius: 100px;
    background: #FFF;
    color: #333;
    font-size: 28px;
    font-weight: 500;
    text-decoration: none;
    justify-content: center;
    padding: 8px 8px 8px 32px;
    margin: 0 auto;
}
.movie-btn:hover{
    color: #333;
    -webkit-transform: translateY(4px);
    -moz-transform: translateY(4px);
    transform: translateY(4px);
    box-shadow: 0 1px 0 0 rgba(215, 25, 32, 0.15);
    transition: all 0.2s;
}
.movie-btn::before{
    display: inline-block;
    position: absolute;
    left: 8px;
    vertical-align: middle;
    content: "";
    width: 47px;
    height: 47px;
    background-image: url(/assets/images/icon/2026/icon_play.svg);
    background-repeat: no-repeat;
    background-size: contain;
}
@media screen and (max-width: 767px) {
    .movie-btn{
        max-width: 345px;
        width: 100%;
        height: 48px;
        font-size: 24px;
    }
    .movie-btn::before{
        width: 32px;
        height: 32px;
    }
}

#c-zero .sub-title{
    display: flex;
    padding: 12px 32px;
    justify-content: center;
    align-items: center;
    border-radius: 12px;
    background: var(--brown1, #FBF0E1);
    color: var(--blue1, #094977);
    font-size: 32px;
    font-weight: 700;
    line-height: normal;
    margin-bottom: 40px;
}
#c-zero .zero-text{
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    line-height: 36px;
}
#c-zero > div > div > div:nth-child(3) > p.zero-text{
    max-width: 830px;
    margin: auto;
}
#c-zero .zero-img01{
    max-width: 624px;
    width: 100%;
    border-radius: 12px;
}
#c-zero .zero-img02{
    max-width: 850px;
    width: 100%;
    border-radius: 12px;
    margin: auto;
}
@media screen and (max-width: 767px) {
    #c-zero .sub-title{
        max-width: 345px;
        margin: 0 auto 24px;
        padding: 8px 24px;
        text-align: center;
        font-size: 20px;
        line-height: 32px;
    }
    #c-zero .zero-text{
        font-size: 18px !important;
        line-height: 30px;
        white-space: nowrap;
    }
}

#c-features{
    background: #FBF0E1;
    padding: 80px 0 15px;
}
#c-features .disF_c{
    gap: 30px;
    margin: 60px auto;
    max-width: 1040px;
    flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
    #c-features{
        padding: 60px 0;
    }
    #c-features .disF_c{
        max-width: 345px;
        gap: 32px;
        margin-bottom: 0;
        margin-top: 32px;
    }
}
.c-feature-list{
    max-width: 505px;
    width: 100%;
    background: #fff;
    border-radius: 8px;
    display: flex;
    align-items: flex-start;
    padding: 12px 20px 20px 20px;
}
@media screen and (max-width: 767px) {
    .c-feature-list{
        padding: 24px 16px;
    }
    .list-imgbox{
        text-align: center;
    }
}
.c-feature-list .list-imgbox img{
    max-width: 465px;
    width: 100%;
}
@media screen and (max-width: 767px) {
    .c-feature-list .list-imgbox img{
        max-width: 305px;
        width: 100%;
    }
}
.c-feature-list .list-textbox{
    display: flex;
    flex-direction: column;
    gap: 16px;
}
@media screen and (max-width: 767px) {
    .c-feature-list .list-textbox{
        gap: 16px;
    }
}
.c-feature-list .feature-subtitle{
    display: flex;
    align-items: center;
    gap: 12px;
}
.c-feature-list .feature-subtitle .fz22{
    color: var(--blue1, #094977);
}
.feature-subtitle .feature-num{
    padding: 16px 12px 15px 12px;
    border-radius: 6px;
    background: #094977;
    color: #FFF;
    font-size: 40px;
    font-weight: 700;
    line-height: 26px;
}
.c-feature-list .feature-text{
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.c-feature-list .feature-text ul li{
    color: #666;
}
#c-features > div > div > div.taC > a{
    padding: 12px 54px;
    align-items: center;
    text-decoration: none;
    border-radius: 100px;
    border: 2px solid #D71920;
    background: #FFF;
    box-shadow: 0 6px 0 0 rgba(215, 25, 32, 0.15);
}
.feature-btn{
    display: flex;
    width: 470px;
    padding: 16px 24px;
    justify-content: center;
    align-items: center;
    border-radius: 100px;
    background: var(--button_gray, #777);
    box-shadow: 0 6px 0 0 rgba(119, 119, 119, 0.25);
    margin: 0 auto 80px;
    color: #FFF;
    font-size: 22px;
    font-weight: 500;
    line-height: 32px;
    text-decoration: none;
    position: relative;
}
.feature-btn:hover{
    -webkit-transform: translateY(4px);
    -moz-transform: translateY(4px);
    transform: translateY(4px);
    color: #fff;
    box-shadow: 0 1px 0 0 rgba(119, 119, 119, 0.25);
    transition: all 0.2s;
}
.feature-btn::after{
    display: inline-block;
    position: absolute;
    right: 21px;
    vertical-align: middle;
    content: "";
    width: 12px;
    height: 21px;
    background-image: url(/assets/images/icon/2026/icon_arrow_r_fff.svg);
    background-repeat: no-repeat;
    background-size: contain;
}
@media screen and (max-width: 767px) {
    .feature-btn{
        max-width: 345px;
        width: 100%;
        padding: 12px 24px;
        font-size: 18px;
        line-height: 26px;
        margin: 24px auto 0;
    }
    .feature-btn::after{
        height: 18px;
    }
}

#c-family .family-text{
    font-size: 20px;
    font-weight: 600;
    line-height: 36px;
    margin-bottom: 8px;
}
@media screen and (max-width: 767px) {
    #c-family .family-text{
        font-size: 18px;
        line-height: 30px;
    }
}

.col_1{
    width: 100%;
    margin: 0;
    padding: 0;
}
.cp_content_frame{
    background-image: linear-gradient(to right, #436FFF 10%, #9D02EB 60%, #e81b10);
    width: 100%;
    height: 175px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 10px;
}
@media screen and (min-width: 768px) and (max-width: 1040px) {
    .cp_content_frame{
        height: 190px;
    }
}
@media screen and (max-width: 767px) {
    .cp_content_frame{
        height: 208px;
        margin: 0 auto;
    }
}
.cp_content_box{
    width: calc(100% - 6px);
    height: 169px;
    background: #fff;
    border-radius: 7px;
    font-weight: 600;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
}
.cp_date_box .txt_grad{
    line-height: 54px;
}
@media screen and (min-width: 768px) and (max-width: 1040px) {
    .cp_date_box{
        text-align: center;
    }
    .cp_content_box{
        height: 184px;
    }
}
@media screen and (max-width: 767px) {
    .cp_content_box{
        height: 202px;
    }
    .cp_date_box{
        text-align: center;
        font-size: 15px;
    }

}
.cp_content_frame > p.cp_content_box{
    text-align: center;
    color: #000;
}
@media screen and (max-width: 767px) {
    .cp_content_frame > p.cp_content_box{
        flex-direction: column;
        gap: 4px;
    }
}
.cp_date_box .txt_grad{
    color: #436fff !important;
    background: linear-gradient(0deg, var(--color-blue-63, #436FFF) 10%, var(--color-violet-46, #9D02EB) 60%, var(--color-red-49, #E81B10) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 767px) {
    .cp_date_box span.txt_grad{
        margin: 8px 0 !important;
        font-size: 30px !important;
        line-height: 48px;
    }
    .cp_date_box span.txt_grad .fz58{
        font-size: 42px !important;
    }
}
.cp_content_frame > .cp_content_box div.cp_date_box{
    text-align: center;
    color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
@media screen and (max-width: 767px) {
    .cp_content_frame > .cp_content_box div.cp_date_box{
        flex-direction: column;
    }
}
.cp_content_frame > .cp_content_box div.cp_date_box p:nth-of-type(1){
    line-height: 2em;
    background: #f7f7f7;
    border-radius: 1em;
    padding: 0em 0.5em;
    color: #808080;
}
@media screen and (max-width: 767px) {
    .cp_content_frame > .cp_content_box div.cp_date_box p:nth-of-type(1){
        font-size: 14px;
        line-height: 28px;
        padding: 0 8px;
        border-radius: 16px;
    }
    .cp_content_frame > .cp_content_box div.cp_date_box p:nth-of-type(2){
        font-size: 18px !important;
    }
}
.table-compare-sep{
    border-spacing: 8px 4px;
    border-collapse: separate;
    width: 1040px;
    table-layout: fixed;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .table-compare-sep{
        width: 655px;
    }
}
table > thead > tr > th:nth-child(1){
    background: #fff;
    position: sticky;
    left: 8px;
    z-index: 50;
    width: 300px;
}
table > thead > tr > th:nth-child(1)::before{
    content: "";
    position: absolute;
    width: 8px;
    height: 110%;
    background: #fff;
    top: 0;
    left: -8px;
}
@media screen and (max-width: 767px) {
    table > thead > tr > th:nth-child(1){
        width: 135px;
    }
}

.feature-description{
    display: table-cell !important;
    background: #FBF0E1;
    padding: 20px !important;
    vertical-align: middle;
    position: sticky;
    left: 8px;
    z-index: 50;
}
.feature-description::before{
    content: "";
    position: absolute;
    width: 8px;
    height: 100%;
    background: #fff;
    top: 0;
    left: -8px;
}
tr:nth-child(1) th.feature-description{
    background: #094977;
}
@media screen and (max-width: 767px) {
    .feature-description{
        padding: 8px !important;   
    }
    tr:nth-child(1) th.feature-description{
        padding: 12px 8px !important;
    }
}
.feature-title{
    font-size: 16px;
    font-weight: 500;
    line-height: 26px;
    margin-bottom: 0 !important;
}
tr:nth-child(1) th.feature-description .feature-title{
    color: #FFF;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    line-height: 30px;
}
@media screen and (max-width: 767px) {
    .feature-title{
        font-size: 12px;
        line-height: 16px;
    }
    tr:nth-child(1) th.feature-description .feature-title{
        font-size: 16px;
        line-height: 22px;
    }
}
.title-cell{
    padding: 16px 0;
    width: 354px;
    border-radius: 12px 12px 0 0;
    background: var(--blue1, #094977);
}
.title-cell p{
    color: #FFF;
    text-align: center;
    font-size: 22px;
    font-weight: 600;
    line-height: 34px;
    margin-bottom: 0;
}
@media screen and (max-width: 767px) {
    .title-cell{
        width: 244px;
        padding: 12px 0;
    }
    .title-cell p{
        font-size: 20px;
        line-height: 32px;
    }
}
.cell-cv{
    padding: 24px 0 16px;
    border: 2px solid #DD3F5E;
    background: #FFFAF3;
    vertical-align: middle;
}
@media screen and (max-width: 767px) {
    .cell-cv{
        padding: 12px 0;
    }
}
.cell-cv p{
    font-size: 40px;
    font-weight: 700;
    line-height: 40px;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .cell-cv p{
        font-size: 28px;
        line-height: 28px;
        margin-bottom: 8px;
    }
}
.cell-cv .ribbon2{
    display: inline-block;
    max-width: 146px;
    width: 100%;
    position: relative;
    padding: 8px 32px;
    background: #FFDD00;
    color: #333;
    font-size: 20px;
    font-weight: 700;
    line-height: 20px;
    margin-bottom: 8px;
}
.cell-cv .ribbon2::before{
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 8px transparent;
    border-right: solid 24px #C6AB00;
}
@media screen and (max-width: 767px) {
    .cell-cv .ribbon2{
        max-width: 130px;
        padding: 4px 0;
        font-size: 16px;
    }
}
.cell-cv .ribbon2 .fz12{
    line-height: 12px !important;
}
.cell-cv .price_text_box{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
}
.cell-cv .normal_price{
    font-size: 16px;
    line-height: 22px;
}
.cell-cv .cp_price{
    font-size: 40px;
    line-height: 40px;
}
.cell-cv a{
    display: flex;
    position: relative;
    padding: 0px 6px 0 24px;
    max-width: 204px;
    margin: 0 auto;
    border-radius: 100px;
    border: 2px solid var(--TREND-RED, #D71920);
    background: var(--TREND-RED, #D71920);
    box-shadow: 0 4px 0 0 rgba(218, 66, 96, 0.15);
    text-decoration: none;
    color: #FFF;
    font-size: 20px;
    font-weight: 500;
    line-height: 36px;
    justify-content: center;
    align-items: center;
}
.cell-cv a::before{
    display: inline-block;
    position: absolute;
    left: 6px;
    vertical-align: middle;
    content: "";
    width: 28px;
    height: 28px;
    background-image: url(/assets/images/icon/2025/icon_btn_buy.svg);
    background-repeat: no-repeat;
    background-size: contain;
}
.cell-cv a:hover{
    -webkit-transform: translateY(4px);
    -moz-transform: translateY(4px);
    transform: translateY(4px);
    opacity: 0.8;
    color: #fff;
    box-shadow: 0 1px 0 0 rgba(215, 25, 32, 0.15);
    transition: all 0.2s;
}
@media screen and (max-width: 767px) {
    .cell-cv a{
        max-width: 204px;
        font-size: 18px;
        line-height: 23px;
        padding: 7px 6px 7px 24px;
    }
    .cell-cv a span{
        padding-left: 4px;
    }
    .cell-cv .price_text_box{
        gap: 0px;
        flex-direction: column;
    }
    .cell-cv .normal_price{
        font-size: 14px;
        line-height: 18px;
        margin-bottom: 0;
    }
    .cell-cv .cp_price{
        font-size: 28px;
        line-height: 28px;
    }
}
.cell-text{
    padding: 12px 0;
    vertical-align: middle;
    position: relative;
}
@media screen and (max-width: 767px) {
    .cell-text{
        padding: 8px 0;
    }
}
.cell-support-yes{
    font-size: 24px;
    display: block;
    height: 28px;
    background-position: center;
    background-image: url(/assets/images/sb/2026/icon-check.svg);
    background-repeat: no-repeat;
}
.cell-support-no{
    width: 24px;
    height: 2px;
    background-color: black;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
    .cell-support-yes{
        background-size: 19px 19px;
    }
}

@media screen and (min-width: 768px) and (max-width: 1040px) {
    #c-price,
    #c-movie,
    #c-zero,
    #c-features,
    #c-family{
        padding-right: 30px;
        padding-left: 30px;
    }
    #price-table .title{
        padding: 0 30px;
    }
    #price-table .inner_1040{
        padding: 0 30px;
    }
    #price-table .price_text_box img{
        width: 17px;
    }
}

#c-family img{
    margin: auto;
    max-width: 860px;
    width: 100%;
}

.col_box.flex_box.hidden{
    display: none;
}
#cp_textarea.hidden{
    display: none;
}
#cp_textarea.open{
    display: block;
}
.ribbon2.opacity0,.normal_price.opacity0{
    opacity: 0;
}
table tr:last-child th, table tr:last-child td, table th, table td{
    border: none;
}
.scroll-hint-icon{
    top: calc(30% - 25px) !important;
}