@charset "utf-8";

/*-----------------------------------------------
    box01
-----------------------------------------------*/
.box01 .boxHeadWrapper.lazyloaded{
    background-image: url(../img/concept/spec/bgHead01.jpg);
}
.boxConstructionImg .boxImg2 .img03 {
    width: 53.988%;
}
.boxConstructionImg .boxImg2 .wrapper {
    margin: 10rem auto 0 0;
}
.boxConstructionImg .boxImg2 .img {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.boxConstructionImg .tit {
    font-size: var(--pcFontSize40);
    line-height: var(--pcLineHeight40_60);
    letter-spacing: var(--pcLetterSpacing40_40);
    font-weight: bold;
}
.boxConstructionImg .txt {
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_40);
    letter-spacing: var(--pcLetterSpacing20_40);
}
.boxConstructionImg .tit + .txt {
    margin-top: 2.5rem;
}
/* boSpecList */
.box01 .boSpecList {
    margin: 7.5rem auto 0;
    padding: 0 0.5rem;
}
.box01 .boSpecList .boxList {
    display: flex;
    gap: 0;
}
.box01 .boSpecList .item {
    position: relative;
    width: 26.667%;
    aspect-ratio: 1 / 1;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid var(--gray_c5c_Color);
    border-radius: 100%;
}
.box01 .boSpecList .item + .item {
    margin-left: -2rem;
}
.box01 .boSpecList .item::before,
.box01 .boSpecList .item::after {
    position: absolute;
    content: '';
    margin: auto;
    display: block;
    top: 0;
    left: -0.5rem;
    width: 100%;
    height: 100%;
    border: 1px solid var(--gray_c5c_Color);
    border-radius: 100%;
}
.box01 .boSpecList .item::after {
    left: 0.5rem;
}
.box01 .boSpecList .item:nth-child(2){
    transition-delay: 0.2s;
}
.box01 .boSpecList .item:nth-child(3){
    transition-delay: 0.4s;
}
.box01 .boSpecList .item:nth-child(4){
    transition-delay: 0.6s;
}
.box01 .boSpecList .txt {
    font-size: var(--pcFontSize28);
    line-height: var(--pcLineHeight28_42);
    letter-spacing: var(--pcLetterSpacing28_100);
    font-weight: bold;
    text-align: center;
}
.box01 .boSpecList .txt2 {
    line-height: var(--pcLineHeight28_34);
}
.box01 .boSpecList .tit {
    font-size: var(--pcFontSize60);
}
@media only screen and (max-width:1215px){
    .box01 .boxHeadWrapper.lazyloaded{
        background-image: url(../img/concept/spec/bgHead01_sp.jpg);
    }
    .box01 .boxImg1 {
        margin-top: 3.5rem;
    }
    .box01 .img01 {
        width: 27.5rem;
    }
    .boxConstructionImg .img02 {
        top: 80%;
        width: 14.5rem;
    }
    .boxConstructionImg .boxImg2 .img03 {
        width: 100%;
    }
    .boxConstructionImg .boxImg2 .wrapper {
        margin: 4rem auto 0;
    }
    .boxConstructionImg .boxImg2 .img {
        flex-direction: column;
        align-items: flex-start;
    }
    .boxConstructionImg .boxTxt{
        margin: 2.5rem auto 0;
    }
    .boxConstructionImg .tit {
        font-size: var(--spFontSize20);
        line-height: var(--spLineHeight20_30);
        letter-spacing: var(--spLetterSpacing20_0);
    }
    .boxConstructionImg .txt {
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing12_0);
    }
    .boxConstructionImg .tit + .txt {
        margin-top: 0.5rem;
    }
    /* boSpecList */
    .box01 .boSpecList {
        margin: 4rem auto 0;
        padding: 0 1.2rem;
    }
    .box01 .boSpecList .boxList {
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 1.5rem 0;
    }
    .box01 .boSpecList .item {
        width: 48.29%;
    }
    .box01 .boSpecList .item + .item {
        margin-left: 0;
    }
    .box01 .boSpecList .item::before {
        top: -0.4rem;
        left: -0.4rem;
    }
    .box01 .boSpecList .item::after {
        top: -0.2rem;
        left: 0.2rem;
    }
    .box01 .boSpecList .txt {
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_21);
        letter-spacing: var(--spLetterSpacing14_0);
    }
    .box01 .boSpecList .txt2 {
        line-height: var(--spLineHeight14_16);
    }
    .box01 .boSpecList .tit {
        font-size: var(--spFontSize35);
    }
}

/*-----------------------------------------------
    box02
-----------------------------------------------*/
.box02 .boxHeadWrapper.lazyloaded{
    background-image: url(../img/concept/spec/bgHead02.jpg);
}
@media only screen and (max-width:1215px){
    .box02 .boxHeadWrapper.lazyloaded{
        background-image: url(../img/concept/spec/bgHead02_sp.jpg);
    }
}

/*-----------------------------------------------
    box03
-----------------------------------------------*/
.box03 .boxHeadWrapper.lazyloaded{
    background-image: url(../img/concept/spec/bgHead03.jpg);
}
/* boxTable */
.box03 .boxTable{
    margin-top: 6rem;
}
.box03 .boxTable table{
    width: 100%;
}
.box03 .boxTable tr{
    border: 1px solid var(--gray_c0c_Color);
}
.box03 .boxTable th{
    background-color: var(--gray_f3f_Color);
    font-size: var(--pcFontSize16);
    padding: 2.2rem 0;
    text-align: center;
}
.box03 .boxTable th:first-child,
.box03 .boxTable td:first-child{
    width: 70rem;
    border-right: 1px solid var(--gray_c0c_Color);
}
.box03 .boxTable td{
    padding: 2rem 3.5rem;
}
.box03 .boxTable td:last-child{
    text-align: center;
    vertical-align: middle;
    padding: 5rem 3.5rem;
}
.box03 .boxTable .tit{
    font-size: var(--pcFontSize18);
    line-height: var(--pcLineHeight18_27);
    font-weight: bold;
}
.box03 .boxTable .txt{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_25);
    margin-top: 0.5rem;
}
.box03 .boxTable .txtMemo{
    margin-top: 3.5rem;
    text-align: right;
}
@media only screen and (max-width:1215px){
    .box03 .boxHeadWrapper.lazyloaded{
        background-image: url(../img/concept/spec/bgHead03_sp.jpg);
    }
    /* boxTable */
    .box03 .boxTable{
        margin-top: 3rem;
    }
    .box03 .boxTable th{
        font-size: var(--spFontSize12);
        padding: 1.3rem 0;
    }
    .box03 .boxTable th:first-child,
    .box03 .boxTable td:first-child{
        width: 24.5rem;
    }
    .box03 .boxTable td{
        vertical-align: middle;
        padding: 1.5rem 1.7rem;
    }
    .box03 .boxTable td:last-child{
        padding: 3.4rem 0.5rem;
    }
    .box03 .boxTable .tit{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_18);
    }
    .box03 .boxTable .txt{
        font-size: var(--spFontSize11);
        line-height: var(--spLineHeight11_17);
        margin-top: 0.5rem;
    }
    .box03 .boxTable .txtMemo{
        margin-top: 2rem;
    }
}

/*-----------------------------------------------
    box04
-----------------------------------------------*/
.box04 .boxHeadWrapper.lazyloaded{
    background-image: url(../img/concept/spec/bgHead04.jpg);
}
/* boxCare */
.box04 .boxCare{
    margin-top: 11rem;
}
.box04 .boxCare .boxCareTit{
    text-align: center;
}
.box04 .boxCareTit.txtLeft{
    text-align: left;
}
.box04 .boxCare .titCare{
    font-size: var(--pcFontSize40);
    line-height: var(--pcLineHeight40_56);
    letter-spacing: var(--pcLetterSpacing40_40);
    font-weight: bold;
}
.box04 .boxCare .titCare30{
    font-size: var(--pcFontSize30);
    letter-spacing: var(--pcLetterSpacing30_40);
    font-weight: bold;
    margin-top: 1.5rem;
}
.box04 .boxCare .titCare20{
    font-size: var(--pcFontSize20);
    letter-spacing: var(--pcLetterSpacing20_40);
    margin-top: 1.5rem;
}
.box04 .titCare + .titCare20{
    margin-top: 1.5rem;
}
.box04 .boxCare .txtCare{
    font-size: var(--pcFontSize14);
    line-height: var(--pcLineHeight14_28);
    margin-top: 2rem;
}
/* boxItem2 */
.box04 .boxItem2{
    margin-top: 15rem;
}
.box04 .boxItem2 + .boxItem2{
    margin-top: 10rem;
}
/* boxItem3 */
.box04 .boxItem3{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
/* boxConstructionImg */
.box04 .boxConstructionImg{
    margin-top: 15rem;
}
.box04 .boxConstructionImg .img03 {
    width: 47.946%;
}
/* boxImg */
.box04 .boxCare .boxImg{
    text-align: center;
}
.box04 .boxCare .img + .img{
    margin-top: 6rem;
}
.box04 .boxCare .img02{
    text-align: right;
    margin-top: 2rem;
}
@media only screen and (max-width:1215px){
    .box04 .boxHeadWrapper.lazyloaded{
        background-image: url(../img/concept/spec/bgHead04_sp.jpg);
    }
    /* boxCare */
    .box04 .boxCare{
        margin-top: 5rem;
    }
    .box04 .boxCare .titCare{
        font-size: var(--spFontSize20);
        line-height: var(--spLineHeight20_30);
        letter-spacing: var(--spLetterSpacing20_0);
    }
    .box04 .boxCare .titCare30{
        font-size: var(--spFontSize16);
        letter-spacing: var(--spLetterSpacing16_0);
        margin-top: 0.8rem;
    }
    .box04 .boxCare .titCare20,
    .box04 .titCare + .titCare20{
        margin-top: 0.5rem;
    }
    .box04 .boxCare .titCare20,
    .box04 .boxCare .txtCare{
        font-size: var(--spFontSize12);
        line-height: var(--spLineHeight12_22);
        letter-spacing: var(--spLetterSpacing12_0);
    }
    .box04 .boxCare .txtCare{
        margin-top: 1rem;
    }
    /* boxItem2 */
    .box04 .boxItem2,
    .box04 .boxItem2 + .boxItem2{
        margin-top: 6rem;
    }
    /* boxItem3 */
    .box04 .boxItem3{
        flex-direction: column;
    }
    /* boxConstructionImg */
    .box04 .boxConstructionImg,
    .box04 .boxConstructionImg .wrapper{
        margin-top: 3rem;
    }
    .box04 .boxConstructionImg .img{
        flex-direction: column-reverse;
    }
    .box04 .boxCare .img03 {
        width: 100%;
        margin-top: 3rem;
    }
    /* boxImg */
    .box04 .boxCare .boxImg{
        margin-top: 2rem;
    }
    .box04 .boxCare .img + .img{
        margin-top: 2.5rem;
    }
    .box04 .boxCare .img02{
        width: 27.5rem;
        margin: 0 auto;
    }
}

/*-----------------------------------------------
    box05
-----------------------------------------------*/
.box05 .boxHeadWrapper.lazyloaded{
    background-image: url(../img/concept/spec/bgHead05.jpg);
}
/* boxItem */
.box05 .boxItem + .boxItem{
    margin-top: 10rem;
}
/* boxImg */
.box05 .boxImg{
    margin-top: 5rem;
}
.box05 .boxImg .txtImg{
    text-align: center;
    font-size: var(--pcFontSize18);
    margin-bottom: 2.8rem;
}
@media only screen and (max-width:1215px){
    .box05 .boxHeadWrapper.lazyloaded{
        background-image: url(../img/concept/spec/bgHead05_sp.jpg);
    }
    /* boxItem */
    .box05 .boxItem + .boxItem{
        margin-top: 6rem;
    }
    /* boxImg */
    .box05 .boxImg{
        margin-top: 3rem;
    }
    .box05 .boxImg .txtImg{
        font-size: var(--spFontSize14);
        margin-bottom: 1.8rem;
    }
}

/*-----------------------------------------------
    boxSliderDetails
-----------------------------------------------*/
.boxSliderDetails .tit{
    font-size: var(--pcFontSize20);
    line-height: var(--pcLineHeight20_30);
    letter-spacing: var(--pcLetterSpacing20_40);
}
@media only screen and (max-width:1215px){
    .boxSliderDetails .tit{
        font-size: var(--spFontSize14);
        line-height: var(--spLineHeight14_21);
        letter-spacing: var(--spLetterSpacing14_0);
    }
}