@charset "utf-8";
/* secCmnBtn */
.secCmnBtn{
    margin: 8rem auto 0;
}
.secCmnBtn .btnCmn{
    width: 80rem;
    height: 10rem;
    background: var(--btnColor);
    border-bottom: 0.5rem solid var(--btnColor2);
    border-radius: 0.5rem;
    font-size: var(--pcFontSize24);
    letter-spacing: var(--pcLetterSpacing24_40);
    font-weight: bold;
    color: var(--whiteColor);
    text-decoration: none;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0 auto;
}
.secCmnBtn .btnCmn::after{
    content: "";
    width: 0.9rem;
    height: 1.4rem;
    position: absolute;
    top: 50%;
    right: 3rem;
    transform: translateY(-50%);
    background: url("../img/common/iconArrow.png") no-repeat center center / cover;
}
.secCmnBtn .txtCmnInSub{
    display: inline-block;
    background: var(--yellowColor);
    border-radius: 0.3rem;
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_40);
    font-weight: bold;
    color: var(--textColor);
    padding: 1rem 1.2rem;
    position: absolute;
    top: -1.7rem;
    left: 3rem;
}
@media only screen and (max-width:1215px){
    .secCmnBtn{
        margin: 6.8rem auto 0;
    }
    .secCmnBtn .btnCmn{
        width: 100%;
        max-width: 33.5rem;
        height: 6rem;
        border-bottom: 0.2rem solid var(--btnColor2);
        border-radius: 0.3rem;
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secCmnBtn .btnCmn::after{
        width: 0.6rem;
        height: 1rem;
        right: 2rem;
    }
    .secCmnBtn .txtCmnInSub{
        border-radius: 0.3rem 0.3rem 0 0;
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing0);
        padding: 0.8rem 1rem;
        top: -2.8rem;
        left: 0;
    }
}

/* secTop */
.secTop{
    position: relative;
    overflow: hidden;
    padding: 24.1rem 0 3.3rem;
}
.secTop .boxBg{
    position: absolute;
    inset: 0;
    z-index: 0;
}
.secTop .itemBg{
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 1.8s ease-in-out;
}
.secTop .itemBg.is-active{
    opacity: 1;
}
.secTop .itemBg img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.04);
    transition: transform 8s ease-out;
}
.secTop .itemBg.is-active img{
    transform: scale(1);
}
/* .secTop .boxTop{
    position: relative;
    z-index: 1;
} */
.secTop .txtTit{
    position: relative;
    margin-left: 3rem;
}
.secTop .txtSub{
    position: absolute;
    top: 8rem;
    right: 8rem;
}
.secTop .boxOpenMark{
    position: absolute;
    top: 5rem;
    left: 8rem;
}
@media only screen and (max-width:1215px){
    .secTop{
        display: flex;
        flex-direction: column;
        padding: 24.5rem 0 2.8rem;
    }
    .secTop .txtTit{
        width: 100%;
        margin-left: 0;
    }
    .secTop .txtSub{
        width: 11.5rem;
        top: 4rem;
        right: 2rem;
    }
    .secTop .boxOpenMark{
        width: 13.8rem;
        top: 3rem;
        left: 2rem;
    }
}

/* secTicker */
.secTicker{
    position: relative;
    margin-top: -10.6rem;
    overflow: hidden;
}
.secTicker .boxTickerTrack{
    display: flex;
    width: max-content;
    animation: tickerScroll 60s linear infinite;
}
.secTicker .boxTicker{
    display: flex;
    flex-shrink: 0;
    gap: 1rem;
    padding-right: 1rem;
}
.secTicker .boxTicker picture{
    display: block;
    flex-shrink: 0;
}
.secTicker .boxTicker img{
    display: block;
    width: auto;
    max-width: none;
    height: 16.1rem;
}
@keyframes tickerScroll{
    from{
        transform: translateX(0);
    }
    to{
        transform: translateX(-50%);
    }
}
@media only screen and (max-width:1215px){
    .secTicker{
        margin-top: -4.3rem;
    }
    .secTicker .boxTickerTrack{
        animation-duration: 28s;
    }
    .secTicker .boxTicker{
        gap: 0.5rem;
        padding-right: 0.5rem;
    }
    .secTicker .boxTicker img{
        height: 6.6rem;
    }
}

/* secFirst */
.secFirst{
    color: var(--whiteColor);
    text-align: center;
    overflow: hidden;
    padding: 15.5rem 0 10rem;
}
.secFirst.lazyloaded{
    background: url("../img/index/bgFirst.png") center top / cover;
}
.secFirst .boxTit{
    position: relative;
    z-index: 2;
}
.secFirst .txtTitJp{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_40);
    margin-top: 2rem;
}
.secFirst .boxCircleList{
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 6rem;
}
.secFirst .itemCircle{
    position: relative;
    z-index: 1;
    flex-shrink: 0;
    opacity: 0;
    transform: scale(0.9) translateY(2.4rem);
    filter: blur(4px);
    will-change: transform, opacity, filter;
}
.secFirst .itemCircle + .itemCircle{
    margin-left: -2.5rem;
}
.secFirst .itemCircle img{
    display: block;
    width: 39rem;
    height: auto;
}
.secFirst .itemCircleEmpty img{
    width: 36.8rem;
}
.secFirst .itemCircle:nth-child(2){ z-index: 2; }
.secFirst .itemCircle:nth-child(3){ z-index: 3; }
.secFirst .itemCircle:nth-child(4){ z-index: 2; }
.secFirst .boxCircleList.is-show .itemCircle{
    animation: conceptCircleIn 1.15s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}
.secFirst .boxCircleList.is-show .itemCircle:nth-child(1){ animation-delay: 0s; }
.secFirst .boxCircleList.is-show .itemCircle:nth-child(2){ animation-delay: 0.16s; }
.secFirst .boxCircleList.is-show .itemCircle:nth-child(3){ animation-delay: 0.32s; }
.secFirst .boxCircleList.is-show .itemCircle:nth-child(4){ animation-delay: 0.48s; }
.secFirst .boxCircleList.is-show .itemCircle:nth-child(5){ animation-delay: 0.64s; }
.secFirst .boxCircleList.is-show .itemCircleEmpty{
    animation-duration: 1.35s;
}
@keyframes conceptCircleIn{
    0%{
        opacity: 0;
        transform: scale(0.9) translateY(2.4rem);
        filter: blur(4px);
    }
    55%{
        opacity: 1;
        filter: blur(0);
    }
    100%{
        opacity: 1;
        transform: scale(1) translateY(0);
        filter: blur(0);
    }
}
.secFirst .txtLead{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_40);
    margin-top: 6rem;
    position: relative;
    z-index: 2;
}
.secFirst .secCmnBtn{
    margin: 6rem auto 0;
    position: relative;
    z-index: 2;
}
@media only screen and (max-width:1215px){
    .secFirst{
        padding: 6rem 0 8rem;
    }
    .secFirst.lazyloaded{
        background: url("../img/index/bgFirstSp.png") center center / cover;
    }
    .secFirst .txtTitEng{
        width: 10.1rem;
        margin: 0 auto;
    }
    .secFirst .txtTitJp{
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1rem;
    }
    .secFirst .boxCircleList{
        flex-wrap: wrap;
        max-width: 34rem;
        margin: 4rem auto 0;
    }
    .secFirst .itemCircleEmpty{
        display: none;
    }
    .secFirst .itemCircle{
        width: auto;
        height: auto;
        margin: 0;
        padding: 0;
    }
    .secFirst .itemCircle + .itemCircle{
        margin-left: -1.5rem;
    }
    .secFirst .itemCircle:nth-child(2){
        margin-left: 0;
    }
    .secFirst .itemCircle img,
    .secFirst .itemCircleEmpty img{
        width: 17.5rem;
    }
    .secFirst .itemCircle:nth-child(2),
    .secFirst .itemCircle:nth-child(3){
        z-index: 1;
    }
    .secFirst .itemCircle:nth-child(4){
        margin-left: 0;
        margin-top: -3rem;
        z-index: 2;
    }
    .secFirst .txtLead{
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_30);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 2.3rem;
    }
    .secFirst .secCmnBtn{
        margin: 6.1rem auto 0;
    }
}

/* secAnswer */
.secAnswer{
    text-align: center;
    margin-top: 24rem;
    position: relative;
}
.secAnswer::before{
    content: "";
    width: 1px;
    height: 8rem;
    background: var(--textColor);
    position: absolute;
    top: -15rem;
    left: 50%;
    transform: translateX(-50%);
}
.secAnswer .txtTit{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing30_40);
    font-weight: bold;
    margin-top: 4.1rem;
}
.secAnswer .boxList{
    display: flex;
    gap: 0.3rem;
    margin-top: 5.5rem;
}
.secAnswer .boxList .item{
    width: calc((100% - 0.6rem) / 3);
    padding: 5rem 1rem;
    background: var(--whiteColor);
}
.secAnswer .boxList .boxTop{
    width: 20rem;
    margin: 0 auto;
    position: relative;
}
.secAnswer .boxList .txtNum{
    font-size: var(--pcFontSize80);
    font-weight: bold;
    color: rgba(51, 51, 51, 0.1);
    position: absolute;
    top: -2rem;
    left: -4.2rem;
}
.secAnswer .boxList .boxImg{
    position: relative;
    z-index: 1;
}
.secAnswer .boxList .txtTitAnswer{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_40);
    font-weight: bold;
    margin-top: 3.9rem;
}
.secAnswer .boxList .txtSubAnswer{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_34);
    letter-spacing: var(--pcLetterSpacing18_40);
    margin-top: 2.2rem;
}
.secAnswer .boxList .boxListInner{
    width: 48rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1rem 1rem;
    margin: 3.3rem auto 0;
}
.secAnswer .boxList .itemInner{
    width: calc((100% - 1rem) / 2);
    height: 5rem;
    border-radius: 1.8rem;
    background: var(--bgColorLightBeige);
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_40);
    font-weight: bold;
    color: var(--btnColor);
    display: flex;
    align-items: center;
    justify-content: center;
}
.secAnswer .boxList .itemInner.itemInnerLong{
    width: 100%;
}
@media only screen and (max-width:1215px){
    .secAnswer{
        margin-top: 14rem;
    }
    .secAnswer::before{
        height: 6rem;
        top: -10rem;
    }
    .secAnswer .txtTitEng{
        width: 19.7rem;
        margin: 0 auto;
    }
    .secAnswer .txtTit{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_22);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.5rem;
    }
    .secAnswer .boxList{
        flex-direction: column;
        gap: 0.1rem;
        margin-top: 3rem;
    }
    .secAnswer .boxList .item{
        width: 100%;
        padding: 2.5rem 2rem;
    }
    .secAnswer .boxFlexSp{
        display: flex;
    }
    .secAnswer .boxList .boxTop{
        width: auto;
    }
    .secAnswer .boxList .txtNum{
        font-size: var(--spFontSize30);
        top: -1rem;
        left: 0;
    }
    .secAnswer .boxList .boxImg{
        width: 10.8rem;
    }
    .secAnswer .boxList .boxTxt{
        text-align: left;
        margin-left: 1rem;
    }
    .secAnswer .boxList .txtTitAnswer{
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_24);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 0;
    }
    .secAnswer .boxList .txtSubAnswer{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 0.6rem;
    }
    .secAnswer .boxList .boxListInner{
        width: 100%;
        gap: 0.5rem;
        margin: 2rem auto 0;
    }
    .secAnswer .boxList .itemInner{
        width: 100%;
        height: 4rem;
        border-radius: 1rem;
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing0);
        justify-content: flex-start;
        padding-left: 2rem;
    }
    .secAnswer .boxList .itemInner.itemInnerShort{
        width: calc((100% - 0.5rem) / 2);
    }
}

/* secFind */
.secFind{
    position: relative;
    margin-top: 22.8rem;
}
.secFind::before{
    content: "";
    width: 1px;
    height: 8rem;
    background: var(--textColor);
    position: absolute;
    top: -15rem;
    left: 50%;
    transform: translateX(-50%);
}
.secFind .txtTit{
    font-size: var(--pcFontSize30);
    line-height: var(--pcLineHeight30_54);
    letter-spacing: var(--pcLetterSpacing30_40);
    font-weight: bold;
    text-align: center;
}
.secFind .boxContents{
    position: relative;
    margin-top: 5.5rem;
}
@media only screen and (max-width:1215px){
    .secFind{
        margin-top: 14rem;
    }
    .secFind::before{
        height: 6rem;
        top: -10rem;
    }
    .secFind .txtTit{
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_28);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secFind .boxContents{
        margin-top: 2.1rem;
    }
}

.secFind .boxSlider{
    position: relative;
}
.secFind .swiper{
    width: 100%;
    overflow: visible;
}
.secFind .swiper-wrapper{
    transition-timing-function: linear !important;
}
.secFind .swiper-slide{
    width: 78rem;
}
.secFind .swiper-slide .img img{
    width: 100%;
    height: auto;
}
.secFind .swiper-slide .txtTitSlider{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_40);
    text-align: center;
    font-weight: bold;
    margin-top: 4rem;
}
.secFind .swiper-button-prev,
.secFind .swiper-button-next{
    width: 7rem;
    height: 7rem;
    border-radius: 50%;
    background: var(--whiteColor);
    margin-top: 0;
    top: calc(50% - 5.5rem);
}
.secFind .swiper-button-prev{
    left: -3.5rem;
    transform: rotate(180deg);
}
.secFind .swiper-button-next{
    right: -3.5rem;
}
.secFind .swiper-button-prev::after,
.secFind .swiper-button-next::after{
    display: none;
}
.secFind .swiper-button-prev.lazyloaded{
    background: url(../img/common/imgBtnPrev.png) center center / 1.7rem auto no-repeat #fff;
}
.secFind .swiper-button-next.lazyloaded{
    background: url(../img/common/imgBtnPrev.png) center center / 1.7rem auto no-repeat #fff;
}
@media only screen and (max-width:1215px){
    .secFind .swiper-slide{
        width: 26rem;
    }
    .secFind .swiper-slide .txtTitSlider{
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.5rem;
    }
    .secFind .swiper-button-prev,
    .secFind .swiper-button-next{
        width: 3rem;
        height: 3rem;
        top: calc(50% - 2.5rem);
    }
    .secFind .swiper-button-prev{
        left: -1.5rem;
    }
    .secFind .swiper-button-next{
        right: -1.5rem;
    }
    .secFind .swiper-button-prev.lazyloaded{
        background: url(../img/common/imgBtnPrev.png) center center / 1.2rem auto no-repeat #fff;
    }
    .secFind .swiper-button-next.lazyloaded{
        background: url(../img/common/imgBtnPrev.png) center center / 1.2rem auto no-repeat #fff;
    }
}

/* secChoose */
.secChoose{
    margin-top: 12rem;
    padding-top: 12rem;
    text-align: center;
}
.secChoose.lazyloaded{
    background: url("../img/index/bgChoose.jpg") no-repeat center top;
}
.secChoose .txtTopTit{
    font-size: var(--pcFontSize40);
    letter-spacing: var(--pcLetterSpacing40_40);
    color: var(--whiteColor);
    font-weight: bold;
    text-align: center;
}
.secChoose .txtTopSub{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_38);
    letter-spacing: var(--pcLetterSpacing18_40);
    color: var(--whiteColor);
    text-align: center;
    margin-top: 3rem;
}
.secChoose .txtTit{
    display: inline-block;
    background: var(--whiteColor);
    padding: 0.6rem 1rem;
    font-size: var(--pcFontSize30);
    letter-spacing: var(--pcLetterSpacing30_40);
    font-weight: bold;
    color: var(--redColor);
    margin-top: 3rem;
}
.secChoose .txtTit.spOnly{
    display: none;
}
.secChoose .txtSub{
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_40);
    color: var(--whiteColor);
    margin-top: 4.1rem;
}
.secChoose .boxSlider{
    margin-top: 5.8rem;
}
.secChoose .swiper{
    overflow: visible;
}
.secChoose .swiper-wrapper{
    gap: 2.5rem;
}
.secChoose .swiper-slide{
    width: calc((100% - 5rem) / 3);
    background: var(--whiteColor);
    border-radius: 3rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.1);
}
.secChoose .swiper-slide .boxImg{
    position: relative;
}
.secChoose .swiper-slide .boxImg img{
    border-radius: 3rem 3rem 0 0;
}
.secChoose .swiper-slide .boxTxt{
    width: 100%;
    padding: 4rem 4rem 5rem;
}
.secChoose .swiper-slide .txtTag{
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_40);
    font-weight: bold;
    color: var(--blueColor);
    margin-top: 2.7rem;
}
.secChoose .swiper-slide .txtChooseTit{
    font-size: var(--pcFontSize26);
    line-height: var(--pcLineHeight26_42);
    font-weight: bold;
    text-wrap-mode: nowrap;
    margin-top: 2.3rem;
}
.secChoose .swiper-slide .txtChooseSub{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_28);
    letter-spacing: var(--pcLetterSpacing14_40);
    font-weight: bold;
    margin-top: 1.5rem;
}
.secChoose .swiper-slide .boxChooseList{
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 1rem;
    margin-top: 2.4rem;
}
.secChoose .swiper-slide .itemChoose{
    width: calc((100% - 1rem) / 2);
    height: 5rem;
    border-radius: 1.8rem;
    background: var(--bgColorLightBeige);
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_40);
    font-weight: bold;
    color: var(--btnColor);
    display: flex;
    align-items: center;
    justify-content: center;
}
.secChoose .swiper-slide .itemChoose.long{
    width: 100%;
}
@media only screen and (max-width:1700px){
    .secChoose .swiper-slide .boxTxt{
        padding: 4rem 3rem 5rem;
    }
    .secChoose .swiper-slide .txtChooseTit{
        font-size: var(--pcFontSize22);
    }   
    .secChoose .swiper-slide .txtChooseSub{
        font-size: var(--pcFontSize13);
    }
}
@media only screen and (max-width:1215px){
    .secChoose{
        margin-top: 6rem;
        padding-top: 6rem;
    }
    .secChoose.lazyloaded{
        background: url("../img/index/bgChooseSp.jpg") no-repeat center top / auto 50rem;
    }
    .secChoose .txtTopTit{
        font-size: var(--spFontSize20);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secChoose .txtTopSub{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.6rem;
    }
    .secChoose .txtTit.spNone{
        display: none;
    }
    .secChoose .txtTit.spOnly{
        display: inline-block;
        background: unset;
        padding: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0.8rem;
        margin-top: 1.5rem;
    }
    .secChoose .txtTit span{
        background: var(--whiteColor);
        padding: 0.2rem 0.2rem;
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing0);
        font-weight: bold;
    }
    .secChoose .txtSub{
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.7rem;
    }
    .secChoose .boxSlider{
        margin-top: 3rem;
    }
    .secChoose .swiper{
        overflow: visible;
    }
    .secChoose .swiper-wrapper{
        gap: 0;
    }
    .secChoose .swiper-slide{
        width: 31.5rem;
        border-radius: 1rem;
    }
    .secChoose .swiper-slide .imgLogo{
        height: 3.1rem;
    }
    .secChoose .swiper-slide .imgLogo img{
        height: 100%;
        width: auto;
    }
    .secChoose .swiper-slide .boxImg img{
        border-radius: 1rem 1rem 0 0;
    }
    .secChoose .swiper-slide .boxTxt{
        width: 100%;
        padding: 2rem 2rem;
    }
    .secChoose .swiper-slide .txtTag{
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.6rem;
    }
    .secChoose .swiper-slide .txtChooseTit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_22);
        margin-top: 1.1rem;
    }
    .secChoose .swiper-slide .txtChooseSub{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_21);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.1rem;
    }
    .secChoose .swiper-slide .boxChooseList{
        flex-direction: column;
        gap: 0.5rem;
        margin-top: 1.5rem;
    }
    .secChoose .swiper-slide .itemChoose{
        width: 100%;
        height: 4rem;
        border-radius: 1rem;
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing0);
        justify-content: flex-start;
        padding-left: 2rem;
    }
    .secChoose .swiper-scrollbar{
        background: rgba(0, 0, 0, 0);
    }
    .secChoose .swiper-scrollbar-drag{
        background: rgba(0, 0, 0, .3);
    }
}

/* secPrice */
.secPrice{
    margin-top: 17rem;
    position: relative;
}
.secPrice .wrapper{
    position: relative;
}
.secPrice .boxRecommendedDots{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.4rem;
    position: absolute;
    top: -11.5rem;
    left: 50%;
    transform: translateX(-50%);
}
.secPrice .itemRecommendedDot{
    width: 1.4rem;
    height: 1.4rem;
    border-radius: 50%;
    background: var(--textColor);
}
.secPrice .txtTit{
    font-size: var(--pcFontSize30);
    letter-spacing: var(--pcLetterSpacing30_40);
    font-weight: bold;
    text-align: center;
}
.secPrice .txtSub{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_38);
    letter-spacing: var(--pcLetterSpacing18_40);
    text-align: center;
    margin-top: 3rem;
}
.secPrice .img{
    width: 10rem;
    position: absolute;
    top: 2.5rem;
    left: 0;
}
.secPrice .boxTable{
    margin: 2.2rem auto 0;
}
.secPrice .txtPriceNote{
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_40);
    text-align: center;
    margin-top: 2.2rem;
}
@media only screen and (max-width:1400px){
    .secPrice .img{
        width: calc(100 / 1400 * 100%);
        top: 2.5rem;
        left: 0;
    }
}
@media only screen and (max-width:1215px){
    .secPrice{
        margin-top: 10rem;
    }
    .secPrice .boxRecommendedDots{
        gap: 0.7rem;
        top: -6.5rem;
    }
    .secPrice .itemRecommendedDot{
        width: 0.7rem;
        height: 0.7rem;
    }
    .secPrice .txtTit{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secPrice .txtSub{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.9rem;
    }
    .secPrice .img{
        width: 3.2rem;
        top: -6.5rem;
        left: 0;
    }
    .secPrice .boxTable{
        margin: 2.2rem auto 0;
    }
    .secPrice .boxSlider{
        margin-top: 2.5rem;
    }
    .secPrice .swiper{
        overflow: visible;
    }
    .secPrice .swiper-slide{
        width: 31.5rem;
        border-radius: 1rem;
        box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.1);
    }
    .secPrice .swiper-scrollbar{
        background: rgba(0, 0, 0, 0);
    }
    .secPrice .swiper-scrollbar-drag{
        background: rgba(0, 0, 0, .3);
    }
    .secPrice .txtPriceNote{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.5rem;
    }
}

/* secBnContact */
.secBnrContact{
    display: block;
    margin-top: 12rem;
    padding: 11.6rem 0;
    text-decoration: none;
    color: var(--whiteColor);
}
.secBnrContact.lazyloaded{
    background: url("../img/index/bgBnrContact.jpg") no-repeat center center / cover;
}
.secBnrContact .txtTit{
    font-size: var(--pcFontSize30);
    letter-spacing: var(--pcLetterSpacing30_40);
    font-weight: bold;
    text-align: center;
    margin-bottom: 3rem;
}
.secBnrContact .txtSub{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_38);
    letter-spacing: var(--pcLetterSpacing18_40);
    text-align: center;
    margin-bottom: 2.7rem;
}
.secBnrContact .btnBnr{
    width: 50rem;
    height: 7rem;
    border: 1px solid var(--whiteColor);
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_40);
    font-weight: bold;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0 auto;
}
.secBnrContact .btnBnr::after{
    content: "";
    width: 0.9rem;
    height: 1.4rem;
    position: absolute;
    top: 50%;
    right: 3rem;
    transform: translateY(-50%);
}
.secBnrContact.lazyloaded .btnBnr::after{
    background: url("../img/common/iconArrow.png") no-repeat center center / cover;
}
@media only screen and (max-width:1215px){
    .secBnrContact{
        margin-top: 6rem;
        padding: 4rem 0;
    }
    .secBnrContact.lazyloaded{
        background: url("../img/index/bgBnrContactSp.jpg") no-repeat center center / cover;
    }
    .secBnrContact .txtTit{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing0);
        margin-bottom: 1.5rem;
    }
    .secBnrContact .txtSub{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing0);
        margin-bottom: 1.5rem;
    }
    .secBnrContact .btnBnr{
        width: 100%;
        height: 6rem;
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secBnrContact .btnBnr::after{
        width: 0.6rem;
        height: 1rem;
        right: 2rem;
    }
}

/* secFlow */
.secFlow{
    margin-top: 7.3rem;
    position: relative;
}
.secFlow .txtTit{
    font-size: var(--pcFontSize30);
    line-height: var(--pcLineHeight30_54);
    letter-spacing: var(--pcLetterSpacing30_40);
    font-weight: bold;
    text-align: center;
    margin-bottom: 1.8rem;
}
.secFlow .txtSub{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_38);
    letter-spacing: var(--pcLetterSpacing18_40);
    text-align: center;
    margin-bottom: 2rem;
}
.secFlow .boxArea{
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-top: 4rem;
}
.secFlow .itemArea{
    width: 13rem;
    height: 5rem;
    background: var(--whiteColor);
    border-radius: 1.8rem;
    font-size: var(--pcFontSize14);
    font-weight: bold;
    color: var(--btnColor);
    display: flex;
    align-items: center;
    justify-content: center;
}
.secFlow .txtTime{
    display: table;
    padding: 1.1rem 1.6rem 1rem;
    background: var(--yellowColor);
    border-radius: 0.3rem;
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_40);
    margin: 2rem auto 0;
}
.secFlow .boxFlowList{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 4.8rem;
    margin-top: 6rem;
    position: relative;
}
.secFlow .boxFlowList::before{
    content: "";
    width: 12rem;
    height: 21.3rem;
    position: absolute;
    top: -20rem;
    left: 13rem;
    z-index: 1;
}
.secFlow.secLandFlow .boxFlowList::before{
    display: none;
}
.secFlow .boxFlowList.lazyloaded::before{
    background: url("../img/index/imgFlowList.png") no-repeat center center / cover;
}
.secFlow .itemFlow{
    width: calc((100% - 14.4rem) / 4);
    background: var(--whiteColor);
    border-radius: 2rem;
    box-shadow: 0 0 2rem 0.1rem rgba(0, 0, 0, 0.05);
    position: relative;
}
.secFlow .itemFlow:not(:first-child)::before{
    content: "";
    width: 3.2rem;
    height: 0.1rem;
    background: url("../img/index/imgFlowLine.png") no-repeat center center / cover;
    position: absolute;
    top: 9rem;
    left: -4rem;
}
.secFlow .boxImg img{
    border-radius: 2rem 2rem 0 0;
}
.secFlow .txtFlowNum{
    width: 4rem;
    height: 4rem;
    background: var(--btnColor);
    border-radius: 50%;
    font-size: var(--pcFontSize16);
    color: var(--whiteColor);
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 16rem;
    left: 50%;
    transform: translateX(-50%);
}
.secFlow .boxTxt{
    padding: 5rem 2rem 5.5rem;
    text-align: center;
}
.secFlow .txtFlow{
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_40);
    font-weight: bold;
}
.secFlow .txtFlowAbout{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_28);
    margin-top: 1.9rem;
}
.secFlow .boxCheck{
    position: absolute;
    top: 8.4rem;
    right: 22rem;
}
@media only screen and (max-width:1215px){
    .secFlow{
        margin-top: 5.4rem;
    }
    .secFlow .txtTit{
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_28);
        letter-spacing: var(--spLetterSpacing0);
        text-wrap-mode: nowrap;
        margin-bottom: 2rem;
    }
    .secFlow .txtSub{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing0);
        margin-bottom: 1.5rem;
    }
    .secFlow .boxArea{
        flex-wrap: wrap;
        gap: 0.4rem 0.4rem;
        margin-top: 2rem;
    }
    .secFlow .itemArea{
        width: calc((100% - 0.8rem) / 3);
        height: 3rem;
        border-radius: 1rem;
        font-size: var(--spFontSize12);
    }
    .secFlow .txtTime{
        padding: 0.9rem 0.9rem 0.8rem;
        border-radius: 0.3rem;
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing0);
        margin: 1.5rem auto 0;
    }
    .secFlow .boxFlowList{
        flex-direction: column;
        gap: 1rem;
        margin-top: 2rem;
    }
    .secFlow .boxFlowList::before{
        width: 5.2rem;
        height: 9.4rem;
        top: -8.1rem;
        left: 2.2rem;
    }
    .secFlow.secLandFlow .boxFlowList::before{
        display: none;
    }
    .secFlow .itemFlow{
        width: 100%;
        border-radius: 1rem;
        box-shadow: 0 0 2rem 0.1rem rgba(0, 0, 0, 0.05);
        padding: 2rem;
        display: flex;
        align-items: center;
        gap: 1.5rem;
    }
    .secFlow .itemFlow:not(:first-child)::before{
        width: 0.1rem;
        height: 3rem;
        background: url("../img/index/imgFlowLineSp.png") no-repeat center center / cover;
        top: -2rem;
        left: 7.4rem;
    }
    .secFlow .boxImg{
        width: 10.8rem;
        height: 10.8rem;
        border-radius: 50%;
    }
    .secFlow .boxImg img{
        border-radius: 50%;
    }
    .secFlow .txtFlowNum{
        width: 2.5rem;
        height: 2.5rem;
        font-size: var(--spFontSize12);
        top: 2rem;
        left: 2rem;
        transform: unset;
    }
    .secFlow .boxTxt{
        width: calc(100% - 10.8rem - 1.5rem);
        padding: 0;
        text-align: left;
    }
    .secFlow .txtFlow{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_22);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secFlow .txtFlowAbout{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_21);
        margin-top: 0.7rem;
    }
    .secFlow .boxCheck{
        width: 28.2rem;
        position: relative;
        top: 0;
        right: 0;
        margin: 2rem auto 0;
    }
}

/* secSpecs */
.secSpecs{
    margin-top: 22.8rem;
    position: relative;
}
.secSpecs::before{
    content: "";
    width: 1px;
    height: 8rem;
    background: var(--textColor);
    position: absolute;
    top: -15rem;
    left: 50%;
    transform: translateX(-50%);
}
.secSpecs .txtTit{
    font-size: var(--pcFontSize30);
    line-height: var(--pcLineHeight30_54);
    letter-spacing: var(--pcLetterSpacing30_40);
    font-weight: bold;
    text-align: center;
    margin-bottom: 1.8rem;
}
.secSpecs .txtSub{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_38);
    letter-spacing: var(--pcLetterSpacing18_40);
    text-align: center;
    margin-bottom: 5rem;
}
.secSpecs .boxTab{
    display: flex;
    gap: 2rem;
    margin-top: 5.5rem;
    position: relative;
}
.secSpecs .boxTab::after{
    content: "";
    width: 2rem;
    height: 1px;
    background: var(--textColor);
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}
.secSpecs .boxTab .itemTab{
    width: calc((100% - 2rem) / 2);
    height: 14rem;
    background: var(--grayColor);
    border: 1px solid var(--textColor);
    border-radius: 1rem 1rem 0 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    cursor: pointer;
}
.secSpecs .boxTab .itemTab.active{
    border-bottom: 1px solid var(--bgColorLightBeige);
    background: none;
}
.secSpecs .boxTab .itemTab.active::after{
    content: "";
    width: 0;
    height: 0;
    border-left: 0.7rem solid transparent;
    border-right: 0.7rem solid transparent;
    border-top: 1rem solid var(--textColor);
    position: absolute;
    bottom: -1.5rem;
    left: 50%;
    transform: translateX(-50%);
}
.secSpecs .boxContents{
    display: none;
    position: relative;
    margin-top: 5.5rem;
}
.secSpecs .boxContents.active{
    display: block;
}
.secSpecs .boxContents .boxBgImg img{
    width: 100%;
    height: auto;
    display: block;
}
.secSpecs .boxContents .boxTxt{
    position: absolute;
    bottom: 18rem;
    left: 8rem;
    display: flex;
    flex-direction: column;
}
.secSpecs .boxContents .txtTitTop{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
}
.secSpecs .boxContents .txtTitIn{
    font-size: var(--pcFontSize30);
    letter-spacing: var(--pcLetterSpacing30_40);
    font-weight: bold;
    display: inline-block;
    padding: 0.3rem 0.5rem;
    background: var(--whiteColor);
}
.secSpecs .boxContents .txtSubInner{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_38);
    letter-spacing: var(--pcLetterSpacing18_40);
    color: var(--whiteColor);
    margin-top: 3.3rem;
}
.secSpecs .boxContents .boxSpecsValue{
    display: flex;
    align-items: center;
    gap: 6.5rem;
    margin-top: 4.5rem;
}
.secSpecs .boxContents .itemValue{
    width: 22rem;
    height: 12rem;
    background: var(--whiteColor);
    border-radius: 3rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
}
.secSpecs .boxContents .itemValue::before,
.secSpecs .boxContents .itemValue::after{
    content: "";
    width: 3.5rem;
    height: 1px;
    background: var(--whiteColor);
    position: absolute;
    top: 50%;
    left: 23.7rem;
    transform: translateY(-50%);
}
.secSpecs .boxContents .itemValue::before{
    transform: translateY(-50%) rotate(45deg);
}
.secSpecs .boxContents .itemValue::after{
    transform: translateY(-50%) rotate(-45deg);
}
.secSpecs .boxContents .itemValue:last-child:before,
.secSpecs .boxContents .itemValue:last-child::after{
    display: none;
}
.secSpecs .boxContents .txtValue{
    font-size: var(--pcFontSize20);
    font-weight: bold;
}
.secSpecs .boxContents .txtValueBottom{
    font-size: var(--pcFontSize16);
    margin-top: 1.6rem;
}
.secSpecs .boxContents .boxBottomSpecs{
    background: var(--whiteColor);
    padding-top: 1px;
    display: flex;
    gap: 1px;
}
.secSpecs .boxContents .item{
    width: calc((100% - 3px) / 4);
    height: 10rem;
    background: var(--greenColor);
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_40);
    font-weight: bold;
    color: var(--whiteColor);
    display: flex;
    align-items: center;
    justify-content: center;
}
.secSpecs .boxContents.boxContents2 .item{
    background: var(--blueColor2);
}
@media only screen and (max-width:1215px){
    .secSpecs{
        margin-top: 14rem;
    }
    .secSpecs::before{
        height: 6rem;
        top: -10rem;
    }
    .secSpecs .txtTit{
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_28);
        letter-spacing: var(--spLetterSpacing0);
        margin-bottom: 1.3rem;
    }
    .secSpecs .txtSub{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing0);
        margin-bottom: 2rem;
    }
    .secSpecs .boxTab{
        gap: 0;
        margin-top: 2rem;
    }
    .secSpecs .boxTab::after{
        display: none;
    }
    .secSpecs .boxTab .itemTab{
        width: calc(100% / 2);
        height: 7.5rem;
        border-radius: 0;
        padding: 1rem;
    }
    .secSpecs .boxTab .itemTab:first-child{
        border-right: none;
    }
    .secSpecs .boxTab .itemTab.active::after{
        content: "";
        width: 0;
        height: 0;
        border-left: 0.45rem solid transparent;
        border-right: 0.45rem solid transparent;
        border-top: 0.6rem solid var(--textColor);
        bottom: -0.9rem;
    }
    .secSpecs .itemTab:nth-child(1) .boxTabIn{
        width: 16.3rem;
    }
    .secSpecs .itemTab:nth-child(2) .boxTabIn{
        width: 5.1rem;
    }
    .secSpecs .boxContents{
        margin-top: 2rem;
    }
    .secSpecs .boxContents .boxTxt{
        position: relative;
        bottom: unset;
        left: unset;
        display: flex;
        flex-direction: column;
    }
    .secSpecs .boxContents .txtTitTop{
        gap: 0;
        margin-top: 1.4rem;
    }
    .secSpecs .boxContents .txtTitIn{
        font-size: var(--spFontSize16);
        line-height: var(--spLineHeight16_28);
        letter-spacing: var(--spLetterSpacing0);
        padding: 0;
        background: unset;
    }
    .secSpecs .boxContents .txtSubInner{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing0);
        color: var(--textColor);
        margin-top: 1rem;
        margin-bottom: 2rem;
    }
    .secSpecs .boxContents .boxSpecsValue{
        justify-content: center;
        gap: 2.5rem;
        margin-top: -1rem;
    }
    .secSpecs .boxContents .itemValue{
        width: 13.5rem;
        height: 6.5rem;
        border-radius: 0.5rem;
    }
    .secSpecs .boxContents.boxContents2 .itemValue{
        width: 9.5rem;
    }
    .secSpecs .boxContents .itemValue::before,
    .secSpecs .boxContents .itemValue::after{
        width: 1.5rem;
        height: 1px;
        background: var(--textColor);
        left: 104%;
        transform: translateY(-50%);
    }
    .secSpecs .boxContents.boxContents2 .itemValue::before,
    .secSpecs .boxContents.boxContents2 .itemValue::after{
        left: 105%;
    }
    .secSpecs .boxContents .itemValue::before{
        transform: translateY(-50%) rotate(45deg);
    }
    .secSpecs .boxContents .itemValue::after{
        transform: translateY(-50%) rotate(-45deg);
    }
    .secSpecs .boxContents .itemValue:last-child:before,
    .secSpecs .boxContents .itemValue:last-child::after{
        display: none;
    }
    .secSpecs .boxContents .txtValue{
        font-size: var(--spFontSize14);
    }
    .secSpecs .boxContents .txtValueBottom{
        font-size: var(--spFontSize12);
        margin-top: 0.9rem;
    }
    .secSpecs .boxContents .boxBottomSpecs{
        background: unset;
        padding-top: 2rem;
        flex-direction: column;
        gap: 0.5rem;
    }
    .secSpecs .boxContents .item{
        width: 100%;
        height: 4rem;
        border-radius: 1rem;
        font-size: var(--spFontSize12);
        letter-spacing: var(--spLetterSpacing0);
        justify-content: flex-start;
        padding-left: 2rem;
    }
}

/* secRecommended */
.secRecommended{
    padding: 12rem 0 0;
}
.secRecommended .boxRecommended{
    background: var(--whiteColor);
    border-radius: 12rem;
    box-shadow: 0 0 2rem 0.1rem rgba(0, 0, 0, 0.05);
    padding: 8rem 5rem 9.9rem;
    text-align: center;
    position: relative;
}
.secRecommended .txtTit{
    font-size: var(--pcFontSize30);
    letter-spacing: var(--pcLetterSpacing30_40);
    font-weight: bold;
    text-align: center;
    margin-bottom: 5rem;
}
.secRecommended .boxRecommendedList{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 4rem;
}
.secRecommended .boxRecommendedItem{
    display: flex;
    flex-direction: column;
    align-items: center;
}
.secRecommended .boxRecommendedItemImg{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20rem;
    height: 20rem;
    border-radius: 50%;
    background: var(--bgColorBeige);
}
.secRecommended .txtRecommended{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_30);
    text-align: center;
    margin-top: 2.5rem;
}
.secRecommended .boxRecommendedDots{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.4rem;
    position: absolute;
    bottom: -3.5rem;
    left: 50%;
    transform: translateX(-50%);
}
.secRecommended .itemRecommendedDot{
    width: 1.4rem;
    height: 1.4rem;
    border-radius: 50%;
    background: var(--textColor);
}
@media only screen and (max-width:1215px){
    .secRecommended{
        padding: 6rem 0 0;
    }
    .secRecommended .boxRecommended{
        border-radius: 2rem;
        padding: 4rem 1rem 4.2rem;
        text-align: center;
        position: relative;
    }
    .secRecommended .txtTit{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing0);
        margin-bottom: 2rem;
    }
    .secRecommended .boxRecommendedList{
        flex-wrap: wrap;
        gap: 1.7rem 0.5rem;
    }
    .secRecommended .itemRecommended{
        width: calc((100% - 0.5rem) / 2);
    }
    .secRecommended .boxRecommendedItemImg{
        width: 6.6rem;
        height: 6.6rem;
    }
    .secRecommended .itemRecommended:nth-child(1) img{
        width: 2.5rem;
    }
    .secRecommended .itemRecommended:nth-child(2) img{
        width: 3.4rem;
    }
    .secRecommended .itemRecommended:nth-child(3) img{
        width: 3.2rem;
    }
    .secRecommended .itemRecommended:nth-child(4) img{
        width: 2.7rem;
    }
    .secRecommended .txtRecommended{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_18);
        margin-top: 0.9rem;
    }
    .secRecommended .boxRecommendedDots{
        gap: 0.7rem;
        bottom: -1.75rem;
    }
    .secRecommended .itemRecommendedDot{
        width: 0.7rem;
        height: 0.7rem;
    }
}

/* secFaq */
.secFaq{
    padding: 10rem 0;
    background: var(--bgColorBeige);
    margin-top: 10rem;
}
.secFaq .txtTit{
    font-size: var(--pcFontSize30);
    letter-spacing: var(--pcLetterSpacing30_40);
    font-weight: bold;
    text-align: center;
    margin-bottom: 5rem;
}
.secFaq .boxMainList{
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.secFaq .itemMain{
    position: relative;
    background: var(--whiteColor);
    border: 1px solid var(--borderColor);
    border-radius: 0.5rem;
    transition: all 0.4s ease;
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
}
.secFaq .itemMain:has(.btnIcon.on){
    border: 1px solid var(--btnColor);
}
.secFaq .linkMain{
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-decoration: none;
    padding: 2.1rem 2.9rem;
}
.secFaq .linkMain .btnIcon{
    width: 4.5rem;
    height: 2.5rem;
    border-radius: 1.25rem;
    border: 1px solid var(--btnColor);
    position: relative;
}
.secFaq .linkMain .btnIcon.on{
    background: var(--btnColor);
}
.secFaq .linkMain .btnIcon:before,
.secFaq .linkMain .btnIcon:after {
    content: "";
    background: var(--btnColor);
    width: 0.9rem;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    transition: all 0.4s ease;
}
.secFaq .linkMain .btnIcon:after{
    transform: translate(-50%, -50%) rotate(90deg);
}
.secFaq .linkMain .btnIcon.on:after{
    transform: translate(-50%, -50%) rotate(360deg);
    background: var(--whiteColor);
}
.secFaq .txtQuestion{
    width: calc(100% - 4.5rem - 0.5rem);
    position: relative;
    font-weight: bold;
    padding-left: 2.2rem;
}
.secFaq .txtQuestion::before{
    content: "Q";
    font-size: var(--pcFontSize20);
    color: var(--txtQColor);
    font-family: "Roboto", sans-serif;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.secFaq .boxSubList{
    display: none;
    padding: 0 2.9rem 2.4rem;
}
.secFaq .txtAnswer{
    position: relative;
    padding-left: 2.2rem;
    border-top: 1px solid var(--borderColor);
    padding-top: 2.1rem;
}
.secFaq .txtAnswer::before{
    content: "A";
    font-size: var(--pcFontSize20);
    color: var(--btnColor);
    font-family: "Roboto", sans-serif;
    position: absolute;
    left: 0;
    top: 1.8rem;
}
@media only screen and (max-width:1215px){
    .secFaq{
        padding: 4rem 0;
        margin-top: 4rem;
    }
    .secFaq .txtTit{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing0);
        margin-bottom: 3rem;
    }
    .secFaq .boxMainList{
        gap: 0.5rem;
    }
    .secFaq .itemMain{
        border-radius: 0.5rem;
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
    }
    .secFaq .linkMain{
        padding: 1.5rem 1.5rem;
    }
    .secFaq .linkMain .btnIcon{
        width: 2.5rem;
        height: 1.9rem;
        border-radius: 0.95rem;
    }
    .secFaq .linkMain .btnIcon:before,
    .secFaq .linkMain .btnIcon:after {
        width: 0.5rem;
        height: 1px;
    }
    .secFaq .txtQuestion{
        width: calc(100% - 2.5rem - 0.5rem);
        padding-left: 1.8rem;
    }
    .secFaq .txtQuestion::before{
        font-size: var(--spFontSize16);
    }
    .secFaq .boxSubList{
        padding: 0 1.5rem 1.6rem;
    }
    .secFaq .txtAnswer{
        padding-left: 1.8rem;
        padding-top: 1.6rem;
    }
    .secFaq .txtAnswer::before{
        font-size: var(--spFontSize16);
        left: 0;
        top: 1.2rem;
    }
}

/* secReserve */
/* .secReserve{
    padding: 10rem 0;
} */
.secReserve.lazyloaded{
    background: url("../img/index/bgReserveTop.jpg") no-repeat center center / cover;
}
.secReserve .wrapper{
    display: flex;
    justify-content: space-between;
}
.secReserve .boxLeft{
    width: calc(100% - 60rem - 1rem);
    color: var(--whiteColor);
    margin-top: 5.5rem;
}
.secReserve .boxLeft .txtTit{
    display: flex;
    flex-direction: column;
}
.secReserve .boxLeft .txtMin{
    font-size: var(--pcFontSize30);
    font-weight: bold;
}
.secReserve .boxLeft .txtBig{
    font-size: var(--pcFontSize50);
    letter-spacing: var(--pcLetterSpacing50_40);
    font-weight: bold;
    margin-top: 2.6rem;
}
.secReserve .boxLeft .txtAbout{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_40);
    letter-spacing: var(--pcLetterSpacing18_40);
    margin-top: 3.4rem;
}
.secReserve .boxRight{
    width: 60rem;
    background: var(--whiteColor);
    border-radius: 3rem;
    padding: 7.8rem 1rem 5.7rem 6.6rem;
    position: relative;
}
.secReserve .boxRight::after{
    content: "";
    width: 17.3rem;
    height: 20rem;
    position: absolute;
    bottom: -5.7rem;
    right: 4rem;
}
.secReserve.lazyloaded .boxRight::after{
    background: url("../img/index/imgReserveTop.png") no-repeat center center / contain;
}
.secReserve .boxRight .txtTit{
    font-size: var(--pcFontSize26);
    letter-spacing: var(--pcLetterSpacing26_40);
    font-weight: bold;
    color: var(--redColor);
}
.secReserve .boxRight .boxAboutList{
    display: flex;
    flex-direction: column;
    gap: 3rem;
    margin-top: 3rem;
}
.secReserve .boxRight .itemAbout{
    font-size: var(--pcFontSize20);
    letter-spacing: var(--pcLetterSpacing20_40);
    font-weight: bold;
    position: relative;
    padding-left: 2rem;
}
.secReserve .boxRight .itemAbout::before{
    content: "";
    width: 1rem;
    height: 1rem;
    background: var(--textColor);
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.secReserve .boxRight .txtLimit{
    display: inline-block;
    padding: 1rem 0.9rem;
    background: var(--yellowColor);
    font-size: var(--pcFontSize28);
    letter-spacing: var(--pcLetterSpacing14_40);
    font-weight: bold;
    margin-top: 2.5rem;
}
@media only screen and (max-width:1215px){
    /* .secReserve{
        padding: 4rem 0;
    } */
    .secReserve.lazyloaded{
        background: url("../img/index/bgReserveTopSp.jpg") no-repeat center center / cover;
    }
    .secReserve .wrapper{
        flex-direction: column;
        gap: 2rem;
    }
    .secReserve .boxLeft{
        width: 100%;
        margin-top: 0;
    }
    .secReserve .boxLeft .txtMin{
        font-size: var(--spFontSize16);
    }
    .secReserve .boxLeft .txtBig{
        font-size: var(--spFontSize24);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.5rem;
    }
    .secReserve .boxLeft .txtAbout{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.5rem;
    }
    .secReserve .boxRight{
        width: 100%;
        border-radius: 2rem;
        padding: 3rem 1rem 5rem 2.5rem;
    }
    .secReserve .boxRight::after{
        width: 9.4rem;
        height: 10.8rem;
        bottom: -1.5rem;
        right: 2.7rem;
    }
    .secReserve .boxRight .txtTit{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secReserve .boxRight .boxAboutList{
        gap: 1.8rem;
        margin-top: 1.8rem;
    }
    .secReserve .boxRight .itemAbout{
        font-size: var(--spFontSize14);
        letter-spacing: var(--spLetterSpacing0);
        padding-left: 1.6rem;
    }
    .secReserve .boxRight .itemAbout::before{
        width: 0.6rem;
        height: 0.6rem;
    }
    .secReserve .boxRight .txtLimit{
        padding: 1rem 0.9rem;
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.5rem;
    }
}