@charset "utf-8";

/* ----------------------------------------
* 共通
* ---------------------------------------- */
body {
font-size: 16px;
color:#333;
font-family:"Lucida Grande",'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',Osaka,sans-serif,'ＭＳ Ｐゴシック',"MS PGothic";
-webkit-text-size-adjust:100%;
visibility: hidden;
overflow-x: hidden;
}
.sp_device body.no_scroll,
.pc_device.history body.no_scroll {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: hidden;
}
a:hover,
a.hover{
text-decoration: underline;
}
a[href],
a[onclick]{
cursor: pointer;
}
.sp_device a:hover,
.sp_device a.hover{
text-decoration: none;
}
a:focus{
outline: none;
}
/*a:visited,*/
a.visited{
/*	color:#756643;*/
text-decoration: underline;
}


/* PC
======================================= */

/* headerTop
======================================= */
.pc_width #header{
    position: fixed;
    width: 100%;
    height: 55px;
    background: #fff;
    border-bottom: 1px solid #c2c2c2;
    /*box-shadow: 0px 5px 10px rgba(0,0,0,0.1);*/
    z-index: 9500;
}
.pc_width #header a{
    text-decoration: none;
}
.pc_width #headerTop {
    padding: 5px 0 5px;
}
.pc_width #header .logo{
    float: left;
}
.pc_width .logo a{
    display: block;
    width: 157px;
    height: 44px;
    background: url('../images/logo@2x.png');
    background: url('../images/logo.png')\9;
    background-size:100%;
    text-indent: -9999px;
}
.pc_width #headerInner{
    width: 1100px;
    margin: 0 auto;
}
.pc_width #headerInner:after{
    display: block;
    content: '';
    clear: both;
}
.pc_width.nav_pc #btnMenu {
    display: none;
}
.pc_width.nav_pc .btn_close{
    display: none !important;
}

/* gnav */
.pc_width.nav_pc #header .nav {
    float: right;
    margin-top: 14px;
    height: auto !important;
    font-size: 16px;
}
.ie7.pc_width.nav_pc #header .nav {
    margin-top: -10px;
}
.pc_width.nav_pc #header .nav ul {
    float: right;
    height: inherit !important;
}
.pc_width #header .nav li {
    float: left;
    margin-left: 32px;
}
.pc_width .nav a {
    display: block;
    width: 100%;
    text-decoration: none;
    color: #151515;
}
.pc_width .nav a:hover,
.pc_width .nav a.this_page,
.pc_width .nav a.this_parent,
.pc_width .nav a.this_url {
    color: #ff8e2f;
}

/*.nav .diversity{
    width: 122px;
}
.nav .diversity a{
    background-position: 0 top;
}
.nav .diversity a:hover,
.nav .diversity a.this_page,
.nav .diversity a.this_parent{
    background-position: 0 bottom;
}
.nav .woman{
    width: 150px;
}
.nav .woman a{
    background-position: -160px top;
}
.nav .woman a:hover,
.nav .woman a.this_page,
.nav .woman a.this_parent{
    background-position: -160px bottom;
}
.nav .seid{
    width: 36px;
}
.nav .seid a{
    background-position: -350px top;
}
.nav .seid a:hover,
.nav .seid a.this_page,
.nav .seid a.this_parent{
    background-position: -350px bottom;
}
.nav .faq{
    width: 44px;
}
.nav .faq a{
    background-position: -420px top;
}
.nav .faq a:hover,
.nav .faq a.this_page,
.nav .faq a.this_parent{
    background-position: -420px bottom;
}
.nav .photo{
    width: 144px;
}
.nav .photo a{
    background-position: -500px top;
}
.nav .photo a:hover,
.nav .photo a.this_page,
.nav .photo a.this_parent{
    background-position: -500px bottom;
}*/

/* headerBottom
======================================= */
.pc_width #headerBottom{
    display: none;
}
.pc_width #headerBottom:after{
    display: block;
    content: '';
    clear: both;
}
.pc_width #btnReturn{
    display: none;
}
.pc_width #categoryTop{
    line-height: 54px;
    text-indent: -9999px;
    background-repeat: no-repeat;
    background-position: left center;
}

/* レイアウト大
======================================= */
.pc_width .inner{
    width: 100%;
    margin: 0 auto;
}
.pc_width #contents{
    margin-bottom: 70px;
    /*padding-top: 76px;*/
    line-height: 1.8;
}
.pc_width #top #contents{
    margin-bottom: 0;
}
.pc_width .h2_inner{
    padding:0px 80px;
}

/* コンテンツ
======================================= */
.pc_width h1,
.pc_width h2,
.pc_width h3{
    line-height: 100%;
}
.pc_width #default h1{
    margin-bottom: 30px;
    font-size: 44px;
    text-align: center;
}
.pc_width h2{
    margin-bottom: 30px;
    font-size: 40px;
    text-align: center;
}
.pc_width h3{
    color: #ff8e2f; 
    font-weight:normal;
}
.pc_width #default #contents p{
    margin-bottom: 1em;
}
.pc_width h4{
    /*color: #756643;*/
    font-weight: bold;
    font-size:15px;
    margin-bottom:1em;
}
.pc_width .article{
    padding-top: 60px;
}
.pc_width.company .article,
.pc_width.specialty .article,
.pc_width.product .article{
    padding-top: 0;
}
.pc_width .article img{
    width: 100%;
}
.pc_width .article h2 img{
    height:34px;
    width: auto;
}
.pc_width .article table img{
    width: inherit;
}
.pc_width .section{
    margin-bottom: 7em;
}
.pc_width .figure{

}
.pc_width #default #contents .figcaption{
    margin: 0.5em auto 0;
    font-size:14px;
}

/* キービジュアル
======================================= */
.pc_width #keyVisual{
    position: relative;
    color: #fff;
    overflow: hidden;
}
.pc_width.company #keyVisual,
.pc_width.history #keyVisual,
.pc_width.society #keyVisual,
.pc_width.product #keyVisual{
    color: #2a2a28;
}
.pc_width #keyVisualInnerWrap{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.pc_width #keyVisual h1{
    text-align: left;
}
.pc_width #keyVisualInner{
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}
.pc_width #keyVisualImg{
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    text-align: center;
    overflow: hidden;
    height: 10000px;
}
.pc_width.less-availW1440 #keyVisualImg{
    background-position: center 20px;
}
.pc_width.ie7 #keyVisualImg,
.pc_width.ie8 #keyVisualImg{
    background: none;
}
.pc_width #keyVisualImg img{
    display: none;
}
.pc_width.ie7 #keyVisualImg img,
.pc_width.ie8 #keyVisualImg img{
    display: block;
    position: absolute;
    top: 30px;
    left: 0;
    width: auto;
    height: 100%;
    z-index: -9999;
}
.pc_width #keyVisualImg img.yoko_fix{
    width: 100%;
    height: auto;
}
.pc_width #keyVisualScroll{
    position: absolute;
    left: 0;
    bottom: 18px;
    width: 100%;
    height: 48px;
}
.pc_width #keyVisualScroll a{
    display: block;
    width: 85px;
    width: 43px\9;
    height: 43px;
    margin: 0 auto;
    padding-top: 8px;
    text-indent: -9999px;
    background: url('../images/scroll_arrow_b.png') bottom no-repeat;
	background-size:43px;
    cursor: pointer;
}
.pc_width #keyVisualScroll span{
    display: block;
    width: 85px;
    height: 12px;
    margin: 0 auto;
    margin-left: -20px\9;
    background: url('../images/scroll_txt_b.png') no-repeat;
	background-size:85.5px;
}
.pc_width #keyVisualScroll.scroll_black a{
    background-image: url('../images/scroll_arrow_b.png');
	background-size:43px;
}
.pc_width #keyVisualScroll.scroll_black span{
    background-image: url('../images/scroll_txt_b.png');
	background-size:85.5px;
}
.pc_width #keyVisualScroll.scroll_white a{
    background-image: url('../images/scroll_arrow_w.png');
	background-size:43px;
}
.pc_width #keyVisualScroll.scroll_white span{
    background-image: url('../images/scroll_txt_w.png');
	background-size:85.5px;
}

/* サブナビ
======================================= */
.pc_width .sub_nav{
    margin-bottom: 60px;
    background: #ececec;
    border-top: 1px solid #cacaca;
    border-bottom: 1px solid #cacaca;
    font-size: 14px !important;
}
.pc_width .sub_nav ul{
    margin: 0 auto;
}
.pc_width .sub_nav ul:after{
    content: '';
    display: block;
    clear: both;
}
.pc_width .sub_nav li{
    float: left;
    margin: 0 27px;
}
.pc_width .sub_nav a{
    display: block;
    line-height: 41px;
    text-align: center;
    text-decoration: none !important;
    color: inherit;
}
.pc_width .sub_nav a:hover,
.pc_width .sub_nav .current a{
    color: #ff8e2f;
}

.pc_width .read,
.pc_width.company h3,
.pc_width.safety h3,
.pc_width.society h3{
    margin-bottom: 1em;
    color: #ff8e2f;
    font-size: 26px;
    font-weight: normal;
    line-height: 1.5;
}
.pc_width .readtext{
    padding-left:15px;
}
.pc_width #default section p{
    margin-bottom:1em;
}
.pc_width #default section ul,
.pc_width #default section ol,
.pc_width #default section dl,
.pc_width #default section table{
    margin-bottom: 1em;
}
.pc_width #default #contents table p,
.pc_width #default #contents table ul,
.pc_width #default #contents section.p0_sentence p,
.pc_width #default #contents section.p0_sentence ul,
.pc_width #default #contents section.p0_sentence ol,
.pc_width #default #contents section.p0_sentence dl,
.pc_width #default #contents section.p0_sentence table{
    margin-bottom: 0;
}

/* 注意文
======================================= */
.pc_width .attention,
.pc_width .attention_list,
.pc_width .attention_box{
    color: #f33f27 !important;
}
.pc_width p.attention{
    padding-left: 2em;
    text-indent: -2em;
}
.pc_width span.attention:before,
.pc_width p.attention:before,
.pc_width .attention_list li:before{
    content: '※';
    display: inline;
    margin-right: 1em;
}
.pc_width .attention_box{
    padding: 0 14px;
}
.pc_width .attention_box_midashi{
    margin-left: 3px;
    font-weight: bold;
}

/* リスト
======================================= */
.pc_width #contents ol ol{
    margin-left: 3px;
    margin-bottom: 0;
}
.pc_width #contents ol li{
    counter-increment: ol;
    padding-left: 18px;
    text-indent: -18px;
}
.pc_width #contents ol li:before{
    content: counter(ol);
    margin-right: 10px;
}
.pc_width #contents ol ol li{
    counter-increment: ol_child;
}
.pc_width #contents ol ol li:before{
    content: counter(ol_child);
}
.pc_width #contents ul ul{
    margin-bottom: 0;
}
.pc_width #contents ul.link_list li{
    margin-bottom:0.6em;
}
.pc_width #contents ul.link_list ul{
    margin-left: 18px;
    margin-bottom: 0;
}
.pc_width #contents ul.list li{
    padding-left: 21px;
    /*background: url('../images/icon_list.png') no-repeat 4px 9px;*/
    margin-bottom:0.3em;
}
.pc_width #contents ul.list ul li{
    padding-left: 17px;
    /*background-image: url('../images/icon_list2.png');*/
}
/*
.pc_width #contents dt{
    padding-left: 17px;
    /*background: url('../images/icon_list.png') no-repeat 4px 9px;
}
.pc_width #contents dd{
    padding-left: 17px;
    margin-bottom: 1em;
}
*/
/* リンク
======================================= */
.pc_width a {
    color: #ba4720;
    text-decoration: none;
}
.pc_width a:hover {
    text-decoration: none;
    text-decoration: underline\9;
}
.pc_width a.link{
    padding: 0 0 0 18px;
    background: url('../images/link_arrow.png') left no-repeat;
    font-size:14px;
    position: relative;
    display: inline-block;
    transition: .3s;
}
.pc_width a.link_blank{
    background:url(../images/link_blank.png) left 5px no-repeat;
	background-size:18px 16px;
    padding: 0 0 0 24px;
    font-size:14px;
    position: relative;
    display: inline-block;
    transition: .3s;
}
.pc_width a.link:after,
.pc_width a.link_blank:after{
    position: absolute;
    bottom: .3em;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
	height: 0px\9;
    background-color: #ba4720;
    opacity: 0;
    transition: .3s;
}
.pc_width a.link:hover:after,
.pc_width a.link_blank:hover:after{
    bottom: 0;
    opacity: 1;
}
.pc_width .link_list a,
.pc_width .link a,
.pc_width .icon_link{
    display: inline-block;
    background:url('../images/link_arrow.png') no-repeat left;
    padding-left:20px;
}
.pc_width ul.link_list ul a,
.pc_width ul.link ul a{
    background-image: url('../images/link_arrow.png');
    background-position: left 5px;
    padding-left: 14px;
}
.pc_width .icon_link{
    display: inline-block;
    background-position: left 6px;
}
.pc_width .next_link{
	margin: 4em 0 !important;
	text-align:center;
}
.pc_width .lifecycle .next_link{
	margin: -2em 0 5em !important;
}
.pc_width .specialty .next_link{
	margin: 3em 0 -2em !important;
}
.pc_width .next_link a{
    color: #666;
    line-height: 3em;
    padding: 2em 3em 2em 0px;
	background:url(../images/link_top.png) no-repeat right;
}
.pc_width .next_link a:hover{
    color: #ff8e2f;
	background:url(../images/link_top_o.png) no-repeat right;
    /*IE8以下用*/
    filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#88000000,EndColorStr=#88000000);
}
/*.link_list .blank a{
    background-image: url('../images/icon_blank.png');
}
.link_list .pdf a{
    background-image: url('../images/icon_pdf.png');
}
.link_list .back a{
    background-image: url('../images/icon_back.png');
}*/


/* リスト
======================================= */
.pc_width dt{
    font-size:20px;
    margin-bottom:10px;
}


/* テーブル
======================================= */
.pc_width table{
    width: 100%;
    border-top: 1px solid #c2c2c2;
    border-collapse: collapse;
}
.pc_width th,
.pc_width td{
    text-align: center;
    padding: 30px 12px;
    vertical-align: middle;
}
.pc_width th{
    color: #ff8e2f;
  font-weight: normal;
    border-bottom: 1px solid #c2c2c2;
}
.pc_width td{
    border-left: 1px solid #c2c2c2;
    border-bottom: 1px solid #c2c2c2;
}
/*.table_p3 th,
.table_p3 td{
    padding: 3px;
}*/
.pc_width .table_t_center th,
.pc_width .table_t_center td{
    text-align: center;
}
.pc_width .table_v_center th,
.table_v_center td{
	vertical-align: middle;
}
.pc_width .table_tv_center th,
.pc_width .table_tv_center td{
    text-align: center;
    vertical-align: middle;
}

.pc_width .table1_1_1_1 th,
.pc_width .table1_1_1_1 td{
    width: 25%;
}
.pc_width .table1_2 th{
    width: 34%;
}
.pc_width .table1_2 td{
    width: 66%;
}
.pc_width .table1_2_2 th{
    width: 20%;
}
.pc_width .table1_2_2 td{
    width: 40%;
}
.pc_width .table1_3 th{
    width: 25%;
}
.pc_width .table1_3 td{
    width: 75%;
}
.pc_width .table2_1_2 .left_cell,
.pc_width .table2_1_2 .left_cell{
    width: 40%;
}
.pc_width .table2_1_2 .center_cell{
    width: 20%;
}
.pc_width .table3_1 .left_cell{
    width: 75%;
}
.pc_width .table3_1 .right_cell{
    width: 25%;
}
.pc_width .table2_3 .left_cell{
    width: 40%;
}
.pc_width .table2_3 .right_cell{
    width: 60%;
}

/* コラム
======================================= */
.pc_width .col,
.pc_width .left_col,
.pc_width .pc_left_col,
.pc_width .center_col{
    float: left;
    margin-bottom: /*1.5em*/0.5em;
}
.pc_width .right_col,
.pc_width .pc_right_col{
    float: right;
}
.pc_width .column1_1,
.pc_width .pc_column1_1,
.pc_width .column1_1_1,
.pc_width .pc_column1_1_1,
.pc_width .column1_1_1_1,
.pc_width .pc_column1_1_1_1{
    margin: 0 -20px 1.5em 0;
}
.pc_width .column1 > .col,
.pc_width .pc_column1 > .col{
    width: 100%;
}
.pc_width .column1_1 > .col,
.pc_width .pc_column1_1 > .col{
    width: 47%;
    margin-right: 3%;
}
.pc_width .column1_1_1 > .col,
.pc_width .pc_column1_1_1 > .col{
    width: 31%;
    margin-right: 2%;
}
.pc_width .column1_1_1_1 > .col{
    width: 22%;
    margin-right: 3%;
}
.pc_width .column1_2 > .left_col{
    width: 31.5%;
    margin-right: 3%;
}
.pc_width .column1_2 > .right_col{
    width: 65.5%;
}
.pc_width .column1_3 > .left_col,
.pc_width .column1_3 > .pc_left_col{
    width: 23.5%;
    margin-right: 3%;
}
.pc_width .column1_3 > .right_col,
.pc_width .column1_3 > .pc_right_col{
    width: 72.5%;
}
.pc_width .column1_4 > .left_col,
.pc_width .column1_4 > .pc_left_col{
    width: 18%;
    margin-right: 2%;
}
.pc_width .column1_4 > .right_col,
.pc_width .column1_4 > .pc_right_col{
    width: 80%;
}

.pc_width .column2_1 > .left_col,
.pc_width .column2_1 > .pc_left_col,
.pc_width .pc_column2_1 > .pc_left_col{
    width: 64%;
    margin-right: 4%;
}
.pc_width .column2_1 > .right_col,
.pc_width .column2_1 > .pc_right_col,
.pc_width .pc_column2_1 > .pc_right_col{
    width: 32%;
}
.pc_width .column2_1_1 > .left_col{
    width: 48%;
}
.pc_width .column2_1_1 > .center_col,
.pc_width .column2_1_1 > .right_col{
    width: 23%;
    margin-left: 3%;
}
.pc_width .column3_1 > .left_col,
.pc_width .pc_column3_1 > .left_col{
    width: 72%;
    margin-right: 3%;
}
.pc_width .column3_1 > .right_col,
.pc_width .pc_column3_1 > .right_col{
    width: 22%;
}
.pc_width .column2_3 > .left_col,
.pc_width .pc_column2_3 .left_col{
    width: 38%;
    margin-right: 4%;
}
.pc_width .column2_3 > .right_col,
.pc_width .pc_column2_3 > .right_col{
    width: 58%;
    margin-right: 0;
}
.pc_width .column3_2 > .left_col,
.pc_width .column3_2 > .pc_left_col,
.pc_width .pc_column3_2 > .pc_left_col{
    width: 58%;
    margin-right: 4%;
}
.pc_width .column3_2 > .right_col,
.pc_width .column3_2 > .pc_right_col,
.pc_width .pc_column3_2 > .pc_right_col{
    width: 38%;
    margin-right: 0;
}

/* ページトップ
======================================= */
.pc_width.nav_pc #pageTop{
    position: fixed;
    display: block;
    right: 0;
    bottom: 20px;
    z-index: 5000;
}
.pc_width #top #pageTop{
    display: none;
}
.pc_width.nav_sp #pageTop{
    float: right;
    opacity: 1.0 !important;
}
.pc_width #pageTop a{
    display: block;
    width: 55px;
    height: 46px;
    margin: 0 auto 40px;
    background: url('../images/pagetop.png') no-repeat;
    text-indent: -9999px;
}

/* footer
======================================= */
.pc_width .footer_logo a{
	margin:0 auto 60px;
    display: block;
    width: 361px;
    height: 63px;
    background: url('../images/footer_logo@2x.png') no-repeat;
    background: url('../images/footer_logo.png')\9;
    background-size:100%;
    text-indent: -9999px;
}
.pc_width #footer{
    font-size: 16px;
    background-color: #fff;
}
.pc_width #footer a{
    text-decoration: none;
}
.pc_width #footerTop {
    padding: 0 0 53px;
}
.pc_width #top #footerTop {
    padding-top: 93px;
}
.pc_width #footerTop .logo{
    margin-bottom: 53px;
}
.pc_width #footerTop .logo a{
    margin: 0 auto;
}
.pc_width #footerTop .nav ul{
    width: 660px;
    margin: 0 auto;
}
.pc_width #footerTop .nav li {
    float: left;
    margin-right: 32px;
}
.pc_width #footerTop .nav li.society {
    margin-right: 0;
}
.pc_width #footerBottom {
    height: 188px;
    background: url('../images/footer_bg.png');
}
.pc_width #footerBottom .inner{
    padding-top: 62px;
}
.pc_width #footerBottom ul,
.pc_width #footerBottom li{
    float: left;
}
.pc_width #footerBottom a{
    color: #333;
}
.pc_width #footerBottom a:hover{
    color:#ff8e2f;
}
.pc_width #footerBottom li{
    margin-right:38px;
}
.pc_width #footerBottom #sitepolicy a{
    margin-right: 21px;
}
.pc_width #footerBottom #copyright{
    float: right;
}

/* max 1150  */
.pc_width.less-w1150 .nav_sp #btnMenu{
    width: 5% !important;
}
.pc_width.less-w1150 #keyVisualInner,
.pc_width.less-w1150 .inner{
    width: auto;
    max-width: 1050px;
    margin-right: 25px;
    margin-left: 25px;
}
/* max 1150  */

/* min 1150  */
.pc_width.over-w1150 body{
    min-width: 1100px;
}

/* レイアウト大
======================================= */
.pc_width.over-w1150 .inner{
    width: 1100px;
}
/* min 1150  */


.sp_width body{
    font-size:16px;
    overflow-x: hidden;
}

/* ヘッダー
======================================= */
.sp_width #header{
    border-bottom:1px solid #d0d0d0;
}
/* #headerTop{
    padding: 7px 0 10px;
}*/
.sp_width #header .logo{
    float: left;
    padding-top:5px;
    margin-left: 10px;
    width:142px;
    max-height:60px;
}
.sp_width #header .logo span{
    display: none;
}
.sp_width #header .logo img{
    width: 100%;
}
.sp_width #headerBottom{
    display: none;
}
.sp_width #headerBottom .inner{
    display: table;
    width: 100%;
}

/* レイアウト大
======================================= */
.sp_width .inner{
    width: auto;
    /*margin: 0 1em;*/
}
.sp_width .inner .inner,
.sp_width .inner .h2_inner,
.sp_width .inner .h3_inner{
    margin: 0;
}

.sp_width .inner_sp{
    margin-bottom: 1.5em;
    padding-left: 10px;
    padding-right: 10px;
}
.sp_width #contents{
    line-height: 1.8;
}
.sp_width .section{
    /*margin-bottom: 1.5em;*/
    margin-bottom: 3.6em;
}
/*.society .section{
    margin-bottom: 2em;
}*/
/* コンテンツ
======================================= */
.sp_width #default h1{
    font-size: 24px;
    line-height: 100%;
}
.sp_width #keyVisual{
}
.sp_width.history #keyVisual,
.sp_width.technology #keyVisual,
.sp_width.safety #keyVisual,
.sp_width.society #keyVisual{
    border-bottom: 1px solid #e0e0e0;
}
.sp_width #keyVisual br{
    display: none;
}
.sp_width #keyVisualImg{
    display: none;
}
.sp_width #keyVisualInner{
    margin-bottom: .5em;
}
.sp_width #keyVisualInner h1{
    margin-top:48px;
    margin-bottom: .5em;
}
.sp_width #keyVisualInner p{
    margin: 0 10px;
}
.sp_width #keyVisualInner img{
    width: 100%;
}
.sp_width #keyVisualScroll{
    display: none;
}
.sp_width #contents .icon_page_top{
    display: block;
    margin: 0 auto 1em;
    width: 60px;
}
.sp_width h2{
    margin-bottom: 1em;
    line-height: 100%;
    font-size: 24px;
    text-align: center;
}
.sp_width .h2_inner{
    margin: 0 1em;
}
.sp_width h3{
    color: #ff8e2f;
    /*text-align: center;*/
    /*margin-bottom: 1em;*/
    font-weight:normal;
}
.sp_width.lifecycle h3{
    color: #ff9746;
    font-size: 22px;
    text-align: left;
    line-height: 100%;
    margin-bottom: 1em;
}
.sp_width .h3_inner{
    margin: 0 1em;
}
.sp_width.history .article,
.sp_width.technology .article,
.sp_width.safety .article,
.sp_width.society .article {
    padding-top: 20px;
}
.sp_width .article img {
    width: 100%;
}
.sp_width .article h2 img{
    width: inherit;
    height: 20px;
}
.sp_width .article h3 img {
    width: inherit;
}
.sp_width .article p{
    margin-bottom: 1em;
}
.sp_width .article .last_item{
    margin-bottom: 0 !important;
}
.sp_width .figure{
    margin-bottom: 1em;
}
.sp_width .article .figcaption{
    margin-top: .5em;
    margin-bottom: 0;
}

/* コラム
======================================= */
.sp_width #default .left_col,
.sp_width #default .sp_left_col{
    float: left;
}
.sp_width #default .right_col,
.sp_width #default .sp_right_col{
    float: right;
}
.sp_width .col{
    margin-bottom: 1.5em;
}
.sp_width .col img{
    width: 100%;
}
.sp_width .column1_3 > .left_col,
.sp_width .sp_column1_3 > .left_col{
    width: 22%;
    margin-right: 3%;
}
.sp_width .column1_3 > .right_col,
.sp_width .sp_column1_3 > .right_col{
    width: 72%;
}
.sp_width .column3_1 > .left_col,
.sp_width .sp_column3_1 > .left_col{
    width: 72%;
    margin-right: 3%;
}
.sp_width .column3_1 > .right_col,
.sp_width .sp_column3_1 > .right_col{
    width: 22%;
}

/* リンク
======================================= */
.sp_width a {
    color: #ba4720;
    text-decoration: none;
}
.sp_width a.link{
    display:block;
    padding-left: 18px;
    line-height: 20px;
    background: url('../images/link_arrow_sp.png') left 5px no-repeat;
    background-size: .5em;
    text-decoration: underline;
}
.sp_width a.link_blank{
    background: url(../images/link_blank.png) left no-repeat;
	background-size:18px 16px;
    padding: 0 0 0 24px;
    display:block;
    text-decoration: underline;
}
.sp_width .pc_device a.link:hover{
    text-decoration: none;
}
.sp_width .sp_device a.link:hover{
    text-decoration: underline;
}
.sp_width .link_list li{
    margin:1.5em 0;
}
.sp_width .next_link{
	display:none;
}
/* テーブル
======================================= */
.sp_width table,
.sp_width tbody,
.sp_width tr{
    display: block;
    width: 100%;
}
.sp_width tbody{
    display: block;
    width: auto;
    position: relative;
    overflow-x: auto;
    white-space: nowrap;
}
.sp_width tr{
/*
    display: inline-block;
*/
}
.sp_width th,
.sp_width td{
    display: block;
    text-align: center;
    width: 100%;
}
.sp_width.ie7 th,
.sp_width.ie8 th,
.sp_width.ie7 td,
.sp_width.ie8 td{
    clear: both;
    float: left;
}
.sp_width th{
    color: #ff8e2f;
}
.sp_width .article table img{
    width: inherit;
}
/* タブ
======================================= */
.sp_width .sub_nav{
    margin-bottom: 30px;
    background: #cacaca;
}
.sp_width .sub_nav ul{
    width: inherit !important;
    border-top: 1px solid #cacaca;
}
.sp_width .sub_nav ul:after{
    content: '';
    display: block;
    clear: both;
}
.sp_width .sub_nav li{
    float: left;
    width: 50%;
    border-bottom: 1px solid #cacaca;
}
.sp_width.specialty .sub_nav li.grade{
    width: 100%;
}
/*
.sp_width .sub_nav li:nth-child(2n){
    float: right;
    border: none;
}
.sp_width .sub_nav li:nth-child(2n+1){
    clear: both;
}
*/
.sp_width .sub_nav a{
    display: block;
    background: #ececec;
    line-height: 41px;
    text-align: center;
    text-decoration: none;
    color: inherit;
}
.sp_width .sub_nav .current a{
    color: #ff8e2f
}
.sp_width.history .episode a{
    border-right:1px solid #C9C9C9;
}
.sp_width.history .chronology a{
    border:none;
}
.sp_width.company .sub_nav li.about a,
.sp_width.company .sub_nav li.factory a,
.sp_width.specialty .sub_nav li.about a{
    border-right: 1px solid #cacaca;
}
.sp_width.specialty .sub_nav ul{
    position: relative;
    height:82px;
}
.sp_width.specialty .sub_nav li.about{
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    border:none;
    z-index: 100;
}
.sp_width.specialty .sub_nav li.grade{
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    border:none;
    z-index: 100;
}
.sp_width.specialty .sub_nav li.lifecycle{
    position: absolute;
    width: 100%;
    float: none;
    bottom: 0;
    border: none;
    border-top: 1px solid #cacaca;
    border-bottom:1px solid #cacaca;
    z-index: 101;
}


/* ページトップ
======================================= */
.sp_width #pageTop{
    margin: 40px 0px;
    text-align: center;
}
.sp_width #pageTop a{
    display: block;
    font-weight: bold;
}
.sp_width #pageTop span{
    display: none;
}
.sp_width #pageTop img{
    width: 88px;
}


/* フッター
======================================= */
.sp_width .footer_logo{
	text-align:center;
	margin-bottom:40px;
}
.sp_width .footer_logo a img{
	width:80%;
}
.sp_width .footer_logo a span{
	display:none;
	/*margin:0 auto 60px;
    display: block;
    width: 361px;
    height: 63px;
    background: url('../images/footer_logo@2x.png') no-repeat;
    background: url('../images/footer_logo.png')\9;
    background-size:100%;
    text-indent: -9999px;*/
}
.sp_width #footer a{
    color: #151515;
}
.sp_width #footerTop{
    margin-bottom: 20px;
}
.sp_width #footerTop .logo,
.sp_width #footerTop .nav img{
    display: none;
}
.sp_width #footerTop .nav ul{
    margin: 0 13px;
    border-top: 1px solid #d9d9d9;
}
.sp_width #footerTop .nav li{
    border-bottom: 1px solid #d9d9d9;
}
.sp_width #footerTop .nav a{
    display: block;
    line-height: 50px;
    text-align: center;
    text-decoration: none;
}
.sp_width #footerTop .nav a:hover,
.sp_width #footerTop .nav a.this_page,
.sp_width #footerTop .nav a.this_parent,
.sp_width #footerTop .nav a.this_url {
    color: #ff8e2f;
}
.sp_width #footerBottom ul{
    margin: 0 20px 20px;
}
.sp_width #footerBottom li{
}
.sp_width #footerBottom a{
    display: inline-block;
    line-height: 50px;
    text-decoration: none;
}
.sp_width #footerBottom a:before{
    content: '';
    display: inline-block;
    width: 6px;
    height: 10px;
    background: url('../images/arrow_black_sp.png');
    background-size: 6px 10px;
    margin-right: 8px;
}
.sp_width #footerBottom #copyright{
    height: 82px;
    padding-top: 52px;
    background: url('../images/footer_bg_sp.png');
    background-size: 260px 100px;
    text-align: center;
}

/* スマホ用ナビ
======================================= */
.nav_sp.nav_open body{
    overflow: hidden;
}
.nav_sp #header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    z-index: 5000;
    height:48px;
}
.nav_sp.pc_width #header{
    height: inherit;
}
/*.sp_width.nav_sp #contents{
padding-top: 71px;
}*/
.pc_width.nav_pc #contents{
    padding-top: 0;
}
.nav_sp #btnMenu{
    float: right;
    display: block;
    margin: 6px 10px 0 0;
    width:35px;
}
.nav_sp #btnMenu img{
    width: 100%;
    padding-top: 8px;
}
.nav_sp #header .nav{
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 20000px;
    margin: 0;
    z-index: -9999;
    /*-webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);*/
}
.nav_sp #header .nav.open{
    display: block;
    z-index: 10000;
    height: 20000px !important;
    /*-moz-transition: -moz-transform 0.5s linear;
    -webkit-transition: -webkit-transform 0.5s linear;
    -o-transition: -o-transform 0.5s linear;
    -ms-transition: -ms-transform 0.5s linear;
    transition: transform 0.5s linear;*/
}
.nav_sp #header .nav .btn_close{
}
.nav_sp #header .nav .btn_close img{
    display: block;
    position: absolute;
    width: 100%;
    top: 18px;
    right: 40px;
    width: 30px;
    z-index: 10001;
    cursor: pointer;
}
.nav_sp.sp_width #header .nav .btn_close img{
    right: 13px;
}
.nav_sp #header .nav ul{
    position: absolute;
    top: 49px;
    width: 100%;
    margin: 0;
    overflow: hidden;
    z-index: 10001;
}
.nav_sp #header .nav li {
    float: none;
    display: block;
    margin: 0;
    padding: 0;
}
.nav_sp #header .nav a{
    display: block;
    padding:1em 0px;
    color: #fff;
    text-decoration: none;
    font-size: 16px;
    text-align: center;
}
.nav_sp #header .nav img{
    display: none;
}
.nav_sp #header .nav_bg{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 10000px !important;
    background-color: #000;
    z-index: 10000;
}
.nav_sp #header .open .nav_bg{
    display: block;
}
.nav_sp #header .nav.hide {
    display: none;
    z-index: -9999px;
}
