@charset "UTF-8";

div#tmpl_header_wrapper,
footer#tmpl_footer_all div#tmpl_footer_wrapper{
    min-width: auto;
}

.eco-container{
    padding-top: 0;
}

a{
color: #3865e0;
}
/* a:visited {
    color: #3865e0;
} */
a:hover{
color: #000;
}
a:focus,
button:focus{
outline: auto;
outline-color: #3865e0;
}
a:active{
color: #000;
}
@media screen and (min-width:641px) and (max-width:1250px){
    #tmpl_header > nav:first-of-type{
        position: absolute;
        top: auto;
        left: auto !important;
        right: 50px;
    }
}

div#tmpl_header_wrapper ul#tmpl_globalNavi{
    margin: 0 -20px;
}

ul#tmpl_globalNavi li:first-child a{
    padding: 13px 20px 0 21px;
}

div.navtray-w{
    min-width: auto;
}

@media screen and (max-width:1082px){
    ul#tmpl_globalNavi li a:hover{
        position: relative;
    }
    ul#tmpl_globalNavi li a:hover::before{
        content: '';
        display: block;
        width: 105%;
        height: 45px;
        position: absolute;
        top: 100%;
        left: -4%;
        z-index: 1;
    }
    div.navtray-w{
        padding-top: 93px;
    }
}

@media screen and (max-width:985px){
    ul#tmpl_globalNavi li:last-child a:hover::before{
        content: none;
    }
}

@media screen and (max-width:818px){
    ul#tmpl_globalNavi li:nth-last-of-type(2) a:hover::before{
        content: none;
    }
}

@media screen and (max-width:721px){
    ul#tmpl_globalNavi li:nth-last-of-type(3) a:hover::before{
        content: none;
    }
}

@media screen and (min-width:641px) and (max-width:1090px){
    div#tmpl_copyright{
        float: left;
    }
}


body,
#tmpl_main{
    min-width: 0;
}
.head-menu-inner{
    max-width: 940px;
}
@media screen and (min-width:641px) and (max-width:1090px){
    .head-menu-inner{
        width: 100%;
        max-width: auto;
    }
    .head-menu-title h1 a{
        font-size: .696em;
    }
    .head-menu nav{
        font-size: .875em;
    }
    .head-menu nav li{
        width: 80px;
    }
    .head-menu nav li img.blink{
        transform: scale(.3);
    }
}
.breadcrumbs-inner{
    width: 1090px;
}
._jp-contents *{
    box-sizing: border-box;
}
._jp-contents img{
    max-width: 100%;
}
.visual{
    margin: 0 auto;
}
.visual._main{
    background: url(../img/index_jp/sensor_main_pc.jpg) no-repeat 0 center;
    background-size: cover;
    margin-bottom: 50px;
}
.visual._intro{
    background: url(../img/index_jp/introduction2.jpg) no-repeat 0 center;
    background-size: cover;
    margin-top: 80px;
}
@media screen and (max-width:767px){
    .visual._main,
    .visual._intro{
        background-position: left -30px;
        background-size: contain;
    }
    .visual._intro{
        margin-top: 40px;
    }
}
.visual-inner{
    margin: 0 auto;
    max-width: 1090px;
    height: 620px;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    position: relative;
}
@media screen and (min-width:768px) and (max-width:1144px){
    .visual-inner{
        margin: 0 20px;
        height: 500px;
    }
}
@media screen and (max-width:767px){
    .visual-inner{
        height: auto;
        padding-top: 49.333333333333336%;
        padding-right: 0;
        -webkit-box-align: end;
        -webkit-align-items: flex-end;
        align-items: flex-end;
        position: static;
    }
}
.visual-inner ._text-box{
    max-width: 430px;
    padding: 60px 50px;
    margin-right: 60.550458715596335%;
}
@media screen and (min-width:768px) and (max-width:1144px){
    .visual-inner ._text-box{
        padding: 40px;
    }
}
@media screen and (max-width:767px){
    .visual-inner ._text-box{
        max-width: none;
        padding: 20px 25px;
        background-color: #fff;
        position: relative;
        margin-right: 0;
    }
}
.visual-inner ._text-box.navy{
    background-color: #2b2f3a;
}
@media screen and (max-width:767px){
    .visual-inner ._text-box.navy{
        background-color: #fff;
    }
}
._text-box ._hdg{
    color: #30343d;
    /* font-size: 1.875em; */
    font-size: 2.375em;
    line-height: 1.3;
    margin-bottom: 30px;
}
@media screen and (max-width:767px){
    ._text-box ._hdg{
        font-size: 1.125em;
        margin-bottom: 10px;
    }
}
.navy._text-box ._hdg{
    color: #fff;
}
@media screen and (max-width:767px){
    .navy._text-box ._hdg{
        color: #000;
    }
}
._text-box ._txt{
    color: #3c3c42;
    /* font-size: .750em;
    line-height: 1.5; */
    font-size: .9375em;
    line-height: 1.5;
}

@media screen and (max-width:767px){
    ._text-box ._txt{
        font-size: .625em;
    }
}
.navy._text-box ._txt{
    color: #bebccc;
}
@media screen and (max-width:767px){
    .navy._text-box ._txt{
        color: #000;
    }
}
.visual-inner ._caption{
    color: #3c3c42;
    position: absolute;
    bottom: 20px;
    right: -10px;
}
@media screen and (max-width:767px){
    .visual-inner ._caption{
        font-size: .625em;
        right: 10px;
        top: -20px;
        bottom: auto;
    }
}
.graph-area,
.products-area,
.other-area,
.info-area{
    margin: 30px auto;
    max-width: 1090px;
}
.other-area{
    margin: 60px auto 100px;
}
@media screen and (max-width:1090px){
    .graph-area,
    .products-area,
    .other-area,
    .info-area{
        margin: 30px 20px;
    }
}
@media screen and (max-width:767px){
    .other-area{
        margin: 40px 20px 80px;
    }
}
.products-area ._hdg,
.other-area ._hdg{
    font-size: 1.375em;
    margin-bottom: 30px;
    padding-top: 30px;
}
.other-area ._hdg{
    font-size: 1.063em;
}
@media screen and (max-width:767px){
    .products-area ._hdg,
    .other-area ._hdg{
        padding: 10px 20px 0;
        font-size: 1.063em;
    }
    .other-area ._hdg{
        padding: 10px 0 0;
    }
}
.products-area ._caption{
    padding-top: 10px;
    color: #3c3c42;
    font-size: .938em;
}
@media screen and (max-width:767px){
    .products-area ._caption,
    .other-area .image-caption{
        font-size: .625em;
    }
}
.graph-box{
    text-align: center;
}
.products-list{
    margin: 0 -10px;
}
.products-box{
    margin: 0 10px;
    background-color: #fafafa;
}
.products-txt{
    background-color: #f3f4f6;
    padding: 10px 30px;
}
.products-txt + ._img{
    margin: 50px 0 30px;
}
.other-list{
    margin: 0 -20px;
}
.other-box{
    margin: 0 20px;
}
.inner-box{
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    flex-direction: column;
}
a.inner-box:hover ._img,
.other-list a:hover ._img{
    opacity: .90;
}
.inner-box ._img{
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
    order: -1;
    -webkit-box-flex: 0;
    -webkit-flex: none;
    flex: none;
}
.inner-box .image-title,
.products-txt .image-title{
    font-size: .875em;
    margin-bottom: 10px;
    color: #000;
}
.products-txt .image-title{
    font-size: .688em;
}
.inner-box .image-caption,
.products-txt .image-caption{
    font-size: .750em;
    color: #3c3c42;
}
.products-txt .image-caption{
    font-size: 1.5em;
    display: block;
}
@media screen and (max-width:767px){
    .products-txt .image-caption{
        font-size: 1.188em;
    }
}
.products-txt .image-caption::after{
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    background: url(../img/index_jp/arrow.png) no-repeat 0 0;
    background-size: contain;
    margin-left: 5px;
    -webkit-transition: margin-left 0.15s ease-in;
    transition: margin-left 0.15s ease-in;
}
a.inner-box:hover .products-txt .image-caption::after{
    margin-left: 10px;
}
.other-area .image-caption{
    display: block;
    color: #3c3c42;
    margin-top: 30px;
}
.bg-blue{
    background-color: #f1f5f9;
}
.bg-white{
    background-color: #fff;
}
.lyt-image{
    margin: 0 auto;
    max-width: 1090px;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    padding: 30px 0;
}
@media screen and (min-width:768px) and (max-width:1090px){
    .lyt-image{
        margin: 0 20px;
    }
}
.lyt-image.pattern02{
    padding: 60px 0 30px;
}
@media screen and (max-width:767px){
    .lyt-image,
    .lyt-image.pattern02{
        display: block;
        padding: 30px 20px;
    }
}
.lyt-image .l-txt{
    width: 43.11926605504588%;
    padding: 60px;
}
.lyt-image.pattern02 .l-txt{
    width: 51.8348623853211%;
}
@media screen and (max-width:767px){
    .lyt-image .l-txt,
    .lyt-image.pattern02 .l-txt{
        width: auto;
        padding: 0 20px 20px;
    }
}
.lyt-image .l-txt ._hdg{
    font-size: 1.563em;
    line-height: 1.4;
    margin-bottom: 30px;
}
@media screen and (max-width:767px){
    .lyt-image .l-txt ._hdg{
        font-size: 1.125em;
        margin-bottom: 10px;
    }
}
.lyt-image .l-txt ._txt{
    color: #3c3c42;
    font-size: .800em;
    line-height: 1.7;
    margin-bottom: 10px;
}
@media screen and (max-width:767px){
    .lyt-image .l-txt ._txt{
        font-size: .625em;
    }
}
.lyt-image .l-txt ._txt ._name{
    margin-bottom: 20px;
    display: block;
    font-size: 1.167em;
}
.lyt-image .l-img{
    width: 56.88073394495413%;
    position: relative;
}
.lyt-image.pattern02 .l-img{
    width: 48.07339449541285%;
}
@media screen and (max-width:767px){
    .lyt-image .l-img,
    .lyt-image.pattern02 .l-img{
        width: auto;
    }
}
.lyt-image.reverse .l-img{
    -webkit-box-ordinal-group: 0;
    -webkit-order: -1;
    order: -1;
}
@media screen and (max-width:767px){
    .lyt-image.reverse .l-img{
        -webkit-box-ordinal-group: 1;
        -webkit-order: 0;
        order: 0;
    }
}
.lyt-image .l-img ._caption{
    color: #3c3c42;
    font-size: .625em;
    position: absolute;
    bottom: 20px;
    right: 10px;
}
.wide-area{
    margin: 0 auto;
    max-width: 1090px;
    text-align: center;
    padding: 60px 40px;
}
@media screen and (max-width:767px){
    .wide-area{
        text-align: left;
    }
}
.wide-area ._hdg{
    /* font-size: 2em; */
    font-size: 2.375em;
    margin-bottom: 15px;
}
@media screen and (max-width:767px){
    .wide-area ._hdg{
        font-size: 1.250em;
    }
}
.wide-area ._txt{
    color: #3c3c42;
    font-size: .875em;
    line-height: 1.5;
}
@media screen and (max-width:767px){
    .wide-area ._txt,
    .wide-area ._caption{
        font-size: .625em;
    }
}
.wide-image{
    margin-bottom: 40px;
    padding-top: 30px;
}
.wide-area ._caption{
    color: #3c3c42;
}
.description-area{
    margin: 0 auto;
    max-width: 1090px;
    padding-bottom: 60px;
}
@media screen and (min-width:768px) and (max-width:1090px){
    .description-area{
        margin: 0 20px;
    }
}
@media screen and (max-width:767px){
    .description-area{
        padding: 0 40px 30px;
    }
}
.description-area ._title{
    margin-bottom: 10px;
}
.description-area ._lead{
    color: #3c3c42;
    font-size: .875em;
    line-height: 1.5;
}
@media screen and (max-width:767px){
    .description-area ._lead{
        font-size: .625em;
    }
}
.description-area ._note{
    color: #3c3c42;
    font-size: .875em;
    line-height: 1.5;
    margin-top: 20px;
}
@media screen and (max-width:767px){
    .description-area ._note{
        font-size: .625em;
        margin-top: 10px;
    }
}

@media screen and (max-width:767px){
    .info-area{
        font-size: .875em
    }
}
.info-link{
    margin: 20px 0;
}
.info-link a{
    display: inline-block;
    padding: 15px;
    color: #fff;
    background-color: #4971CC;
}
.info-link a:hover{
    background-color: #3b6aeb;
}
.foot-notes-area{
    background-color: #f1f5f9;
}
.foot-notes-area ._hook{
    border-bottom: 1px solid #e3e6eb;
}
.foot-notes-area ._hook > button,
.foot-notes-area .foot-notes{
    margin:  0 auto;
    max-width: 1090px;
}
.foot-notes-area ._hook > button{
    display: block;
    width: 100%;
    text-align: right;
    padding: 20px 15px;
    cursor: pointer;
    background-color: transparent;
    border: none;
}
.foot-notes-area ._hook > button::after{
    content: '';
    display: inline-block;
    border: 5px solid transparent;
    border-bottom: 5px solid #000;
    margin-left: 5px;
    margin-top: -3px;
}
.foot-notes-area ._hook > button.open::after{
    border-bottom: 5px solid transparent;
    border-top: 5px solid #000;
    margin-top: 0;
    margin-bottom: -3px;
}
.foot-notes-area .foot-notes{
    padding: 30px 0;
    font-size: .750em;
}
@media screen and (min-width:768px) and (max-width:1144px){
    .foot-notes-area .foot-notes{
        margin: 0 20px;
    }
}
@media screen and (max-width:767px){
    .foot-notes-area .foot-notes{
        padding: 30px 20px;
        font-size: .625em;
    }
}
.foot-notes-area .foot-notes > li{
    margin-bottom: 30px;
    padding-left: 40px;
    position: relative;
    color: #3c3c42;
}
.foot-notes-area .foot-notes > li ._mark{
    position: absolute;
    top: 0;
    left: 0;
    color: #30343d;
}

.inner-contents{
    background-color: #f1f5f9;
    width: auto;
}

.img_order_top{
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-flow:column;
-webkit-flex-flow:column;
flex-flow: column;
-ms-flex-wrap:wrap;
-webkit-flex-wrap:wrap;
flex-wrap: nowrap;
-webkit-box-align:center;
-ms-flex-align:center;
 -webkit-align-items:center;
align-items: center;
}
.img_order_top .wide-area{
-webkit-box-ordinal-group:1;
-ms-flex-order:1;
-webkit-order:1;
order: 1;
max-height: 733px;
}
.img_order_top .description-area{
-webkit-box-ordinal-group:2;
-ms-flex-order:2;
-webkit-order:2;
order: 2;
}
