@charset "utf-8";
.secCmnTopBox::after{
    content: "";
    position: absolute;
    width: 1308px;
    height: 1200px;
    left: calc(50% - 106px);
    top: 30px;
    background: url(../img/technology/structure/imgHeroitem.png) center top no-repeat;
    opacity: 0.25;
}
.secCmnTopBox::before{
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1000px;
    background-image: -moz-linear-gradient( 90deg, rgb(35,35,38) 0%, rgba(35,35,38,0) 100%);
    background-image: -webkit-linear-gradient( 90deg, rgb(35,35,38) 0%, rgba(35,35,38,0) 100%);
    background-image: -ms-linear-gradient( 90deg, rgb(35,35,38) 0%, rgba(35,35,38,0) 100%);
    z-index: 10;
}
@media screen and (max-width:767px){
    .secCmnTopBox::after{
        width: 546px;
        height: 501px;
        top: auto;
        bottom: calc(0% - 86px);
        left: 1px;
        background-size: 100% auto;
        opacity: 0.6;
    }
    .secCmnTopBox::before{
        height: calc(100% - 50px);
    }
}

/* secComparison */
.secComparison{
    padding-top: 133px;
    padding-bottom: 150px;
}
.secComparison .ComparisonBox{
    max-width: 1100px;
    margin: 0 auto;
    width: 100%;
    margin-top: 50px;
}
.secComparison .ComparisonBox .toparea{
    display: flex;
}
.secComparison .ComparisonBox .toparea .topbox{
    width: calc((100% - 100px) / 2);
    margin-right: 100px;
}
.secComparison .ComparisonBox .toparea .topbox:last-child{
    margin-right: 0;
}
.secComparison .topbox .boxIn{
    display: flex;
    align-items: center;
    width: 100%;
    height: 120px;
    border: 1px solid;
    border-color: #fff;
    background-color: #232326;
    color: #fff;
}
.secComparison .topbox.type_takano .boxIn{
    border-color: #e60012;
    background-color: #e60012;
}
.secComparison .toparea .topin{
    display: inline-block;
    width: 100%;
    text-align: center;
}
.secComparison .toparea .toptxt{
    font-size: 22px;
    line-height: calc(36 / 22);
    font-weight: 900;
    letter-spacing: 0.05em;
}
.secComparison .toparea .topsub{
    font-size: 12px;
    line-height: calc(20 / 12);
    margin-top: 10px;
    letter-spacing: 0.05em;
}
.secComparison .boxArea{
    width: 100%;
    position: relative;
    margin-top: 30px;
}
.secComparison .boxArea .boxtit{
    position: absolute;
    width: 90px;
    height: 90px;
    left: calc(50% - 45px);
    top: 0;
    border-radius: 50%;
    border: 1px solid;
    border-color:#656568;
    display: flex;
    align-items: center;
}
.secComparison .boxArea .boxtitIn{
    display: inline-block;
    width: 100%;
    text-align: center;
}
.secComparison .boxArea .b_tit{
    font-size: 14px;
    line-height: calc(22 / 14);
    font-weight: 900;
    text-align: center;
}
.secComparison .boxArea .list{
    display: flex;
}
.secComparison .boxArea .list .item{
    width: calc((100% - 100px) / 2);
    margin-right: 100px;
}
.secComparison .boxArea .list .item:last-child{
    margin-right: 0;
}
.secComparison .boxArea .itemin{
    display: flex;
    align-items: center;
    min-height: 90px;
}
.secComparison .boxArea .itemtxt{
    font-size: 18px;
    line-height: calc(36 / 18);
    display: inline-block;
    width: 100%;
    text-align: center;
    letter-spacing: 0.025em;
}
.secComparison .boxArea .ltxt{
    font-size: 38px;
    line-height: calc(40 / 38);
    padding: 0 5px;
}
.secComparison .boxArea .ltxt.num{
    font-size: 50px;
    line-height: calc(50 / 50);
}
.secComparison .boxArea .type_takano .ltxt{
    color: #42a61b;
}
.secComparison .pointtxt{
    font-size: 12px;
    line-height: calc(20 / 12);
    text-align: center;
    margin-top: 46px;
    letter-spacing: 0.05em;
}
.secComparison .underImg{
    width: 100%;
    margin: 0 auto;
    margin-top: 55px;
    max-width: 1100px;
}
@media screen and (max-width:767px){
    .secComparison{
        padding-top: calc(60px + 36px);
        padding-bottom: 70px;
    }
    .secComparison .ComparisonBox{
        max-width: 100%;
        margin-top: 34px;
    }
    .secComparison .ComparisonBox .toparea{
    }
    .secComparison .ComparisonBox .toparea .topbox{
        width: calc((100% - 10px) / 2);
        margin-right: 10px;
    }
    .secComparison .ComparisonBox .toparea .topbox:last-child{
        margin-right: 0;
    }
    .secComparison .topbox .boxIn{
        height: 60px;
    }
    .secComparison .toparea .toptxt{
        font-size: 11px;
        line-height: calc(20 / 11);
        letter-spacing: 0;
    }
    .secComparison .toparea .topsub{
        font-size: 9px;
        line-height: calc(12 / 9);
        margin-top: 5px;
        letter-spacing: 0;
    }
    .secComparison .boxArea{
        width: 100%;
        position: relative;
        margin-top: 11px;
    }
    .secComparison .boxArea + .boxArea{
        margin-top: 6px;
    }
    .secComparison .boxArea .boxtit{
        position: relative;
        width:100%;
        height: auto;
        left:0;
        border-radius: 0;
        border: none;
        display: block;
        text-align: center;
    }
    .secComparison .boxArea .boxtit::after{
        content: "";
        position: absolute;
        width: 100%;
        height: 1px;
        background-color: rgba(255,255,255,0.3);
        left: 0;
        top: calc(50% - 0.5px);
    }
    .secComparison .boxArea .boxtitIn{
        display: inline-block;
        width: auto;
        position: relative;
        padding: 0 20px;
        background-color: #232326;
        z-index: 5;
    }
    .secComparison .boxArea .b_tit{
        font-size: 11px;
        line-height: calc(22 / 11);
    }
    .secComparison .boxArea .list{
        margin-top: 3px;
    }
    .secComparison .boxArea .list .item{
        width:calc((100% - 1px) / 2);
        margin-right: 1px;
        position: relative;
    }
    .secComparison .boxArea .list .item:last-child{
        margin-right: 0;
    }
    .secComparison .boxArea .list .item:last-child::after{
        content: "";
        position: absolute;
        width: 1px;
        height: calc(100% - 10px);
        background-color: rgba(255, 255, 255, 0.3);
        top: 5px;
        left: calc(0% - 1px);
    }
    .secComparison .boxArea .itemin{
        display: flex;
        align-items: center;
        min-height: 0px;
    }
    .secComparison .boxArea .itemtxt{
        font-size: 11px;
        line-height: calc(18 / 11);
        letter-spacing: 0;
    }
    .secComparison .boxArea .ltxt{
        font-size: 20px;
        line-height: calc(22 / 20);
        padding: 0 5px;
    }
    .secComparison .boxArea .ltxt.num{
        font-size: 26px;
    }
    .secComparison .boxArea .type_takano .ltxt{
        color: #42a61b;
    }
    .secComparison .pointtxt{
        font-size: 9px;
        margin-top: 13px;
        letter-spacing: 0;
    }
    .secComparison .underImg{
        margin-top: 22px;
        max-width: 100%;
    }
}
@media screen and (max-width:767px){
    #Anchor01 .c_Nav.lazyloaded .navtitbox{
        background-image: url(../img/technology/structure/imgbgNavtit01.jpg);
    }
    #Anchor02 .c_Nav.lazyloaded .navtitbox{
        background-image: url(../img/technology/structure/imgbgNavtit02.jpg);
    }
    #Anchor03 .c_Nav.lazyloaded .navtitbox{
        background-image: url(../img/technology/structure/imgbgNavtit03.jpg);
    }
    #Anchor04 .c_Nav.lazyloaded .navtitbox{
        background-image: url(../img/technology/structure/imgbgNavtit04.jpg);
    }
}
/* ▼アニメーション */
.secComparison .boxArea.jsShow.delay01{
    transition-delay: 0.1s;
}
.secComparison .boxArea.jsShow.delay02{
    transition-delay: 0.3s;
}
.secComparison .boxArea.jsShow.delay03{
    transition-delay: 0.5s;
}
.secComparison .boxArea.jsShow.delay04{
    transition-delay: 0.7s;
}

/* secMargine */
.secMargine{
    padding-top: 133px;
    padding-bottom: 141px;
}
.secMargine .middletitbox{
    max-width: 800px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    width: 100%;
    height: 80px;
    border: 1px solid;
    border-color: #fff;
    margin-top: 67px;
}
.secMargine .middletitbox .m_inner{
    display: inline-block;
    width: 100%;
    text-align: center;
}
.secMargine .middletitbox .m_tit{
    font-size: 22px;
    line-height: calc(36 / 22);
    font-weight: 900;
}
.secMargine .subtxt{
    text-align: center;
    margin-top: 21px;
    font-size: 12px;
    line-height: calc(30 / 12);
}
/* secMargine */
.secMargine .MargineArea{
    margin-top: 52px;
}
.secMargine .graphArea{
    width: 100%;
    position: relative;
    border-bottom: 1px solid;
}
.secMargine .graphArea::after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(to right, rgba(255,255,255,0.3), rgba(255,255,255,0.3) 1px, transparent 1px, transparent 2px) left top / 2px 1px repeat-x;
}
.secMargine .graphArea .g_list{
    display: flex;
    align-items: flex-end;
    max-width: 620px;
    margin: 0 auto;
    height: 354px;
}
.secMargine .graphArea .g_Box{
    width: calc((100% - 180px) / 2);
    margin-right: 180px;
    position: relative;
    height: calc(100% - 92px);
}
.secMargine .graphArea .g_Box.type_takano{
    height: 100%;
}
.secMargine .graphArea .g_Box:last-child{
    margin-right: 0;
}
.secMargine .g_bgbox{
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    background-color: #fff;
}
.secMargine .g_Box.type_takano .g_bgbox{
    background-color: #e60012;
}
.secMargine .g_boxIn{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 10;
    color: #232323;
}
.secMargine .g_Box.type_takano .g_boxIn{
    color: #fff;
}
.secMargine .g_bInner{
    display: inline-block;
    width: 100%;
    text-align: center;
}
.secMargine .g_num{
    font-size: 66px;
    line-height: calc(66 / 66);
    font-weight: 900;
}
.secMargine .g_subtxt{
    font-size: 22px;
    line-height: calc(30 / 22);
    font-weight: 900;
    margin-top: 5px;
}
.secMargine .differencebox{
    width: 180px;
    height: 92px;
    position: absolute;
    left: calc(0% - 180px);
    top: 0;
    display: flex;
    align-items: center;
}
.secMargine .differencebox .bgbox{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid;
    border-color: #fff;
    border-left: none;
    border-right: none;
}
.secMargine.lazyloaded .differencebox .bgbox{
    background: url(../img/technology/structure/imgIconDifference01.png) center left no-repeat;
    background-size: 11px auto;
    background-position-x: 10px;
}
.secMargine .differencebox .d_inner{
    position: relative;
    z-index: 5;
    width: 100%;
    text-align: left;
    padding-left: 35px;
}
.secMargine .differencebox .dtit{
    font-size: 58px;
    line-height: 1;
    font-weight: 900;
    color: #42a61b;
}
@media screen and (max-width:767px){
    .secMargine{
        padding-top: calc(60px + 35px);
        padding-bottom: 64px;
    }
    .secMargine .middletitbox{
        max-width:100%;
        height: auto;
        min-height: 45px;
        margin-top: 35px;
    }
    .secMargine .middletitbox .m_tit{
        font-size: 11px;
        line-height: calc(20 / 11);
        padding: 5px 5px;
    }
    .secMargine .subtxt{
        margin-top: 15px;
        font-size: 10px;
        line-height: calc(20 / 10);
    }
    /* secMargine */
    .secMargine .MargineArea{
        margin-top: 25px;
    }
    .secMargine .graphArea .g_list{
        max-width:100%;
        width: calc(100% - 40px);
        height: 194px;
    }
    .secMargine .graphArea .g_Box{
        width: calc((100% - 80px) / 2);
        margin-right: 80px;
        position: relative;
        height: calc(100% - 62px);
    }
    .secMargine .g_num{
        font-size: 34px;
    }
    .secMargine .g_subtxt{
        font-size: 16px;
        line-height: calc(24 / 16);
        margin-top: 0;
    }
    .secMargine .differencebox{
        width: 80px;
        height: 62px;
        left: calc(0% - 80px);
    }
    .secMargine.lazyloaded .differencebox .bgbox{
        background-image: url(../img/technology/structure/imgIconDifference01_sp.png);
        background-size: 7px auto;
        background-position-x: 0;
    }
    .secMargine .differencebox .d_inner{
        padding-left: 13px;
    }
    .secMargine .differencebox .dtit{
        font-size: 28px;
    }
}

/* secMargine：txtArea */
.secMargine .txtArea{
    width: 100%;
    margin-top: 25px;
}
.secMargine .txtArea .txtlist{
    display: flex;
    max-width:calc(620px + 100px);
    margin: 0 auto;
}
.secMargine .itemtxt{
    width: calc((100% - 80px) / 2);
    text-align: center;
    color: #fff;
    margin-right: 80px;
}
.secMargine .itemtxt:last-child{
    margin-right: 0;
}
.secMargine .itemtxt .item_m_tit{
    font-size: 22px;
    line-height: calc(30 / 22);
    font-weight: 900;
    white-space: nowrap;
}
.secMargine .itemtxt .item_m_tit.type_takano{
    color: #e60012;
}
.secMargine .itemtxt .item_m_subtxt{
    font-size: 12px;
    line-height: calc(20 / 12);
    margin-top: 10px;
}
.secMargine .itemtxt .item_m_txt{
    font-size: 16px;
    line-height: calc(28 / 16);
    font-weight: 900;
    margin-top: 12px;
}
/* secMargine：undertxtbox */
.secMargine .undertxtbox{
    text-align: center;
    width: 100%;
    margin-top: 36px;
}
.secMargine .undertxtbox .undertxt{
    font-size: 18px;
    line-height: calc(36 / 18);
}
@media screen and (max-width:767px){
    .secMargine .txtArea{
        margin-top: 11px;
    }
    .secMargine .txtArea .txtlist{
        max-width:100%;
    }
    .secMargine .itemtxt{
        width: calc((100% - 40px) / 2);
        margin-right: 40px;
    }
    .secMargine .itemtxt:last-child{
        margin-right: 0;
    }
    .secMargine .itemtxt .item_m_tit{
        font-size: 11px;
        line-height: calc(20 / 11);
    }
    .secMargine .itemtxt .item_m_subtxt{
        font-size: 9px;
        line-height: calc(12 / 9);
        margin-top: 1px;
    }
    .secMargine .itemtxt .item_m_txt{
        font-size: 11px;
        line-height: calc(18 / 11);
        margin-top: 8px;
    }
    .secMargine .undertxtbox{
        margin-top: 11px;
    }
    .secMargine .undertxtbox .undertxt{
        font-size: 11px;
        line-height: calc(22 / 11);
    }
}


/* ▼secMargine：MargineArea 表示時のアニメーション */
.secMargine .MargineArea .g_bgbox{
    height: 0;
    transition: height 1s ease;
    overflow: hidden;
}
.secMargine .MargineArea.jsShow .g_bgbox{
    height: 100%;
}
.secMargine .MargineArea .g_bInner{
    opacity: 0;
    transition: opacity .4s ease;
}
.secMargine .MargineArea.jsShow .g_bInner{
    opacity: 1;
    transition-delay: 1s;
}

/* secMethod */
.secMethod{
    width: 100%;
    background-color: #fff;
    padding-top: 196px;
    padding-bottom: 86px;
}
@media screen and (min-width:768px){
    .secMethod.lazyloaded{
        background: url(../img/technology/structure/imgbgMethod.jpg) center top no-repeat #fff;
    }
}
.secMethod .topArea{
    width: 100%;
    margin-top: 50px;
}
.secMethod .topArea .imgtopLogo{
    width: 250px;
    margin: 0 auto;
}
.secMethod .topArea .toptxtArea{
    width: 100%;
    text-align: center;
    margin-top: 42px;
}
.secMethod .topArea .subtit{
    font-size:22px;
    line-height: calc(32 / 22);
    font-weight: 900;
}
.secMethod .topArea .numbox{
    text-align: center;
    margin-top: 0px;
}
.secMethod .topArea .txtnum{
    color: #42a61b;
    font-size: 50px;
    line-height: calc(70 / 50);
    font-weight: 900;
}
.secMethod .topArea .txtnum .num{
    font-size: 130px;
    line-height: calc(130 / 130);
    font-weight: 900;
    vertical-align: text-bottom;
}
.secMethod .topArea .txtnum_sub{
    font-size: 14px;
    line-height: calc(24 / 14);
    font-weight: 900;
    margin-top: 2px;
    letter-spacing: 0.05em;
}
.secMethod .middleArea{
    width: 100%;
    margin-top: 19px;
}
.secMethod .middleArea .middlebox{
    width: 100%;
    text-align: center;
}
.secMethod .middleArea .m_tit{
    font-size: 28px;
    line-height: calc(40 / 28);
    font-weight: 900;
}
.secMethod .middleArea .middletxtbox{
    width: 100%;
    text-align: center;
    margin-top: 32px;
}
.secMethod .middleArea .m_txt{
    font-size: 18px;
    line-height: calc(40 / 18);
    letter-spacing: 0.05em;
}
.secMethod .panelArea{
    width: 100%;
    max-width: calc(580px + 140px);
    margin: 0 auto;
    margin-top: 68px;
}
.secMethod .panelArea .panel_list{
    display: flex;
}
.secMethod .panelArea .panelItem{
    width: calc(100% / 2);
}
.secMethod .panelArea .imgBox{
    max-width: 100%;
    width: 220px;
    margin: 0 auto;
}
.secMethod .panelArea .txtbox{
    width: 100%;
    text-align: center;
    margin-top: 34px;
}
.secMethod .panelArea .p_tit{
    font-size: 22px;
    line-height: calc(36 / 22);
    font-weight: 900;
    letter-spacing: 0.05em;
}
.secMethod .panelArea .p_subtxt{
    font-size: 12px;
    line-height: calc(20 / 12);
    margin-top: 7px;
}
.secMethod .panelArea .p_numtxt{
    font-size: 26px;
    line-height: calc(36 / 26);
    font-weight: 900;
    margin-top: 14px;
    letter-spacing: 0.05em;
}
.secMethod .panelArea .p_numtxt .num{
    font-size: 65px;
    line-height: calc(65 / 65);
    vertical-align: sub;
    padding: 0 5px;
    letter-spacing: 0;
}
.secMethod .panelArea .type_takano .p_tit,
.secMethod .panelArea .type_takano .p_numtxt{
    color: #e60012;
}

/* secMethod：underArea */
.secMethod .underArea{
    max-width:800px;
    width: 100%;
    margin: 0 auto;
    background-color:#232326;
    color: #fff;
    padding: 40px;
    margin-top: 76px;
}
.secMethod .underArea .underInner{
    display: flex;
    align-items: center;
}
.secMethod .underArea .imgBox{
    width: 92px;
}
.secMethod .underArea .txtBox{
    width: calc(100% - 92px);
    padding-left: 40px;
}
.secMethod .underArea .u_tit{
    font-size: 20px;
    line-height: calc(30 / 20);
    font-weight: 900;
    letter-spacing: 0.075em;
}
.secMethod .underArea .u_txt{
    font-size: 16px;
    line-height: calc(32 / 16);
    margin-top: 11px;
}
@media screen and (max-width:767px){
    .secMethod{
        padding-top: 37px;
        padding-bottom: 59px;
    }
    .secMethod .topArea{
        margin-top: 17px;
    }
    .secMethod .topArea .imgtopLogo{
        width: 125px;
    }
    .secMethod .topArea .toptxtArea{
        margin-top: 14px;
    }
    .secMethod .topArea .subtit{
        font-size: 13px;
        line-height: calc(20 / 13);
    }
    .secMethod .topArea .numbox{
        text-align: center;
        margin-top: 0px;
    }
    .secMethod .topArea .txtnum{
        font-size: 30px;
        line-height: calc(30 / 50);
    }
    .secMethod .topArea .txtnum .num{
        font-size: 75px;
    }
    .secMethod .topArea .txtnum_sub{
        font-size: 11px;
        line-height: calc(20 / 11);
        margin-top: 2px;
        letter-spacing: 0;
    }
    .secMethod .middleArea{
        margin-top: 0;
    }
    .secMethod .middleArea .middlebox{
        width: 100%;
        text-align: center;
    }
    .secMethod .middleArea .m_tit{
        font-size: 16px;
        line-height: calc(32 / 16);
    }
    .secMethod .middleArea .middletxtbox{
        margin-top: 5px;
    }
    .secMethod .middleArea .m_txt{
        font-size: 13px;
        line-height: calc(24 / 13);
        letter-spacing: 0;
        text-align: left;
    }
    .secMethod .panelArea{
        max-width: 100%;
        margin-top: 34px;
    }
    .secMethod .panelArea .panel_list{
        display: flex;
    }
    .secMethod .panelArea .panelItem{
        width: calc(100% / 2);
    }
    .secMethod .panelArea .imgBox{
        max-width: 100%;
        width: 90px;
        margin: 0 auto;
    }
    .secMethod .panelArea .txtbox{
        margin-top: 11px;
    }
    .secMethod .panelArea .p_tit{
        font-size: 11px;
        line-height: calc(20 / 11);
        letter-spacing: 0;
    }
    .secMethod .panelArea .p_subtxt{
        font-size: 9px;
        line-height: calc(12 / 9);
        margin-top: 1px;
    }
    .secMethod .panelArea .p_numtxt{
        font-size: 13px;
        line-height: calc(30 / 13);
        margin-top: 5px;
        letter-spacing: 0;
    }
    .secMethod .panelArea .p_numtxt .num{
        font-size: 35px;
        vertical-align: sub;
        padding: 0 3px;
        letter-spacing: 0;
    }
    .secMethod .panelArea .type_takano .p_tit,
    .secMethod .panelArea .type_takano .p_numtxt{
        color: #e60012;
    }
    /* secMethod：underArea */
    .secMethod .underArea{
        max-width: 100%;
        padding: 20px;
        margin-top: 14px;
    }
    .secMethod .underArea .underInner{
    }
    .secMethod .underArea .imgBox{
        width: 54px;
    }
    .secMethod .underArea .txtBox{
        width: calc(100% - 54px);
        padding-left: 15px;
    }
    .secMethod .underArea .u_tit{
        font-size: 11px;
        line-height: calc(20 / 11);
        letter-spacing: 0.025em;
    }
    .secMethod .underArea .u_txt{
        font-size: 11px;
        line-height: calc(18 / 11);
        margin-top: 3px;
    }
}

/* secFloor */
.secFloor{
    padding-top: 110px;
    padding-bottom: 80px;
}
.secFloor .topArea{
    margin-top: 41px;
}
.secFloor .toptxtArea{
    width: 100%;
    text-align: center;
}
.secFloor .subtit{
    font-size: 22px;
    line-height: calc(36 / 22);
    font-weight: 900;
}
.secFloor .numbox{
    text-align: center;
    margin-top: 8px;
}
.secFloor .numbox .txtnum{
    font-size: 50px;
    line-height: calc(50 / 50);
    font-weight: 900;
    color: #42a61b;
}
.secFloor .numbox .num{
    font-size: 120px;
    line-height: calc(120 / 120);
    vertical-align: sub;
    padding: 0 5px;
}
.secFloor .middleArea{
    margin-top: 14px;
    width: 100%;
}
.secFloor .middleArea .middlebox{
    width: 100%;
    text-align: center;
}
.secFloor .middleArea .m_tit{
    font-size: 28px;
    line-height: calc(40 / 28);
    font-weight: 900;
}
.secFloor .middleArea .middletxtbox{
    width: 100%;
    text-align: center;
    margin-top: 32px;
}
.secFloor .middleArea .m_txt{
    font-size: 18px;
    line-height: calc(40 / 18);
    letter-spacing: 0.05em;
}
.secFloor .underImg{
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    margin-top: 68px;
}
@media screen and (max-width:767px){
    .secFloor{
        padding-top: calc(60px + 35px);
        padding-bottom: 59px;
    }
    .secFloor .topArea{
        margin-top: 15px;
    }
    .secFloor .toptxtArea{
        width: 100%;
        text-align: center;
    }
    .secFloor .subtit{
        font-size: 13px;
        line-height: calc(20 / 13);
    }
    .secFloor .numbox{
        text-align: center;
        margin-top: 0px;
    }
    .secFloor .numbox .txtnum{
        font-size: 30px;
        line-height: calc(30 / 50);
    }
    .secFloor .numbox .num{
        font-size: 75px;
    }
    .secFloor .middleArea{
        margin-top: 0px;
    }
    .secFloor .middleArea .m_tit{
        font-size: 16px;
        line-height: calc(32 / 16);
    }
    .secFloor .middleArea .middletxtbox{
        margin-top: 5px;
        text-align: left;
    }
    .secFloor .middleArea .m_txt{
        font-size: 13px;
        line-height: calc(24 / 13);
        letter-spacing: 0;
    }
    .secFloor .underImg{
        max-width:100%;
        margin-top: 20px;
    }
}
/* secSurface */
.secSurface{
    padding-top: 116px;
    padding-bottom: 145px;
}
.secSurface .s_titbox{
    text-align: center;
    margin-top: 67px;
}
.secSurface .s_titbox .s_imgtit{
    display: inline-block;
    width: 64px;
    vertical-align: bottom;
}
.secSurface .s_titbox .s_tit{
    font-size: 50px;
    line-height: calc(60 / 50);
    font-weight: 900;
    display: inline-block;
    padding-left: 10px;
}
.secSurface .s_listbox{
    width: 100%;
    max-width:calc((380px * 2) + 36px);
    margin: 0 auto;
    margin-top: 60px;
}
.secSurface .s_listbox .s_list{
    display: flex;
}
.secSurface .s_listbox .s_item{
    width: calc((100% - 36px) / 2);
    margin-right: 36px;
    position: relative;
}
.secSurface .s_listbox .s_item:last-child{
    margin-right: 0;
}
.secSurface .s_listbox .s_item:last-child::after,
.secSurface .s_listbox .s_item:last-child::before{
    content: "";
    position: absolute;
    width: 36px;
    height:8px;
    background-color: #232323;
    left: calc(0% - 36px);
    top: calc((224px / 2) - 10px);
}
.secSurface .s_listbox .s_item:last-child::after{
    transform: rotate(90deg);
}
.secSurface .s_listbox .s_item .imgBox{
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
}
.secSurface .s_listbox .s_item .txtbox{
    text-align: center;
    margin-top: 30px;
}
.secSurface .s_listbox .s_item .itemtit{
    font-size: 22px;
    line-height: calc(30 / 22);
    font-weight: 900;
}
.secSurface .s_listbox .s_item .itemtxt{
    font-size: 16px;
    line-height: calc(30 / 16);
    margin-top: 16px;
}
@media screen and (max-width:767px){
    .secSurface{
        padding-top: calc(60px + 35px);
        padding-bottom: 66px;
    }
    .secSurface .s_titbox{
        margin-top: 18px;
    }
    .secSurface .s_titbox .s_imgtit{
        width: 20px;
    }
    .secSurface .s_titbox .s_tit{
        font-size: 16px;
        padding-left: 5px;
        letter-spacing: 0;
    }
    .secSurface .s_listbox{
        max-width:calc(((114px + 40px) * 2) + 15px);
        margin-top: 20px;
    }
    .secSurface .s_listbox .s_item{
        width: calc((100% - 15px) / 2);
        margin-right: 15px;
    }
    .secSurface .s_listbox .s_item:last-child{
        margin-right: 0;
    }
    .secSurface .s_listbox .s_item:last-child::after,
    .secSurface .s_listbox .s_item:last-child::before{
        width: 15px;
        height:3px;
        left: calc(0% - 15px);
        top: calc((85px / 2) - 6px);
    }
    .secSurface .s_listbox .s_item .imgBox{
        max-width: 114px;
    }
    .secSurface .s_listbox .s_item .txtbox{
        margin-top: 10px;
    }
    .secSurface .s_listbox .s_item .itemtit{
        font-size: 11px;
        line-height: calc(18 / 11);
    }
    .secSurface .s_listbox .s_item .itemtxt{
        font-size: 11px;
        line-height: calc(18 / 11);
        margin-top: 5px;
    }
}

/* secEvoltz */
.secEvoltz{
    position: relative;
    background-color: #232326;
    padding-top: 135px;
    padding-bottom: 150px;
}
.secEvoltz .evolist{
    width: 100%;
    max-width: calc((352px * 2) + 110px);
    margin: 0 auto;
    position: relative;
    display: flex;
    margin-top: 69px;
}

/* evolistが jsHide→jsShow になったタイミングで、内部のdelay01〜03を0.5秒刻みで表示 */
.secEvoltz .evolist .delay01,
.secEvoltz .evolist .delay02,
.secEvoltz .evolist .delay03{
    transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.secEvoltz .evolist.jsHide:not(.jsShow) .delay01,
.secEvoltz .evolist.jsHide:not(.jsShow) .delay02,
.secEvoltz .evolist.jsHide:not(.jsShow) .delay03{
    opacity: 0;
    transform: translate(0px, 50px);
}
.secEvoltz .evolist.jsShow .delay01{
    transition-delay: 0s;
    opacity: 1;
    transform: translate(0px, 0px);
}
.secEvoltz .evolist.jsShow .delay02{
    transition-delay: 0.5s;
    opacity: 1;
    transform: translate(0px, 0px);
}
.secEvoltz .evolist.jsShow .delay03{
    transition-delay: 1s;
    opacity: 1;
    transform: translate(0px, 0px);
}

.secEvoltz .evolist .evoItem{
    width: calc((100% - 110px) / 2);
}
.secEvoltz .evoItem +.evoItem{
    margin-left: 110px;
}
.secEvoltz .evoItem .imgBox{
    width: 100%;
    max-width: 352px;
    margin: 0 auto;
}
.secEvoltz .txtbox{
    text-align: center;
    margin-top: 23px;
}
.secEvoltz .e_tit{
    font-size: 30px;
    line-height: calc(40 / 30);
    font-weight: 900;
    letter-spacing: 0.2em;
}
.secEvoltz .e_txt{
    font-size: 18px;
    line-height: calc(30 / 18);
    margin-top: 10px;
}
.secEvoltz .logobox{
    display: inline-block;
    margin: 0 auto;
}
.secEvoltz .evoItem:nth-child(1) .logobox{
    max-width: 138px;
    margin-top: 19px;
}
.secEvoltz .evoItem:nth-child(2) .logobox{
    max-width: 168px;
    margin-top: 27px;
}
.secEvoltz .clossbox{
    position: absolute;
    width: 50px;
    height: 50px;
    left: calc(50% - 25px);
    top: calc((230px / 2) - 25px);
}
.secEvoltz .clossbox::before,
.secEvoltz .clossbox::after{
    content: "";
    position: absolute;
    width: 55px;
    height: 1px;
    left: calc(50% - 27.5px);
    top: calc(50% - 0.5px);
    background-color: #fff;
}
.secEvoltz .clossbox::before{
    transform: rotate(45deg);
}
.secEvoltz .clossbox::after{
    transform: rotate(-45deg);
}
.secEvoltz .graphbox{
    width: 100%;
    margin-top: 60px;
}
.secEvoltz .graphbox .g_titbox{
    display: flex;
    align-items: center;
    width: 100%;
    height: 80px;
    border: 1px solid;
    border-color: #fff;
}
.secEvoltz .graphbox .g_inner{
    display: inline-block;
    width: 100%;
    text-align: center;
}
.secEvoltz .graphbox .g_tit{
    font-size: 22px;
    line-height: calc(30 / 22);
    font-weight: 900;
    letter-spacing: 0.05em;
}
.secEvoltz .graphbox .graphImg{
    width: 100%;
    margin-top: 40px;
    position: relative;
}
.secEvoltz .graphbox .pcItem{
    display: none;
    position: absolute;
    width: 52px;
    height: 0;
    right: 35px;
    bottom: 10px;
    overflow: hidden;
    transition: height 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.secEvoltz .graphbox .graphImg.jsShow .pcItem{
    height: 328px;
}
@media screen and (min-width:768px){
    .secEvoltz.lazyloaded{
        background: url(../img/technology/structure/bgEvoltz.jpg) center top no-repeat #232326;
    }
    .secEvoltz .graphbox .pcItem{
        display: block;
    }
    @media screen and (max-width:1480px){
        .secEvoltz .graphbox{
            width: calc(100% - 80px);
        }
    }
}
@media screen and (max-width:767px){
    #Anchor03 .secNavbox .navlinklist .item,
    #Anchor04 .secNavbox .navlinklist .item{
        width: calc((100% - 1px) / 2);
    }
    .secEvoltz{
        padding-top: 34px;
        padding-bottom: 69px;
    }
    .secEvoltz .evolist{
        max-width: 100%;
        margin-top: 33px;
    }
    .secEvoltz .evolist .evoItem{
        width: calc((100% - 20px) / 2);
    }
    .secEvoltz .evoItem +.evoItem{
        margin-left: 20px;
    }
    .secEvoltz .evoItem .imgBox{
        width: 100%;
        max-width: 157px;
        margin: 0 auto;
    }
    .secEvoltz .txtbox{
        margin-top: 11px;
    }
    .secEvoltz .e_tit{
        font-size: 16px;
    }
    .secEvoltz .e_txt{
        font-size: 13px;
        margin-top: 3px;
    }
    .secEvoltz .logobox{
        display: inline-block;
        margin: 0 auto;
    }
    .secEvoltz .evoItem:nth-child(1) .logobox{
        max-width: 58px;
        margin-top: 12px;
    }
    .secEvoltz .evoItem:nth-child(2) .logobox{
        max-width: 71px;
        margin-top: 14px;
    }
    .secEvoltz .clossbox{
        position: absolute;
        width: 30px;
        height: 30px;
        left: calc(50% - 15px);
        top: calc((102px / 2) - 15px);
    }
    .secEvoltz .clossbox::before,
    .secEvoltz .clossbox::after{
        width: 30px;
        left: calc(50% - 15px);
    }
    .secEvoltz .clossbox::before{
        transform: rotate(45deg);
    }
    .secEvoltz .clossbox::after{
        transform: rotate(-45deg);
    }
    .secEvoltz .graphbox{
        width: 100%;
        margin-top: 39px;
    }
    .secEvoltz .graphbox .g_titbox{
        display: flex;
        align-items: center;
        width: 100%;
        height: 45px;
        border: 1px solid;
        border-color: #fff;
    }
    .secEvoltz .graphbox .g_inner{
        display: inline-block;
        width: 100%;
        text-align: center;
    }
    .secEvoltz .graphbox .g_tit{
        font-size: 11px;
        line-height: calc(20 / 11);
        letter-spacing: 0;
    }
    .secEvoltz .graphbox .graphImg{
        width: 100%;
        margin-top: 21px;
        position: relative;
        overflow-x: scroll;
        overflow-y: hidden;
    }
    .secEvoltz .graphbox .graphImg img{
        width: calc(466 / 375 * 100vw);
        height: auto;
    }

    /* psItem */
    .psItem .ps__rail-x{
        opacity: 1 !important;
        background: #000000 !important;
        border-radius: 3px;
        overflow: hidden;
        margin-top: 20px;
        position: relative!important;
    }
    .psItem .ps__thumb-x{
        background: rgba(255,255,255,0.3) !important;
        bottom: 0 !important;
    }
    .psItem .ps__rail-x,
    .psItem .ps__thumb-x{
        height: 3px !important;
    }
    .psItem .ps__rail-y,
    .psItem .ps__thumb-y{
        display: none !important;
    }
}

/* secControl */
.secControl{
    padding-top: 149px;
    padding-bottom: 150px;
}
.secControl .controlArea{
    text-align: center;
    width: 100%;
    margin-top: 44px;
}
.secControl .c_subtit{
    font-size: 22px;
    line-height: calc(30 / 22);
    font-weight: 900;
}
.secControl .c_numtxt{
    font-size: 65px;
    line-height: calc(75 / 65);
    font-weight: 900;
    color: #42a61b;
    margin-top: 3px;
}
.secControl .c_numtxt .num{
    font-size: 130px;
    line-height: calc(140 / 140);
    vertical-align: -6px;
}
.secControl .c_subtxt{
    font-size: 28px;
    line-height: calc(40 / 28);
    font-weight: 900;
    margin-top: 13px;
}
.secControl .c_txt{
    font-size: 18px;
    line-height: calc(40 / 18);
    margin-top: 31px;
    letter-spacing: 0.025em;
}
.secControl .movielist{
    max-width: 800px;
    width: 100%;
    margin: 0 auto;
    margin-top: 60px;
}
.secControl .movielist .movieItem{
    width: 100%;
}
.secControl .movielist .movieItem + .movieItem{
    margin-top: 80px;
}
.secControl .movielist .movieItem .m_titbox{
    width: 100%;
    height: 80px;
    border: 1px solid;
    border-color: #fff;
    display: flex;
    align-items: center;
}
.secControl .movielist .movieItem .m_titIn{
    width: 100%;
    text-align: center;
    display: inline-block;
}
.secControl .movielist .movieItem .m_tit{
    font-size: 22px;
    line-height: calc(30 / 22);
    font-weight: 900;
    letter-spacing: 0.05em;
}
.secControl .movielist .iflemebox{
    width: 100%;
    position: relative;
    height: 0;
    padding-top:450px;
    margin-top: 30px
}
.secControl .movielist .iflemebox iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.secControl .movielist .iflemebox.inLink{
    padding: 0;
    height: auto;
}
.secControl .movielist #lightcaseLink02{
    display: block;
    width: 100%;
    height: 0;
    padding-top: 450px;
    position: relative;
}
.secControl .movielist #lightcaseLink02 img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media screen and (max-width:767px){
    #Anchor03_nav.secAnchorNav .navItem,
    #Anchor04_nav.secAnchorNav .navItem{
        width: calc((100% - 1px) / 2);
    }
    .secControl{
        padding-top: calc(60px + 20px);
        padding-bottom: 70px;
    }
    .secControl .controlArea{
        margin-top: 15px;
    }
    .secControl .c_subtit{
        font-size: 13px;
        line-height: calc(20 / 13);
    }
    .secControl .c_numtxt{
        font-size: 28px;
        line-height: calc(40 / 28);
        margin-top: 2px;
    }
    .secControl .c_numtxt .num{
        font-size: 72px;
        vertical-align: -5px;
    }
    .secControl .c_subtxt{
        font-size: 16px;
        line-height: calc(26 / 16);
        margin-top: 4px;
    }
    .secControl .c_txt{
        font-size: 13px;
        line-height: calc(24 / 13);
        text-align: left;
        width: 100%;
        margin-top: 9px;
        letter-spacing: 0;
    }
    .secControl .movielist{
        max-width: 100%;
        margin-top: 34px;
    }
    .secControl .movielist .movieItem + .movieItem{
        margin-top: 25px;
    }
    .secControl .movielist .movieItem .m_titbox{
        height: 45px;
    }
    .secControl .movielist .movieItem .m_tit{
        font-size: 11px;
        line-height: calc(20 / 11);
        letter-spacing: 0;
    }
    .secControl .movielist .iflemebox{
        padding-top:calc(188 / 335 * 100%);
        margin-top: 10px
    }
    .secControl .movielist .iflemebox.inLink{
        padding: 0;
        height: auto;
    }
    .secControl .movielist #lightcaseLink02{
        padding-top:calc(188 / 335 * 100%);
    }
}

video{
    max-width: 1200px !important;
    max-height: 80vh !important;
    height: auto !important;
    width: 80vw !important;
}

/* secDensity */
.secDensity{
    padding-top: 133px;
    padding-bottom: 50px;
}
.secDensity .densitybox{
    text-align: center;
    margin-top: 43px;
}
.secDensity .d_tit{
    font-size: 22px;
    line-height: calc(30 / 22);
    font-weight: 900;
}
.secDensity .d_listbox{
    max-width: 100%;
    margin-top: 46px;
}
.secDensity .d_listbox .d_list{
    display: flex;
    justify-content: center;
    max-width: 1000px;
    margin: 0 auto;
}
.secDensity .d_listbox .d_Item{
    width: calc((100% - 260px) / 2);
    position: relative;
}
.secDensity .d_listbox .d_Item + .d_Item{
    margin-left: 260px;
}
.secDensity .d_listbox .d_Item + .d_Item::after{
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    background-color:#232326;
    top: 0;
    left: calc(0% - 130px);
}
.secDensity .d_listbox .d_inner{
    text-align: center;
}
.secDensity .d_listbox .d_subtit{
    font-size: 22px;
    line-height: 1;
    color: #42a61b;
    font-weight: 900;
}
.secDensity .d_listbox .d_numtxt{
    font-size: 50px;
    line-height: calc(70 / 50);
    font-weight: 900;
    color: #42a61b;
    margin-top: 18px;
}
.secDensity .d_listbox .d_numtxt .num{
    font-size: 130px;
    line-height: calc(130 / 130);
    vertical-align: -12px;
}
.secDensity .d_listbox .d_txt{
    font-size: 16px;
    line-height: calc(34 / 16);
    margin-top: 20px;
    letter-spacing: 0.05em;
}
.secDensity .densityImgbox{
    margin-top: 71px;
}
@media screen and (min-width:768px){
    .secDensity.lazyloaded{
        background: url(../img/technology/structure/imgbgDensity.jpg) center top no-repeat #fff;
    }
}
@media screen and (max-width:767px){
    .secDensity{
        padding-top: 33px;
        padding-bottom: 40px;
    }
    .secDensity .densitybox{
        text-align: center;
        margin-top: 15px;
    }
    .secDensity .d_tit{
        font-size: 13px;
        line-height: calc(20 / 13);
    }
    .secDensity .d_listbox{
        margin-top: 19px;
    }
    .secDensity .d_listbox .d_list{
        max-width: 100%;
    }
    .secDensity .d_listbox .d_Item{
        width: calc((100% - 40px) / 2);
    }
    .secDensity .d_listbox .d_Item + .d_Item{
        margin-left: 40px;
    }
    .secDensity .d_listbox .d_Item + .d_Item::after{
        left: calc(0% - 20px);
    }
    .secDensity .d_listbox .d_subtit{
        font-size: 13px;
    }
    .secDensity .d_listbox .d_numtxt{
        font-size: 22px;
        line-height: calc(30 / 22);
        margin-top: 7px;
    }
    .secDensity .d_listbox .d_numtxt .num{
        font-size: 43px;
        vertical-align: -1px;
    }
    .secDensity .d_listbox .d_txt{
        font-size: 11px;
        line-height: calc(18 / 11);
        margin-top: 8px;
        letter-spacing: 0;
        text-align: left;
    }
    .secDensity .densityImgbox{
        margin-top: 18px;
    }
}
/* secGround */
.secGround{
    padding-top: 133px;
    padding-bottom: 141px;
}
.secGround .ComparisonBox{
    max-width: 1100px;
    margin: 0 auto;
    width: 100%;
    margin-top: 67px;
}
.secGround .toparea{
    display: flex;
}
.secGround .topbox{
    width: calc((100% - 100px) / 2);
    margin-right: 100px;
}
.secGround .topbox:last-child{
    margin-right: 0;
}
.secGround .topbox .boxIn{
    display: flex;
    align-items: center;
    width: 100%;
    height: 80px;
    border: 1px solid;
    border-color: #232326;
    background-color: #fff;
    color: #232326;
}
.secGround .topbox.type_takano .boxIn{
    border-color: #e60012;
    background-color: #e60012;
    color: #fff;
}
.secGround .toparea .topin{
    display: inline-block;
    width: 100%;
    text-align: center;
}
.secGround .ComparisonBox .toptxt{
    font-size: 22px;
    line-height: calc(36 / 22);
    font-weight: 900;
    letter-spacing: 0.05em;
}
.secGround .boxArea{
    width: 100%;
    position: relative;
    margin-top: 30px;
}
.secGround .boxArea + .boxArea{
    margin-top: 30px;
}
.secGround .boxArea .boxtit{
    position: absolute;
    width: 90px;
    height: 90px;
    left: calc(50% - 45px);
    top: 0;
    border-radius: 50%;
    border: 1px solid;
    border-color: #232326;
    background-color: #232326;
    color: #fff;
    display: flex;
    align-items: center;
}
.secGround .boxArea .boxtitIn{
    display: inline-block;
    width: 100%;
    text-align: center;
}
.secGround .boxArea .b_tit{
    font-size: 14px;
    line-height: calc(22 / 14);
    font-weight: 900;
}
.secGround .boxArea .list{
    display: flex;
}
.secGround .boxArea .list .item{
    width: calc((100% - 100px) / 2);
    margin-right: 100px;
}
.secGround .boxArea .list .item:last-child{
    margin-right: 0;
}
.secGround .boxArea .itemin{
    display: flex;
    align-items: center;
    min-height: 90px;
}
.secGround .boxArea .itemtxt{
    font-size: 18px;
    line-height: calc(30 / 18);
    display: inline-block;
    width: 100%;
    text-align: center;
    letter-spacing: 0.025em;
}
/* ▼アニメーション */
.secGround .boxArea.jsShow.delay01{
    transition-delay: 0.1s;
}
.secGround .boxArea.jsShow.delay02{
    transition-delay: 0.3s;
}
.secGround .boxArea.jsShow.delay03{
    transition-delay: 0.5s;
}
.secGround .boxArea.jsShow.delay04{
    transition-delay: 0.7s;
}
.secGround .boxArea.jsShow.delay05{
    transition-delay: 0.9s;
}
@media screen and (max-width:767px){
    .secGround{
        padding-top: calc(60px + 35px);
        padding-bottom: 96px;
    }
    .secGround .ComparisonBox{
        max-width: 100%;
        margin-top: 34px;
    }
    .secGround .topbox{
        width: calc((100% - 10px) / 2);
        margin-right: 10px;
    }
    .secGround .topbox:last-child{
        margin-right: 0;
    }
    .secGround .topbox .boxIn{
        height: 45px;
    }
    .secGround .boxArea{
        margin-top: 11px;
    }
    .secGround .boxArea + .boxArea {
        margin-top: 9px;
    }
    .secGround .ComparisonBox .toptxt{
        font-size: 11px;
        line-height: calc(20 / 11);
        letter-spacing: 0;
    }
    .secGround .boxArea .boxtit{
        position: relative;
        width: 100%;
        height: auto;
        left: 0;
        border-radius: 0;
        border: none;
        display: block;
        text-align: center;
        background: #fff;
    }
    .secGround .boxArea .boxtit::after{
        content: "";
        position: absolute;
        width: 100%;
        height: 1px;
        background-color: rgba(35, 35, 35, 0.3);
        left: 0;
        top: calc(50% - 0.5px);
    }
    .secGround .boxArea .boxtitIn{
        display: inline-block;
        width: auto;
        position: relative;
        padding: 0 20px;
        background-color: #fff;
        color: #232326;
        z-index: 5;
        text-align: center;
    }
    .secGround .boxArea .b_tit{
        font-size: 11px;
        line-height: calc(20 / 11);
        letter-spacing: 0;
    }
    .secGround .boxArea .list{
        margin-top: 3px;
    }
    .secGround .boxArea .list .item{
        width:calc((100% - 1px) / 2);
        margin-right: 1px;
        position: relative;
    }
    .secGround .boxArea .list .item:last-child{
        margin-right: 0;
    }
    .secGround .boxArea .list .item:last-child::after{
        content: "";
        position: absolute;
        width: 1px;
        height: calc(100% - 10px);
        background-color: rgba(35, 35, 35, 0.3);
        top: 5px;
        left: calc(0% - 1px);
    }
    .secGround .boxArea .itemin{
        min-height: 0;
        height: 100%;
    }
    .secGround .boxArea .itemtxt{
        font-size: 10px;
        line-height: calc(18 / 10);
        letter-spacing: 0;
    }
}

/* secTaishin */
.secTaishin{
    background-color:#232326;
    color: #fff;
    padding-top: 181px;
    padding-bottom: 167px;
}
@media screen and (min-width:768px){
    .secTaishin.lazyloaded{
        background: url(../img/technology/structure/imgbgTaishin.jpg) center top no-repeat #232326;
    }
}
.secTaishin .taidhinImgbox{
    max-width: 800px;
    margin: 0 auto;
    position: relative;
    margin-top: 67px;
}
.secTaishin .taidhinImgbox .taishintitbox{
    position: absolute;
    display: inline-block;
    top: calc(0% + 77px);
    left: calc(0% - 88px);
}
.secTaishin .taishintitbox .titin{
    position: relative;
    padding-left: calc(51px + 18px);
}
.secTaishin .taishintitbox .titin::before{
    content: "";
    position: absolute;
    width: 51px;
    height: 64px;
    left: 0;
    top: calc(50% - 32px);
}
.secTaishin.lazyloaded .taishintitbox .titin::before{
    background: url(../img/technology/structure/imgIconTaishin01.png) center center no-repeat;
    background-size: 100% auto;
}
.secTaishin .taishintitbox .subtit{
    font-size: 16px;
    line-height: calc(28 / 16);
    font-weight: 900;
    text-align: left;
    letter-spacing: 0.075em;
}
.secTaishin .taidhinImgbox .taishintitbox .titin{
    text-align: center;
}
.secTaishin .txtItem{
    display: inline-block;
    position: absolute;
}
.secTaishin .txtItem .iconbox{
    position: absolute;
    width:12px;
    height: 12px;
    left: 0;
    top: calc(50% - 6px);
    border-radius: 50%;
    background-color: #42a61b;
    z-index: 5;
}
.secTaishin .txtItem .txtbox{
    display: inline-block;
    text-align: left;
    position: absolute;
    left: 0;
    bottom: 0;
    white-space: nowrap;
    opacity: 0;
    transition: 1s;
    transition-delay: 2s;
}
.secTaishin .txtItem .txt{
    font-size: 16px;
    line-height: calc(30 / 16);
    font-weight: 900;
    color: #fff;
    letter-spacing: 0.05em;
}
.secTaishin.line-anim-start .txtItem .txtbox{
    opacity: 1;
}
.secTaishin .line{
    position: absolute;
    background-color: #fff;
    height: 1px;
    transform: scaleX(0);
    transform-origin: left;
}
.secTaishin .line.type_right{
    transform: scaleX(0);
    transform-origin: right;
}
.secTaishin .line.va_horizontal{
    transform: scaleY(0);
    transform-origin: bottom;
}
.secTaishin .line.va_horizontal_top{
    transform: scaleY(0);
    transform-origin: top;
}
.secTaishin.line-anim-start .line{
    animation: lineGrow 1s ease forwards;
}
.secTaishin.line-anim-start .line.va_horizontal,
.secTaishin.line-anim-start .line.va_horizontal_top{
    animation: lineGrowVertical 1s ease forwards;
}
/* アニメーション */
@keyframes lineGrow {
    to {
        transform: scaleX(1);
    }
}
@keyframes lineGrowVertical {
    to {
        transform: scaleY(1);
    }
}
/* ▼taishin_01 */
.secTaishin .txtItem#taishin_01{
    top: calc(0% + 209px);
    right: calc(50% - 202px);
}
.secTaishin.line-anim-start .line.line01_01{
    width: 1px;
    height: 38px;
    bottom: calc(0% + 12px);
    left: calc(50% - 0.5px);
    animation: lineGrow 0.8s ease forwards;
    animation-delay: 0.4s;
}
.secTaishin.line-anim-start .line.line01_02{
    width: 150px;
    bottom: calc(0% + 10px + 40px);
    left: calc(50% - 0px);
    animation: lineGrow 0.8s ease forwards;
    animation-delay: 1.2s;
}
.secTaishin .txtItem#taishin_01 .txtbox{
    padding-bottom: 30px;
    padding-left: calc(150px + 15px);
}

/* ▼taishin_02 */
.secTaishin .txtItem#taishin_02{
    top: calc(0% + 327px);
    right: calc(50% - 202px);
}
.secTaishin.line-anim-start .line.line02_01{
    width: 1px;
    height: 38px;
    bottom: calc(0% + 12px);
    left: calc(50% - 0.5px);
    animation: lineGrow 0.8s ease forwards;
    animation-delay: 0.4s;
}
.secTaishin.line-anim-start .line.line02_02{
    width: 150px;
    bottom: calc(0% + 10px + 40px);
    left: calc(50% - 0px);
    animation: lineGrow 0.8s ease forwards;
    animation-delay: 1.2s;
}
.secTaishin .txtItem#taishin_02 .txtbox{
    padding-bottom: 30px;
    padding-left: calc(150px + 15px);
}

/* ▼taishin_03 */
.secTaishin .txtItem#taishin_03{
    bottom: calc(0% - 9px);
    right: calc(50% + 55px);
}
.secTaishin.line-anim-start .line.line03_01{
    width: 343px;
    height: 1px;
    bottom: calc(50% - 0.5px);
    left: calc(0% + 12px);
    animation: lineGrow 1.6s ease forwards;
    animation-delay: 0.4s;
}
.secTaishin .txtItem#taishin_03 .txtbox{
    padding-left: calc(348px + 15px);
    bottom: calc(0% - 15px);
}

/* ▼taishin_04 */
.secTaishin .txtItem#taishin_04{
    bottom: calc(0% + 37px);
    left: calc(50% - 268px);
}
.secTaishin.line-anim-start .line.line04_01{
    width: 180px;
    height: 1px;
    right: calc(0% + 12px);
    bottom: calc(0% + 6px);
    animation: lineGrow 0.8s ease forwards;
    animation-delay: 0.4s;
}
.secTaishin.line-anim-start .line.line04_02{
    width: 1px;
    height: 75px;
    right: calc(0% + 12px + 180px);
    bottom: calc(0% + 6px);
    animation: lineGrowVertical 0.8s ease forwards;
    animation-delay: 1.2s;
}
.secTaishin .txtItem#taishin_04 .txtbox{
    padding-bottom: calc(75px + 5px);
    padding-right: calc(180px - 62px);
    left: auto;
    right: 0;
}

@media screen and (min-width:768px){
    .secTaishin .sp_Item{
        display: none;
    }
}
@media screen and (max-width:767px){
    .secTaishin{
        padding-top: 34px;
        padding-bottom: 97px;
    }
    .secTaishin .taidhinImgbox{
        max-width: 100%;
        width: 295px;
        margin-top: 34px;
    }
    .secTaishin .taidhinImgbox .taishintitbox{
        top: 14px;
        left: 7px;
    }
    .secTaishin .taishintitbox .titin{
        padding-left: 0;
    }
    .secTaishin .taishintitbox .titin::before{
        width: 24px;
        height: 30px;
        left: 0;
        top: 0;
    }
    .secTaishin.lazyloaded .taishintitbox .titin::before{
        background: url(../img/technology/structure/imgIconTaishin01.png) center center no-repeat;
        background-size: 100% auto;
    }
    .secTaishin .taishintitbox .subtit{
        display: none;
    }
    .secTaishin .taidhinImgbox .taishintitbox .titin{
        text-align: center;
    }
    .secTaishin .pc_Item{
        display: none;
    }
    .secTaishin .txtItem .iconbox{
        width:10px;
        height: 10px;
        top: calc(50% - 5px);
    }
    .secTaishin .txtItem .txt{
        font-size: 11px;
        line-height: calc(15 / 11);
        letter-spacing: 0;
        text-shadow: 0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326,
        0 0 2px #232326;
    }

    .secTaishin .txtItem#taishin_01_sp{
        top: calc(0% + 68px);
        right: calc(50% - 62px);
    }
    .secTaishin.line-anim-start .line.line01_01_sp{
        width: 10px;
        bottom: calc(50% - 1px);
        left: calc(0% + 10px);
        animation: lineGrow 0.8s ease forwards;
        animation-delay: 1.2s;
    }
    .secTaishin .txtItem#taishin_01_sp .txtbox{
        padding-bottom: 30px;
        padding-left: calc(0% + 24px);
        bottom: auto;
        top: calc(0% - 6px);
    }

    .secTaishin .txtItem#taishin_02_sp{
        top: calc(0% + 105px);
        right: calc(50% - 62px);
    }
    .secTaishin.line-anim-start .line.line02_01_sp{
        width: 10px;
        bottom: calc(50% - 1px);
        left: calc(0% + 10px);
        animation: lineGrow 0.8s ease forwards;
        animation-delay: 1.2s;
    }
    .secTaishin .txtItem#taishin_02_sp .txtbox{
        padding-bottom: 30px;
        padding-left: calc(0% + 24px);
        bottom: auto;
        top: calc(0% - 6px);
    }

    .secTaishin .txtItem#taishin_03_sp{
       bottom: calc(0% - 20px);
       right: calc(50% + 30px);
    }
    .secTaishin.line-anim-start .line.line03_01_sp{
        width: 24px;
        bottom: calc(50% - 1px);
        left: calc(0% + 10px);
        animation: lineGrow 0.8s ease forwards;
        animation-delay: 1.2s;
    }
    .secTaishin .txtItem#taishin_03_sp .txtbox{
        padding-bottom: 30px;
        padding-left: calc(0% + 40px);
        bottom: auto;
        top: calc(0% - 6px);
    }

    .secTaishin .txtItem#taishin_04_sp{
        bottom: calc(0% + 15px);
        left: calc(50% - 100px);
    }
    .secTaishin.line-anim-start .line.line04_01_sp{
        width: 50px;
        bottom: calc(50% - 1px);
        right: calc(0% + 10px);
        animation: lineGrow 0.8s ease forwards;
        animation-delay: 1.2s;
    }
    .secTaishin.line-anim-start .line.line04_02_sp{
        width: 1px;
        height: 25px;
        right: calc(0% + 9px + 50px);
        top: calc(0% + 5px);
        animation: lineGrowVertical 0.8s ease forwards;
        animation-delay: 2s;
    }
    .secTaishin .txtItem#taishin_04_sp .txtbox{
        padding-top: 28px;
        top: 0;
        right: -15px;
        left: auto;
    }

    .secTaishin .txtItem#taishin_05_sp{
        top: calc(0% + 28px);
        left: calc(50% - 110px);
    }
    .secTaishin.line-anim-start .line.line05_01_sp{
        width: 10px;
        bottom: calc(50% - 1px);
        left: calc(0% + 10px);
        animation: lineGrow 0.8s ease forwards;
        animation-delay: 1.2s;
    }
    .secTaishin .txtItem#taishin_05_sp .txtbox{
        padding-bottom: 30px;
        padding-left: calc(0% + 24px);
        bottom: auto;
        top: calc(0% - 6px);
    }
}
@media screen and (max-width:360px){
    .secTaishin .txtItem#taishin_01_sp,
    .secTaishin .txtItem#taishin_02_sp{
        right: calc(50% - 52px);
    }
    .secTaishin .txtItem#taishin_04_sp{
        left: calc(50% - 80px);
    }
}