@charset "utf-8";




.secTop{
    background: url(../img/concept/bgTop.jpg) center top no-repeat;
    height: 800px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #fff;
    padding-top: 15px;
}
.secTop .titEng{
    font-size: 35px;
    font-weight: 500;
    letter-spacing: 3px;
    text-align: center;
}
.secTop .tit{
    font-size: 32px;
    line-height: 1.75;
    font-weight: bold;
    letter-spacing: 2.5px;
    margin-top: 40px;
    text-align: center;
}
.secTop .txt{
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    line-height: 3;
    margin-top: 25px;
    letter-spacing: 1.5px;
}
@media only screen and (max-width:767px){
    .secTop{
        background: none;
        background-size: cover;
        height: auto;
        display: block;
        text-align: center;
        padding: 0px 0 0px;
        color: #212329;
    }
    .secTop .titEng{
        font-size: 16px;
        letter-spacing: 1.5px;
        text-align: left;
        padding-top: 28px;
    }
    .secTop .tit{
        font-size: 18px;
        line-height: 1.67;
        letter-spacing: 0px;
        margin-top: 19px;
        text-align: left;
    }
    .secTop .txt{
        font-size: 12px;
        line-height: 2.09;
        margin-top: 10px;
        letter-spacing: 0px;
        text-align: left;
    }
}
@media only screen and (max-width:359px){
    .secTop .tit {
        font-size: 17px;
    }
}

/* secLink */
.secLink{
    margin-top: 120px;
}
.secLink .item{
    height: 620px;
    position: relative;
    display: flex;
    align-items: center;
}
.secLink .linkBox .item:nth-child(n+2){
    margin-top: 120px;
}
.secLink .img{
    position: absolute;
    top: 0;
    left: calc(50% - 960px);
}
.secLink .linkBox .item:nth-child(2n) .img{
    left: auto;
    right: calc(50% - 960px);
}
.secLink .txtBox{
    margin-left: 660px;
}
.secLink .linkBox .item:nth-child(2n) .txtBox{
    margin-left: 0;
}
.secLink .numTxt{
    font-size: 60px;
    font-weight: bold;
    letter-spacing: 2px;
}
.secLink .itemTit{
    font-size: 32px;
    font-weight: bold;
    line-height: 1.56;
    margin-top: 19px;
    letter-spacing: 2.4px;
}
.secLink .itemTxt{
    font-size: 15px;
    line-height: 2.1;
    margin-top: 22px;
    letter-spacing: 0.8px;
}
.secLink .txt12{
    font-size: 12px;
}
.secLink .btn{
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 13px;
    font-weight: bold;
    color: #212329;
    letter-spacing: 1px;
    width: 200px;
    height: 52px;
    border-radius: 30px;
    border: 1px solid #212329;
    margin-top: 40px;
    box-shadow: inset 0px -4px 0px 0px rgba(1, 1, 1, 0.08);
}
@media only screen and (max-width:767px){
    .secLink{
        margin-top: 41px;
    }
    .secLink .item{
        height: auto;
        display: block;
    }
    .secLink .linkBox .item:nth-child(2){
        margin-top: 44px;
    }
    .secLink .linkBox .item:nth-child(3){
        margin-top: 50px;
    }
    .secLink .img{
        position: relative;
        left: 0;
    }
    .secLink .linkBox .item:nth-child(2n) .img{
        right: 0;
    }
    .secLink .txtBox{
        margin-left: 0;
    }
    .secLink .numTxt{
        font-size: 40px;
        letter-spacing: 2px;
        position: absolute;
        top: -17px;
        left: 8px;
    }
    .secLink .itemTit{
        font-size: 18px;
        line-height: 1.72;
        margin-top: 14px;
        letter-spacing: 0.5px;
    }
    .secLink .itemTxt{
        font-size: 12px;
        line-height: 2;
        margin-top: 7px;
        letter-spacing: 0;
    }
    .secLink .txt12{
        font-size: 10px;
    }
    .secLink .btn{
        font-size: 12px;
        letter-spacing: 1px;
        width: 59.421%;
        min-width: 205px;
        height: 48px;
        margin: 13px auto 0;
    }
}
@media only screen and (max-width:359px){
    .secLink .itemTit {
        font-size: 16px;
    }
}

/* secConceptBnr */
.secConceptBnr{
    margin-top: 120px;
}
.secConceptBnr .linkBox{
    display: flex;
    justify-content: space-between;
}
.secConceptBnr .item{
    width: 31.25%;
}
.secConceptBnr .link{
    display: block;
    position: relative;
    text-decoration: none;
    color: #fff;
}
.secConceptBnr .link::after{
    position: absolute;
    content: "";
    width: 28px;
    height: 28px;
    bottom: 30px;
    right: 30px;
}
.secConceptBnr .link.lazyloaded::after{
    background: url(../img/concept/iconBnr.png) center top no-repeat;
}
.secConceptBnr .txtBox{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 20px;
}
.secConceptBnr .bnrTit{
    font-size: 26px;
    text-align: center;
    font-weight: bold;
    line-height: 1.61;
    letter-spacing: 2px;
    padding-top: 15px;
}
.secConceptBnr .bnrEng{
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 1px;
}
@media only screen and (max-width:767px){
    .secConceptBnr{
        margin-top: 50px;
    }
    .secConceptBnr .linkBox{
        display: block;
    }
    .secConceptBnr .item{
        width: 100%;
    }
    .secConceptBnr .linkBox .item:nth-child(n+2){
        margin-top: 5px;
    }
    .secConceptBnr .link::after{
        width: 24px;
        height: 24px;
        bottom: calc(50% - 12px);
        right: 20px;
    }
    .secConceptBnr .link.lazyloaded::after{
        background: url(../img/concept/iconBnr_sp.png) center top no-repeat;
        background-size: contain;
    }
    .secConceptBnr .txtBox{
        padding-top:0;
        padding-bottom: 3px;
        flex-direction: column-reverse;
        align-items: center;
        justify-content: center;
    }
    .secConceptBnr .bnrTit{
        font-size: 15px;
        line-height: 1.61;
        letter-spacing: 1px;
        padding-top: 0px;
    }
    .secConceptBnr .bnrEng{
        font-size: 13px;
        margin-top: 6px;
        letter-spacing: 2px;
    }
}
@media only screen and (max-width:359px){
    .secConceptBnr .bnrTit{
        font-size: 14px;
        letter-spacing: 0;
    }
}



/* -----------------------------------------------------------
      structure
----------------------------------------------------------- */
.secStructureTop{
    position: relative;
    height: 600px;
    display: flex;
    align-items: center;
    color: #fff;
}
.secStructureTop .bgTop {
    position: absolute;
    top: 0;
    left: calc(50% - 960px);
    z-index: -1;
}
.secStructureTop .titEng{
    font-size: 40px;
    font-weight: 500;
    letter-spacing: 4px;
}
.secStructureTop .tit{
    font-size: 35px;
    font-weight: bold;
    letter-spacing: 2px;
    line-height: 1.5;
    margin-top: 17px;
}
.secStructureTop .txt{
    font-size: 15px;
    line-height: 2.1;
    margin-top: 18px;
    letter-spacing: 1px;
}
@media only screen and (max-width:767px){
    .secStructureTop{
        display: block;
        height: auto;
        background: #f8f8f4;
        padding-bottom: 43px;
        color: #212329;
    }
    .secStructureTop .bgTop {
        position: relative;
        left: 0;
        z-index: 0;
    }
    .secStructureTop .titEng{
        font-size: 20px;
        letter-spacing: 2px;
        margin-top: 28px;
    }
    .secStructureTop .tit{
        font-size: 20px;
        letter-spacing: 0.5px;
        line-height: 1.5;
        margin-top: 15px;
    }
    .secStructureTop .txt{
        font-size: 12px;
        line-height: 2;
        margin-top: 6px;
        letter-spacing: 0;
    }
}

.bgmaintenance.lazyloaded {
    background: url(../img/concept/structure/bgRepeat.gif) left top repeat;
}
.secMaintenanceTop.structure{
    color: #fff;
}
.bgmaintenance.structure{
    padding: 100px 0 100px;
}
.bgmaintenance.structure .pageTit{
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 5px;
}
.secStructureMain{
    background: #fff;
    box-shadow: 0 0 7px rgba(0, 0, 0, 0.1);
    padding: 81px 100px 144px 108px;
    margin-top: 77px;
}
.secStructureMain .flBox{
    display: flex;
}
.secStructureMain .itemBox{
    position: relative;
    left: 60px;
}
.secStructureMain .item{
    display: flex;
    position: relative;
}
.secStructureMain .itemBox::after{
    position: absolute;
    content: "";
    width: 3px;
    height:100%;
    background: #2b8bbd;
    left: 38px;
    bottom: -52px;
}
.secStructureMain .itemBox .item:nth-child(2){
    margin-top: 47px;
}
.secStructureMain .itemBox .item:nth-child(3){
    margin-top: 20px;
}
.secStructureMain .itemBox .item:nth-child(4){
    margin-top: 46px;
}
.secStructureMain .itemBox .item:nth-child(5){
    margin-top: 15px;
}
.secStructureMain .itemBox .item:nth-child(n+6){
    margin-top: 47px;
}
.secStructureMain .itemBox .item:nth-child(11){
    margin-top: 13px;
}
.secStructureMain .numTxt{
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    font-weight: 500;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
    border: 2px solid #2b8bbd;
    color: #2b8bbd;
    background: #fff;
}
.secStructureMain .itemBox .item:nth-child(2) .numTxt{
    color: #fff;
    background: #2b8bbd;
    width: 100px;
    height: 100px;
    font-size: 40px;
    position: relative;
    left: -10px;
}
.secStructureMain .txtBox{
    margin-left: 55px;
    padding-top: 15px;
}
.secStructureMain .itemBox .item:nth-child(2) .txtBox{
    color: #2b8bbd;
    font-weight: bold;
    margin-left: 39px;
    padding-top: 29px;
}
.secStructureMain .itemTit{
    display: inline-block;
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 2px;
    line-height: 1.5;
    position: relative;
}
.secStructureMain .itemTit::after{
    position: absolute;
    content: "";
    width: 100%;
    height: 2px;
    background: #212329;
    left: 4px;
    bottom: -5px;
}
.secStructureMain .itemBox .item:nth-child(2) .itemTit::after{
    background: #2b8bbd;
}
.secStructureMain .itemTxt{
    font-size: 15px;
    line-height: 2.1;
    margin-top: 32px;
    letter-spacing: 0.6px;
}
.secStructureMain .btnBox{
    width: 700px;
    background: #2b8bbd;
    border-radius: 40px;
    margin:  37px auto 0;
    position: relative;
}
.secStructureMain .btnBox::before{
    position: absolute;
    content: "";
    background: url(../img/concept/structure/imgTriangle.gif) center top /cover;
    width: 13px;
    height: 10px;
    bottom: -65px;
    left: 27px;
}
.secStructureMain .btnBox::after{
    position: absolute;
    content: "";
    width: 2px;
    height: calc(98% - 23px);
    background: #2b8bbd;
    left: 32px;
    bottom: -55px;
}
.secStructureMain .btnTxt{
    font-size: 25px;
    font-weight: 700;
    color: #fff;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.secConceptBnr.structure {
    margin-top: 80px;
}
.secConceptBnr.structure .tit{
    font-size: 25px;
    font-weight: 700;
    text-align: center;
}
.secConceptBnr.structure .linkBox {
    margin-top: 39px;
}

@media only screen and (max-width:767px){
    .bgmaintenance.structure{
        padding: 45px 0 35px;
    }
    .bgmaintenance.structure .pageTit{
        font-size: 20px;
        line-height: 1.6;
        letter-spacing: 1px;
    }
    .secStructureMain{
        padding: 28px 30px 80px 15px;
        margin-top: 25px;
    }
    .secStructureMain .itemBox{
        left: 10px;
    }
    .secStructureMain .itemBox::after {
        width: 2px;
        height: 100%;
        left: 19px;
        top: 40px;
    }
    .secStructureMain .itemBox .item:nth-child(1){
        height: 103px;
    }
    .secStructureMain .itemBox .item:nth-child(2){
        margin-top: 23px;
        height:141px;
    }
    .secStructureMain .itemBox .item:nth-child(3){
        margin-top: 18px;
        height:124px;
    }
    .secStructureMain .itemBox .item:nth-child(4){
        margin-top: 16px;
        height:165px;
    }
    .secStructureMain .itemBox .item:nth-child(5){
        margin-top: 15px;
        height:124px;
    }
    .secStructureMain .itemBox .item:nth-child(6){
        margin-top: 18px;
        height:124px;
    }
    .secStructureMain .itemBox .item:nth-child(7){
        margin-top: 14px;
        height:126px;
    }
    .secStructureMain .itemBox .item:nth-child(8){
        margin-top: 14px;
        height:105px;
    }
    .secStructureMain .itemBox .item:nth-child(9){
        margin-top: 18px;
        height: 104px;
    }
    .secStructureMain .itemBox .item:nth-child(10){
        margin-top: 15px;
        height:140px;
    }
    .secStructureMain .itemBox .item:nth-child(11){
        margin-top: 17px;
        height: 210px;
    }
    .secStructureMain .numTxt{
        width: 40px;
        height: 40px;
        font-size: 15px;
    }
    .secStructureMain .itemBox .item:nth-child(2) .numTxt{
        width: 50px;
        height: 50px;
        font-size: 20px;
        left: -5px;
        bottom: 7px;
    }
    .secStructureMain .txtBox{
        margin-left: 13px;
        padding-top: 13px;
    }
    .secStructureMain .itemBox .item:nth-child(2) .txtBox{
        margin-left: 5px;
        padding-top: 10px;
    }
    .secStructureMain .itemTit{
        font-size: 15px;
        letter-spacing: 0px;
    }
    .secStructureMain .itemTit::after{
        width: 100%;
        height: 1px;
        left: 1px;
        bottom: 1px;
    }
    .secStructureMain .itemTxt{
        font-size: 12px;
        line-height: 1.67;
        margin-top: 11px;
        letter-spacing: 0.6px;
    }

    .secStructureMain .btnBox{
        width: 76.67%;
        border-radius: 38px;
        margin: 12px 0 0 85px;
    }
    .secStructureMain .btnBox::before{
        width: 10px;
        height: 8px;
        bottom: -48px;
        left: 20px;
    }
    .secStructureMain .btnBox::after{
        width: 2px;
        height: calc(98% - 30px);
        left: 24px;
        bottom: -41px;
    }
    .secStructureMain .listImg img{
        width: 80px;
        height: 1286px;
    }
    .secStructureMain .btnTxt{
        font-size: 13px;
        line-height: 1.54;
        height: 76px;
    }
    .secConceptBnr.structure {
        margin-top: 38px;
    }
    .secConceptBnr.structure .tit{
        font-size: 15px;
        line-height: 1.67;
    }
    .secConceptBnr.structure .linkBox {
        margin-top: 14px;
    }
    
}
@media only screen and (max-width:359px){
    .secStructureMain .txtBox {
        padding-top: 10px;
    }
    .secStructureMain .itemTit {
        font-size: 12px;
    }
    .secStructureMain .itemTxt {
        font-size: 11px;
    }
    .secStructureMain .itemTxt {
        margin-top: 8px;
    }
    .secStructureMain .itemBox .item:nth-child(2) {
        margin-top: 15px;
    }
    .item:nth-child(5) {
        margin-top: 10px;
    }
}


/* -----------------------------------------------------------
      heat
----------------------------------------------------------- */

/* cmnTitBox */
.cmnTitBox{
    text-align: center;
}
.cmnTitBox .cmnJpn{
    font-size: 32px;
    font-weight: bold;
    letter-spacing: 1px;
}
.cmnTitBox .cmnEng{
    position: relative;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 2px;
    margin-top: 22px;
}
.cmnTitBox .cmnEng::after{
    position: absolute;
    content: "";
    width: 40px;
    height: 2px;
    background: #212329;
    left: calc(50% - 20px);
    bottom: -25px;
}
.cmnTitBox .cmnTxt{
    font-size: 15px;
    line-height: 2.1;
    letter-spacing: 0.6px;
    margin-top: 42px;
}
@media only screen and (max-width:767px){
    .cmnTitBox .cmnJpn{
        font-size: 20px;
        letter-spacing: 1px;
    }
    .cmnTitBox .cmnEng{
        font-size: 14px;
        letter-spacing: 1px;
        margin-top: 14px;
    }
    .cmnTitBox .cmnEng::after{
        width: 30px;
        left: calc(50% - 15px);
        bottom: -21px;
    }
    .cmnTitBox .cmnTxt{
        font-size: 12px;
        line-height: 2;
        letter-spacing: 0.5px;
        margin-top: 35px;
    }
}
@media only screen and (max-width:374px){
    .cmnTitBox .cmnTxt{
        font-size: 11px;
    }
}
@media only screen and (max-width:359px){
    .cmnTitBox .cmnTxt{
        font-size: 10px;
    }
}


.secHeatTop{
    position: relative;
    height: 600px;
    display: flex;
    align-items: center;
    color: #fff;
}
.secHeatTop .bgTop {
    position: absolute;
    top: 0;
    left: calc(50% - 960px);
    z-index: -1;
}
.secHeatTop .titEng{
    font-size: 40px;
    font-weight: 500;
    letter-spacing: 4px;
}
.secHeatTop .tit{
    font-size: 35px;
    font-weight: bold;
    letter-spacing: 2px;
    line-height: 1.5;
    margin-top: 17px;
}
.secHeatTop .txt{
    font-size: 15px;
    line-height: 2.1;
    margin-top: 18px;
    letter-spacing: 1px;
}
.secHeatTop .spanTxt{
    display: inline-block;
    font-size: 20px;
}
@media only screen and (max-width:767px){
    .secHeatTop{
        display: block;
        height: auto;
        background: #f8f8f4;
        padding-bottom: 43px;
        color: #212329;
    }
    .secHeatTop .bgTop {
        position: relative;
        left: 0;
        z-index: 0;
    }
    .secHeatTop .titEng{
        font-size: 20px;
        letter-spacing: 2px;
        margin-top: 28px;
    }
    .secHeatTop .tit{
        font-size: 20px;
        letter-spacing: 0.5px;
        line-height: 1.5;
        margin-top: 8px;
    }
    .secHeatTop .txt{
        font-size: 12px;
        line-height: 2;
        margin-top: 6px;
        letter-spacing: 0;
    }
    .secHeatTop .spanTxt{
        font-size: 12px;
    }
}


/* .secTopSlider */
.secTopSlider{
    margin-top: 110px;
    position: relative;
}
.secTopSlider .txtBox{
    text-align: center;
}
.secTopSlider .mainTit{
    font-size: 32px;
    font-weight: bold;
    letter-spacing: 1px;
}
.secTopSlider .tit{
    font-size: 18px;
    margin-top: 22px;
    letter-spacing: 2px;
    position: relative;
}
.secTopSlider .tit::before{
    position: absolute;
    content: "";
    background: #212329;
    width: 40px;
    height: 2px;
    bottom: -25px;
    left: calc(50% - 20px);
}
.secTopSlider .imgSlider{
    width: 100%;
    padding-top: 55%;
    display: block;
}
.secTopSlider .txt{
    font-size: 15px;
    line-height: 2.14;
    margin-top: 41px;
    letter-spacing: 0.5px;
}
/* secHeroSlider */
.secHeroSlider{
    margin-top: 50px;
}
.secHeroSlider .boxSlider{
    overflow: visible;
}
.secHeroSlider .swiper{
    overflow: visible;
}
.secHeroSlider .wrapper{
	height: 100%;
}
.secHeroSlider .swiper-button-prev{
    position: absolute;
    content: '';
    width: 42px;
    height: 96px;
    background:rgba(0,0,0,0.8);
    border-radius:0 5px 5px 0;
    top: calc(50% - -88px);
    left:0;
    transition: all 0.2s;
}
.secHeroSlider .swiper-button-next{
    position: absolute;
    content: '';
    width: 42px;
    height: 96px;
    background:rgba(0,0,0,0.8);
    border-radius: 5px 0 0 5px;
    top: calc(50% - -88px);
    right:0;
    transition: all 0.2s;
}
.secHeroSlider .swiper-button-prev::after{
    width: 9px;
    height: 16px;
    margin-top: 0;
    top: calc(50% - 8px);
    z-index: 10;
    position: absolute;
    transition: all 0.2s;
    content: '';
}
.secHeroSlider .swiper-button-next::after{
    width: 9px;
    height: 16px;
    margin-top: 0;
    top: calc(50% - 8px);
    z-index: 10;
    position: absolute;
    transition: all 0.2s;
    content: '';
}
.secHeroSlider .swiper-button-prev.lazyloaded::after{
    background: url(../img/index/iconArrowPrev.png) center top / cover no-repeat;
}
.secHeroSlider .swiper-button-next.lazyloaded::after{
    background: url(../img/index/iconArrowNext.png) center top / cover no-repeat;
}
.secHeroSlider .swiper-button-prev:hover,
.secHeroSlider .swiper-button-next:hover{
    width: 45px;
    transition: all 0.2s;
}
.secHeroSlider .swiper-button-prev:hover::after{
    margin-left: -10px;
    transition: all 0.2s;
}
.secHeroSlider .swiper-button-next:hover::after{
    margin-right: -10px;
    transition: all 0.2s;
}
.secHeroSlider .swiper-pagination{
    position: absolute;
    bottom: -53px !important;
    right: 40px !important;
    left: auto !important;
    width: auto !important;
}
.secHeroSlider .swiper-pagination-bullet{
    background: #e6e6e6;
    margin: 0 3px !important;
    opacity: 1;
    width: 8px;
    height: 8px;
    border-radius: 50%;
}
.secHeroSlider .swiper-pagination-bullet-active{
    background: #212329;
}
.secTopSlider .boxImg{
    text-align: center;
}
.secTopSlider .boxImg img{
    max-width:100%;
    max-height:100%;
    width:auto;
    height:auto;
}
@media only screen and (max-width:767px){
    .secTopSlider{
        margin-top: 50px;
    }
    .secTopSlider .mainTit{
        font-size: 20px;
    }
    .secTopSlider .tit{
        font-size: 14px;
        margin-top: 15px;
        letter-spacing: 1.5px;
    }
    .secTopSlider .tit::before{
        width: 30px;
        bottom: -20px;
        left: calc(50% - 16px);
    }
    .secTopSlider .imgSlider{
        width: 100%;
        padding-top: 55%;
        display: block;
    }
    .secTopSlider .txt{
        font-size: 12px;
        line-height: 2;
        margin-top: 35px;
    }
    /* secHeroSlider */
    .secHeroSlider{
        margin-top:23px;
    }

    /* secHeroSlider */
    .secHeroSlider .swiper-button-prev{
        display: none;
    }
    .secHeroSlider .swiper-button-next{
        display: none;
    }
    .secHeroSlider .swiper-pagination{
        position: static;
        padding-top: 14px;
    }
}


/* secBox */
.secBox{
    padding: 80px 0 85px;
}
.secBox .list{
    display: flex;
}
.secBox .item{
    width: 48.438%;
    margin-right: 3.124%;
}
.secBox .item:nth-child(2){
    margin-right: 0;
}
.secBox .tit{
    font-size: 25px;
    font-weight: bold;
    padding: 30px 0 20px 0;
    letter-spacing: 0.5px;
}
.secBox .txt{
    font-size: 15px;
    line-height: 2.14;
    letter-spacing: 1px;
}
@media only screen and (max-width:767px){
    .secBox{
        padding: 30px 0 50px;
    }
    .secBox .list{
        display: block;
    }
    .secBox .item{
        width: 100%;
        margin-right: 0%;
    }
    .secBox .item:nth-child(2){
        margin-top: 21px;
    }
    .secBox .tit{
        font-size: 15px;
        padding: 20px 0 15px 0;
    }
    .secBox .txt{
        font-size: 12px;
        line-height: 2;
        letter-spacing: 0.5px;
    }
}


/* secSpec */
.secSpec{
    margin-top: 11px;
}
.secSpec .box{
    box-shadow: 0 0 7px rgba(0, 0, 0, 0.1);
    background: #fff;
    padding: 79px 80px 80px;
    margin-top: 43px;
    text-align: center;
}
.secSpec .tit{
    font-size: 30px;
    display: inline-block;
    letter-spacing: 4px;
    font-weight: bold;
    background: linear-gradient(transparent 70%, #fff799 30%);
}
.secSpec .txt{
    font-size: 15px;
    line-height: 2.1;
    text-align: center;
    letter-spacing: 1px;
    margin-top: 30px;
}
.secSpec .img{
    margin-top: 39px;
}
@media only screen and (max-width:767px){
    .secSpec{
        margin-top: 6px;
    }
    .secSpec .box{
        padding: 43px 0 40px;
        margin-top: 18px;
    }
    .secSpec .tit{
        font-size: 18px;
        letter-spacing: 1px;
    }
    .secSpec .txt{
        font-size: 12px;
        line-height: 2;
        letter-spacing: 1px;
        margin-top: 10px;
    }
    .secSpec .img{
        width: 91.305%;
        margin: 12px auto 0;
    }
}
@media only screen and (max-width:359px){
    .secSpec .tit {
        font-size: 17px;
        letter-spacing: 0px;
    }
    .secSpec .txt{
        letter-spacing: 0;
    }
}

.bgmaintenance{
    padding: 93px 0 100px;
}
.bgmaintenance.lazyloaded{
    background: url(../img/concept/heat/bgRepeat.gif) left top repeat;
}
.secMaintenanceMain .tit{
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 6px;
}

.secMaintenanceMain .itemBox{
    margin-top: 83px;
}
.secMaintenanceMain .item{
    position: relative;
    background: #fff;
    padding: 80px;
    box-shadow: 0 0 7px rgba(0, 0, 0, 0.1);
}
.secMaintenanceMain .itemBox .item:nth-child(1){
    padding: 80px 79px 80px 80px;
}
.secMaintenanceMain .itemBox .item:nth-child(n+2){
    margin-top: 100px;
}
.secMaintenanceMain .numTxt{
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #2b8bbd;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    font-weight: 500;
    letter-spacing: 2px;
    position: absolute;
    top: -40px;
    left: calc(50% - 40px);
}
.secMaintenanceMain .innerBox{
    position: relative;
    display: flex;
    align-items: center;
    height: 320px;
}
.secMaintenanceMain .itemBox .item:nth-child(2n) .img{
    position: absolute;
    top: 0;
    right: 0;
}
.secMaintenanceMain .txtBox{
    margin-left: 60px;
}
.secMaintenanceMain .itemBox .item:nth-child(2n) .txtBox{
    margin-left: 0;
}
.secMaintenanceMain .itemTit{
    font-size: 30px;
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: 2px;
    display: inline-block;
}
.secMaintenanceMain .border{
    border-bottom: 2px solid #212329;
}
.secMaintenanceMain .itemTxt{
    font-size: 15px;
    line-height: 2.1;
    margin-top: 24px;
    letter-spacing: 1px;
    max-width: 612px;
}
.secMaintenanceMain .itemBox .item:nth-child(1) .itemTxt{
    max-width: 630px;
}
.secMaintenanceMain .underTxt{
    margin-top: 10px;
}
.secMaintenanceMain .subItemTxt{
    font-size: 12px;
    line-height: 1.83;
    margin-top: 10px;
    letter-spacing: 0.5px;
}
.secMaintenanceMain .tableBox{
    margin-top: 49px;
    border: 1px solid #212329;
}
.secMaintenanceMain .tableTit{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 73px;
    background: #212329;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    letter-spacing: 1.2px;
}
.secMaintenanceMain .imgTable{
    margin: 40px auto;
    text-align: center;
}

@media only screen and (max-width:767px){
    .bgmaintenance{
        padding: 35px 0 50px;
    }
    .secMaintenanceMain .tit{
        font-size: 20px;
        letter-spacing: 2px;
    }
    .secMaintenanceMain .txt60{
        font-size: 35px;
    }
    .secMaintenanceMain .itemBox{
        margin-top: 46px;
    }
    .secMaintenanceMain .item{
        padding: 40px 15px 33px;
        box-shadow: 0 0 7px rgba(0, 0, 0, 0.1);
    }
    .secMaintenanceMain .itemBox .item:nth-child(1){
        padding: 41px 15px 39px;
        box-shadow: 0 0 7px rgba(0, 0, 0, 0.1);
    }
    .secMaintenanceMain .itemBox .item:nth-child(n+2){
        margin-top: 50px;
    }
    .secMaintenanceMain .numTxt{
        width: 50px;
        height: 50px;
        font-size: 20px;
        letter-spacing: 1px;
        top: -25px;
        padding-left: 3px;
        left: calc(50% - 25px);
    }
    .secMaintenanceMain .innerBox{
        height: auto;
        display: block;
    }
    .secMaintenanceMain .img{
        margin: 0 auto;
    }
    .secMaintenanceMain .itemBox .item:nth-child(2n) .img{
        position: relative;
    }
    .secMaintenanceMain .itemBox .item:nth-child(3) .img{
        width: 100%;
    }
    .secMaintenanceMain .txtBox{
        margin-left: 0;
    }
    .secMaintenanceMain .itemTit{
        font-size: 18px;
        line-height: 1.66;
        letter-spacing: 1px;
        margin-top: 15px;
    }
    .secMaintenanceMain .border{
        border-bottom: 1px solid #212329;
        padding-bottom: 5px;
    }
    .secMaintenanceMain .itemTxt{
        font-size: 12px;
        line-height: 2;
        margin-top: 17px;
        letter-spacing: 0.5px;
    }
    .secMaintenanceMain .itemBox .item:nth-child(1) .itemTxt{
        font-size: 12px;
        line-height: 2;
        margin-top: 14px;
        letter-spacing: 0.5px;
    }
    .secMaintenanceMain .subItemTxt{
        font-size: 11px;
        line-height: 1.81;
        margin-top: 5px;
        letter-spacing: 0px;
    }
    .secMaintenanceMain .tableBox{
        margin-top: 21px;
    }
    .secMaintenanceMain .tableTit{
        height: 49px;
        font-size: 15px;
        letter-spacing: 0.5px;
    }
    .secMaintenanceMain.heat .imgTable{
        margin: 15px auto;
    }
}
@media only screen and (max-width:359px){
    .secMaintenanceMain .itemTit{
        font-size: 16px;
       
    }
}

.secMaintenanceMain.heat .innerBox{
    height: auto;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(2n) .img{
    position: relative;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(2n) .innerBox{
    flex-direction: row-reverse;
    justify-content: space-between;
}
.secMaintenanceMain.heat .itemBox{
    margin-top: 101px;
}
.secMaintenanceMain.heat .txtBox{
    margin-left: 60px;
}
.secMaintenanceMain.heat .itemTopTxt{
    font-size: 18px;
    font-weight: bold;
    margin-top: 34px;
}
.secMaintenanceMain.heat .itemTxt{
    margin-top: 25px;
    letter-spacing: 0.5px;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(4) .itemTxt{
    margin-top: 8px;
}
.isDesktopIpad .secMaintenanceMain.heat .itemTxt{
    font-size: 14px;
    letter-spacing: 0px;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(2n) .itemTxt{
    max-width: 530px;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(2n+1) .itemTxt{
    max-width: 525px;
}
.secMaintenanceMain.heat .innerImg{
    margin-top: 49px;
    text-align: center;
}
.isDesktopIpad .secMaintenanceMain.heat .boxTxtInner{
    font-size: 13px;
    letter-spacing: 0px;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(3){
    padding-top: 76px;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(3) .txtBox{
    margin-left: 57px;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(3) .innerImg{
    margin-top: 51px;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(4) .img{
    margin-right: 0px;
}
.secMaintenanceMain.heat .itemTxt + .itemTopTxt{
    margin-top: 28px;
}

.secMaintenanceMain.heat .itemBox .item:nth-child(5) .itemTxt{
    max-width: none;
}
.secMaintenanceMain.heat .tableBox{
    margin-top: 50px;
}
.secMaintenanceMain.heat .innerImgBox{
    padding: 60px 131px 54px;
}
.secMaintenanceMain.heat .innerFlexImg{
    display: flex;
    justify-content: space-between;
}
.secMaintenanceMain.heat .txtWood{
    font-size: 15px;
    line-height: 2.1;
    margin-top: 23px;
    letter-spacing: 1px;
}
.secMaintenanceMain.heat .innerBox.bot{
    flex-direction: row-reverse;
    justify-content: space-between;
    margin-top: 50px;
}
.secMaintenanceMain.heat .innerBox.bot .txtBox{
    margin-left: 0;
    max-width: 530px;
}
.secMaintenanceMain.heat .innerBox.bot .itemTopTxt{
    margin-top: 0;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(7) .innerBox.bot{
    margin-top: 57px;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(7) .innerBox.bot .txtBox{
    max-width: 565px;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(7) .innerBox .itemTxt{
    max-width: 100%;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(8) .innerBox{
    flex-direction: unset;
}
.secMaintenanceMain.heat .itemBox .item:nth-child(8) .txtBox{
    margin-left: 53px;
}
@media only screen and (max-width:767px){
    .secMaintenanceMain.heat .item{
        padding: 41px 4% 40px;
    }
    .secMaintenanceMain.heat .itemBox{
        margin-top: 48px;
    }
    .secMaintenanceMain.heat .txtBox{
        margin-left: 0;
        
    }
    .secMaintenanceMain.heat .itemTopTxt{
        font-size: 14px;
        line-height: 1.71;
        margin-top: 18px;
        letter-spacing: -0.3px;
    }
    .secMaintenanceMain.heat .itemTxt{
        margin-top: 15px;
        letter-spacing: 0.3px;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(4) .itemTxt{
        margin-top: 0px;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(2n) .itemTxt{
        max-width: 100%;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(2n+1) .itemTxt{
        max-width: 100%;
    }
    .secMaintenanceMain.heat .innerImg{
        margin: 18px auto 0;
        width: 91.305%;
    }
    .secMaintenanceMain.heat .boxTxt{
        margin: 17px auto 0;
        width: 100%;
        padding: 10px 15px 10px;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(2) .boxTxt{
        padding-bottom: 15px;
        margin-top: 9px;
    }
    .secMaintenanceMain.heat .boxTxt::after{
        width: 69px;
        height: 68px;
        bottom: -8px;
        left: -22px;
    }
    .secMaintenanceMain.heat .boxTxt.bot::after{
        width: 69px;
        height: 75px;
        left: -22px;
    }
    .secMaintenanceMain.heat .boxTxtInner{
        font-size: 12px;
        line-height: 1.5;
        margin-left: 42px;
        letter-spacing: 0;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(3){
        padding-top: 40px;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(3) .txtBox{
        margin-left: 0;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(3) .innerImg{
        margin-top: 21px;
        width: 91.305%;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(4) .img{
        margin-right: 0;
    }
    .secMaintenanceMain.heat .itemTxt + .itemTopTxt{
        margin-top: 21px;
    }
    .secMaintenanceMain.heat .txtFlex{
        margin-top: 8px;
    }
    .secMaintenanceMain.heat .txtFlex .seraTxt:nth-child(n+2){
        margin-left: 18px;
    }
    .secMaintenanceMain.heat .txtFlex .seraTxt:nth-child(2){
        width: 98px;
    }
    .secMaintenanceMain.heat .dotTxt{
        font-size: 12px;
        margin-left: 4px;
    }
    .secMaintenanceMain.heat .tableBox{
        width: 100%;
        margin: 19px auto 0;
    }
    .secMaintenanceMain.heat .innerImgBox{
        padding: 20px 15px 14px;
    }
    .secMaintenanceMain.heat .innerFlexImg{
        display: block;
    }
    .secMaintenanceMain.heat .innerFlexImg .woodImg:nth-child(2){
        margin-top: 25px;
    }
    .secMaintenanceMain.heat .txtWood{
        font-size: 12px;
        line-height: 2;
        margin-top: 18px;
        letter-spacing: 0px;
    }
    .secMaintenanceMain.heat .innerBox.bot{
        margin-top: 21px;
    }
    .secMaintenanceMain.heat .innerBox.bot .txtBox{
        max-width: 100%;
    }
    .secMaintenanceMain.heat .innerBox.bot .itemTopTxt{
        margin-top: 15px;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(7) .innerBox.bot{
        margin-top: 8px;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(7) .innerBox.bot .txtBox{
        max-width: 100%;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(8) .txtBox{
        margin-left: 0;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(n+1) .img{
        width: 100%;
        margin: 0 auto;
    }
    .secMaintenanceMain.heat .itemBox .item:nth-child(2) .img {
        width: 100%;
    }
   
    .secMaintenanceMain .underTxt {
        margin-top: 2px;
        font-size: 11px;
        line-height: 1.55;
    }
}
@media only screen and (max-width:374px){
    .secMaintenanceMain.heat .itemTopTxt{
        font-size: 13px;
    }
}
@media only screen and (max-width:359px){
    .secMaintenanceMain .itemTit{
        letter-spacing: 0;
    }
    .secMaintenanceMain .underTxt {
        font-size: 10px;
    }
}

/* secStandard */
.secStandard{
    margin-top: 80px;
}
.secStandard .itemBox{
    margin-top: 50px;
    padding-bottom: 41px;
}
.secStandard .item{
    display: flex;
    align-items: center;
    position: relative;
}
.secStandard .itemBox .item:nth-child(n+2){
    margin-top: 81px;
}
.secStandard .itemBox .item:nth-child(2n){
    flex-direction: row-reverse;
    justify-content: space-between;

}
.secStandard .itemBox .item.img{
    justify-content: center;
}
.secStandard .innerImg{
    margin-top: -30px;
  text-align: center;
}
.secStandard .list{
    margin-top: 80px;
}
.secStandard .txtBox{
    margin-left: 63px;
}
.secStandard .itemBox .item:nth-child(2n) .txtBox{
    margin-left: 0;
    max-width: 560px;
}
.secStandard .itemTit{
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 1.5px;
}
.secStandard .itemTxt{
    font-size: 15px;
    line-height: 2.1;
    margin-top: 18px;
}
.isDesktopIpad .secStandard .itemTxt{
    font-size: 13px;
}
.secStandard .subTxt{
    font-size: 12px;
    margin-top: 15px;
    margin-left: 623px;
}

@media only screen and (max-width:767px){
    .secStandard{
        margin-top: 50px;
    }
    .secStandard .itemBox{
        margin-top: 24px;
        padding-bottom: 0;
    }
    .secStandard .item{
        display: block;
    }
    .secStandard .itemBox .item:nth-child(n+2){
        margin-top: 24px;
    }
    .secStandard .itemBox .item:nth-child(2n){
        padding-right: 0;
    }
    .secStandard .txtBox{
        margin-left: 0;
    }
    .secStandard .itemBox .item:nth-child(2n) .txtBox{
        max-width: 100%;
    }
    .secStandard .itemTit{
        font-size: 18px;
        margin-top: 20px;
    }
    .secStandard .itemTxt{
        font-size: 12px;
        line-height: 2;
        margin-top: 10px;
    }
    .secStandard .subTxt{
        font-size: 10px;
        line-height: 2;
        margin-top: 0;
        margin-left: 0;
    }
    .secStandard .innerImg{
        margin-top: -6px;
      }
      .secStandard .list{
          margin-top: 30px;
      }
}
@media only screen and (max-width:359px){
    .secStandard .itemTxt{
        font-size: 11px;
    }
    .secStandard .itemTit {
        font-size: 15px;
    }
}

/* -----------------------------------------------------------
      maintenance
----------------------------------------------------------- */

.secMaintenanceTop{
    position: relative;
    height: 600px;
    display: flex;
    align-items: center;
    color: #212329;
}
.secMaintenanceTop .bgTop {
    position: absolute;
    top: 0;
    left: calc(50% - 960px);
    z-index: -1;
}
.secMaintenanceTop .titEng{
    font-size: 40px;
    font-weight: 500;
    letter-spacing: 4px;
    margin-top: -30px;
}
.secMaintenanceTop .tit{
    font-size: 35px;
    font-weight: bold;
    letter-spacing: 2px;
    line-height: 1.5;
    margin-top: 17px;
}
.secMaintenanceTop .txt{
    font-size: 15px;
    line-height: 2.1;
    margin-top: 18px;
    letter-spacing: 1px;
}
.secMaintenanceTop .spanTxt{
    display: inline-block;
    font-size: 20px;
}
@media only screen and (max-width:767px){
    .bgmaintenance.maintenance{
        padding: 44px 0 50px;
    }
    .secMaintenanceTop{
        display: block;
        height: auto;
        background: #f8f8f4;
        padding-bottom: 43px;
        color: #212329;
    }
    .secMaintenanceTop .bgTop {
        position: relative;
        left: 0;
        z-index: 0;
    }
    .secMaintenanceTop .titEng{
        font-size: 20px;
        letter-spacing: 2px;
        margin-top: 28px;
        
    }
    .secMaintenanceTop .tit{
        font-size: 20px;
        letter-spacing: 0.5px;
        line-height: 1.5;
        margin-top: 8px;
    }
    .secMaintenanceTop .txt{
        font-size: 12px;
        line-height: 2;
        margin-top: 6px;
        letter-spacing: 0;
    }
    .secMaintenanceTop .spanTxt{
        font-size: 12px;
    }
}

.secMaintenanceMain .txt60{
    font-size: 60px;
    color: #2b8bbd;
    vertical-align: -3px;
}
@media only screen and (max-width: 767px){
    .secMaintenanceMain .txt60 {
        font-size: 35px;
    }
    .secMaintenanceMain.maintenance .imgTable{
        margin: 15px auto;
    }
    .secMaintenanceMain .imgTable img{
        padding:0 4%;
    }
    .secMaintenanceMain.maintenance .itemTit {
        font-size: 18px;
    }
}
@media only screen and (max-width: 359px){
    .secMaintenanceMain.maintenance .tableTit {
        font-size: 13px;
    }
}