@charset "utf-8";

div#Container{
overflow: hidden;
}

div#ContentsLayout{
padding-bottom: 0;
}

/************ main_content **************/

#contents_wrap #main_content{
margin: 0 auto;
width: 970px;
}

#contents_wrap #main_content #top_nav {
display: table;
margin: 0 auto 45px;
}

#contents_wrap #main_content #top_nav li{
width: 180px;
display: inline-block;
margin-right: 10px;
padding: 0;
border: 3px solid #346db5;
box-shadow:0px 3px 3px 2px #c3c3c3;
-moz-box-shadow:0px 3px 3px 2px #c3c3c3;
-webkit-box-shadow:0px 3px 3px 2px #c3c3c3;
box-sizing: border-box;
vertical-align: top;
}

#contents_wrap #main_content #top_nav li a{
display: block;
position: relative;
width: 100%;
height: 100%;
padding: 0 0 13px;
-webkit-transition: opacity 0.2s ease-in-out;
-moz-transition: opacity 0.2s ease-in-out;
transition: opacity 0.2s ease-in-out;
}

#contents_wrap #main_content #top_nav li a .title{
display: table-cell;
width: 214px;
height: 63px;
color: #404040;
font-size: 16px;
line-height: 1.2;
text-align: center;
vertical-align: middle;
}
#contents_wrap #main_content #top_nav li a .icon{
display: block;
height: 85px;
margin: 0 0 10px;
padding: 0 0 20px;
border-bottom: 1px solid #e0e0e0;
text-align: center;
}
#contents_wrap #main_content #top_nav li a .list{
display: block;
position: relative;
margin: 0 0 0 10px;
padding: 0 5px 0 10px;
color: #404040;
font-size: 14px;
}
#contents_wrap #main_content #top_nav li a .list:before{
content: "";
display: block;
position: absolute;
top: 0.6em;
left: 0;
width: 4px;
height: 4px;
background: #404040;
border-radius: 2px;
}

#contents_wrap #main_content #top_nav li a:hover,
#contents_wrap #main_content #top_nav li a:focus{
opacity: 0.2;
filter: alpha(opacity=20);
text-decoration: none;
}

#contents_wrap #main_content #top_nav li:last-child{
    margin-right: 0;
}

/* #contents_wrap #main_content #top_nav .top_nav04{
background-color: #fffdf0;
} */

#contents_wrap #main_content #top_nav.column5{
letter-spacing: -.4em;
}

#contents_wrap #main_content #top_nav.column5 li{
width: 174px;
letter-spacing: normal;
}

#contents_wrap #main_content #top_nav.column5 .top_nav04{
margin-right: 25px;
}

#contents_wrap #main_content #top_nav.column5 .top_nav05{
margin-right: 0;
}

#contents_wrap #main_content .main_bottom_link{
text-align: center;
margin-bottom: 45px;
}

#contents_wrap #main_content .main_bottom_link a{
display: inline-block;
position: relative;
font-size: 18px;
}

#contents_wrap #main_content .main_bottom_link a:before{
content: ">";
position: absolute;
top: 0;
left: -1em;
font-size: 18px;
}

/*table lauout
text position all left*/

.downloadSpecBox table.tableStyle01 {
margin-bottom: 0.2em;
border-top: 1px #b3b3b3 solid;
border-left: 1px #b3b3b3 solid;
font-size: 80%;
margin: 0;
}

.downloadSpecBox table.tableStyle01 caption{
margin-top: 1em;
text-align: left;
}

.downloadSpecBox table.tableStyle01 th,
.downloadSpecBox table.tableStyle01 td{
padding: 4px 6px;
border-right: 1px #b3b3b3 solid;
border-bottom: 1px #b3b3b3 solid;
}

.downloadSpecBox table.tableStyle01 th{
background: #cccccc;
text-align: center;
white-space: nowrap;
text-align: left;
font-weight: normal;
}

.downloadSpecBox table.tableStyle01 col.midashi{
background: #eeeeee;
}

.downloadSpecBox{
width: 760px;
margin: 15px auto 0;
text-align: left;
}
.downloadSpecBox h5{
font-weight: bold;
font-size: 102%;
margin-bottom: 3px;
}
.downloadSpecBox p{
font-size: 82%;
line-height: 202%;
margin-bottom: 3px;
}
.downloadSpecBox .grayBox{
background: #f7f7f7;
padding: 10px 10px 0px;
margin: 10px 0 30px;
border: 1px solid #ccc;
width: 394px;
}

.downloadSpecBox dl.dlChui{
margin: 7px 0;
padding: 3px 7px;
border: 1px solid #E52E2E;
width: 400px;
}

/************ con02 **************/

#con02{
width: 100%;
padding-top: 40px;
padding-bottom: 55px;
border-top: 1px solid  #e0e0e0;
position:relative;
}

#con02:before{
content: "";
display: block;
position: absolute;
top: -1px;
left: -100%;
width: 100%;
height: 100%;
border-top: 1px solid #e0e0e0;
}

#con02:after{
content: "";
display: block;
position: absolute;
top: -1px;
right: -100%;
width: 100%;
height: 100%;
border-top: 1px solid #e0e0e0;
}

#con02 .con02_inner{
position:relative;
width: 970px;
margin: 0 auto;
z-index:10;
overflow: hidden;
}

#con02 .con02_inner .box h2{
margin-bottom: 30px;
border-bottom: 1px solid #e0e0e0;
font-size: 27px;
font-weight: normal;
}

#con02 .con02_inner .top_bnr_area .fl,
#con02 .con02_inner .top_bnr_area .fr{
float: none !important;
display: inline-block;
vertical-align: top;
}
#con02 .con02_inner .top_bnr_area .fr{
margin-left: 10px;
}

#contents_wrap #main_content #top_nav li.type01{
position: relative;
box-shadow: none;
}

#contents_wrap #main_content #top_nav li.type01::before{
    content: "";
    position: absolute;
    width: 180px;
    height: 102%;
    top: -3px;
    left: -3px;
    background: #8b8b8b;
    opacity: 0.7;
    z-index: 1;
    }

    #contents_wrap #main_content #top_nav li.type01 .top_nav_inner{
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0 0 13px;
    }

    #contents_wrap #main_content #top_nav li.type01 .top_nav_inner::before{
        z-index: 1;
        position: absolute;
        top: 100px;
        left: 10px;
        width: 153px;
        height: 82px;
        background: url("../../../../img/support/user/iv2/index_iv2_txt_01.png") no-repeat;
        content: "";
    }

    #contents_wrap #main_content #top_nav li.type01 .top_nav_inner.ptn01::before{
        left: 15%;
    }

    #contents_wrap #main_content #top_nav  .top_nav_inner .title{
    display: table-cell;
    width: 214px;
    height: 63px;
    color: #404040;
    font-size: 16px;
    line-height: 1.2;
    text-align: center;
    vertical-align: middle;
    }
    #contents_wrap #main_content #top_nav .top_nav_inner .icon{
    display: block;
    height: 85px;
    margin: 0 0 10px;
    padding: 0 0 20px;
    border-bottom: 1px solid #e0e0e0;
    text-align: center;
    }
    #contents_wrap #main_content #top_nav .top_nav_inner .list{
    display: block;
    position: relative;
    margin: 0 0 0 10px;
    padding: 0 0 0 10px;
    color: #404040;
    font-size: 14px;
    }
    #contents_wrap #main_content #top_nav .top_nav_inner .list:before{
    content: "";
    display: block;
    position: absolute;
    top: 0.6em;
    left: 0;
    width: 4px;
    height: 4px;
    background: #404040;
    border-radius: 2px;
    }
