@charset "utf-8";

/* jsHideFade */
.jsHideFade{
    display: block;
    opacity: 0;
    transition: 1.05s all cubic-bezier(.275,0,0,1);
    transform: translateY(1.1em);
}
.jsHideFade.jsShow{
    transform: translateY(0);
    opacity: 1;
}

.jsHideList .jsHideItem{
    display: block;
    opacity: 0;
    transition: 1.05s all cubic-bezier(.275,0,0,1);
    transform: translateY(1.1em);
}
.jsHideList.jsShow .jsHideItem{
    transform: translateY(0);
    opacity: 1;
}


#container.spec,
#container.taishin,
#container.price,
#container.simple,
#container.standard{
    overflow: hidden;
}

#pnkz{
    z-index: 20;
}

.secCmnContact{
    margin-top: 0;
}

.secConceptTitBox{
    position: relative;
    height: 98rem;
    background: var(--bgConceptTop);
    padding: 12rem 0 11rem;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    overflow: hidden;
}
.secConceptTitBox::after{
    position: absolute;
    content: "";
    width: 192rem;
    height: 80rem;
    top: 0;
    left: calc(50% - 96rem);
    background: url(../img/concept/bgConceptTitBox.png) center top / cover;
}
.secConceptTitBox .titWrapper{
    z-index: 20;
    color: var(--whiteColor);
}
.secConceptTitBox .titEng{
    font-size: var(--pcFontSize140);
    letter-spacing: var(--pcLetterSpacing140_25);
    font-weight: 100;
    position: relative;
    left: -0.8rem;
}
.secConceptTitBox .tit{
    font-size: var(--pcFontSize16);
    margin-top: 5rem;
    font-weight: 700;
    display: inline-block;
    position: relative;
}
.secConceptTitBox .tit::before{
    content: "";
    position: absolute;
    top: 0.6rem;
    right: -7rem;
    width: 5rem;
    height: 0.1rem;
    background: var(--borderColor04);
}
@media only screen and (max-width:1215px){
    .secConceptTitBox{
        height: 128vw;
        padding: 6.2rem 0 6rem;
    }
    .secConceptTitBox::after{
        position: absolute;
        content: "";
        width: 100%;
        height: 106.667vw;
        top: 0;
        left: 0;
        background: url(../img/concept/bgConceptTitBox_sp.png) center bottom / cover;
    }
    .secConceptTitBox .titEng{
        font-size: var(--spFontSize60);
        letter-spacing: var(--spLetterSpacing0);
        left: -0.2rem;
    }
    .secConceptTitBox .tit{
        font-size: var(--spFontSize13);
        margin-top: 2.5rem;
    }
    .secConceptTitBox .tit::before{
        top: 0.5rem;
        right: -3.2rem;
        width: 2rem;
    }
}
.secHome{
    position: relative;
}
.secHome::after{
     content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 30%;
    background: linear-gradient(
        to bottom,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,1) 100%
    );
    z-index: 10;
}
.secHome .movie{
    overflow: hidden;
}
.secHome .movie .video,
.secHome .movie video{
	width: 100%;
    height: 100%;
	position: absolute;
	top: 0;
	left: 0;
    object-fit: cover;
	z-index: 5;
	transition: opacity 2s ease-in-out;
}
.secHome .wrapper{
    position: sticky;
    top: 0;
    height: -webkit-max-content;
    height: -moz-max-content;
    height: max-content;
    height: 108rem;
    z-index: 20;
    padding-top: 12rem;
    display: flex;
    flex-flow: column;
    align-items: center;
}
.secHome .tit{
    font-size: var(--pcFontSize38);
    line-height: var(--pcLineHeight38_100);
    letter-spacing: var(--pcLetterSpacing38_550);
    font-weight: bold;
    position: relative;
    left: -11rem;
}
.secHome .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_50);
    margin-top: 5rem;
    position: relative;
    left: 5rem;
}
.secHome .imgBox{
    position: relative;
    width: 140rem;
    max-width: calc(100% - 4rem);
    margin: 0 auto;
    left: 0;
    bottom: 16.5rem;
    z-index: 15;
    display: flex;
    justify-content: space-between;
}
.secHome .leftImg{
    width: 30rem;
    position: relative;
    left: -11rem;
    bottom: 23rem;
}
.secHome .leftImg02{
    width: 34rem;
    position: relative;
    left: -36rem;
    bottom: -5rem;
}
.secHome .rightImg{
    width: 38rem;
    position: relative;
    right: -31rem;
    bottom: 36rem;
}
.secHome .rightImg02{
    width: 22rem;
    position: relative;
    right: -11rem;
    bottom: 10rem;
}
.secHome .floatUp{
    transform: translateY(60px);
    transition: transform 0s;
    will-change: transform;
}
@media only screen and (max-width:1215px){
    .secHome{
        position: relative;
    }
    .secHome .wrapper{
        height: 45rem;
        padding: 5rem 0 7rem;
        display: block;
    }
    .secHome .tit{
        font-size: var(--spFontSize20);
        line-height: var(--spLineHeight20_40);
        letter-spacing: var(--spLetterSpacing20_500);
        left: 0;
    }
    .secHome .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 1.2rem;
        left: 0;
    }
    .secHome .imgBox{
        position: relative;
        width: 100%;
        max-width: 40rem;
        margin: 0 auto;
        left: 0;
        bottom: -10rem;
        display: block;
    }
    .secHome .leftImg{
        width: 18.5rem;
        position: relative;
        left: 2rem;
        bottom: 5rem;
    }
    .secHome .leftImg02{
        width: 14rem;
        position: relative;
        left: 0;
        bottom: 0;
    }
    .secHome .rightImg{
        width: 12.1rem;
        position: relative;
        right: 0;
        margin-left: auto;
        bottom: 26rem;
    }
    .secHome .rightImg02{
        width: 13.5rem;
        position: relative;
        right: 8rem;
        bottom: 23rem;
        margin-left: auto;
    }
}
/* secConeptImgBox */
.secConeptImgBox{
    margin: 0 auto;
    margin: -2rem auto 0;
    overflow: hidden;
    position: relative;
    z-index: 20;
}
@media only screen and (min-width:1216px){
    .secConeptImgBox .imgBox{
        width: calc(100% - 10rem);
        max-width: 120rem;
        margin: 0 auto;
        flex-shrink: 0;
    }
}
@media only screen and (max-width:1215px){
    .secConeptImgBox{
        margin-top: 0;
        height: calc(222 / 375 * 100vw);
        width: 100%;
        max-width: 100%;
    }
    .secConeptImgBox .imgBox{
        width: calc(335 / 375 * 100%);
        max-width: 100%;
        flex-shrink: 0;
        margin: 0 auto;
    }
}
/* secConeptTxtBox */
.secConeptTxtBox{
    margin-top: 21.5rem;
    position: relative;
}
.secConeptTxtBox::after{
    position: absolute;
    content: "";
    width: 0.1rem;
    height: 10rem;
    left: calc(50% - 0.05rem);
    top: -17rem;
    background: var(--textColor);
}
.secConeptTxtBox .titBox{
    text-align: center;
}
.secConeptTxtBox .tit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_56);
    letter-spacing: var(--pcLetterSpacing28_150);
    font-weight: bold;
}
.secConeptTxtBox .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 3.5rem;
}
.secConeptTxtBox .movieBox{
    margin: 7rem auto 0;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    position: relative;
}
.secConeptTxtBox .movieBox iframe{
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
@media only screen and (max-width:1215px){
    .secConeptTxtBox{
        margin-top: 13.5rem;
    }
    .secConeptTxtBox::after{
        height: 5rem;
        top: -9rem;
    }
    .secConeptTxtBox .tit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing15_50);
    }
    .secConeptTxtBox .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 1.8rem;
        text-align: left;
    }
    .secConeptTxtBox .movieBox{
        margin: 2rem auto 0;
        padding-top: 56.418%;
    }
}
/* secList */
.secList{
    margin-top: 9.5rem;
    position: relative;
}
.secList .topTitEng{
    font-size: var(--pcFontSize16);
    font-weight: 300;
    position: relative;
}
.secList .topTitEng::after{
    position: absolute;
    content: "";
    width: 22rem;
    height: 1px;
    left: 6.5rem;
    top: 0.6rem;
    background: var(--cmnTitblackColor_20);
}
.secList .topTitJpn{
    font-size: var(--pcFontSize38);
    letter-spacing: var(--pcLetterSpacing38_100);
    font-weight: bold;
    margin-top: 4rem;
}
.secList .list{
    width: 105rem;
    height: 94rem;
    margin: 10rem auto 0;
    position: relative;
}
.secList .list.lazyloaded{
    background: url(../img/concept/bgHeart.png) center center / 68.2rem auto no-repeat;
}
.secList .item{
    width: 34rem;
    height: 34rem;
    border-radius: 17rem;
    position: absolute;
}
.secList .imgSub{
    width: 18rem;
    position: absolute;
    top: -5.2rem;
    right: -7.8rem;
}
.secList .item:nth-child(3) .imgSub{
    top: auto;
    bottom: -5.2rem;
    right: -7.8rem;
}
.secList .item:nth-child(4) .imgSub{
    top: auto;
    bottom: -5.2rem;
    left: -7.8rem;
}
.secList .item:nth-child(5) .imgSub{
    top: -5.2rem;
    left: -7.8rem;
}
.secList .item:nth-child(1){
    top: 0;
    left: calc(50% - 17rem);
    transition-delay: 0.2s;
}
.secList .item:nth-child(2){
    top: 22rem;
    right: 0;
    transition-delay: 0.4s;
}
.secList .item:nth-child(3){
    bottom: 0;
    right: 16rem;
    transition-delay: 0.6s;
}
.secList .item:nth-child(4){
    bottom: 0;
    left: 16rem;
    transition-delay: 0.8s;
}
.secList .item:nth-child(5){
    top: 22rem;
    left: 0;
    transition-delay: 1s;
}
@media only screen and (max-width:1215px){
    .secList{
        margin-top: 4rem;
    }
    .secList .topTitJpn{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_50);
        margin-top: 1.5rem;
    }
    .secList .topTitEng{
        font-size: var(--spFontSize13);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secList .topTitEng::after{
        width: 5rem;
        left: 4.5rem;
    }
    .secList .list{
        width: calc(355 / 375 * 100%);
        height: 42rem;
        margin: 4.5rem auto 0;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .secList .list.lazyloaded{
        background: none;
    }
    .secList .spTxt{
        width: 12.5rem;
        position: relative;
        bottom: -3.5rem;
    }
    .secList .item{
        width: 16.5rem;
        height: 16.5rem;
        border-radius: 8.25rem;
        mix-blend-mode: multiply;
    }
    .secList .item:nth-child(1){
        top: 0;
        left: calc(50% - 8.25rem);
    }
    .secList .item:nth-child(2){
        top: 11rem;
    }
    .secList .item:nth-child(3){
        bottom: 0;
        right: 2.2rem;
        transition-delay: 0.6s;
    }
    .secList .item:nth-child(4){
        bottom: 0;
        left: 2.2rem;
        transition-delay: 0.8s;
    }
    .secList .item:nth-child(5){
        top: 11rem;
    }
    .secList .imgSub{
        width: 6.5rem;
        top: -4rem;
        left: calc(50% - 3.25rem);
    }
    .secList .item:nth-child(2) .imgSub{
        top: -2rem;
        right: 1.1rem;
        left: auto;
    }
    .secList .item:nth-child(3) .imgSub{
        bottom: -2rem;
        right: 1.1rem;
        left: auto;
    }
    .secList .item:nth-child(4) .imgSub{
        bottom: -2rem;
        left: -1.1rem;
    }
    .secList .item:nth-child(5) .imgSub{
        top: -2rem;
        left: 1.1rem;
    }
}

/* secVision */
.secVisionBox{
    padding-top: 28rem;
}
.secVisionBox .topTitBox{
    text-align: center;
    position: relative;
    padding-bottom: 9rem;
}
.secVisionBox .topTitBox::after{
    position: absolute;
    content: "";
    width: 0.1rem;
    height: 10rem;
    background: var(--textColor);
    left: calc(50% - 0.05rem);
    top: -16.5rem;
}
.secVisionBox .topTit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_56);
    letter-spacing: var(--pcLetterSpacing28_150);
    font-weight: bold;
}
.secVisionBox .topTxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 3.5rem;
}
@media only screen and (max-width:1215px){
    .secVisionBox{
        padding-top: 12rem;
    }
    .secVisionBox .topTitBox{
        padding-bottom: 4.4rem;
        width: 89.334%;
        margin: 0 auto;
    }
    .secVisionBox .topTitBox::after{
        height: 5rem;
        top: -8.5rem;
    }
    .secVisionBox .topTit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing15_50);
    }
    .secVisionBox .topTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 1.5rem;
        text-align: left;
    }
}
.secVision{
    position: relative;
    height: calc(100vh * 4);
    overflow: hidden;
}
#fade-container{
    position: relative;
    height: 100vh;
    overflow: hidden;
}
#fade-container .fade-item{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    opacity:0;
    z-index:2;
    transition: opacity 0.5s ease;
}
#fade-container .fade-item.active{
    opacity: 1;
    z-index: 1;
}
#fade-container .fade-item::after{
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(26, 26, 26, 0.702);
}
.secVision.lazyloaded .fade-item .bgBox{
    background: url(../img/common/tp.gif) center center no-repeat;
    background-size: cover;
    height: 100%;
    overflow: hidden;
}
.secVision.lazyloaded .fade-item01 .bgBox{
    background-image:url(../img/concept/imgConeptBox01.jpg);
}
.secVision.lazyloaded .fade-item02 .bgBox{
    background-image:url(../img/concept/imgConeptBox02.jpg);
}
.secVision.lazyloaded .fade-item03 .bgBox{
    background-image:url(../img/concept/imgConeptBox03.jpg);
}
.secVision.lazyloaded .fade-item04 .bgBox{
    background-image:url(../img/concept/imgConeptBox04.jpg);
}
.secVision .fade-black{
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background: var(--textColor);
    z-index:3;
    opacity:1; 
    transition: opacity 0.5s ease;
}
.secVision .mainBox{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 140rem;
    max-width: calc(100% - 10rem);
    margin: 0 auto;
    height: 100%;
    position: relative;
    z-index: 10;
}
.secVision .leftBox{
    color: var(--whiteColor);
    position: relative;
    transform: translateY(200px);
    opacity: 0;
    transition: transform 1s ease, opacity 1s ease;
    display: flex;
    padding-bottom: 15rem;
}
.secVision .fade-item.on .leftBox {
  transform: translateY(0);
  opacity: 1;
}
.secVision .titBox{
    flex-shrink: 0;
    display: flex;
}
.secVision .number{
    font-size: var(--pcFontSize30);
    font-weight: 100;
    position: relative;
}
.secVision .tit{
    font-size: var(--pcFontSize28);
    letter-spacing: var(--pcLetterSpacing28_150);
    font-weight: bold;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-lr;
    padding: 5rem 0 0 3.5rem;
    position: relative;
}
.secVision .tit:after {
    position: absolute;
    content: "";
    top: 0;
    left: 20%;
    width: 1px;
    height: 8rem;
    background-color: var(--whiteColor);
    transform: rotate(25deg);
}
.secVision .txtBox{
    padding: 21rem 20rem 0 10.5rem;
}
.secVision .subTit{
    font-size: var(--pcFontSize22);
    line-height: var(--pcLineHeight22_33);
    font-weight: bold;
}
.secVision .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 2.5rem;
}
@media only screen and (max-width:1215px){
    .secVision{
        position: relative;
        height: calc(100vh * 4);
        overflow: hidden;
    }
    #fade-container{
        position: relative;
        height: 100vh;
        overflow: hidden;
        max-width: 40rem;
        margin: 0 auto;
        left: 0;
        right: 0;
    }
    #fade-container .fade-item{
        position:absolute;
        top:0;
        left:0;
        width:100%;
        height:100%;
        opacity:0;
        z-index:2;
        transition: opacity 0.5s ease;
    }
    #fade-container .fade-item.active{
        opacity: 1;
        z-index: 1;
    }
    #fade-container .fade-item::after{
        position: absolute;
        content: "";
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-color: rgba(26, 26, 26, 0.702);
    }
    .secVision.lazyloaded .fade-item .bgBox{
        background: url(../img/common/tp.gif) center center no-repeat;
        background-size: cover;
        height: 100%;
        overflow: hidden;
    }
    .secVision.lazyloaded .fade-item01 .bgBox{
        background-image:url(../img/concept/imgConeptBox01_sp.jpg);
    }
    .secVision.lazyloaded .fade-item02 .bgBox{
        background-image:url(../img/concept/imgConeptBox02_sp.jpg);
    }
    .secVision.lazyloaded .fade-item03 .bgBox{
        background-image:url(../img/concept/imgConeptBox03_sp.jpg);
    }
    .secVision.lazyloaded .fade-item04 .bgBox{
        background-image:url(../img/concept/imgConeptBox04_sp.jpg);
    }
    .secVision .fade-black{
        position: absolute;
        top:0;
        left:0;
        width:100%;
        height:100%;
        background: var(--textColor);
        z-index:3;
        opacity:1; 
        transition: opacity 0.5s ease;
    }
    .secVision .mainBox{
        width: 92%;
        max-width: 100%;
    }
    .secVision .leftBox{
        transform: translateY(200px);
        display: block;
        padding-bottom: 10rem;
    }
    .secVision .titBox{
        flex-shrink: 0;
        display: flex;
        justify-content: center;
        padding-right: 4.5rem;
    }
    .secVision .number{
        font-size: var(--spFontSize18);
    }
    .secVision .tit{
        font-size: var(--spFontSize19);
        letter-spacing: var(--spLetterSpacing19_100);
        padding: 2rem 0 0 2rem;
    }
    .secVision .tit:after {
        top: 0;
        left: 20%;
        width: 1px;
        height: 3rem;
        transform: rotate(25deg);
    }
    .secVision .txtBox{
        padding: 3.5rem 0 0 0;
    }
    .secVision .subTit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_28);
    }
    .secVision .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 2rem;
    }
}
.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");
    } 
}

/* secAboutBox */
.secAboutBox{
    margin-top: 20rem;
    background: var(--bgFooter);
    padding: 15rem 0 15rem;
}
.secAboutBox .aboutEngTit{
    font-size: var(--pcFontSize16);
    font-weight: 300;
    color: var(--whiteColor);
    position: relative;
    display: inline-block;
}
.secAboutBox .aboutEngTit::after{
    position: absolute;
    content: "";
    width: 22rem;
    height: 1px;
    right: -24rem;
    top: calc(50% - 0.5px);
    background: var(--blackColor_20);
}
.secAboutBox .aboutWrapper{
    width: calc(100% - 6rem);
    margin: 6rem auto 0;
}
.secAboutBox .list{
    display: flex;
    flex-wrap: wrap;
}
.secAboutBox .item{
    width: 32.259%;
    margin-right: 1.6115%;
    color: var(--whiteColor);
}
.secAboutBox .item:nth-child(3n){
    margin-right: 0;
}
.secAboutBox .item:nth-child(n+4){
    margin-top: 1.6115%;
}
.secAboutBox .inner{
    position: relative;
    display: block;
    overflow: hidden;
}
.secAboutBox .aboutTxtBox{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column;
    padding-bottom: 1rem;
}
.secAboutBox .aboutTit{
    font-size: var(--pcFontSize54);
    letter-spacing: var(--pcLetterSpacing54_50);
    font-weight: 100;
}
.secAboutBox .aboutTxt{
    font-size: var(--pcFontSize16);
    font-weight: bold;
    margin-top: 3rem;
}
.secAboutBox .item.viewNow{
    position: relative;
}
.secAboutBox .item.viewNow .inner{
    pointer-events: none;
}
.secAboutBox .item.viewNow .viewNowTxt{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    color: var(--whiteColor);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: var(--pcFontSize40);
    font-weight: 100;
    background: var(--cmnTitblackColor_70);
    z-index: 200;
}
@media only screen and (max-width:1215px){
    .secAboutBox{
        margin-top: 10rem;
        padding: 7rem 0 7rem;
    }
    .secAboutBox .aboutEngTit{
        font-size: var(--spFontSize13);
    }
    .secAboutBox .aboutEngTit::after{
        width: 5rem;
        right: -5.8rem;
    }
    .secAboutBox .aboutWrapper{
        width: 89.334%;
        max-width: 40rem;
        margin: 1.8rem auto 0;
    }
    .secAboutBox .list{
        display: block;
    }
    .secAboutBox .item{
        width: 100%;
        margin-right: 0;
    }
    .secAboutBox .item:nth-child(3n),
    .secAboutBox .item:nth-child(n+2){
        margin: 2rem auto 0;
    }
    .secAboutBox .aboutTxtBox{
        align-items: flex-start;
        padding: 0rem 1.7rem 0.5rem;
    }
    .secAboutBox .aboutTit{
        font-size: var(--spFontSize28);
        letter-spacing: var(--spLetterSpacing28_50);
    }
    .secAboutBox .aboutTxt{
        font-size: var(--spFontSize11);
        margin-top: 1rem;
    }
    .secAboutBox .item.viewNow .viewNowTxt{
        font-size: var(--spFontSize28);
    }
}
/*-----------------------------------------------
    spec
-----------------------------------------------*/
.secConceptTitBox.spec::after{
    background: url(../img/concept/bgSpecConceptTitBox.png) center top / cover;
}
@media only screen and (max-width:1215px){
    .secConceptTitBox.spec::after{
        background: url(../img/concept/bgSpecConceptTitBox_sp.png) center bottom / cover;
    }
    .secConceptTitBox.spec .titEng{
        margin-right: -1.5rem;
        left: -0.5rem;
    }
}
/* secSpecTop */
.secSpecTop{
    margin-top: 10rem;
    position: relative;
    padding-bottom: 54rem;
}
.secSpecTop .img01{
    width: 80rem;
    position: absolute;
    top: 0;
    left: calc(50% - 93rem);
    transition-delay: 0.3s;
}
.secSpecTop .img02{
    width: 75rem;
    position: absolute;
    bottom: 0;
    right: calc(50% - 96rem);
    transition-delay: 0.9s;
}
.secSpecTop .txtBox{
    width: 73rem;
    margin-left: auto;
    padding-top: 15rem;
    transition-delay: 0.6s;
}
.secSpecTop .tit{
    font-size: var(--pcFontSize28);
    letter-spacing: var(--pcLetterSpacing28_150);
    font-weight: bold;
}
.secSpecTop .subTit{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_50);
    font-weight: bold;
    margin-top: 5rem;
}
.secSpecTop .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 2.5rem;
}
@media only screen and (max-width:1215px){
    .secSpecTop{
        margin-top: 6rem;
        padding-bottom: 0;
    }
    .secSpecTop .img01{
        width: 71.642%;
        position: static;
    }
    .secSpecTop .img02{
        width: 67.165%;
        position: static;
        margin: -3.5rem 0 0 auto;
        transition-delay: 0.3s;
    }
    .secSpecTop .txtBox{
        width: 100%;
        padding-top: 3rem;
    }
    .secSpecTop .tit{
        font-size: var(--spFontSize19);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secSpecTop .subTit{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 2.2rem;
    }
    .secSpecTop .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 2rem;
    }
}
/* secSpecTitBox */
.secSpecTitBox{
    margin-top: 20rem;
    height: 80rem;
    position: relative;
}
.secSpecTitBox .img{
    position: absolute;
    top: 0;
    left: calc(50% - 96rem);
    width: 192rem;
}
.secSpecTitBox .titBox{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    z-index: 10;
    color: var(--whiteColor);
}
.secSpecTitBox .point{
    background: var(--benefitsColor);
    width: 7.6rem;
    height: 3.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.2rem;
    font-size: var(--pcFontSize13);
    font-weight: bold;
}
.secSpecTitBox .subTit{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_150);
    font-weight: bold;
    margin-top: 3rem;
}
.secSpecTitBox .tit{
    font-size: var(--pcFontSize56);
    line-height: var(--pcLineHeight56_85);
    letter-spacing: var(--pcLetterSpacing56_100);
    font-weight: bold;
    margin-top: 2rem;
}
@media only screen and (max-width:1215px){
    .secSpecTitBox{
        margin-top: 6rem;
        height: auto;
    }
    .secSpecTitBox .img{
        position: static;
        width: 100%;
    }
    .secSpecTitBox .titBox{
        position: static;
        display: block;
        color: var(--textColor);
        margin-top: 2rem;
    }
    .secSpecTitBox .point{
        background: var(--whiteColor);
        color: var(--benefitsColor);
        width: auto;
        height: auto;
        display: inline-block;
        border-radius: 0;
        font-size: var(--spFontSize11);
    }
    .secSpecTitBox .subTit{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.2rem;
    }
    .secSpecTitBox .tit{
        font-size: var(--spFontSize21);
        line-height: var(--pcLineHeight56_85);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1rem;
    }
}
/* secSpecBox */
.secSpecBox{
    margin-top: 8rem;
}
.secSpecBox .tit{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_50);
    font-weight: bold;
}
.secSpecBox .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 2.5rem;
}
.secSpecBox .list{
    margin-top: 4.8rem;
    display: flex;
}
.secSpecBox .item{
    width: 22.858%;
    margin-right: 2.856%;
}
.secSpecBox .item:nth-child(4){
    margin-right: 0;
}
.secSpecBox .txtBox{
    margin-top: 3rem;
}
.secSpecBox .itemTit{
    font-size: var(--pcFontSize18);
    font-weight: bold;
}
.secSpecBox .itemTxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_28);
    margin-top: 1.5rem;
}
.secSpecBox .checkBox{
    margin-top: 7rem;
    position: relative;
    background: var(--pickupBg);
    padding: 8rem 8rem 9rem;
}
.secSpecBox .iconCheck{
    position: absolute;
    top: 0;
    left: 0;
    width: 7.6rem;
    height: 3.2rem;
    background: var(--redColor);
    color: var(--whiteColor);
    font-size: var(--pcFontSize13);
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
}
.secSpecBox .checkTit{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_150);
    text-align: center;
    font-weight: bold;
}
.secSpecBox .checkTxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 1.8rem;
    text-align: center;
}
.secSpecBox .redColor{
    color: var(--redColor);
    font-weight: bold;
}
.secSpecBox .checkList{
    margin-top: 3.8rem;
    display: flex;
    justify-content: center;
}
.secSpecBox .checkItem{
    width: 34rem;
    margin-right: 5rem;
}
.secSpecBox .checkItem:last-child{
    margin-right: 0;
}
.secSpecBox .checkTxtBox{
    margin-top: 3rem;
    text-align: center;
}
.secSpecBox .checkItemTit{
    font-size: var(--pcFontSize18);
    font-weight: bold;
}
.secSpecBox .checkItemTxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_28);
    margin-top: 1.5rem;
}
@media only screen and (max-width:1215px){
    .secSpecBox{
        margin-top: 2.2rem;
    }
    .secSpecBox .tit{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secSpecBox .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 2rem;
    }
    .secSpecBox .list{
        margin-top: 2.2rem;
        flex-wrap: wrap;
    }
    .secSpecBox .item{
        width: calc(50% - 0.75rem);
        margin-right: 1.5rem;
    }
    .secSpecBox .item:nth-child(2n){
        margin-right: 0;
    }
    .secSpecBox .item:nth-child(n+3){
        margin-top: 2.2rem;
    }
    .secSpecBox .txtBox{
        margin-top: 1.5rem;
    }
    .secSpecBox .itemTit{
        font-size: var(--spFontSize13);
    }
    .secSpecBox .itemTxt{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_20);
        margin-top: 1rem;
    }
    .secSpecBox .checkBox{
        margin-top: 4.5rem;
        padding: 4.8rem 2rem 5rem;
    }
    .secSpecBox .iconCheck{
        width: 5.5rem;
        height: 2.5rem;
        font-size: var(--spFontSize11);
    }
    .secSpecBox .checkTit{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_50);
    }
    .secSpecBox .checkTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_24);
        margin-top: 1.5rem;
    }
    .secSpecBox .redColor{
        display: block;
    }
    .secSpecBox .checkList{
        margin-top: 2.2rem;
        display: block;
    }
    .secSpecBox .checkItem{
        display: flex;
        align-items: center;
        width: 100%;
        margin: 0 auto;
    }
    .secSpecBox .checkItem:nth-child(2),
    .secSpecBox .checkItem:last-child{
        margin: 1.5rem auto 0;
    }
    .secSpecBox .checkImg{
        width: 16.5rem;
    }
    .secSpecBox .checkTxtBox{
        width: calc(100% - 16.5rem);
        margin-top: 0;
        text-align: left;
        padding-left: 1.5rem;
    }
    .secSpecBox .checkItemTit{
        font-size: var(--spFontSize13);
    }
    .secSpecBox .checkItemTxt{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_20);
        margin-top: 0.5rem;
    }
}
/* secDetailsEquipmentBnr */
.secDetailsEquipmentBnr{
    margin-top: 10.5rem;
}
.secDetailsEquipmentBnr .topTit{
    text-align: center;
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_24);
    font-weight: bold;
}
.secDetailsEquipmentBnr .topTit span{
    position: relative;
    display: inline-block;
}
.secDetailsEquipmentBnr .topTit span::after,
.secDetailsEquipmentBnr .topTit span::before{
    position: absolute;
    content: "";
    width: 1px;
    height: 4rem;
    top: calc(50% - 2rem);
    background: var(--textColor);
}
.secDetailsEquipmentBnr .topTit span::after{
    transform: rotate(-25deg);
    left: -3.5rem;
}
.secDetailsEquipmentBnr .topTit span::before{
    transform: rotate(25deg);
    right: -3.5rem;
}
.secDetailsEquipmentBnr .mainBox{
    margin-top: 3.5rem;
}
.secDetailsEquipmentBnr .inner{
    display: flex;
    background: var(--bgFooter);
    color: var(--whiteColor);
}
.secDetailsEquipmentBnr .imgBox{
    width: 48rem;
    overflow: hidden;
}
.secDetailsEquipmentBnr .img{
    padding-top: 72.917%;
}
.secDetailsEquipmentBnr .txtBox{
    position: relative;
    width: calc(100% - 48rem);
    padding: 5rem 6rem;
    display: flex;
    align-items: center;
}
.secDetailsEquipmentBnr .txtInner{
    position: relative;
    z-index: 15;
}
.secDetailsEquipmentBnr .tit{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_50);
    font-weight: bold;
}
.secDetailsEquipmentBnr .txt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_30);
    margin-top: 2rem;
}
.secDetailsEquipmentBnr .iconImg{
    width: 48.4rem;
    position: absolute;
    bottom: 0;
    right: 0;
}
.secDetailsEquipmentBnr .boxIconCircle{
    bottom: 4rem;
    right: 4rem;
}
.secDetailsEquipmentBnr .boxIconCircle .linkCircle .linkTxtBox{
    background: var(--bgFooter);
}
@media only screen and (max-width:1215px){
    .secDetailsEquipmentBnr{
        margin-top: 4.2rem;
    }
    .secDetailsEquipmentBnr .topTit{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_24);
    }
    .secDetailsEquipmentBnr .topTit span::after,
    .secDetailsEquipmentBnr .topTit span::before{
        width: 1px;
        height: 3rem;
        top: auto;
        bottom: 0;
    }
    .secDetailsEquipmentBnr .topTit span::after{
        transform: rotate(-20deg);
        left: -1.5rem;
    }
    .secDetailsEquipmentBnr .topTit span::before{
        transform: rotate(20deg);
        right: -1.5rem;
    }
    .secDetailsEquipmentBnr .mainBox{
        margin-top: 1.5rem;
    }
    .secDetailsEquipmentBnr .inner{
        display: block;
    }
    .secDetailsEquipmentBnr .imgBox{
        width: 100%;
    }
    .secDetailsEquipmentBnr .img{
        padding-top: 47.762%;
    }
    .secDetailsEquipmentBnr .txtBox{
        position: relative;
        width: 100%;
        padding: 3rem 2rem 5.8rem;
        display: block;
    }
    .secDetailsEquipmentBnr .tit{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_50);
    }
    .secDetailsEquipmentBnr .txt{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_22);
        margin-top: 1.5rem;
    }
    .secDetailsEquipmentBnr .iconImg{
        width: 27.5rem;
    }
    .secDetailsEquipmentBnr .boxIconCircle{
        bottom: 2.5rem;
        right: 2.5rem;
    }
}
.secSpecTitBox02{
    margin-top: 15rem;
}
@media only screen and (max-width:1215px){
    .secSpecTitBox02{
        margin-top: 7rem;
    }
}
.secSpecBox .sistemList{
    margin-top: 5rem;
    display: flex;
}
.secSpecBox .sistemItem{
    width: calc(50% - 5rem);
    position: relative;
}
.secSpecBox .sistemItem:nth-child(2){
    margin-left: 10rem;
}
.secSpecBox .sistemItem:nth-child(2)::after,
.secSpecBox .sistemItem:nth-child(2)::before{
    position: absolute;
    content: "";
    width: 3rem;
    height: 0.6rem;
    background: var(--textColor);
    left: -6.5rem;
    top: calc(50% - 0.3rem);
}
.secSpecBox .sistemItem:nth-child(2)::before{
    transform: rotate(-90deg);
}
@media only screen and (max-width:1215px){
    .secSpecBox .sistemList{
        margin-top: 2.2rem;
        display: block;
    }
    .secSpecBox .sistemItem{
        width: 100%;
        position: relative;
    }
    .secSpecBox .sistemItem:nth-child(2){
        margin: 3.5rem auto 0;
    }
    .secSpecBox .sistemItem:nth-child(2)::after,
    .secSpecBox .sistemItem:nth-child(2)::before{
        width: 1.5rem;
        height: 0.3rem;
        background: var(--textColor);
        left: calc(50% - 0.75rem);
        top: -1.8rem;
    }
}
.secSpecBox .imgList{
    margin-top: 7rem;
    display: flex;
}
.secSpecBox .imgItem{
    width: 30%;
    margin-right: 5%;
}
.secSpecBox .imgItem:last-child{
    margin-right: 0;
}
@media only screen and (max-width:1215px){
    .secSpecBox .imgList{
        margin-top: 2.2rem;
    }
    .secSpecBox .imgItem{
        width: 31.344%;
        margin-right: 2.999%;
    }
}
/*-----------------------------------------------
    taishin
-----------------------------------------------*/
.secConceptTitBox.taishin::after{
    background: url(../img/concept/bgTaishinConceptTitBox.png) center top / cover;
}
@media only screen and (max-width:1215px){
    .secConceptTitBox.taishin::after{
        background: url(../img/concept/bgTaishinConceptTitBox_sp.png) center bottom / cover;
    }
}
/* secTaishinTop */
.secTaishinTop{
    position: relative;
    padding: 10.2rem 0 20rem;
}
.secTaishinTop::after{
    position: absolute;
    content: "";
    width: 56.6rem;
    height: 85.7rem;
    left: calc(50% - 96rem);
    bottom: 0;
}
.secTaishinTop.lazyloaded::after{
    background: url(../img/concept/iconTaishinTop.png) center top / cover;
}
.secTaishinTop .titImg{
    width: 33.7rem;
    margin: 0 auto;
    position: relative;
    z-index: 10;
}
.secTaishinTop .list{
    display: flex;
    margin-top: 8rem;
}
.secTaishinTop .item{
    width: calc(100% / 3);
    position: relative;
    z-index: 5;
}
.secTaishinTop .item:nth-child(n+2){
    margin-left: 0.1rem;
}
.secTaishinTop .item:nth-child(1){
    transition-delay: 0.3s;
}
.secTaishinTop .item:nth-child(2){
    transition-delay: 0.6s;
}
.secTaishinTop .item:nth-child(3){
    transition-delay: 0.9s;
}
.secTaishinTop .item:nth-child(n+2)::after,
.secTaishinTop .item:nth-child(n+2)::before{
    position: absolute;
    content: "";
    width: 3.5rem;
    height: 0.1rem;
    top: 15rem;
    left: -1.75rem;
    background: var(--textColor);
    z-index: 10;
}
.secTaishinTop .item:nth-child(n+2)::after{
    transform: rotate(-135deg);
}
.secTaishinTop .item:nth-child(n+2)::before{
    transform: rotate(135deg);
}
.secTaishinTop .img{
    position: relative;
}
.secTaishinTop .img::after{
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: var(--cmnTitblackColor_40);
}
.secTaishinTop .txtBox{
    position: absolute;
    width: 100%;
    height: 100%;
    color: var(--whiteColor);
    top: 0;
    left: 0;
    z-index: 10;
}
.secTaishinTop .txtBox{
    margin-top: 9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 12rem;
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_40);
    font-weight: bold;
}
@media only screen and (max-width:1215px){
    .secTaishinTop{
        padding: 6rem 0 7rem;
    }
    .secTaishinTop::after{
        width: 18.9rem;
        height: 28.7rem;
        left: 0;
        bottom: auto;
        top: 0;
    }
    .secTaishinTop .titImg{
        width: 12.9rem;
    }
    .secTaishinTop .list{
        margin-top: 4rem;
    }
    .secTaishinTop .item:nth-child(n+2)::after,
    .secTaishinTop .item:nth-child(n+2)::before{
        width: 1.5rem;
        height: 0.1rem;
        top: auto;
        bottom: 2.5rem;
        left: -0.75rem;
    }
    .secTaishinTop .item:nth-child(n+2)::after{
        transform: rotate(-135deg);
    }
    .secTaishinTop .item:nth-child(n+2)::before{
        transform: rotate(135deg);
    }
    .secTaishinTop .img::after{
        display: none;
    }
    .secTaishinTop .txtBox{
        position: relative;
        color: var(--textColor);
    }
    .secTaishinTop .txtBox{
        margin-top: 1rem;
        height: 5.4rem;
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_18);
    }
}
/* secTaishinTxtBox */
.secTaishinTxtBox{
    margin-top: 7rem;
}
.secTaishinTxtBox .tit{
    font-size: var(--pcFontSize22);
    line-height: var(--pcLineHeight22_48);
    letter-spacing: var(--pcLetterSpacing22_50);
    font-weight: bold;
}
.secTaishinTxtBox .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 1.2rem;
}
@media only screen and (max-width:1215px){
    .secTaishinTxtBox{
        margin-top: 2.5rem;
    }
    .secTaishinTxtBox .tit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing15_50);
    }
    .secTaishinTxtBox .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 1.2rem;
    }
}
.secTaishinTxtBox .seBox{
    margin-top: 7rem;
    background: var(--pickupBg);
    padding: 7.7rem 6rem;
    display: flex;
    align-items: center;
}
.secTaishinTxtBox .seImg{
    width: 33.5rem;
    flex-shrink: 0;
}
.secTaishinTxtBox .seTxtBox{
    width: calc(100% - 33.5rem);
    padding: 0 0 0 2.5rem;
}
.secTaishinTxtBox .seTit{
    font-size: var(--pcFontSize18);
    letter-spacing: var(--pcLetterSpacing18_50);
    font-weight: bold;
}
.secTaishinTxtBox .seTxt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_30);
    margin-top: 2rem;
}
@media only screen and (max-width:1215px){
    .secTaishinTxtBox .seBox{
        margin-top: 2rem;
        padding: 3rem 2rem 2.5rem;
        display: block;
    }
    .secTaishinTxtBox .seImg{
        width: 19.7rem;
        margin: 0 auto;
    }
    .secTaishinTxtBox .seTxtBox{
        width: 100%;
        padding: 2rem 0 0;
    }
    .secTaishinTxtBox .seTit{
        font-size: var(--spFontSize13);
        letter-spacing: var(--spLetterSpacing13_50);
    }
    .secTaishinTxtBox .seTxt{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_20);
        margin-top: 1.5rem;
    }
}
/* secTaishinRison */
.secTaishinRison{
    margin-top: 24.5rem;
    position: relative;
}
.secTaishinRison::after{
    position: absolute;
    content: "";
    width: 0.1rem;
    height: 10rem;
    top: -17rem;
    left: calc(50% - 0.05rem);
    background: var(--textColor);
}
.secTaishinRison .topTitBox{
    text-align: center;
}
.secTaishinRison .topTit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_56);
    letter-spacing: var(--pcLetterSpacing28_150);
    font-weight: bold;
}
.secTaishinRison .topTxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 3.5rem;
}
.secTaishinRison .list{
    margin-top: 8.5rem;
}
.secTaishinRison .item{
    position: relative;
    min-height: 80rem;
    display: flex;
    align-items: flex-end;
}
.secTaishinRison .item:nth-child(n+4){
    align-items: center;
}
.secTaishinRison .item:nth-child(n+2){
    margin-top: 12rem;
}
.secTaishinRison .imgBox{
    position: absolute;
    left: calc(50% - 93rem);
    top: 0;
    width: 80rem;
}
.secTaishinRison .item:nth-child(2n) .imgBox{
    left: auto;
    right: calc(50% - 93rem);
}
.secTaishinRison .txtBox{
    width: 73rem;
    margin-left: auto;
}
.secTaishinRison .item:nth-child(2n) .txtBox{
    margin-left: 0;
}
.secTaishinRison .point{
    background: var(--benefitsColor);
    color: var(--whiteColor);
    width: 7.6rem;
    height: 3.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.2rem;
    font-size: var(--pcFontSize13);
    font-weight: bold;
}
.secTaishinRison .tit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_56);
    letter-spacing: var(--pcLetterSpacing28_150);
    font-weight: bold;
    margin-top: 2.5rem;
}
.secTaishinRison .tit span{
    position: relative;
}
.secTaishinRison .tit span::after{
    position: absolute;
    content: "";
    width: 4rem;
    height: 0.1rem;
    right: -5rem;
    top: calc(50% - 0.05rem);
    background: var(--textColor);
}
.secTaishinRison .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 2rem;
}
.secTaishinRison .checkBox{
    margin-top: 5rem;
    display: flex;
    align-items: center;
    background: var(--pickupBg);
    padding: 3rem;
}
.secTaishinRison .checkImg{
    width: 39rem;
    height: 24rem;
    background: var(--whiteColor);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding: 0 2.5rem;
}
.secTaishinRison .item:nth-child(3) .checkImg{
    padding: 0 4.5rem;
}
.secTaishinRison .checkTxtBox{
    width: calc(100% - 39rem);
    padding-left: 4rem;
}
.secTaishinRison .iconCheck{
    font-size: var(--pcFontSize13);
    font-weight: bold;
    color: var(--redColor);
    border-bottom: solid 0.1rem var(--redColor);
    display: inline-block;
}
.secTaishinRison .checkTxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_30);
    margin-top: 2rem;
    font-weight: 700;
}
@media only screen and (max-width:1215px){
    .secTaishinRison{
        margin-top: 13.5rem;
        position: relative;
    }
    .secTaishinRison::after{
        height: 5rem;
        top: -8.5rem;
    }
    .secTaishinRison .topTit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing15_50);
    }
    .secTaishinRison .topTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 2rem;
        text-align: left;
    }
    .secTaishinRison .list{
        margin-top: 4rem;
    }
    .secTaishinRison .item{
        min-height: auto;
        display: block;
    }
    .secTaishinRison .item:nth-child(n+2){
        margin-top: 5rem;
    }
    .secTaishinRison .imgBox{
        position: static;
        width: 100%;
    }
    .secTaishinRison .txtBox{
        width: 100%;
        margin: 2rem auto 0;
    }
    .secTaishinRison .item:nth-child(2n) .txtBox{
        margin: 2rem auto 0;
    }
    .secTaishinRison .point{
        background: var(--whiteColor);
        color: var(--benefitsColor);
        width: auto;
        height: auto;
        display: inline-block;
        border-radius: 0;
        font-size: var(--spFontSize11);
        position: relative;
    }
    .secTaishinRison .point::after{
        position: absolute;
        content: "";
        width: 2rem;
        height: 0.1rem;
        right: -3rem;
        top: calc(50% - 0.05rem);
        background: var(--benefitsColor);
    }
    .secTaishinRison .tit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing15_50);
        margin-top: 0.5rem;
    }
    .secTaishinRison .tit span::after{
        width: 2rem;
        right: -3rem;
    }
    .secTaishinRison .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 1rem;
    }
    .secTaishinRison .checkBox{
        margin-top: 2.3rem;
        flex-flow: column-reverse;
        padding: 3rem 2rem 2rem;
    }
    .secTaishinRison .checkImg{
        width: 100%;
        height: auto;
        padding: 2rem;
        margin-top: 1.5rem;
    }
    .secTaishinRison .item:nth-child(3) .checkImg{
        padding: 2rem 4.2rem;
    }
    .secTaishinRison .checkTxtBox{
        width: 100%;
        padding-left: 0;
    }
    .secTaishinRison .iconCheck{
        font-size: var(--spFontSize11);
    }
    .secTaishinRison .checkTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_22);
        margin-top: 0.5rem;
    }
}
/* secTaishinMerit */
.secTaishinMerit{
    margin-top: 20rem;
    color: var(--whiteColor);
    position: relative;
    padding: 11.5rem 0 19rem;
}
.secTaishinMerit::after{
    position: absolute;
    content: "";
    width: 0.1rem;
    height: 10rem;
    top: -5rem;
    left: calc(50% - 0.05rem);
    background: linear-gradient(to bottom, var(--textColor) 50%, var(--blackColor_20) 50%);
}
.secTaishinMerit.lazyloaded{
    background: url(../img/concept/bgTaishinMerit.jpg) center top / cover;
}
.secTaishinMerit .topTit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_56);
    letter-spacing: var(--pcLetterSpacing28_150);
    font-weight: bold;
    text-align: center;
}
.secTaishinMerit .list{
    margin-top: 6rem;
    display: flex;
}
.secTaishinMerit .item{
    width: 30%;
}
.secTaishinMerit .item:nth-child(n+2){
    margin-left: 5%;
}
.secTaishinMerit .item:nth-child(1){
    transition-delay: 0.3s;
}
.secTaishinMerit .item:nth-child(2){
    transition-delay: 0.6s;
}
.secTaishinMerit .item:nth-child(3){
    transition-delay: 0.9s;
}
.secTaishinMerit .number{
    font-size: var(--pcFontSize24);
    text-align: center;
    font-weight: 300;
}
.secTaishinMerit .numberTit{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_150);
    font-weight: bold;
    margin-top: 2.7rem;
    padding-top: 3.2rem;
    border-top: solid 0.1rem var(--blackColor_20);
    text-align: center;
}
.secTaishinMerit .img{
    margin-top: 5rem;
}
.secTaishinMerit .txtBox{
    margin-top: 4rem;
}
.secTaishinMerit .tit{
    font-size: var(--pcFontSize22);
    font-weight: bold;
}
.secTaishinMerit .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 2.5rem;
}
@media only screen and (max-width:1215px){
    .secTaishinMerit{
        margin-top: 10rem;
        padding: 6rem 0 9rem;
    }
    .secTaishinMerit::after{
        height: 5rem;
        top: -2.5rem;
    }
    .secTaishinMerit.lazyloaded{
        background: url(../img/concept/bgTaishinMerit_sp.jpg) center top / cover;
    }
    .secTaishinMerit .topTit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secTaishinMerit .list{
        margin-top: 2.5rem;
        display: block;
    }
    .secTaishinMerit .item{
        width: 100%;
        border-top: solid 0.1rem var(--blackColor_20);
    }
    .secTaishinMerit .item:nth-child(n+2){
        margin: 4.4rem auto 0;
    }
    .secTaishinMerit .numberBox{
        display: flex;
        padding-top: 3rem;
    }
    .secTaishinMerit .number{
        font-size: var(--spFontSize18);
        text-align: left;
    }
    .secTaishinMerit .numberTit{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing15_50);
        margin: 0 0 0 1.5rem;
        padding-top: 0;
        border-top: none;
        text-align: left;
    }
    .secTaishinMerit .img{
        margin-top: 1.5rem;
    }
    .secTaishinMerit .txtBox{
        margin-top: 2rem;
    }
    .secTaishinMerit .tit{
        font-size: var(--spFontSize15);
    }
    .secTaishinMerit .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 1rem;
    }
    .secTaishinMerit .item:nth-child(1){
        transition-delay: 0.3s;
    }
    .secTaishinMerit .item:nth-child(2){
        transition-delay: 0.3s;
    }
    .secTaishinMerit .item:nth-child(3){
        transition-delay: 0.3s;
    }
}
/* secTaishinHouse */
.secTaishinHouse{
    height: 80rem;
    position: relative;
}
.secTaishinHouse.lazyloaded{
    background: url(../img/concept/bgTaishinHouse.jpg) center top / cover;
}
.secTaishinHouse::after{
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.secTaishinHouse.lazyloaded::after{
    background: url(../img/concept/bgItemTaishinHouse.png) center top / cover;
}
.secTaishinHouse .txtBox{
    border: solid 0.1rem rgb(179, 172, 152, 0.6);
    width: 110rem;
    height: 40rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex-flow: column;
    color: var(--whiteColor);
    position: absolute;
    top: calc(50% - 20rem);
    left: calc(50% - 55rem);
    z-index: 10;
}
.secTaishinHouse .titImg{
    width: 44.1rem;
    margin: 0 auto;
}
.secTaishinHouse .txt{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing22_150);
    font-weight: bold;
    margin-top: 5rem;
}
.secTaishinHouse .txtBox {
    opacity: 0;
    transform: translateY(40px) scale(0.8);
    transition: transform 0.9s cubic-bezier(.25,.1,.25,1),
                opacity 0.9s cubic-bezier(.25,.1,.25,1);
    transition-delay: 0.5s;
}

.secTaishinHouse .txtBox.show{
    opacity: 1;
    transform: translateY(0) scale(1);
}
@media only screen and (max-width:1215px){
    .secTaishinHouse{
        height: 80vw;
        min-height: 30rem;
    }
    .secTaishinHouse.lazyloaded{
        background: url(../img/concept/bgTaishinHouse_sp.jpg) center top / cover;
    }
    .secTaishinHouse::after{
        display: none;
    }
    .secTaishinHouse .txtBox{
        width: 89.334%;
        height: 26rem;
        top: calc(50% - 13rem);
        left: calc(50% - 44.667%);
    }
    .secTaishinHouse .titImg{
        width: 20.2rem;
    }
    .secTaishinHouse .txt{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_30);
        letter-spacing: var(--spLetterSpacing0);
        margin-top: 1.8rem;
    }
}
/*-----------------------------------------------
    price
-----------------------------------------------*/
.secConceptTitBox.price::after{
    background: url(../img/concept/bgPriceConceptTitBox.png) center top / cover;
}
@media only screen and (max-width:1215px){
    .secConceptTitBox.price::after{
        background: url(../img/concept/bgPriceConceptTitBox_sp.png) center bottom / cover;
    }
}
/* secPriceTopImgBox */
.secPriceTopImgBox{
    margin-top: 1rem;
    display: flex;
    justify-content: space-between;
}
.secPriceTopImgBox .leftImg{
    width: 46.875%;
}
.secPriceTopImgBox .rightBox{
    width: 52.605%;
    display: flex;
    justify-content: space-between;
}
.secPriceTopImgBox .img01{
    width: 39.604%;
}
.secPriceTopImgBox .img02{
    width: 59.406%;
}
@media only screen and (max-width:1215px){
    .secPriceTopImgBox{
        margin-top: 2rem;
        flex-flow: wrap;
    }
    .secPriceTopImgBox .leftImg{
        width: 100%;
    }
    .secPriceTopImgBox .rightBox{
        width: 100%;
        margin: 0.1rem auto 0;
    }
    .secPriceTopImgBox .img01{
        width: 39.702%;
    }
    .secPriceTopImgBox .img02{
        width: 59.702%;
    }
}
/* secPriceTxtBox */
.secPriceTxtBox{
    margin-top: 6.5rem;
}
.secPriceTxtBox .tit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_56);
    letter-spacing: var(--pcLetterSpacing28_150);
    font-weight: bold;
}
.secPriceTxtBox .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 1.5rem;
}
@media only screen and (max-width:1215px){
    .secPriceTxtBox{
        margin-top: 2.5rem;
    }
    .secPriceTxtBox .tit{
        font-size: var(--spFontSize17);
        line-height: var(--spLineHeight17_30);
        letter-spacing: var(--spLetterSpacing17_50);
    }
    .secPriceTxtBox .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 0.5rem;
    }
}
/* secPriceHouse */
.secPriceHouse{
    margin-top: 4.8rem;
}
.secPriceHouse .imgList{
    display: flex;
}
.secPriceHouse .imgItem{
    width: calc(50% - 2rem);
    margin-right: 4rem;
}
.secPriceHouse .imgItem:last-child{
    margin-right: 0;
}
.secPriceHouse .subTxt{
    font-size: var(--pcFontSize12);
    margin-top: 2.5rem;
    text-align: right;
}
@media only screen and (max-width:1215px){
    .secPriceHouse{
        margin-top: 5.2rem;
    }
    .secPriceHouse .imgList{
        display: block;
    }
    .secPriceHouse .imgItem{
        width: 100%;
        margin-right: 0;
    }
    .secPriceHouse .imgItem:last-child{
        margin: 3rem auto 0;
    }
    .secPriceHouse .subTxt{
        font-size: var(--spFontSize10);
        margin-top: 1.5rem;
        text-align: left;
    }
}
/* secPriceCost */
.secPriceCost{
    margin-top: 24.5rem;
    position: relative;
}
.secPriceCost::after{
    position: absolute;
    content: "";
    width: 0.1rem;
    height: 10rem;
    top: -17rem;
    left: calc(50% - 0.05rem);
    background: var(--textColor);
}
.secPriceCost .tit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_56);
    letter-spacing: var(--pcLetterSpacing28_150);
    font-weight: bold;
    text-align: center;
}
.secPriceCost .mainBox{
    position: relative;
    margin-top: 6.5rem;
    padding: 8.2rem 0 25rem;
}
.secPriceCost .txtBox{
    display: flex;
    justify-content: flex-end;
    padding-right: 13rem;
}
.secPriceCost .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_50);
}
.secPriceCost .subTxtBox{
    margin-top: 68rem;
}
.secPriceCost .img01{
    width: 100rem;
    position: absolute;
    top: 0;
    left: calc(50% - 96rem);
}
.secPriceCost .img02{
    width: 46rem;
    position: absolute;
    top: 35.5rem;
    right: calc(50% - 86rem);
}
.secPriceCost .img03{
    width: 36.8rem;
    position: absolute;
    bottom: 0;
    right: calc(50% - 30rem);
}
@media only screen and (max-width:1215px){
    .secPriceCost{
        margin-top: 13.5rem;
    }
    .secPriceCost::after{
        height: 5rem;
        top: -8.5rem;
    }
    .secPriceCost .tit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secPriceCost .mainBox{
        margin-top: 2rem;
        padding: 0;
    }
    .secPriceCost .txtBox{
        display: block;
        padding-right: 0;
    }
    .secPriceCost .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
    }
    .secPriceCost .subTxtBox{
        margin-top: 0.5rem;
    }
    .secPriceCost .img01{
        width: 30.6rem;
        position: relative;
        top: 0;
        left: -2rem;
        margin-top: 4rem;
    }
    .secPriceCost .img02{
        width: 14.1rem;
        position: relative;
        top: 0;
        margin-top: -4.5rem;
        right: 0;
        margin-left: auto;
    }
    .secPriceCost .img03{
        width: 11.3rem;
        position: relative;
        bottom: auto;
        top: 0;
        right: auto;
        left: 5rem;
        margin-top: -9.8rem;
    }
}
/* secPriceFlow */
.secPriceFlow{
    margin-top: 15rem;
    background: var(--pickupBg);
    padding: 13.5rem 0 20rem;
}
.secPriceFlow .wrapper{
    display: flex;
}
.secPriceFlow .topTitBox{
    width: 33rem;
}
.secPriceFlow .mainBox{
    width: calc(100% - 33rem);
    padding: 10rem 0 0 0;
}
.secPriceFlow .topEngTit{
    font-size: var(--pcFontSize80);
    letter-spacing: var(--pcLetterSpacing80_50);
    font-weight: 100;
    position: relative;
    left: -0.5rem;
}
.secPriceFlow .topJpnTit{
    font-size: var(--pcFontSize16);
    font-weight: bold;
    margin-top: 3rem;
    display: inline-block;
    position: relative;
}
.secPriceFlow .topJpnTit::after{
    position: absolute;
    content: "";
    width: 5rem;
    height: 1px;
    top: calc(50% - 0.5px);
    right: -7rem;
    background: var(--cmnTitblackColor_20);
}
.secPriceFlow .item{
    display: flex;
    position: relative;
    padding-bottom: 4.2rem;
}
.secPriceFlow .item:nth-child(n+4){
    padding-bottom: 5.5rem;
}
.secPriceFlow .item:nth-child(6){
    padding-bottom: 0;
}
.secPriceFlow .item::after{
    position: absolute;
    content: "";
    width: 0.1rem;
    height: calc(100% - 2.8rem);
    left: 8.5rem;
    top: 3.2rem;
    background: var(--cmnTitblackColor_20);
}
.secPriceFlow .item:nth-child(6)::after{
    display: none;
}
.secPriceFlow .leftBox{
    position: relative;
    width: 9rem;
}
.secPriceFlow .leftBox::after{
    position: absolute;
    content: "";
    width: 0.9rem;
    height: 0.9rem;
    top: 1.4rem;
    right: 0;
    border-radius: 50%;
    background: var(--redColor);
}
.secPriceFlow .number{
    font-size: var(--pcFontSize35);
    font-weight: 300;
}
.secPriceFlow .rightBox{
    width: calc(100% - 9rem);
    padding: 0.3rem 0 0 4rem;
}
.secPriceFlow .tit{
    font-size: var(--pcFontSize28);
    letter-spacing: var(--pcLetterSpacing28_100);
    font-weight: bold;
}
.secPriceFlow .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_30);
    margin-top: 3.5rem;
}
.secPriceFlow .txt + .txt{
    margin-top: 1rem;
}
.secPriceFlow .txt.red{
    color: var(--redColor);
}
.secPriceFlow .mainTxt{
    font-size: var(--pcFontSize14);
    margin-top: 5rem;
}
@media only screen and (max-width:1215px){
    .secPriceFlow{
        margin-top: 7rem;
        padding: 6rem 0 10rem;
    }
    .secPriceFlow .wrapper{
        display: block;
    }
    .secPriceFlow .topTitBox{
        width: 100%;
    }
    .secPriceFlow .mainBox{
        width: 100%;
        padding: 2.3rem 0 0;
    }
    .secPriceFlow .topEngTit{
        font-size: var(--spFontSize34);
        letter-spacing: var(--spLetterSpacing0);
        left: -0.2rem;
    }
    .secPriceFlow .topJpnTit{
        font-size: var(--spFontSize11);
        margin-top: 1.2rem;
    }
    .secPriceFlow .topJpnTit::after{
        width: 2rem;
        right: -3rem;
    }
    .secPriceFlow .item{
        padding-bottom: 2.5rem;
    }
    .secPriceFlow .item:nth-child(n+4){
        padding-bottom: 3.7rem;
    }
    .secPriceFlow .item:nth-child(6){
        padding-bottom: 0;
    }
    .secPriceFlow .item::after{
        height: calc(100% - 2.5rem);
        left: 3.65rem;
        top: 2rem;
    }
    .secPriceFlow .leftBox{
        width: 4rem;
    }
    .secPriceFlow .leftBox::after{
        width: 0.5rem;
        height: 0.5rem;
        top: 0.7rem;
    }
    .secPriceFlow .number{
        font-size: var(--spFontSize18);
    }
    .secPriceFlow .rightBox{
        width: calc(100% - 4rem);
        padding: 0.1rem 0 0 1.5rem;
    }
    .secPriceFlow .tit{
        font-size: var(--spFontSize15);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secPriceFlow .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_22);
        margin-top: 2rem;
    }
    .secPriceFlow .txt + .txt{
        margin-top: 0;
    }
    .secPriceFlow .mainTxt{
        font-size: var(--spFontSize11);
        margin: 3.2rem -1rem 0 0;
    }
}
/* secAboutBox */
.secAboutBox.price{
    margin-top: 0;
}

/*-----------------------------------------------
    simple
-----------------------------------------------*/
.secConceptTitBox.simple::after{
    background-image: url(../img/concept/simple/bgSimpleConceptTitBox.png);
}
@media only screen and (max-width:1215px){
    .secConceptTitBox.simple::after{
        background: url(../img/concept/simple/bgSimpleConceptTitBox_sp.png) center bottom / cover;
    }
    .secConceptTitBox.simple .titEng{
        margin-right: -1.5rem;
        left: -0.5rem;
    }
}

.secSimpleTop{
    margin-top: 12rem;
}
.secSimpleTop .box{
    position: relative;
    padding-bottom: 93rem;
}
.secSimpleTop .titEng{
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_50);
    font-weight: 300;
    position: relative;
}
.secSimpleTop .titEng::after{
    position: absolute;
    content: "";
    width: 22rem;
    height: 0.1rem;
    top: 0.8rem;
    left: 12.5rem;
    background: var(--borderColor01);
}
.secSimpleTop .flTitBox{
    display: flex;
    margin-top: 3.3rem;
}
.secSimpleTop .tit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_56);
    letter-spacing: var(--pcLetterSpacing28_100);
    font-weight: bold;
    width: 66rem;
}
.secSimpleTop .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_50);
    transition-delay: 0.5s;
}
.secSimpleTop .txt + .txt{
    margin-top: 5rem;
}
.secSimpleTop .img01{
    position: absolute;
    left: -16rem;
    top: 34rem;
    width: 50rem;
    transition-delay: 1s;
}
.secSimpleTop .img02{
    position: absolute;
    left: 66rem;
    top: 60rem;
    width: 100rem;
    transition-delay: 1.5s;
}
.secSimpleTop .img03{
    position: absolute;
    left: 4rem;
    bottom: 0;
    width: 50rem;
    transition-delay: 2s;
}
.secSimpleTop .underBox{
    margin-top: 24.5rem;
    position: relative;
    text-align: center;
}
.secSimpleTop .underBox::after {
    position: absolute;
    content: "";
    width: 0.1rem;
    height: 10rem;
    top: -17rem;
    left: calc(50% - 0.05rem);
    background: var(--textColor);
}
.secSimpleTop .underTit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_56);
    letter-spacing: var(--pcLetterSpacing28_150);
    font-weight: bold;
}
.secSimpleTop .underTxt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_38);
    margin-top: 3.5rem;
}
.secSimpleTop .underImg{
    margin-top: 6.5rem;
}
@media only screen and (max-width:1215px){
    .secSimpleTop{
        margin-top: 5.8rem;
    }
    .secSimpleTop .box{
        padding: 0 5.333% 31rem;
    }
    .secSimpleTop .titEng{
        font-size: var(--spFontSize13);
        letter-spacing: var(--spLetterSpacing13_50);
    }
    .secSimpleTop .titEng::after{
        width: 5rem;
        top: 0.5rem;
        left: 9rem;
    }
    .secSimpleTop .flTitBox{
        display: block;
        margin-top: 1.3rem;
    }
    .secSimpleTop .tit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secSimpleTop .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        transition-delay: 0.5s;
        margin-top: 0.7rem;
    }
    .secSimpleTop .txt + .txt{
        margin-top: 0.6rem;
    }
    .secSimpleTop .img01{
        left: 2rem;
        top: auto;
        bottom: 5rem;
        width: 13.2rem;
        z-index: 10;
    }
    .secSimpleTop .img02{
        position: absolute;
        left: auto;
        top: auto;
        right: 0;
        bottom: 0;
        width: 26rem;
        transition-delay: 2s;
    }
    .secSimpleTop .img03{
        position: absolute;
        left: auto;
        top: auto;
        bottom: 16rem;
        right: 5rem;
        width: 15.3rem;
        transition-delay: 1.5s;
    }
    .secSimpleTop .underBox{
        margin-top: 13.5rem;
    }
    .secSimpleTop .underBox::after {
        height: 5rem;
        top: -8.5rem;
    }
    .secSimpleTop .underTit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing0);
    }
    .secSimpleTop .underTxt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
        margin-top: 1.8rem;
        text-align: left;
    }
    .secSimpleTop .underImg{
        margin-top: 2.2rem;
    }
}

.secSimplePoint + .secSpecTitBox{
    margin-top: 15rem;
}
.secSimplePoint{
    margin-top: 4rem;
}
.secSimplePoint .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_32);
}
.secSimplePoint .btnList{
    margin-top: 4rem;
    display: flex;
    justify-content: center;
}
.secSimplePoint .imgList + .btnList{
    margin-top: 6rem;
}
.secSimplePoint .btnInner{
    width: 40rem;
    height: 7.5rem;
    border-radius: 3.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    color: var(--textColor);
    background: var(--whiteColor);
    font-size: var(--pcFontSize16);
    font-weight: bold;
    border: solid 0.1rem var(--textColor);
}
.secSimplePoint .btnInner::after{
    position: absolute;
    content: "";
    width: 0.9rem;
    height: 0.9rem;
    left: 4rem;
    top: calc(50% - 0.45rem);
    background: var(--redColor);
    border-radius: 50%;
}
.secSimplePoint .btnInner:nth-child(2){
    margin-left: 4rem;
}
.secSimplePoint .imgList{
    margin-top: 4.5rem;
    display: flex;
}
.secSimplePoint .imgItem{
    width: calc(50% - 2rem);
    margin-right: 4rem;
}
.secSimplePoint .imgItem:last-child{
    margin-right: 0;
}
.secSimplePoint .subTxt{
    font-size: var(--pcFontSize12);
    margin-top: 2.5rem;
    text-align: right;
}
@media only screen and (max-width:1215px){
    .secSimplePoint + .secSpecTitBox{
        margin-top: 7rem;
    }
    .secSimplePoint{
        margin-top: 1rem;
    }
    .secSimplePoint .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
    }
    .secSimplePoint .btnList{
        margin-top: 2rem;
        display: block;
    }
    .secSimplePoint .btnList + .btnList{
        margin-top: 3rem;
    }
    .secSimplePoint .btnInner{
        width: 21.5rem;
        height: 4.5rem;
        border-radius: 2.25rem;
        font-size: var(--spFontSize13);
        margin: 0 auto;
    }
    .secSimplePoint .btnInner::after{
        width: 0.5rem;
        height: 0.5rem;
        left: 2rem;
        top: calc(50% - 0.25rem);
    }
    .secSimplePoint .btnInner:nth-child(2){
        margin: 1.5rem auto 0;
    }
    .secSimplePoint .imgList{
        margin-top: 2.5rem;
        display: block;
    }
    .secSimplePoint .imgItem{
        width: 100%;
        margin-right: 0;
    }
    .secSimplePoint .imgItem:last-child{
        margin: 3rem auto 0;
    }
    .secSimplePoint .subTxt{
        font-size: var(--spFontSize10);
        margin-top: 1.5rem;
        text-align: left;
    }
}

/*-----------------------------------------------
    standard
-----------------------------------------------*/
.secConceptTitBox.standard::after{
    background-image: url(../img/concept/standard/bgStandardConceptTitBox.png);
}
@media only screen and (max-width:1215px){
    .secConceptTitBox.standard::after{
        background: url(../img/concept/standard/bgStandardConceptTitBox_sp.png) center bottom / cover;
    }
    .secConceptTitBox.standard .titEng{
        margin-right: -1.5rem;
        left: -0.5rem;
    }
}

.secStandardTop{
    margin-top: 10.5rem;
}
.secStandardTop .tit{
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_56);
    letter-spacing: var(--pcLetterSpacing28_150);
    font-weight: bold;
    text-align: center;
}
.secStandardTop .list{
    margin-top: 4.5rem;
    display: flex;
}
.secStandardTop .item{
    width: calc(100% - 8rem);
    margin-right: 4rem;
}   
.secStandardTop .item:last-child{
    margin-right: 0;
}
.secStandardTop .link{
    display: block;
    text-align: center;
    border: solid 0.1rem var(--cmnTitblackColor_10);
    padding: 4.2rem 1rem 5.7rem;
    position: relative;
}
.secStandardTop .link::before{
    position: absolute;
    content: "";
    width: 3rem;
    height: 3rem;
    left: calc(50% - 1.5rem);
    bottom: -1.5rem;
    border-radius: 50%;
}
.secStandardTop .link.lazyloaded::before{
    background: url(../img/concept/standard/iconLinkArrow.png) center center / 0.8rem auto no-repeat var(--redColor);
}
.secStandardTop .titEng{
    font-size: var(--pcFontSize16);
    letter-spacing: var(--pcLetterSpacing16_50);
    font-weight: 300;
    padding-bottom: 1.9rem;
    position: relative;
}
.secStandardTop .titEng::after{
    position: absolute;
    content: "";
    width: 5rem;
    height: 1px;
    bottom: 0;
    left: calc(50% - 2.5rem);
    background: var(--cmnTitblackColor_20);
}
.secStandardTop .itemTxt{
    font-size: var(--pcFontSize18);
    font-weight: bold;
    margin-top: 2.5rem;
}
.secStandardTop .itemTit{
    font-size: var(--pcFontSize22);
    letter-spacing: var(--pcLetterSpacing16_50);
    font-weight: bold;
    margin-top: 2rem;
}
@media only screen and (max-width:1215px){
    .secStandardTop{
        margin-top: 5.4rem;
    }
    .secStandardTop .tit{
        font-size: var(--spFontSize15);
        line-height: var(--spLineHeight15_26);
        letter-spacing: var(--spLetterSpacing15_50);
    }
    .secStandardTop .list{
        margin-top: 2.3rem;
        display: block;
    }
    .secStandardTop .item{
        width: 100%;
        margin-right: 0;
    }   
    .secStandardTop .item:nth-child(n+2){
        margin-top: 2rem;
    }
    .secStandardTop .link{
        padding: 2.8rem 6rem 3rem 1.8rem;
        text-align: left;
    }
    .secStandardTop .link::before{
        width: 2.6rem;
        height: 2.6rem;
        left: auto;
        bottom: auto;
        right: 2rem;
        top: calc(50% - 1.3rem);
    }
    .secStandardTop .titEng{
        font-size: var(--spFontSize13);
        letter-spacing: var(--spLetterSpacing0);
        padding-bottom: 0;
        text-align: left;
    }
    .secStandardTop .titEng::after{
        bottom: auto;
        left: 5.4rem;
        top: 0.5rem;
    }
    .secStandardTop .itemTxt{
        font-size: var(--spFontSize13);
        margin-top: 1.8rem;
    }
    .secStandardTop .itemTit{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing16_50);
        margin-top: 1.5rem;
    }
}


.secStandardPoint + .secSpecTitBox{
    margin-top: 15rem;
}
.secStandardPoint{
    margin-top: 4rem;
}
.secStandardPoint .txt{
    font-size: var(--pcFontSize16);
    line-height: var(--pcLineHeight16_32);
}
.secStandardPoint .btnList{
    margin-top: 4rem;
    display: flex;
    justify-content: center;
}
.secStandardPoint .imgList + .btnList,
.secStandardPoint .img + .btnList{
    margin-top: 6rem;
}
.secStandardPoint .btnInner{
    width: 40rem;
    height: 7.5rem;
    border-radius: 3.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    color: var(--textColor);
    background: var(--whiteColor);
    font-size: var(--pcFontSize16);
    font-weight: bold;
    border: solid 0.1rem var(--textColor);
}
.secStandardPoint .btnInner::after{
    position: absolute;
    content: "";
    width: 0.9rem;
    height: 0.9rem;
    left: 4rem;
    top: calc(50% - 0.45rem);
    background: var(--redColor);
    border-radius: 50%;
}
.secStandardPoint .btnInner:nth-child(2){
    margin-left: 4rem;
}
.secStandardPoint .imgList{
    margin-top: 4.5rem;
    display: flex;
}
.secStandardPoint .imgItem{
    width: calc(50% - 2rem);
    margin-right: 4rem;
}
.secStandardPoint .imgItem:last-child{
    margin-right: 0;
}
.secStandardPoint .img{
    margin-top: 4.5rem;
}
@media only screen and (max-width:1215px){
    .secStandardPoint + .secSpecTitBox{
        margin-top: 7rem;
    }
    .secStandardPoint{
        margin-top: 1rem;
    }
    .secStandardPoint .txt{
        font-size: var(--spFontSize13);
        line-height: var(--spLineHeight13_26);
    }
    .secStandardPoint .btnList{
        margin-top: 2rem;
        display: block;
    }
    .secStandardPoint .btnList + .btnList,
    .secStandardPoint .img + .btnList{
        margin-top: 3rem;
    }
    .secStandardPoint .btnInner{
        width: 21.5rem;
        height: 4.5rem;
        border-radius: 2.25rem;
        font-size: var(--spFontSize13);
        margin: 0 auto;
    }
    .secStandardPoint .btnInner::after{
        width: 0.5rem;
        height: 0.5rem;
        left: 2rem;
        top: calc(50% - 0.25rem);
    }
    .secStandardPoint .btnInner:nth-child(2){
        margin: 1.5rem auto 0;
    }
    .secStandardPoint .imgList{
        margin-top: 2.5rem;
        display: block;
    }
    .secStandardPoint .imgItem{
        width: 100%;
        margin-right: 0;
    }
    .secStandardPoint .imgItem:last-child{
        margin: 3rem auto 0;
    }
    .secStandardPoint .img{
        margin-top: 2.5rem;
    }
}