@charset "utf-8";

body {
    background: var(--brandTxtColor);
}
.cursorPointer:hover{
    opacity:0.8; 
}
.cursorPointer{
    transition:opacity 0.2s ease-out;
    cursor: pointer;
}
@media only screen and (max-width:767px){
    .cursorPointer:hover{
        opacity:1; 
    }
}
#btnTop{
    z-index: 20;
}
/* secCmnIndexTop */
.secCmnIndexTop{
    height: 360px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: var(--brandTxtColor);
    background: url(../img/plan/bgCmnIndexTop.jpg) center top / cover;
}
.secCmnIndexTop .titJpn{
    font-size: 18px;
    font-weight: bold;
    margin-top: 28px;
}
@media only screen and (max-width:767px){
    .secCmnIndexTop{
        height: 45.334vw;
        min-height: 170px;
        background: url(../img/plan/bgCmnIndexTop_sp.jpg) center top / cover;
    }
    .secCmnIndexTop .titEng img{
        width: auto;
        height: 25px;
    }
    .secCmnIndexTop .titJpn{
        font-size: 14px;
        margin-top: 14px;
    }
}
/* secFlowBtn */
.secFlowBtn{
    margin-top: 120px;
    padding-bottom: 150px;
}
.secFlowBtn .tit{
    font-size: 28px;
    color: var(--mainColor);
    text-align: center;
    font-weight: 700;
}
.secFlowBtn .list{
    display: flex;
    margin-top: 60px;
}
.secFlowBtn .item{
    width: calc(50% - 30px);
}
.secFlowBtn .item:nth-child(2){
    margin-left: 60px;
}
.secFlowBtn .itemTit{
    font-size: 24px;
    color: var(--mainColor);
    text-align: center;
    font-weight: 700;
}
.secFlowBtn .inner{
    margin-top: 30px;
    display: block;
    text-decoration: none;
    color: var(--brandTxtColor);
}
.secFlowBtn .imgBox{
    position: relative;
}
.secFlowBtn .img{
    overflow: hidden;
    border-radius: 150px;
}
.secFlowBtn .imgTxtBox{
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex-flow: column;
}
.secFlowBtn .imgTit{
    font-size: 34px;
    font-weight: bold;
}
.secFlowBtn .imgTxt{
    font-size: 18px;
    font-weight: bold;
    margin-top: 30px;
}
.secFlowBtn .btnTxt{
    position: relative;
    border-radius: 3px;
    width: 320px;
    height: 71px;
    margin: -38px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #22304f;
    background: var(--reservationColor);
    font-size: 14px;
    font-weight: bold;
    box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(4, 0, 0, 0.2);
}
.secFlowBtn .item:nth-child(2) .btnTxt{
    background: var(--brandColor);
    color: var(--brandTxtColor);
}
@media only screen and (max-width:767px){
    .secFlowBtn{
        margin-top: 60px;
        padding-bottom: 60px;
    }
    .secFlowBtn .tit{
        font-size: 18px;
    }
    .secFlowBtn .list{
        display: block;
        margin-top: 25px;
    }
    .secFlowBtn .item{
        width: 100%;
    }
    .secFlowBtn .item:nth-child(2){
        margin: 30px auto 0;
    }
    .secFlowBtn .itemTit{
        font-size: 16px;
    }
    .secFlowBtn .inner{
        margin-top: 15px;
    }
    .secFlowBtn .img{
        border-radius: 95px;
    }
    .secFlowBtn .imgTit{
        font-size: 24px;
    }
    .secFlowBtn .imgTxt{
        font-size: 13px;
        margin-top: 20px;
    }
    .secFlowBtn .btnTxt{
        width: 260px;
        height: 50px;
        margin: -25px auto 0;
        font-size: 12px;
    }
}
/* secTop */
.secTop{
    margin-top: 50px;
}
.secTop .topTitBox{
    text-align: center;
}
.secTop .topTit{
    font-size: 24px;
    letter-spacing: 1px;
    display: inline-block;
    font-weight: bold;
    position: relative;
}
.secTop .topTit::after,
.secTop .topTit::before{
    position: absolute;
    content: "";
}
.secTop .topTit::after{
    width: 29px;
    height: 28px;
    left: -43px;
    top: -22px;
}
.secTop.lazyloaded .topTit::after{
    background: url(../img/plan/iconTop01.png) center top / cover;
}
.secTop .topTit::before{
    width: 28px;
    height: 29px;
    right: -30px;
    top: -22px;
}
.secTop.lazyloaded .topTit::before{
    background: url(../img/plan/iconTop02.png) center top / cover;
}
.secTop .list{
    margin-top: 80px;
    display: flex;
    justify-content: center;
}
.secTop .item{
    width: 460px;
}
.secTop .item:nth-child(1){
    border-right: solid 1px #555555;
    border-left: solid 2px #555555;
}
.secTop .item:nth-child(2){
    border-right: solid 2px #555555;
    border-left: solid 1px #555555;
}
.secTop .inner{
    height: 170px;
    text-decoration: none;
    color: var(--mainColor);
    display: block;
    text-align: center;
    padding-top: 20px;
    position: relative;
}
.secTop .inner::after{
    position: absolute;
    content: "";
    width: 30px;
    height: 30px;
    border-radius: 50%;
    bottom: 10px;
    left: calc(50% - 15px);
}
.secTop.lazyloaded .item:nth-child(1) .inner::after{
    background: url(../img/plan/iconTopBtn01.png) center center / 9px auto no-repeat var(--reservationColor);
}
.secTop.lazyloaded .item:nth-child(2) .inner::after{
    background: url(../img/plan/iconTopBtn02.png) center center / 9px auto no-repeat var(--brandColor);
}
.secTop .tit{
    font-size: 30px;
    font-weight: bold;
}
.secTop .txt{
    font-size: 14px;
    line-height: 1.71;
    margin-top: 20px;
}
@media only screen and (max-width:767px){
    .secTop{
        margin-top: 40px;
    }
    .secTop .topTit{
        font-size: 15px;
        letter-spacing: 0;
    }
    .secTop .topTit::after{
        width: 21px;
        height: 22px;
        left: -13px;
        top: -22px;
    }
    .secTop.lazyloaded .topTit::after{
        background: url(../img/plan/iconTop01_sp.png) center top / cover;
    }
    .secTop .topTit::before{
        width: 21px;
        height: 22px;
        right: -12px;
        top: -22px;
    }
    .secTop.lazyloaded .topTit::before{
        background: url(../img/plan/iconTop02_sp.png) center top / cover;
    }
    .secTop .list{
        margin: 28px auto 0;
        width: 94.667%;
    }
    .secTop .item{
        width: calc(50% - 4.5px);
    }
    .secTop .item:nth-child(1){
        border: none;
    }
    .secTop .item:nth-child(2){
        border: none;
        margin-left: 9px;
    }
    .secTop .inner{
        height: 50px;
        display: flex;
        align-items: center;
        text-align: left;
        padding: 13px;
        border-radius: 3px;
        border: solid 1px #555555;
    }
    .secTop .inner::after{
        width: 20px;
        height: 20px;
        bottom: calc(50% - 10px);
        left: auto;
        right: 15px;
    }
    .secTop.lazyloaded .item:nth-child(1) .inner::after{
        background: url(../img/plan/iconTopBtn01.png) center center / 6px auto no-repeat var(--reservationColor);
    }
    .secTop.lazyloaded .item:nth-child(2) .inner::after{
        background: url(../img/plan/iconTopBtn02.png) center center / 6px auto no-repeat var(--brandColor);
    }
    .secTop .tit{
        font-size: 13px;
    }
    .secTop .txt{
        display: none;
    }
}
@media only screen and (max-width:374px){
    .secTop .topTit{
        font-size: 14px;
    }
}
@media only screen and (max-width:359px){
    .secTop .topTit{
        font-size: 13px;
    }
    .secTop .inner::after{
        right: 10px;
    }
}
/* secHouse */
.secHouse{
    padding-top: 115px;
}
.secHouse .topTit{
    font-size: 60px;
    font-weight: bold;
    margin-left: 30px;
}
.secHouse .topTit span{
    position: relative;
}
.secHouse .topTit span::after{
    position: absolute;
    content: "";
    width: 100%;
    height: 5px;
    left: 0;
    bottom: -10px;
    background: var(--reservationColor);
}
.secHouse .img{
    margin-top: -25px;
}
.secHouse .txtFlexBox{
    display: flex;
    margin-top: 50px;
}
.secHouse .leftBox{
    width: 550px;
}
.secHouse .subTit{
    font-size: 26px;
    line-height: 1.76;
    font-weight: bold;
}
.secHouse .tit{
    font-size: 42px;
    font-weight: bold;
    margin-top: 12px;
}
.secHouse .rightBox{
    width: calc(100% - 550px);
    padding: 0 0 0 50px;
}
.secHouse .txt{
    font-size: 15px;
    line-height: 2;
    margin-top: 2px;
}
.secHouse .itemBox{
    margin-top: 50px;
    width: 340px;
    height: 75px;
    border: solid 3px var(--mainColor);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: bold;
    padding-right: 8px;
    background: var(--brandTxtColor);
}
.secHouse .itemSub{
    position: relative;
    margin: 0 15px 0 25px;
    left: -6px;
}
.secHouse .list{
    margin-top: 60px;
    display: flex;
}
.secHouse .listItem{
    width: 23.75%;
    margin-right: 1.666%;
    border-radius: 3px;
    border: solid 1px var(--bdrColor01);
    background: var(--brandTxtColor);
    box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(4, 0, 0, 0.2);
    overflow: hidden;
}
.secHouse .listItem:nth-child(4n){
    margin-right: 0;
}
.secHouse .listTitBox{
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-weight: bold;
    background: var(--reservationColor);
}
.secHouse .listTit{
    font-weight: bold;
}
.secHouse .number{
    font-size: 24px;
}
.secHouse .listTit02{
    font-size: 14px;
    margin-left: 2px;
}
.secHouse .listIcon{
    font-size: 14px;
    margin: 0 3px;
}
.secHouse .listTxtBox{
    min-height: 117px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 30px 10px;
}
.secHouse .listTxt{
    font-weight: bold;
}
.secHouse .numberTit{
    font-size: 30px;
}
.secHouse .numberTxt{
    font-size: 15px;
    margin-left: 3px;
}
.secHouse .spanMiddle{
    font-size: 20px;
    padding-right: 5px;
}
.secHouse .subTxt{
    margin-top: 25px;
    font-size: 13px;
}
@media only screen and (max-width:767px){
    .secHouse{
        padding-top: 50px;
    }
    .secHouse .topTit{
        font-size: 26px;
        text-align: center;
        margin-left: 0;
    }
    .secHouse .topTit span::after{
        height: 4px;
        bottom: -3px;
    }
    .secHouse .img{
        margin-top: -13px;
    }
    .secHouse .txtFlexBox{
        display: block;
        margin-top: 24px;
    }
    .secHouse .leftBox{
        width: 94.667%;
        margin: 0 auto;
    }
    .secHouse .subTit{
        font-size: 16px;
        line-height: 1.5;
    }
    .secHouse .tit{
        font-size: 20px;
        margin-top: 9px;
    }
    .secHouse .rightBox{
        width: 94.667%;
        margin: 0 auto;
        padding: 0;
    }
    .secHouse .txt{
        font-size: 13px;
        line-height: 1.84;
        margin-top: 13px;
    }
    .secHouse .itemBox{
        margin: 25px auto 0;
        width: 225px;
        height: 50px;
        font-size: 13px;
        padding-right: 0;
        border: solid 2px var(--mainColor);
    }
    .secHouse .itemSub{
        margin: 0 15px;
        left: 0;
    }
    .secHouse .list{
        margin: 30px auto 0;
        display: flex;
        flex-wrap: wrap;
        width: 94.667%;
    }
    .secHouse .listItem{
        width: calc(50% - 4.5px);
        margin-right: 9px;
    }
    .secHouse .listItem:nth-child(2n){
        margin-right: 0;
    }
    .secHouse .listItem:nth-child(n+3){
        margin-top: 10px;
    }
    .secHouse .listTitBox{
        height: 34px;
    }
    .secHouse .number{
        font-size: 16px;
    }
    .secHouse .listTit02{
        font-size: 12px;
        margin-left: 1px;
    }
    .secHouse .listIcon{
        font-size: 12px;
        margin: 0 1px;
    }
    .secHouse .listTxtBox{
        min-height: 54px;
        padding: 15px 10px;
        height: calc(100% - 34px);
    }
    .secHouse .listTxt{
        line-height: 1.2;
    }
    .secHouse .numberTit{
        font-size: 22px;
    }
    .secHouse .spanMiddle{
        font-size: 14px;
        padding-right: 5px;
    }
    .secHouse .numberTxt{
        font-size: 13px;
        margin-left: 2px;
    }
    .secHouse .subTxt{
        width: 94.667%;
        margin: 15px auto 0;
        font-size: 11px;
    }
}
@media only screen and (max-width:359px){
    .secHouse .subTit {
        font-size: 14px;
    }
    .secHouse .txt {
        font-size: 11px;
    }
}
/* secRenovation */
.secRenovation{
    margin-top: 70px;
    background: #f8f8f8;
    padding: 70px 30px 70px;
}
.secRenovation .tit{
    font-size: 24px;
    font-weight: bold;
    text-align: center;
}
.secRenovation .list{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 40px;
}
.secRenovation .item{
    position: relative;
    width: 15.351%;
    height: 200px;
    margin-right: 1.5788%;
    border-radius: 20px;
    background: var(--brandTxtSpColor);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding: 30px;
    box-shadow: 0px 0px 10px -5px #777777;
}
.secRenovation .item:nth-child(6){
    margin-right: 0;
}
.secRenovation .txt{
    font-size: 16px;
    font-weight: bold;
}
.secRenovation.lazyloaded .item:nth-child(1){
    background: url(../img/plan/iconRenovation01.png) top 46px center / 79px auto no-repeat var(--brandTxtSpColor);
}
.secRenovation.lazyloaded .item:nth-child(2){
    background: url(../img/plan/iconRenovation02.png) top 45px center / 88px auto no-repeat var(--brandTxtSpColor);
}
.secRenovation.lazyloaded .item:nth-child(3){
    background: url(../img/plan/iconRenovation03.png) top 41px center / 67px auto no-repeat var(--brandTxtSpColor);
}
.secRenovation.lazyloaded .item:nth-child(4){
    background: url(../img/plan/iconRenovation04.png) top 40px center / 86px auto no-repeat var(--brandTxtSpColor);
}
.secRenovation.lazyloaded .item:nth-child(5){
    background: url(../img/plan/iconRenovation05.png) top 49px center / 100px auto no-repeat var(--brandTxtSpColor);
}
.secRenovation.lazyloaded .item:nth-child(6){
    background: url(../img/plan/iconRenovation06.png) top 38px center / 52px auto no-repeat var(--brandTxtSpColor);
}
.secRenovation.lazyloaded .item:nth-child(7){
    background: url(../img/plan/iconRenovation07.png) top 40px center / 78px auto no-repeat var(--brandTxtSpColor);
}
.secRenovation.lazyloaded .item:nth-child(8){
    background: url(../img/plan/iconRenovation08.png) top 43px center / 83px auto no-repeat var(--brandTxtSpColor);
}
@media only screen and (max-width:767px){
    .secRenovation{
        margin-top: 48px;
        padding: 50px 0 50px;
    }
    .secRenovation .tit{
        font-size: 18px;
    }
    .secRenovation .list{
        width: 93.334%;
        margin: 30px auto 0;
    }
    .secRenovation .item{
        width: 31.429%;
        height: 126px;
        margin-right: 2.8565%;
        border-radius: 13px;
        padding: 20px 5px;
    }
    .secRenovation .item:nth-child(3n),
    .secRenovation .item:nth-child(6){
        margin-right: 0;
    }
    .secRenovation .item:nth-child(n+4){
        margin-top: 2.8565%;
    }
    .secRenovation .txt{
        font-size: 13px;
    }
    .secRenovation.lazyloaded .item:nth-child(1){
        background: url(../img/plan/iconRenovation01.png) top 28px center / 50px auto no-repeat var(--brandTxtSpColor);
    }
    .secRenovation.lazyloaded .item:nth-child(2){
        background: url(../img/plan/iconRenovation02.png) top 28px center / 55px auto no-repeat var(--brandTxtSpColor);
    }
    .secRenovation.lazyloaded .item:nth-child(3){
        background: url(../img/plan/iconRenovation03.png) top 25px center / 42px auto no-repeat var(--brandTxtSpColor);
    }
    .secRenovation.lazyloaded .item:nth-child(4){
        background: url(../img/plan/iconRenovation04.png) top 27px center / 54px auto no-repeat var(--brandTxtSpColor);
    }
    .secRenovation.lazyloaded .item:nth-child(5){
        background: url(../img/plan/iconRenovation05.png) top 30px center / 63px auto no-repeat var(--brandTxtSpColor);
    }
    .secRenovation.lazyloaded .item:nth-child(6){
        background: url(../img/plan/iconRenovation06.png) top 25px center / 33px auto no-repeat var(--brandTxtSpColor);
    }
    .secRenovation.lazyloaded .item:nth-child(7){
        background: url(../img/plan/iconRenovation07.png) top 30px center / 49px auto no-repeat var(--brandTxtSpColor);
    }
    .secRenovation.lazyloaded .item:nth-child(8){
        background: url(../img/plan/iconRenovation08.png) top 30px center / 52px auto no-repeat var(--brandTxtSpColor);
    }
}
/* secPoint */
.secPoint{
    margin-top: 70px;
    padding: 70px 60px 62px;
}
.secPoint.lazyloaded{
    background: url(../img/plan/bgPoint.png) repeat;
}
.secPoint .tit{
    font-size: 24px;
    font-weight: bold;
    text-align: center;
}
.secPoint .list{
    margin-top: 60px;
    display: flex;
    flex-wrap: wrap;
}
.secPoint .item{
    position: relative;
    width: 50%;
    padding: 0 80px 38px 60px;
}
.secPoint .item:nth-child(2n){
    padding: 0 60px 38px 80px;
}
.secPoint .item:nth-child(2n)::after{
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    left: -0.5px;
    top: 0;
    background: var(--mainColor);
}
.secPoint .item:nth-child(n+3){
    border-top: solid 1px var(--mainColor);
    padding-top: 50px;
    padding-bottom: 0;
}
.secPoint .imgBox{
    width: 200px;
    margin: 0 auto;
}
.secPoint .img{
    border-radius: 50%;
    overflow: hidden;
}
.secPoint .itemTit{
    font-size: 18px;
    line-height: 1.66;
    font-weight: bold;
    margin-top: 22px;
    text-align: center;
}
.secPoint .txtBox{
    margin-top: 16px;
}
.secPoint .txt{
    font-size: 15px;
    line-height: 2;
}
@media only screen and (max-width:767px){
    .secPoint{
        margin-top: 48px;
        padding: 0;
    }
    .secPoint.lazyloaded{
        background: var(--mainTxtColor);
    }
    .secPoint .tit{
        font-size: 18px;
    }
    .secPoint .list{
        margin: 30px auto 0;
        display: block;
        width: 94.667%;
    }
    .secPoint .item{
        width: 100%;
        padding: 0 0 20px;
    }
    .secPoint .item:nth-child(2n){
        padding: 20px 0;
        border-top: solid 1px var(--mainColor);
    }
    .secPoint .item:nth-child(2n)::after{
        display: none;
    }
    .secPoint .item:nth-child(n+3){
        padding: 20px 0;
        border-top: solid 1px var(--mainColor);
    }
    .secPoint .titBox{
        position: relative;
        display: flex;
        align-items: center;
    }
    .secPoint .titBox::after{
        position: absolute;
        content: "";
        width: 12px;
        height: 8px;
        top: calc(50% - 4px);
        right: 15px;
        transition: all 0.4s ease-out;
    }
    .secPoint .titBox.on::after{
        transform: rotate(180deg);
    }
    .secPoint.lazyloaded .titBox::after{
        background: url(../img/plan/iconPointTitBox.png) center top / cover;
    }
    .secPoint .imgBox{
        width: 100px;
        margin: 0;
    }
    .secPoint .itemTit{
        width: calc(100% - 100px);
        padding: 0 30px 0 20px;
        font-size: 14px;
        line-height: 1.71;
        margin-top: 0;
        text-align: left;
    }
    .secPoint .txtBox{
        display: none;
        margin-top: 12px;
    }
    .secPoint .txt{
        font-size: 12px;
        line-height: 2;
    }
}
@media only screen and (max-width:374px){
    .secPoint .titBox::after{
        right: 0;
    }
    .secPoint .itemTit{
        padding: 0 20px;
        font-size: 13px;
    }
}
@media only screen and (max-width:359px){
    .secPoint .imgBox{
        width: 80px;
    }
    .secPoint .itemTit{
        width: calc(100% - 80px);
    }
    .secPoint .itemTit{
        font-size: 12px;
    }
}
/* secBtnBox */
.secBtnBox{
    margin-top: 70px;
    background: #fffce5;
    padding: 58px 50px 70px;
}
.secBtnBox .tit{
    font-size: 20px;
    line-height: 2;
    font-weight: bold;
    text-align: center;
}
.secBtnBox .list{
    margin-top: 40px;
    display: flex;
    justify-content: center;
}
.secBtnBox .item{
    width: 340px;
}
.secBtnBox .item:nth-child(2){
    margin-left: 40px;
}
.secBtnBox .inner{
    font-size: 16px;
    font-weight: bold;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 3px;
    height: 80px;
}
.secBtnBox .item:nth-child(1) .inner{
    color: var(--mainTxtColor);
    background: var(--brandColor);
}
.secBtnBox .item:nth-child(2) .inner{
    color: var(--mainColor);
    background: var(--reservationColor);
}
@media only screen and (max-width:767px){
    .secBtnBox{
        margin-top: 30px;
        padding: 35px 10px 40px;
    }
    .secBtnBox .tit{
        font-size: 14px;
        line-height: 1.71;
    }
    .secBtnBox .list{
        margin: 27px auto 0;
        width: calc(100% - 26px);
    }
    .secBtnBox .item{
        width: calc(50% - 4.5px);
    }
    .secBtnBox .item:nth-child(2){
        margin-left: 9px;
    }
    .secBtnBox .inner{
        font-size: 12px;
        border-radius: 3px;
        height: 50px;
        box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(4, 0, 0, 0.2);
    }
}
@media only screen and (max-width:359px){
    .secBtnBox .tit{
        font-size: 12px;
    }
    .secBtnBox .list{
        width: 100%;
    }
    .secBtnBox .inner{
        font-size: 11px;
    }
}

/* secBgBox */
.secBgBox{
    margin-top: 150px;
    position: relative;
}
.secBgBox::after{
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.secBgBox.lazyloaded::after{
    background: url(../img/plan/bgPoint.png) repeat;
}
@media only screen and (max-width:767px){
    .secBgBox{
        margin-top: 0;
    }
    .secBgBox::after{
        height: calc(100% - 150px);
        top: auto;
        bottom: 0;
    }
}
.secHouse#item02{
    position: relative;
    z-index: 10;
    padding-top: 145px;
}
.secHouse#item02 .topTit span::after{
    background: var(--brandColor);
}
.secHouse#item02 .listTitBox {
    background: var(--brandColor);
    color: var(--brandTxtColor);
}
@media only screen and (max-width:767px){
    .secHouse#item02{
        padding-top: 80px;
    }
}
.secBgBox .secRenovation{
    position: relative;
    z-index: 10;
}
.secBgBox .secRenovation .list{
    width: calc(100% - 350px);
    margin: 40px auto 0;
}
.secBgBox .secRenovation .item,
.secBgBox .secRenovation .item:nth-child(6){
    width: 22.152%;
    margin-right: 3.79733%;
}
.secBgBox .secRenovation .item:nth-child(4n){
    margin-right: 0;
}
.secBgBox .secRenovation .item:nth-child(n+5){
    margin-top: 3.79733%;
}
.secBgBox .secRenovation .item:nth-child(n+7){
    border: solid 4px #fedecf;
}
.secBgBox .secRenovation .subTxt{
    font-size: 12px;
    position: absolute;
    width: 100%;
    text-align: center;
    bottom: -29px;
    left: 0;
}
@media only screen and (max-width:767px){
    .secBgBox .secRenovation{
        padding: 50px 0 67px;
    }
    .secBgBox .secRenovation .list{
        width: 93.334%;
        margin: 30px auto 0;
    }
    .secBgBox .secRenovation .item,
    .secBgBox .secRenovation .item:nth-child(6){
        width: 31.429%;
        margin-right: 2.8565%;
    }
    .secBgBox .secRenovation .item:nth-child(4n){
        margin-right: 2.8565%;
    }
    .secBgBox .secRenovation .item:nth-child(3n),
    .secBgBox .secRenovation .item:nth-child(6),
    .secBgBox .secRenovation .item:nth-child(8){
        margin-right: 0;
    }
    .secBgBox .secRenovation .item:nth-child(n+4){
        margin-top: 2.8565%;
    }
    .secBgBox .secRenovation .item:nth-child(n+7){
        border: solid 2px #fedecf;
    }
    .secBgBox .secRenovation .subTxt{
        font-size: 11px;
        bottom: -22px;
    }
}
@media only screen and (max-width:374px){
    .secBgBox .secRenovation .subTxt{
        font-size: 10px;
    }
}
@media only screen and (max-width:359px){
    .secBgBox .secRenovation .subTxt{
        letter-spacing: -0.3px;
    }
}
.secBgBox .secPoint{
    position: relative;
    z-index: 10;
    margin-top: 65px;
}
.secBgBox .secPoint.lazyloaded{
    background: var(--brandTxtSpColor);
}
.secBgBox .secPoint .item,
.secBgBox .secPoint .item:nth-child(2n){
    width: calc(100% / 3);
    padding: 0 40px 38px 40px;
}
.secBgBox .secPoint .item:nth-child(2n)::after,
.secBgBox .secPoint .item:nth-child(3n)::after,
.secBgBox .secPoint .item:nth-child(5)::after{
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    left: -0.5px;
    top: 0;
    background: var(--mainColor);
}
.secBgBox .secPoint .item:nth-child(4)::after{
    display: none;
}
.secBgBox .secPoint .item:nth-child(n+3){
    border-top: solid 1px var(--mainColor);
    padding-top: 50px;
    padding-bottom: 0;
}
.secBgBox .secPoint .item:nth-child(3){
    border-top: none;
    padding: 0 40px 38px 40px;
}
@media only screen and (max-width:767px){
    .secBgBox .secPoint{
        margin-top: 50px;
    }
    .secBgBox .secPoint.lazyloaded{
        background: none;
    }
    .secBgBox .secPoint .item,
    .secBgBox .secPoint .item:nth-child(2n){
        width: 100%;
        padding: 0 0 20px;
    }
    .secBgBox .secPoint .item:nth-child(2n)::after,
    .secBgBox .secPoint .item:nth-child(3n)::after,
    .secBgBox .secPoint .item:nth-child(5)::after{
        display: none;
    }
    .secBgBox .secPoint .item:nth-child(2),
    .secBgBox .secPoint .item:nth-child(3),
    .secBgBox .secPoint .item:nth-child(n+3){
        padding: 20px 0;
        border-top: solid 1px var(--mainColor);
    }
}
.secBgBox .secBtnBox{
    position: relative;
    z-index: 10;
}
.secBgBox .secBtnBox .list{
    margin-top: 32px;
}
@media only screen and (max-width:767px){
    .secBgBox .secBtnBox{
        position: relative;
        z-index: 10;
    }
    .secBgBox .secBtnBox .list{
        margin-top: 27px;
    }
}
/* secBgBox02 */
.secBgBox02{
    padding: 100px 0 148px;
}
.secBgBox02.lazyloaded{
    background: url(../img/plan/bgPoint.png) repeat;
}
@media only screen and (max-width:767px){
    .secBgBox02{
        padding: 50px 0;
    }
}
/* secRinobe */
.secRinobe .topTit{
    height: 90px;
    background: var(--brandTxtColor);
    border: solid 1px #d7d7d7;
    padding: 0 40px;
    display: flex;
    align-items: center;
    font-size: 26px;
    font-weight: bold;
    position: relative;
}
.secRinobe .topTit::after{
    position: absolute;
    content: "";
    width: 5px;
    height: calc(100% + 2px);
    left: -1px;
    top: -1px;
    z-index: 20;
    background: var(--brandColor);
}
.secRinobe .flexBox{
    margin-top: 65px;
    display: flex;
}
.secRinobe .txtBox{
    width: calc(100% - 380px);
    padding: 0 0 0 70px;
    margin-top: -10px;
}
.secRinobe .tit{
    font-size: 24px;
    line-height: 1.66;
    font-weight: bold;
}
.secRinobe .txt{
    font-size: 15px;
    line-height: 2;
    margin-top: 12px;
}
@media only screen and (max-width:767px){
    .secRinobe .topTit{
        height: 60px;
        padding: 0 20px;
        font-size: 18px;
    }
    .secRinobe .topTit::after{
        width: 4px;
    }
    .secRinobe .flexBox{
        margin-top: 30px;
        display: block;
    }
    .secRinobe .txtBox{
        width: 100%;
        padding: 0;
        margin-top: 25px;
    }
    .secRinobe .tit{
        font-size: 16px;
        line-height: 1.5;
    }
    .secRinobe .txt{
        font-size: 13px;
        line-height: 1.84;
        margin-top: 10px;
    }
}
.secPoint02{
    position: relative;
    z-index: 10;
    margin-top: 65px;
    padding-bottom: 75px;
}
.secPoint02.lazyloaded{
    background: var(--brandTxtSpColor);
}
.secPoint02 .list{
    margin-top: 50px;
}
.secPoint02 .item,
.secPoint02 .item:nth-child(2n){
    width: calc(100% / 3);
    padding: 0 40px 45px 40px;
}
.secPoint02 .item:nth-child(2n)::after,
.secPoint02 .item:nth-child(3n)::after,
.secPoint02 .item:nth-child(5)::after{
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    left: -0.5px;
    top: 0;
    background: var(--mainColor);
}
.secPoint02 .item:nth-child(4)::after{
    display: none;
}
.secPoint02 .item:nth-child(n+3){
    border-top: solid 1px var(--mainColor);
    padding-top: 50px;
    padding-bottom: 0;
}
.secPoint02 .item:nth-child(3){
    border-top: none;
    padding: 0 40px 45px 40px;
}
.secPoint02 .imgBox{
    width: 175px;
}
@media only screen and (max-width:767px){
    .secPoint02{
        margin: 50px auto 0;
        width: 94.667%;
        padding: 43px 0 30px;
    }
    .secPoint02.lazyloaded{
        background: var(--brandTxtSpColor);
    }
    .secPoint02 .list{
        margin-top: 25px;
    }
    .secPoint02 .tit{
        font-size: 16px;
        line-height: 1.5;
    }
    .secPoint02 .list{
        width: 100%;
        padding: 0 10px;
    }
    .secPoint02 .item,
    .secPoint02 .item:nth-child(2n){
        width: 100%;
        padding: 0 0 20px;
    }
    .secPoint02 .item:nth-child(2n)::after,
    .secPoint02 .item:nth-child(3n)::after,
    .secPoint02 .item:nth-child(5)::after{
        display: none;
    }
    .secPoint02 .item:nth-child(2),
    .secPoint02 .item:nth-child(3),
    .secPoint02 .item:nth-child(n+3){
        padding: 20px 0;
        border-top: solid 1px var(--mainColor);
    }
    .secPoint02 .imgBox{
        width: 70px;
    }
    .secPoint02 .itemTit{
        width: calc(100% - 70px);
    }
    .secPoint02 .titBox::after{
        right: 5px;
    }
}
@media only screen and (max-width:359px){
    .secPoint02 .imgBox{
        width: 60px;
    }
    .secPoint02 .itemTit{
        width: calc(100% - 60px);
    }
    .secPoint02 .titBox::after{
        right: 0;
    }
}
/* secStrong */
.secStrong{
    margin-top: 70px;
    background: #fff;
    padding: 70px 100px 70px;
}
.secStrong .tit{
    font-size: 24px;
    letter-spacing: 1px;
    font-weight: bold;
    text-align: center;
}
.secStrong .txt{
    font-size: 15px;
    line-height: 2;
    text-align: center;
    margin-top: 40px;
}
.secStrong .mainBox{
    position: relative;
    margin-top: 73px;
    padding-bottom: 42px;
}
.secStrong .mainImg{
    text-align: center;
    position: relative;
    left: -5px;
}
.secStrong .item{
    position: absolute;
    z-index: 10;
    width: 280px;
    border-radius: 20px;
    background: #fedecf;
    padding: 20px 15px 20px 25px;
}
.isDesktopIpad .secStrong .item{
    padding: 20px 10px 20px 15px;
}
.secStrong .itemTit{
    font-size: 15px;
    line-height: 1.33;
    font-weight: bold;
}
.secStrong .itemTxt{
    font-size: 13px;
    line-height: 1.53;
    margin-top: 5px;
}
.isDesktopIpad .secStrong .itemTxt{
    font-size: 10px;
}
.secStrong .item.item:nth-child(1){
    left: 0;
    top: 32px;
}
.secStrong .item.item:nth-child(2){
    left: 0;
    bottom: 58px;
}
.secStrong .item.item:nth-child(3){
    right: 0;
    top: -18px;
}
.secStrong .item.item:nth-child(4){
    right: 0;
    top: 88px;
}
.secStrong .item.item:nth-child(5){
    right: 0;
    bottom: 0;
}
@media only screen and (max-width:767px){
    .secStrong{
        margin-top: 50px;
        padding: 46px 10px 50px;
    }
    .secStrong .tit{
        font-size: 16px;
        line-height: 1.5;
        letter-spacing: 0;
    }
    .secStrong .txt{
        font-size: 12px;
        line-height: 2;
        text-align: left;
        margin-top: 20px;
    }
    .secStrong .mainBox{
        margin-top: 25px;
        padding-bottom: 0;
    }
    .secStrong .mainImg{
        left: 0;
    }
    .secStrong .list{
        display: flex;
        flex-wrap: wrap;
        margin-top: 30px;
    }
    .secStrong .item{
        position: static;
        width: calc(50% - 4.5px);
        border-radius: 10px;
        padding: 13px 12px 17px;
    }
    .secStrong .item:nth-child(2n){
        margin-left: 9px;
    }
    .secStrong .item:nth-child(n+3){
        margin-top: 9px;
    }
    .secStrong .itemTit{
        font-size: 14px;
        line-height: 1.28;
    }
    .secStrong .itemTxt{
        font-size: 12px;
        line-height: 1.5;
        margin-top: 5px;
    }
}
@media only screen and (max-width:359px){
    .secStrong .tit{
        font-size: 14px;
    }
}
/* secRinobe02 */
.secRinobe02{
    margin-top: 100px;
}
@media only screen and (max-width:767px){
    .secRinobe02{
        margin-top: 50px;
    }
}
/* secStrong02 */
.secStrong02{
    padding: 70px 80px;
}
.secStrong02 .mainBox{
    padding-bottom: 10px;
}
.secStrong02 .mainImg{
    left: 8px;
}
.secStrong02 .item{
    width: 300px;
}
.secStrong02 .item.item:nth-child(1){
    left: 0;
    top: -18px;
}
.secStrong02 .item.item:nth-child(2){
    left: 0;
    bottom: 107px;
}
.secStrong02 .item.item:nth-child(3){
    right: auto;
    left: 0;
    top: auto;
    bottom: 0;
}
.secStrong02 .item.item:nth-child(4){
    right: 0;
    top: -18px;
}
.secStrong02 .item.item:nth-child(5){
    right: 0;
    bottom: 107px;
}
.secStrong02 .item.item:nth-child(6){
    right: 0;
    bottom: 0;
}
@media only screen and (max-width:767px){
    .secStrong02{
        padding: 46px 10px 50px;
    }
    .secStrong02 .mainBox{
        padding-bottom: 0;
    }
    .secStrong02 .mainImg{
        left: 0;
    }
    .secStrong02 .item{
         width: calc(50% - 4.5px);
    }
}
/* secBtnBox02 */
.secBtnBox02{
    margin-top: 62px;
}
@media only screen and (max-width:767px){
    .secBtnBox02{
        margin-top: 55px;
    }
}
/* secReason */
.secReason{
    padding: 130px 0 128px;
}
.secReason.lazyloaded{
    background: url(../img/plan/bgReason.jpg) center top / cover;
}
.secReason .topTitBox{
    text-align: center;
    color: var(--brandTxtColor);
}
.secReason .tit01{
    font-size: 30px;
    letter-spacing: 1px;
    font-weight: bold;
}
.secReason .tit02{
    font-size: 38px;
    display: block;
    margin-top: 17px;
    font-weight: bold;
}
.secReason .titNumber{
    font-size: 50px;
    color: var(--brandColor);
    position: relative;
    top: 3px;
}
.secReason .list{
    margin-top: 50px;
    display: flex;
    flex-wrap: wrap;
}
.secReason .item{
    box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(4, 0, 0, 0.2);
    border-radius: 3px;
    background: var(--brandTxtColor);
    width: 32.5%;
    margin-right: 1.25%;
    overflow: hidden;
}
.secReason .item:nth-child(3n){
    margin-right: 0;
}
.secReason .item:nth-child(n+4){
    margin-top: 1.25%;
}
.secReason .titBox{
    background: var(--brandColor);
    color: var(--brandTxtColor);
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 18px;
}
.secReason .tit{
    font-size: 14px;
    font-weight: bold;
}
.secReason .number{
    font-size: 24px;
    font-weight: bold;
}
.secReason .txtBox{
    padding: 25px 40px 34px;
}
.secReason .itemTitBox{
    text-align: center;
    height: 100px;
    display: flex;
    justify-content: center;
    flex-flow: column;
}
.secReason .itemTit01{
    font-size: 16px;
    font-weight: bold;
}
.secReason .itemTit02{
    font-size: 28px;
    line-height: 1.28;
    margin-top: 12px;
    font-weight: bold;
}
.secReason .txt{
    font-size: 15px;
    line-height: 2;
    margin-top: 16px;
}
.secReason .btnBox{
    width: 420px;
    margin: 50px auto 0;
}
.secReason .btnInner{
    height: 70px;
    background: var(--brandTxtColor);
    box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(4, 0, 0, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: var(--mainColor);
    border: solid 1px var(--bdrColor01);
    font-size: 14px;
    font-weight: 500;
    border-radius: 3px;
}
.secReason .btnTxt{
    position: relative;
}
.secReason .btnTxt::after{
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    left: -18px;
    top: calc(50% - 5px);
}
.secReason.lazyloaded .btnTxt::after{
    background: url(../img/plan/iconReasonBtn.png) center top / cover;
}
@media only screen and (max-width:767px){
    .secReason{
        padding: 50px 0 50px;
    }
    .secReason.lazyloaded{
        background: url(../img/plan/bgReason_sp.jpg) center top / cover;
    }
    .secReason .tit01{
        font-size: 15px;
        letter-spacing: 0;
    }
    .secReason .tit02{
        font-size: 18px;
        margin-top: 4px;
    }
    .secReason .titNumber{
        font-size: 32px;
        top: 3px;
    }
    .secReason .list{
        margin-top: 20px;
    }
    .secReason .item,
    .secReason .item:nth-child(3n){
        width: calc(50% - 4.5px);
        margin-right: 9px;
    }
    .secReason .item:nth-child(2n){
        margin-right: 0;
    }
    .secReason .item:nth-child(n+3){
        margin-top: 10px;
    }
    .secReason .titBox{
        height: 30px;
        padding: 0 10px;
    }
    .secReason .tit{
        font-size: 12px;
    }
    .secReason .number{
        font-size: 12px;
    }
    .secReason .txtBox{
        padding: 11px 2px 13px;
    }
    .secReason .itemTitBox{
        height: auto;
        display: block;
    }
    .secReason .itemTit01{
        font-size: 12px;
        letter-spacing: -0.3px;
        line-height: 1.5;
    }
    .secReason .itemTit02{
        font-size: 15px;
        line-height: 1.33;
        margin-top: 3px;
    }
    .secReason .txt{
        display: none;
    }
    .secReason .btnBox{
        width: calc(100% - 40px);
        margin: 30px auto 0;
    }
    .secReason .btnInner{
        height: 50px;
        font-size: 12px;
    }
    .secReason .btnTxt{
        padding-left: 20px;
    }
    .secReason .btnTxt::after{
        left: 0;
    }
}
@media only screen and (max-width:374px){
    .secReason .itemTit01{
        font-size: 11px;
    }
}
@media only screen and (max-width:359px){
    .secReason .itemTit01{
        font-size: 10px;
    }
}
/* secWorks */
.secWorks{
    margin-top: 115px;
    position: relative;
}
.secWorks .wrapper{
    position: relative;
    background: #fffce5;
    padding: 75px 75px 68px;
}
.secWorks .iconTit{
    position: absolute;
    top: -16px;
    left: 30px;
    width: 114px;
    height: 32px;
    background: var(--brandColor);
    color: var(--brandTxtColor);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: bold;
}
.secWorks .tit{
    font-size: 32px;
    font-weight: bold;
}
.secWorks .txt{
    font-size: 15px;
    line-height: 2;
    margin-top: 32px;
}
.secWorks .img{
    position: absolute;
    top: 70px;
    right: 90px;
}
.secWorks .btnBox{
    width: 360px;
    margin: 32px auto 0 0;
}
.secWorks .btnInner{
    height: 70px;
    background: var(--brandTxtColor);
    box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.1),inset 0px -2px 0px 0px rgba(4, 0, 0, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: var(--mainColor);
    border: solid 1px var(--bdrColor01);
    font-size: 14px;
    font-weight: 500;
    border-radius: 3px;
}
.secWorks .btnTxt{
    position: relative;
    padding-left: 30px;
}
.secWorks .btnTxt::after{
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    left: 15px;
    top: calc(50% - 5px);
}
.secWorks.lazyloaded .btnTxt::after{
    background: url(../img/plan/iconReasonBtn.png) center top / cover;
}
@media only screen and (max-width:767px){
    .secWorks{
        margin-top: 0;
        padding-top: 64px;
    }
    .secWorks::after{
        position: absolute;
        content: "";
        width: 100%;
        height: calc(100% - 25px);
        top: 0;
        left: 0;
    }
    .secWorks.lazyloaded::after{
        background: url(../img/plan/bgPoint.png) repeat;
    }
    .secWorks .wrapper{
        z-index: 10;
        padding: 40px 20px 50px;
    }
    .secWorks .iconTit{
        top: -14px;
        left: calc(50% - 42px);
        width: 84px;
        height: 28px;
        font-size: 16px;
    }
    .secWorks .tit{
        font-size: 18px;
        text-align: center;
    }
    .secWorks .txt{
        font-size: 12px;
        letter-spacing: -0.3px;
        line-height: 1.66;
        margin: 15px -10px 0;
        text-align: center;
    }
    .secWorks .img{
        position: static;
        width: calc(100% - 10px);
        margin-top: 30px;
    }
    .secWorks .btnBox{
        width: 100%;
        margin: 30px auto 0 0;
    }
    .secWorks .btnInner{
        height: 50px;
        font-size: 12px;
    }
    .secWorks .btnTxt{
        padding-left: 20px;
    }
    .secWorks .btnTxt::after{
        left: 5px;
    }
}
@media only screen and (max-width:359px){
    .secWorks .txt{
        font-size: 10px;
    }
}