@charset "utf-8";

/* secCmnTit */
.secCmnTit{
    background-image: url(../img/plan/bgCmnTit.jpg);
}
@media only screen and (max-width:1215px){
    .secCmnTit{
        background-image: url(../img/plan/bgCmnTit_sp.jpg);
    }
}
.secCmnTit.details{
    background-image: url(../img/plan/bgCmnTit02.jpg);
}
@media only screen and (max-width:1215px){
    .secCmnTit.details{
        background-image: url(../img/plan/bgCmnTit_sp.jpg);
    }
}
.boxIconCircle{
    position: absolute;
    bottom: 3.5rem;
    right: 3.5rem;
    z-index: 100;
}
.boxIconCircle .linkCircle{
    position: relative;
    display: block;
    text-align: center;
    width: 5.5rem;
    height: 5.5rem;
}
.boxIconCircle .linkCircle .linkTxtBox{
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 100%;
    border: 1px solid var(--iconCircle);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    transition: all 0.2s ease-out;
} 
@media only screen and (min-width:1216px){
    .btnInCircle:hover .linkTxtBox img{
        content: url("../img/index/iconHoverArrowWhite02.png");
    } 
    .btnInCircle:hover .blakCircle .linkTxtBox img{
        content: url("../img/index/iconHoverArrowBlack.png");
    } 
    .boxIconCircle .linkCircle svg{
        position: absolute;
        top: 0;
        left: 0;
        margin: auto;
        opacity: 1;
        max-width: 100%;
        height: auto;
        overflow: visible;
    }
    .btnInCircle:hover .circle{
        stroke-dashoffset: 0;
        transition-duration: 1.6s;
        transition-timing-function: cubic-bezier(.215,.61,.355,1)
    }
    .boxIconCircle .circle{
        stroke-dasharray: 594;
        stroke-dashoffset: 594;
        -webkit-transform: rotate(-90deg);
        -webkit-transform-origin: 50% 50%;
        stroke: var(--whiteColor);
        transform: rotate(-90deg);
        transform-origin: 50% 50%;
        transition-duration: 1.6s;
        transition-timing-function: cubic-bezier(.215,.61,.355,1)
    }
    .boxIconCircle .circle{
        stroke: var(--whiteColor);
        stroke-width: 5;
    }
    .boxIconCircle.blakCircle .circle{
        stroke: var(--textColor);
    }
    .btnInCircle .linkTxtBox img{
        width: 1.3rem;
    }
}
@media only screen and (max-width:1215px){
    .boxIconCircle{
        bottom: calc(50% - 1.75rem);
        right: 2rem;
    }
    .boxIconCircle .linkCircle{
        width: 3.5rem;
        height: 3.5rem;
    }
    .boxIconCircle .linkCircle .linkTxtBox{
        border: 1px solid var(--whiteColor);
    } 
    .boxIconCircle.blakCircle .linkCircle .linkTxtBox{
        border: 1px solid var(--textColor);
    }
    .btnInCircle .linkTxtBox img{
        width: 0.9rem;
    }
    .btnInCircle .linkTxtBox img{
        content: url("../img/index/iconHoverArrowWhite02.png");
    } 
    .btnInCircle .blakCircle .linkTxtBox img{
        content: url("../img/index/iconHoverArrowBlack.png");
    } 
}
/* secViewMoreBtn */
.secViewMoreBtn{
    position: absolute;
    bottom: 0;
    right: 0;
    width: 10rem;
}
.secViewMoreBtn .viewMoreTit{
    font-size: var(--pcFontSize14);
    letter-spacing: var(--pcLetterSpacing14_50);
    font-weight: 300;
    padding-bottom: 1.5rem;
}
.trgger_animation_Arrow .trgger_animation_Arrow_item{
    position: relative;
}
.trgger_animation_Arrow .trgger_animation_Arrow_item_inner{
    position: absolute;
    width: 1rem;
    height: 0.8rem;
    top: 0.45rem;
    right: 0rem;
    overflow: hidden;
    display: block;
}
.trgger_animation_Arrow .trgger_animation_Arrow_item_inner_arrow,
.trgger_animation_Arrow .trgger_animation_Arrow_item_inner_arrow_off{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: inline-flex;
    transition: 0.5s;
}
.trgger_animation_Arrow .trgger_animation_Arrow_item_inner_arrow{
    transform: translate(0rem, 0rem);
}
.trgger_animation_Arrow .trgger_animation_Arrow_item_inner_arrow_off{
    transform: translate(calc(-100% - 1rem), 0);
}
@media only screen and (min-width:1216px){
    .trgger_animation_Arrow.is-animated .trgger_animation_Arrow_item_inner_arrow{
        transform: translate(calc(100% + 1rem), 0);
    }
    .trgger_animation_Arrow.is-animated .trgger_animation_Arrow_item_inner_arrow_off{
        transform: translate(0%, 0%);
    }
}
@media only screen and (max-width:1215px){
    .secViewMoreBtn{
        position: absolute;
        bottom: 0;
        right: 0;
        width: 3rem;
    }
    .secViewMoreBtn .viewMoreTit{
        display: none;
    }
    .trgger_animation_Arrow .trgger_animation_Arrow_item_inner{
        top: -1.8rem;
        right: calc(50% - 0.5rem);
    }
}
/* ▼animation横線 */
.moreline{
    position: absolute;
    width: 100%;
    height: 0.1rem;
    right: 0;
    bottom: 0;
}
.trgger_animation_line{
    transition: 0.5s;
}
.trgger_animation_line_item{
    display: grid;
    overflow: clip;
}
.trgger_animation_line_item_on,
.trgger_animation_line_item_off{
    translate: none;
    rotate: none;
    scale: none;
    grid-area: 1 / 1;
    width: 100%;
    height: 100%;
    background-color: var(--textColor);
}
.trgger_animation_line_item_on{
    transform: translateX(0);
    transition: 0.25s;
}
.trgger_animation_line_item_off{
    transform: translateX(-100%);
    transition: 0.5s;
}
@media only screen and (min-width:1216px){
    .trgger_animation_line.is-animated .trgger_animation_line_item_on{
        transform: translateX(100%);
    }
    .trgger_animation_line.is-animated .trgger_animation_line_item_off{
        transform: translateX(0);
    }
}
/* ▼animation(横線) */
.animation_underline .animation_underline_item{
    background: linear-gradient(var(--ColorWhite), var(--ColorWhite)) 0 100% / 100% 0.1rem no-repeat;
    transition: background-size .4s cubic-bezier(.25,1,.5,1) 0s;
}
@media (min-width: 1216px) {
    .animation_underline.is-animated .animation_underline_item {
        background-position: 100% 100%;
        background-size: 0 0.1rem
    }
}
/* secTopTxtBox */
.secTopTxtBox{
    margin-top: 10rem;
    text-align: center;
}
.secTopTxtBox .tit{
    font-size: var(--pcFontSize20);
    letter-spacing: var(--pcLetterSpacing20_50);
    font-weight: bold;
}
.secTopTxtBox .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 4rem;
}
@media only screen and (max-width:1215px){
    .secTopTxtBox{
        margin-top: 3.3rem;
    }
    .secTopTxtBox .tit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing15_50);
    }
    .secTopTxtBox .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 1.8rem;
        text-align: left;
    }
}
/* secListSearch */
.secListSearch{
    margin-top: 10rem;
    background: var(--pickupBg);
    padding: 4.3rem 0 6rem;
}
.secListSearch .flexBox{
    display: flex;
    flex-wrap: wrap;
    margin: -1.3rem -2rem;
}
.secListSearch .listSearchBox{
    margin: 1.3rem 2rem;
}
.secListSearch .listSearchBox:last-child{
    width: 100%;
}
.secListSearch .listSearchTit{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_24);
    font-weight: bold;
}
.secListSearch .listSearch{
    display: flex;
    flex-wrap: wrap;
    margin: 0 -1rem;
}
.secListSearch .listSearchItem{
    margin: 1.7rem 1rem 0;
}
.secListSearch .listSearch input[type="checkbox"],
.secListSearch .listSearch .txtCheck::before{
    width: 2.5rem;
    height: 2.5rem;
}
.secListSearch .listSearch input[type="checkbox"]{
    visibility: hidden;
    position: absolute;
    margin: 0;
}
.secListSearch .listSearch .labelCheck{
    position: relative;
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_25);
    display: inline-block;
    cursor: pointer;
}
.secListSearch .listSearch .txtCheck{
    display: inline-flex;
    align-items: center;
    position: relative;
    padding-left: 3.5rem;
}
.secListSearch .listSearch .txtCheck::before{
    position: absolute;
    content: "";
    flex-shrink: 0;
    top: 0;
    left: 0;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.3rem;
    background: var(--whiteColor);
}
.secListSearch .listSearch input[type="checkbox"]:checked + .txtCheck::before{
    background: url(../img/plan/iconCheckbox.png) center center / 1.1rem auto no-repeat var(--whiteColor);
}
.secListSearch .listSearch input[type="checkbox"]:checked + .txtCheck{
    font-weight: bold;
}
.isDesktopIpad .secListSearch .wrapper{
    width: 100%;
}
@media only screen and (max-width:1215px){
    .secListSearch{
        margin-top: 2rem;
        background: var(--whiteColor);
        padding: 0;
    }
    .secListSearch .wrapper{
        width: 100vw;
        height: 100%;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        margin: auto;
        z-index: 99999;
        overflow-y: scroll;
        display: none;
        padding: 2rem 2rem;
        background: var(--planBgColor_749);
    }
    .secListSearch .closeBox{
        position: absolute;
        top: 0;
        right: 0;
        width: 5rem;
        height: 5rem;
        border-left: 1px solid var(--cmnTitblackColor_10);
    }
    .secListSearch .closeBox::before,
    .secListSearch .closeBox::after{
        content: '';
        display: block;
        width: 60%;
        height: 1px;
        background: var(--textColor);
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        top: 25px;
    }
    .secListSearch .closeBox::before{
        transform: rotate(-30deg);
    }
    .secListSearch .closeBox::after{
        transform: rotate(30deg);
    }
    .secListSearch .flexBox{
        position: relative;
        background: var(--pickupBg);
        display: block;
        margin: 0;
        padding-bottom: 3rem;
    }
    .secListSearch .listSearchBox{
        margin: 0;
    }
    .secListSearch .listSearchTit{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_21);
        padding: 1.45rem 2rem;
    }
    .secListSearch .listSearch{
        display: flex;
        flex-wrap: wrap;
        margin: 0;
        border-top: solid 0.1rem var(--cmnTitblackColor_10);
        border-bottom: solid 0.1rem var(--cmnTitblackColor_10);
    }
    .secListSearch .listSearchItem{
        margin: 0;
        width: calc(50% - 0.05rem);
        padding: 1.4rem 2rem;
        border-right: solid 0.1rem var(--cmnTitblackColor_10);
        border-bottom: solid 0.1rem var(--cmnTitblackColor_10);
        display: flex;
        align-items: center;
    }
    .secListSearch .listSearchItem:nth-child(2n){
        border-right: none;
    }
    .secListSearch .rowBox.w50 .listSearchItem:nth-last-child(2):nth-child(2n+1),
    .secListSearch .listSearchItem:last-child {
        border-bottom: none;
    }
    .secListSearch .listSearch input[type="checkbox"],
    .secListSearch .listSearch .txtCheck::before{
        width: 1.8rem;
        height: 1.8rem;
    }
    .secListSearch .listSearch input[type="checkbox"]{
        visibility: hidden;
        position: absolute;
        margin: 0;
    }
    .secListSearch .listSearch .labelCheck{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_21);
    }
    .secListSearch .listSearch .txtCheck{
        padding-left: 2.5rem;
    }
    .secListSearch .listSearch .txtCheck::before{
        top: 0.1rem;
        width: 1.8rem;
        height: 1.8rem;
        border-radius: 0.3rem;
    }
    .secListSearch .listSearch input[type="checkbox"]:checked + .txtCheck::before{
        background: url(../img/plan/iconCheckbox.png) top 0.5rem center / 1rem auto no-repeat var(--whiteColor);
    }
    /* 絞り込み */
    .onNavi #headerscroll,.onNavi #header{
        z-index: 999;
    }
    .onNavi #container{
        z-index: 9999;
    }
}
.secListSearch .planBox{
    margin-top: 3rem;
    padding-top: 3rem;
    border-top: solid 0.1rem var(--cmnTitblackColor_10);
    display: flex;
    justify-content: space-between;
}
.secListSearch .tabList{
    display: flex;
    flex-wrap: wrap;
    margin: 1.5rem -0.3rem -0.3rem;
}
.secListSearch .tabItem{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_24);
    font-weight: bold;
    margin: 0.3rem;
}
.secListSearch .tabTxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_24);
    margin: 0.3rem 0.3rem 0.3rem 0.5rem;
    font-weight: bold;
}
.secListSearch .listSearchBtnBox{
    display: flex;
    flex-shrink: 0;
    padding-left: 5rem;
}
.secListSearch .aClear{
    width: 11rem;
    height: 5.5rem;
    border-radius: 2.75rem;
    background: var(--whiteColor);
    color: var(--textColor);
    font-size: var(--pcFontSize14);
    font-weight: bold;
    border: solid 0.1rem var(--textColor);
    display: flex;
    align-items: center;
    justify-content: center;
}
.secListSearch .aSearch{
    width: 24rem;
    height: 5.5rem;
    border-radius: 2.75rem;
    background: var(--textColor);
    color: var(--whiteColor);
    font-size: var(--pcFontSize14);
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.secListSearch .aSearch span{
    position: relative;
    padding-left: 2.3rem;
}
.secListSearch .aSearch span::after{
    position: absolute;
    content: "";
    width: 1.3rem;
    height: 1.3rem;
    left: 0;
    top: calc(50% - 0.65rem);
}
.secListSearch.lazyloaded .aSearch span::after{
    background: url(../img/plan/iconSearch.png) center top / cover;
}
.secListSearch .aBtn:nth-child(2){
    margin-left: 2rem;
}
@media only screen and (max-width:1215px){
    .secListSearch .planBox{
        margin-top: 0;
        padding: 0 2rem 5rem;
        border-top: none;
        display: block;
        background: var(--pickupBg);
    }
    .secListSearch .listSearchBtnBox{
        display: flex;
        flex-flow: column-reverse;
        padding-left: 0;
    }
    .secListSearch .aClear{
        width: 13.5rem;
        height: 3.5rem;
        border-radius: 1.75rem;
        margin: 2rem auto 0;
        font-size: var(--spFontSize12);
    }
    .secListSearch .aSearch{
        width: 100%;
        height: 4.5rem;
        border-radius: 2.25rem;
        font-size: var(--spFontSize13);
    }
    .secListSearch .aBtn:nth-child(2){
        margin-left: auto;
    }
    .secListSearch .tabList.pcTab{
        display: none;
    }
}
.secNumberBox{
    margin-top: 5.5rem;
}
.secNumberBox .spTab{
    display: none;
}
.secNumberBox .numberTxt{
    font-size: var(--pcFontSize16);
    font-weight: bold;
}
.secNumberBox .number{
    font-size: var(--pcFontSize30);
    position: relative;
    top: 0.3rem;
    margin-right: 0.5rem;
}
@media only screen and (max-width:1215px){
    .secNumberBox{
        margin-top: 2.8rem;
    }
    .secNumberBox .tabList{
        display: flex;
        flex-wrap: wrap;
        margin: 0 -0.2rem;
    }
    .secNumberBox .tabItem{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_22);
        margin: 0 0.2rem;
    }
    .secNumberBox .tabTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_22);
        display: block;
        width: 100%;
    }
    .secNumberBox .numberTxt{
        font-size: var(--spFontSize15);
        margin-top: 1rem;
    }
    .secNumberBox .number{
        font-size: var(--spFontSize24);
        top: 0.2rem;
        margin-right: 0.5rem;
    }
}
/* secPlan */
.secPlan{
    margin-top: 6rem;
}
.secPlan .list{
    display: flex;
    flex-wrap: wrap;
}
.secPlan .item{
    width: 30%;
    margin-right: 5%;
    height: auto;
    position: relative;
}
.secPlan .item:nth-child(3n){
    margin-right: 0;
}
.secPlan .item:nth-child(n+4){
    margin-top: 6rem;
}
.secPlan .inner{
    position: relative;
    height: auto;
    padding-bottom: 5.3rem;
    display: block;
}
.secPlan .inner::after{
    position: absolute;
    content: "";
    width: calc(100% - 11rem);
    height: 1px;
    bottom: 0;
    left: 0;
    background: var(--cmnTitblackColor_20);
}
.secPlan .imgBox{
    position: relative;
}
.secPlan .img{
    padding-top: 71.429%;
}
.secPlan .txtBox{
    margin-top: 3.5rem;
}
.secPlan .titBox{
    display: flex;
    flex-flow: row-reverse;
    justify-content: flex-end;
}
.secPlan .tit{
    font-size: var(--pcFontSize22);
    line-height: var(--pcLineHeight22_33);
    font-weight: bold;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2; 
    overflow: hidden;
    max-height: calc(var(--pcFontSize22) * var(--pcLineHeight22_33) * 2);
}
.secPlan .iconNew{
    height: 1.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin: 0.6rem 0 0 0.5rem;
}
.secPlan .tabList{
    margin-top: 1.5rem;
    padding-left: 3rem;
    position: relative;
    margin-right: -0.2rem;
}
.secPlan .tabList::after{
    position: absolute;
    content: "";
    width: 2.1rem;
    height: 2.1rem;
    top: 0.2rem;
    left: 0;
}
.secPlan.lazyloaded .tabList::after{
    background: url(../img/index/iconWorksTabList.png) center top / cover;
}
.secPlan .tabItem{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_22);
    margin: 0.2rem;
    display: inline-block;
}
.secPlan .costBox{
    background: var(--pickupBg);
    padding: 1.5rem 2.5rem;
    margin-top: 1.5rem;
    border-radius: 0.5rem;
    display: inline-block;
}
.secPlan .costTxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_21);
    letter-spacing: var(--pcLetterSpacing14_50);
    font-weight: bold;
}
.secPlan .costNumber{
    font-size: var(--pcFontSize18);
    position: relative;
    top: 0rem;
}
.secPlan .item.member{
    padding-bottom: 8.3rem;
}
.secPlan .item.member .inner{
    padding-bottom: 0;
}
.secPlan .item.member .inner::after{
    display: none;
}
.secPlan .btnBox{
    width: 24rem;
    position: absolute;
    bottom: 0;
    left: calc(50% - 12rem);
}
.secPlan .btnInner{
    height: 5.5rem;
    background: var(--whiteColor);
    color:var(--textColor);
    border: solid 0.1rem var(--textColor);
    border-radius: 2.75rem;
    font-size: var(--pcFontSize14);
    font-weight: bold;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.5s;
}
.secPlan .btnInner:hover{
    padding-left: 3rem;
}
.secPlan .btnInner::after{
    position: absolute;
    content: "";
    width: 0.7rem;
    height: 0.7rem;
    border-radius: 50%;
    top: calc(50% - 0.35rem);
    left: 2rem;
    background: var(--redColor);
}
.secPlan .memberBox{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex-flow: column;
    background: var(--cmnTitblackColor_851);
    color: var(--whiteColor);
}
.secPlan .memberTit{
    font-size: var(--pcFontSize40);
    letter-spacing: var(--pcLetterSpacing40_50);
    font-weight: 100;
}
.secPlan .memberTxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_26);
    margin-top: 2rem;
}
@media only screen and (max-width:1215px){
    .secPlan{
        margin-top: 3rem;
    }
    .secPlan .list{
        display: block;
    }
    .secPlan .item{
        width: 100%;
        margin-right: 0;
    }
    .secPlan .item:nth-child(3n){
        margin-right: 0;
    }
    .secPlan .item:nth-child(n+2){
        margin-top: 4rem;
    }
    .secPlan .inner{
        padding-bottom: 2rem;
    }
    .secPlan .inner::after{
        width: calc(100% - 4rem);
    }
    .secPlan .img{
        padding-top: 71.642%;
    }
    .secPlan .txtBox{
        margin-top: 2rem;
    }
    .secPlan .titBox{
        display: block;
    }
    .secPlan .tit{
        font-size: var(--spFontSize17);
        line-height: var(--spLineHeight17_25);
        max-height: calc(var(--spFontSize17) * var(--spLineHeight17_25) * 2);
    }
    .secPlan .iconNew{
        height: auto;
        margin: 0 0 1rem;
    }
    .secPlan .tabList{
        margin-top: 0.5rem;
        padding-left: 2.3rem;
        margin-right: -0.2rem;
    }
    .secPlan .tabList::after{
        width: 1.5rem;
        height: 1.5rem;
        top: 0.2rem;
    }
    .secPlan .tabItem{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_18);
        margin: 0.2rem;
    }
    .secPlan .costBox{
        padding: 0.9rem 1.5rem;
        margin-top: 1rem;
        border-radius: 0.5rem;
    }
    .secPlan .costTxt{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_18);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secPlan .costNumber{
        font-size: var(--spFontSize15);
        top: 0.1rem;
    }
    .secPlan .item.member{
        padding-bottom: 0;
    }
    .secPlan .btnBox{
        width: 21.5rem;
        position: static;
        margin: 2rem auto 0;
    }
    .secPlan .btnInner{
        height: 4.5rem;
        border-radius: 2.25rem;
        font-size: var(--spFontSize13);
    }
    .secPlan .btnInner:hover{
        padding-left: 0;
    }
    .secPlan .btnInner::after{
        width: 0.5rem;
        height: 0.5rem;
        top: calc(50% - 0.25rem);
    }
    .secPlan .memberTit{
        font-size: var(--spFontSize28);
        letter-spacing: var(--spLetterSpacing28_50);
    }
    .secPlan .memberTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_22);
        margin-top: 1.5rem;
    }
}
/*-----------------------------------------------
    details
-----------------------------------------------*/
.secDetailsTop{
    margin-top: 10rem;
}
.secDetailsTop .iconNew{
    margin-bottom: 2rem;
}
.secDetailsTop .tit{
    font-size: var(--pcFontSize30);
    line-height: var(--pcLineHeight30_45);
    letter-spacing: var(--pcLetterSpacing30_50);
    font-weight: bold;
}
.secDetailsTop .tabList{
    margin: 2rem -0.2rem 0;
}
.secDetailsTop .tabItem{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_24);
    margin: 0.2rem;
    display: inline-block;
}
.secDetailsTop .imgBox{
    margin-top: 4.5rem;
    padding-top: 7rem;
    border-top: solid 0.1rem var(--cmnTitblackColor_10);
}
.secDetailsTop .img{
    text-align: center;
}
.secDetailsTop .img img{
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}
@media only screen and (max-width:1215px){
    .secDetailsTop{
        margin-top: 3rem;
    }
    .secDetailsTop .iconNew{
        margin-bottom: 1.2rem;
    }
    .secDetailsTop .tit{
        font-size: var(--spFontSize17);
        line-height: var(--spLineHeight17_25);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secDetailsTop .tabList{
        margin: 0.8rem -0.2rem 0;
    }
    .secDetailsTop .tabItem{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_18);
    }
    .secDetailsTop .imgBox{
        margin-top: 2.2rem;
        padding-top: 3rem;
    }
}
.secDetailsTop .detailsTxtBox{
    margin-top: 6.5rem;
}
.secDetailsTop .infoTit{
    font-size: var(--pcFontSize22);
    line-height: var(--pcLineHeight22_30);
    font-weight: bold;
}
.secDetailsTop .infoTxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_36);
    margin-top: 2.5rem;
}
.secDetailsTop .boxDetails{
    margin-top: 5.2rem;
    background: var(--pickupBg);
    position: relative;
    padding: 3rem 5rem;
}
.secDetailsTop .titEng{
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_50);
    font-weight: 300;
    position: absolute;
    left: 2.8rem;
    top: -0.8rem;
}
.secDetailsTop .spanLine{
    position: relative;
}
.secDetailsTop .spanLine::before{
    content: "";
    position: absolute;
    top: 1rem;
    left: 7.5rem;
    width: 22rem;
    height: 0.1rem;
    background-color: var(--cmnTitblackColor_20);
}
.secDetailsTop th,
.secDetailsTop td{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_22);
    color: var(--textColor);
    padding: 0.7rem 0;
}
.secDetailsTop th{
    width: 13.5rem;
    font-weight: 700;
}
.secDetailsTop td{
    width: calc(100% - 13.5rem);
}
@media only screen and (max-width:1215px){
    .secDetailsTop .detailsTxtBox{
        margin-top: 2.5rem;
    }
    .secDetailsTop .infoTit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        font-weight: bold;
    }
    .secDetailsTop .infoTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 1rem;
    }
    .secDetailsTop .boxDetails{
        margin-top: 3rem;
        padding: 2rem 1.5rem 2rem 3rem;
    }
    .secDetailsTop .titEng{
        font-size: var(--spFontSize13);
        letter-spacing: var(--spLetterSpacing0);
        left: 2rem;
        top: -0.65rem;
    }
    .secDetailsTop .spanLine{
        position: relative;
    }
    .secDetailsTop .spanLine::before{
        top: 1rem;
        left: 4.8rem;
        width: 5rem;
        background-color: var(--cmnTitblackColor_20);
    }
    .secDetailsTop th,.secDetailsTop td{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_22);
        padding: 0;
    }
    .secDetailsTop th{
        width: 6rem;
        font-weight: 700;
    }
    .secDetailsTop td{
        width: calc(100% - 6rem);
    }
}
/* secDetailsSlider */
.secDetailsSlider{
    margin-top: 10rem;
}
.secDetailsSlider .boxSlider{
    position: relative;
}
.secDetailsSlider .swiper{
    position: relative;
    overflow: visible;
}
.secDetailsSlider .img{
    padding-top: 58.334%;
    box-shadow: 0rem 0rem 0.396rem 0.004rem rgba(0, 0, 0, 0.2);
}
.secDetailsSlider .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_34);
    margin-top: 2.5rem;
}
.secDetailsSlider .swiper-pagination{
    position: static;
	padding-top: 5rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.secDetailsSlider .swiper-pagination-bullet{
    background: var(--grayColor);
    margin: 0 0.35rem !important;
    opacity: 1;
    width: 0.7rem;
    height: 0.7rem;
    border-radius: 50%;
}
.secDetailsSlider .swiper-pagination-bullet-active{
    background: var(--textColor);
    width: 0.7rem;
    height: 0.7rem;
}
@media only screen and (max-width:1215px){
    .secDetailsSlider{
        margin-top: 5rem;
    }
    .secDetailsSlider .boxSlider{
        width: calc(100% - 4rem);
        margin: 0 auto;
    }
    .secDetailsSlider .img{
        padding-top: 58.306%;
    }
    .secDetailsSlider .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 1.5rem;
    }
    .secDetailsSlider .swiper-pagination{
        padding-top: 2.5rem;
    }
}
/* secDetailsPoint */
.secDetailsPoint{
    margin-top: 10rem;
}
.secDetailsPoint .topTitBox{
    display: flex;
    align-items: center;
}
.secDetailsPoint .iconImg{
    width: 6rem;
    flex-shrink: 0;
}
.secDetailsPoint .topTit{
    font-size: var(--pcFontSize22);
    line-height: var(--pcLineHeight22_33);
    letter-spacing: var(--pcLetterSpacing22_50);
    font-weight: bold;
    margin-left: 2rem;
}
.secDetailsPoint .topTit span{
    border-bottom: solid 0.1rem var(--textColor);
}
.secDetailsPoint .list{
    display: flex;
    flex-wrap: wrap;
    margin-top: 6rem;
}
.secDetailsPoint .item{
    width: calc(50% - 2rem);
    height: auto;
    margin-right: 4rem;
    background: var(--pickupBg);
    position: relative;
    padding: 5.5rem 5rem 7rem;
}
.secDetailsPoint .item:nth-child(2n){
    margin-right: 0;
}
.secDetailsPoint .item:nth-child(n+3){
    margin-top: 6rem;
}
.secDetailsPoint .iconPoint{
    font-size: var(--pcFontSize13);
    font-weight: bold;
    background: var(--pointColor);
    color: var(--whiteColor);
    padding: 0.95rem 1.5rem;
    position: absolute;
    top: -1.6rem;
    left: 3rem;
}
.secDetailsPoint .tit{
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_30);
    font-weight: bold;
}
.secDetailsPoint .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_34);
    margin-top: 1.2rem;
}
@media only screen and (max-width:1215px){
    .secDetailsPoint{
        margin-top: 4rem;
    }
    .secDetailsPoint .topTitBox{
        display: block;
    }
    .secDetailsPoint .iconImg{
        width: 4.5rem;
        margin: 0 auto;
    }
    .secDetailsPoint .topTit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_22);
        letter-spacing: var(--spLetterSpacing0);
        text-align: center;
        margin: 1rem auto 0;
    }
    .secDetailsPoint .list{
        display: block;
        margin-top: 3.8rem;
    }
    .secDetailsPoint .item{
        width: 100%;
        height: auto;
        margin-right: 0;
        background: var(--whiteColor);
        padding: 0;
    }
    .secDetailsPoint .item:nth-child(n+2){
        margin-top: 2.5rem;
        padding-top: 2.8rem;
        border-top: solid 0.1rem var(--cmnTitblackColor_10);
    }
    .secDetailsPoint .iconPoint{
        font-size: var(--spFontSize11);
        background: var(--whiteColor);
        color: var(--pointColor);
        padding: 0;
        position: relative;
        left: 0;
        top: 0;
        display: inline-block;
    }
    .secDetailsPoint .iconPoint::after{
        position: absolute;
        content: "";
        width: 2rem;
        height: 0.1rem;
        right: -3rem;
        top: calc(50% - 0.05rem);
        background: var(--pointColor);
    }
    .secDetailsPoint .tit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        margin-top: 0.8rem;
    }
    .secDetailsPoint .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 0.5rem;
    }
}
/* secDetailsContactBnr */
.secDetailsContactBnr{
    margin-top: 10rem;
    height: 52rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5rem;
}
.secDetailsContactBnr.lazyloaded{
    background: url(../img/plan/bgContactBnr.jpg) center top / cover;
}
.secDetailsContactBnr .imgBox{
    width: 32rem;
    flex-shrink: 0;
}
.secDetailsContactBnr .img{
    padding-top: 100%;
    border-radius: 50%;
    overflow: hidden;
}
.secDetailsContactBnr .txtBox{
    padding-left: 7rem;
}
.secDetailsContactBnr .tit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_42);
    font-weight: bold;
    color: var(--whiteColor);
}
.secDetailsContactBnr .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_40);
    color: var(--whiteColor);
    margin-top: 1.2rem;
} 
.secDetailsContactBnr .btnBox{
    width: 40rem;
    margin-top: 2rem;
}
.secDetailsContactBnr .btnInner{
    height: 7.5rem;
    border-radius: 3.75rem;
    background: var(--whiteColor);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
    color: var(--textColor);
    font-size: var(--pcFontSize16);
    font-weight: bold;
    transition: 0.5s;
}
.secDetailsContactBnr .btnInner:hover{
    padding-left: 3rem;
}
.secDetailsContactBnr .btnInner::after{
    position: absolute;
    content: "";
    width: 0.9rem;
    height: 0.9rem;
    top: calc(50% - 0.45rem);
    left: 4rem;
    background: var(--redColor);
    border-radius: 50%;
}
@media only screen and (max-width:1215px){
    .secDetailsContactBnr{
        margin-top: 8.2rem;
        height: auto;
        display: block;
        padding: 12.5rem 2rem 7rem;
        position: relative;
    }
    .secDetailsContactBnr.lazyloaded{
        background: url(../img/plan/bgContactBnr_sp.jpg) center top / cover;
    }
    .secDetailsContactBnr .imgBox{
        width: 13.5rem;
        position: absolute;
        top: -3rem;
        left: calc(50% - 6.75rem);
    }
    .secDetailsContactBnr .txtBox{
        padding-left: 0;
    }
    .secDetailsContactBnr .tit{
        font-size: var(--spFontSize17);
        line-height: var(--spLineHeight17_25);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secDetailsContactBnr .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        letter-spacing: var(--spLetterSpacing13__50);
        margin-top: 1.2rem;
    } 
    .secDetailsContactBnr .btnBox{
        width: calc(100% - 4rem);
        margin: 2rem auto 0;
    }
    .secDetailsContactBnr .btnInner{
        height: 4.5rem;
        border-radius: 2.25rem;
        font-size: var(--spFontSize13);
    }
    .secDetailsContactBnr .btnInner:hover{
        padding-left: 0;
    }
    .secDetailsContactBnr .btnInner::after{
        width: 0.5rem;
        height: 0.5rem;
        top: calc(50% - 0.25rem);
        left: 2rem;
    }
}
/* secCmnBack */
.secCmnBack{
    margin-top: 10rem;
}
@media only screen and (max-width:1215px){
    .secCmnBack{
        margin-top: 6.7rem;
    }
}

/* secDetailsContactBox */
.secDetailsContactBox{
    margin-top: 12rem;
}
.secDetailsContactBox .inner{
    display: flex;
    background: var(--bgFooter);
    color: var(--whiteColor);
    overflow: visible;
}
.secDetailsContactBox .imgBox{
    width: 48rem;
    overflow: hidden;
}
.secDetailsContactBox .img{
    padding-top: 72.917%;
}
.secDetailsContactBox .txtBox{
    position: relative;
    width: calc(100% - 48rem);
    padding: 5rem 6rem;
    display: flex;
    align-items: center;
}
.secDetailsContactBox .txtInner{
    position: relative;
    z-index: 15;
}
.secDetailsContactBox .tit{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_34);
    letter-spacing: var(--pcLetterSpacing18_50);
    font-weight: bold;
}
.secDetailsContactBox .txt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_30);
    margin-top: 1rem;
}
.secDetailsContactBox .iconImg{
    width: 19.2rem;
    position: absolute;
    bottom: -3.5rem;
    right: 13rem;
}
.secDetailsContactBox .boxIconCircle{
    bottom: 4rem;
    right: 4rem;
}
.secDetailsContactBox .boxIconCircle .linkCircle .linkTxtBox{
    background: var(--bgFooter);
}
@media only screen and (max-width:1215px){
    .secDetailsContactBox{
        margin-top: 10rem;
    }
    .secDetailsContactBox.mt7{
        margin-top: 7rem;
    }
    .secDetailsContactBox .inner{
        display: block;
    }
    .secDetailsContactBox .imgBox{
        width: 100%;
    }
    .secDetailsContactBox .img{
        padding-top: 47.762%;
    }
    .secDetailsContactBox .txtBox{
        position: relative;
        width: 100%;
        padding: 5.5rem 2rem 5.8rem;
        display: block;
    }
    .secDetailsContactBox .tit{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_50);
        line-height: var(--spLineHeight15_26);
    }
    .secDetailsContactBox .txt{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_22);
        margin-top: 1rem;
    }
    .secDetailsContactBox .iconImg{
        width: 13.4rem;
        bottom: auto;
        top: -4rem;
        right: calc(50% - 6.7rem);
    }
    .secDetailsContactBox .boxIconCircle{
        bottom: 2.5rem;
        right: 2.5rem;
    }
}
@media only screen and (max-width:359px){
    .secDetailsContactBox .txt{
        margin-right: -0.1rem;
    }
}