

@charset "utf-8";


*{
box-sizing:border-box;
position:relative;}

body{	font-family: Arial, Roboto, “Droid Sans”, “游ゴシック”, YuGothic, “ヒラギノ角ゴ ProN W3”, “Hiragino Kaku Gothic ProN”, “メイリオ”, Meiryo, sans-serif;	font-size:14px;	font-size:95%\9; 	color:#313131; 	margin:0; 	padding:0;	-webkit-text-size-adjust: 100%;	width:100%; min-width: inherit;}

/*share*/
h2{width: 100%; max-width: 100%;}
h2 span:last-child{ display:block; margin-left: 0;}
.Catch{ font-size:1.4rem;}
a.CenBtn{width: 100%; min-width: inherit;}

#Header{width: 100%; padding:0 30px;}
#Header:after{content: "";display: table; clear: left;}
#Header h1{width: 200px; float: left;}
#Header h1 img{width: 170px;}
#Header a img{width: 170px;}
#Header ul{width: calc(100% - 200px);}
#Header .Inner{display: none;}
#Header .Inner ul{text-align:right;width: 100%;}
#Header .Inner li{ padding-right: 20px;display: inline-block;}
#Header .Inner li.Lang a { background: url(/common/img/icon_global.png) no-repeat left; background-size: auto 16px;   padding-left: 32px;}
#SPMenu{position:absolute;background:url(/common/img/icon_humb.png) no-repeat center center;background-size:19px 17px;text-indent:-9999px;display:block;right:16px;top:0px;width:39px;height:37px; cursor: pointer;}

#HeadLine .Inner p.Close{ display: none;}
.HeadlineClose{display: block;background: #005bac;padding: 15px; text-align:center; color: #fff; font-weight: bold; cursor: pointer;}
.HeadlineClose img{width: 7px; height: 7px; margin-right: 10px; vertical-align: middle;}
.HeadlineClose:before{content:""; width: 10px; height: 5px; background:url("/common/img/headline_corner.png") no-repeat; background-size: cover; display: block; position: absolute; left: 50%; margin-left: -5px; top: -5px;}

#Navigation{display: none;}
#Navigation > ul{width: 100%; background: none; padding-left: 0;display: block; height: auto; min-height: auto;
    justify-content: center; /* 子要素をflexboxにより中央に配置する */
    align-items: center;  /* 子要素をflexboxにより中央に配置する */}
#Navigation > ul li{width:100%; float: none; text-align: left; border-bottom:none;}
#Navigation > ul li.Recruit{display: none;}
#Navigation ul li a{padding:10px 20px 10px 35px; height: 100%; auto;background: url(/common/img/sp_arrow1.png) no-repeat center left 15px;background-size: 6px auto; color: #fff;}
	#Navigation div.SpOnly a.Recruit{ background: url("/common/img/icon_blank_white.png") no-repeat center left 12px; background-size: 15px auto;}
#Navigation ul ul{position: relative;top: 0; left: 0; width: 100%; flex-wrap: wrap}
#Navigation ul li.SpOnly{display: block;}
#Navigation div.SpOnly{display: block;}
#Navigation div.SpOnly a{ width: 100%; display: block; color: #fff; background:url(/common/img/sp_arrow1.png) no-repeat center left 15px;background-size: 6px auto; padding: 10px 20px 10px 35px;}
#Navigation div.SpOnly div.header-search{padding: 10px ; background: #fff; }
#Navigation div.SpOnly div.header-search #search {width: calc(100% - 15%); float: left; height: 35px;}
#Navigation div.SpOnly div.header-search .submit{margin: 0 !important; background: #666666 url(/common/img/icon_search.png) no-repeat center center; border: none;    height: 35px;    padding: 0 20px;    border-radius: 0;    text-indent: -9999px;    border-radius: 3px; width: 14%; float: right;}
#Navigation div.SpOnly div.header-search form{width: 100%; display: block;}
#Navigation div.SpOnly div.header-search form:after{content: ""; clear: both; display: table;}

#HeadLine .Inner{width: 100%;}
#HeadLine .Wrap{width: 100%;}
#HeadLine .HeadTopics{width: 50%; border-left: none;}
#HeadLine .HeadPro{width: 50%}
#HeadLine .Inner .Bloc{width: 100%;}
#HeadLine h2{ font-size:1rem;}
#HeadLine .Inner .Bloc p.Data{font-size:0.8rem;}
#HeadLine .Inner .Bloc p.Tit{font-size:1rem;}

#Index #MainImage{width: 100%;height: 300px;}
#Index #MainImage ul {width: 100%;height: 100%;}
#Index #MainImage ul li{overflow: hidden; height: 100%;position: relative;}
#Index #MainImage ul li img{min-width:auto; height: 100%}
#Index #MainImage .Copy{width: 300px; margin-left: -150px; top: 50px;}

#Index #Product{ padding: 0 0 30px}
#Index #Product .TabContents{ padding: 0 30px;}
#Index #Product h2{width: 100%; padding: 20px 15px;}
#Index #Product #TabCtrl {padding:0 30px;}
#Index #Product #TabCtrl li{width: 100%;}
#Contents #Product{padding: 30px;}

#Product #TabCtrl{width: 100%; padding: 0 0px; max-width: none; margin:0 auto 10px; position: relative; display: block;}
#Product #TabCtrl:after{ content: ""; width: 14px; height: 8px; display: block; background: url("/common/img/arrow_d_black.png"); background-size:cover; left: 50%; margin-left: -7px; position: relative;}
#Product #TabCtrl li{font-size:1rem; position: relative; width: 100%; border: 2px solid #333; background: none; text-align: left; font-size: 1.2rem; display: none;}
#Product #TabCtrl li.Active{display: block; background: #ededed; color: #333; font-weight: bold; position: relative; margin-bottom: 0;}
#Product #TabCtrl li.Active:before{content:""; background:#333 url("/common/img/icon_d_arrow.png") no-repeat center center; background-size: 12px 7px; width: 48px; height: 45px; display: block; position: absolute; right: 0; top: 0;}
#Product #TabCtrl li.Pop{ margin: 0 auto; border-bottom:0; background: #fff; display: block;}
#Product #TabCtrl li.Pop:last-child{border-bottom:2px solid #333;}
#Product #TabCtrl li.Pop:after{content:"";background: none;}
#Product #TabCtrl li:after{content: "";display: none;}

body.Products #Product{padding: 30px;}
body.Products .ImgTx{padding-top: 20px; margin-bottom: 20px;}
body.Products .ImgTx:first-of-type:before{display: none;}
body.Products .ImgTx:before{content: ""; width: 93px; height: 3px; display: block;
    background-color: #d8d8d8; position: absolute; top: 0;}
body.Products #Contents .ImgTx img{ max-width: 25%;}
.ImgTx p.Catch{font-size: 1.2rem; font-weight: bold;}
ul.Basic.Two li{float: none; width: 100%;}

#Product .TabContents{width: 100%; padding: 0 0px;}
#Product .TabBox ul{width: 100%; margin-bottom: 20px;}
#Product .TabBox ul li{width: 100%; margin: 0 0 3%; float: none;}
#Product .TabBox ul li a img{width: 70%;}
#Product .TabBox a.Btn{min-width:auto;width: 100%;}
#Product .TabBox ul li dl{margin-top: 0;}
#Product .TabBox ul li dt{ font-size:1.2rem;}
#Product .TabContents div.Cont11 h3{width: 100%; float: none;}
#Product .TabContents div.Cont11 ul{ width: 100%; float: none; padding-left: 0; border-left: 0;}
#Product .TabContents div.Cont11 ul li{ width:100%; display: block; border: 1px solid #ccc; margin-bottom: 0; border-bottom: none;}
#Product .TabContents div.Cont11 ul li:last-child{border-bottom: 1px solid #ccc;}
#Product .TabContents div.Cont11 ul li a{padding: 20px 20px 20px 40px;font-size: 1rem; display:block;background: url(/common/img/arrow_blue.png) no-repeat 20px center !important;}

#Index #PickUp{width: 100%; padding:40px 30px}
#Index #PickUp .Wrap{width: 100%;}
#Index #PickUp .Wrap ul{width: 75%; margin: 0 auto;}
#Index #PickUp .Prev{display: none;}
#Index #PickUp .Next{display: none;}
#Index #PickUp .slick-prev{width: 44px;height: 44px; background-size:cover; }
#Index #PickUp .slick-next{width: 44px;height: 44px; background-size:cover;}
#Index #PickUp .Wrap ul li img{margin: 0 auto; max-width: 100%;}

#Index #Feature{max-width: none; min-width: inherit; width: 100%;padding: 30px 30px 80px; height: auto;background:#333333 url(/img/wideimg1.jpg) no-repeat right bottom; background-size: 100% auto}
#Index #Feature .Wrapper{width: 100%;}
#Index #Feature .Wrapper .Lead{width:100%;}
#Index #Feature .Wrapper .Btn{width: 100%; margin-top: 20px; font-size: 0.8rem;}
#Index #Feature .Wrapper .Subtitle{ padding-top:0px; font-size:0.8rem;}
#Index #Feature .Wrapper .Tit{ margin-top: 20px; font-size:1.6rem; line-height: 2.6rem}
#Index #Feature .Wrapper .Lead{ margin-top: 20px;}

#Index #Tech{width: 100%;padding: 0 30px}
#Index #Tech a.Btn{width:100%; min-width:auto;}
.ModImgTxBox .Bloc{width: 100%; float: none; margin: 0 0 20px 0; border:none; display: block;}
.ModImgTxBox .Bloc:nth-child(2n){width: 100%; float: none; margin: 0 0 20px 0; border:none;}
.ModImgTxBox .Bloc:after{ content: ""; clear: both; display: table;}
.ModImgTxBox .Bloc .Cat{width:11rem; float: left; padding: 5px; margin:0 0 10px; font-size: 0.8rem;}
.ModImgTxBox .Bloc .Data{width: calc(100% - 11rem); float:left; padding: 5px; margin: 0 0 10px;background: #e6e6e6; font-size: 0.8rem; color: #333; text-align: center;}
.ModImgTxBox .Bloc .ImgWrap{width: 30%; float: left; max-width: none; height: auto;}
.ModImgTxBox .Bloc .ImgWrap img{width: 100%; margin: 0; position: relative; top: auto;left: auto;right: auto;bottom: auto;}
.ModImgTxBox .Bloc .Tit{width: 70%; padding:0 0 0 15px; float: left; margin: 0; font-size: 1rem;}
.ModImgTxBox .Bloc .Text{display: none;}
.ModImgTxBox .Bloc p{ font-size:1rem;}
.ModImgTxBox .Bloc:nth-child(2n){margin: 0 0% 3% 0}
.ModImgTxBox .Bloc:nth-child(4n){margin: 0 0% 3% 0}
#PathList{padding: 15px 30px;}
#PathList ul{ border:none; width: 100%; padding: 0;}

#Contents{ margin-bottom: 40px;}
#Contents .Inner{ width:100%; padding: 0 30px;}
#Contents .Inner p.PageLead, #editor-input-content p.PageLead{margin-bottom: 40px;}

.ConAre{margin-top: 0px;}
.ConAre .Wrapper{width: 100%; padding: 0 30px; margin: 30px auto 0;}
.ConAre .Wrapper > div{ height: auto;}
.ConAre .Wrapper div dl{position: relative; top: 0; border-right: none; min-height: auto;}
.ConAre .Wrapper > div.Phone{ width: 100%;float: none; border: none; border-bottom: 1px dotted #666;}
.ConAre .Wrapper > div.Phone dl{ background: url(/common/img/con_ico_tel.png) no-repeat 0px 0px;
padding-left: 100px;}
.ConAre .Wrapper > div.Web{width: 100%;float: none; margin-bottom: 20px;}
.ConAre .Wrapper > div.Web dl{background:  url(/common/img/con_ico_mail.png) no-repeat 0px 0px; padding-left: 100px; margin-bottom: 20px; min-height: 75px;}
.ConAre .Wrapper > div.Retailer{ width: 100%;  background: none; margin-bottom: 20px;}
.ConAre .Wrapper > div.Retailer dl{background: url(/common/img/con_ico_map.png) no-repeat 0px 0px; padding-left: 100px;background-size: 65px auto;  min-height: 75px;}

#Contents .Inner .ModImgTxBox{padding: 0;}
#Contents h1, #editor-input-content h1{ margin:35px 0;}

/*products-services*/
div.BigRetailers{background: none; padding-left: 0;}
div.BigRetailers:before{content:""; width: 100%; height:200px; background:url(/products-services/img/map.png) top center no-repeat; background-size: auto 200px; display: block; margin-bottom: 20px;}
#ProWideLink .Wrapper{width: 100%;}

#Footer{ padding:20px 0 0;}
#Footer .WideLink{background: url(/common/img/footer_logo.png) no-repeat center top; background-size: 55px auto; padding: 55px 0 0px;}
#Footer .WideLink li{ display:block; border-bottom: 1px solid #666; width: 100%; margin: 0;text-align: left
;}
#Footer .WideLink li:first-child{border-top:1px solid #666;}
#Footer .WideLink li a{ padding:15px 30px 15px 50px; display: block;background: url("/common/img/arrow_gray.png") no-repeat 30px center ;}
#Footer .HelpLink ul{ padding:0; margin-bottom: 20px;}
#Footer .HelpLink ul li{ display:block; border-bottom: 1px solid #666; width: 100%; margin: 0;text-align: left;}
#Footer .HelpLink ul li:after{content: "";}
#Footer .HelpLink ul li a{padding:15px 30px 15px 50px; display: block;background: url("/common/img/arrow_gray.png") no-repeat 30px center ;}
#FooterPathList{padding: 0; display: none;}

a{word-break: break-all; word-wrap: break-word;}
.Corner{padding: 15px; margin-bottom: 20px;}
.ImgGallery a{height: 85px;}

/*service*/
div.News ul li a{padding: 20px;}
div.News ul li a .Data{display: block; float: none;}
div.News ul li a .Tit{width: 100%; padding-left: 0; display: block; float: none;}
div.Left div.News a{ display: block;}
div.Left div.News a span.Data{ display: block;}

/*products
body.Products #Product{ padding: 30px 30px;}
#Contents h2{padding: 30px 0 10px; margin-bottom: 30px;}*/
body.Products .EntryBody{margin: 30px 0;}
.SpecTable{width:100%; overflow-x: scroll;}
.SpecTable:before{content: "※下の表はスワイプできます。"}
.SpecTable table{max-width: 1200px;}
.SpecTable table th{ white-space: nowrap;}
.SpecTable table td{ white-space: nowrap;}

#ProWideLink{height: auto; margin: 0; background: none}
#ProWideLink .Wrapper{}
#ProWideLink .Wrapper .Tit{width: 100%; background-image:none; text-align: center;}
#ProWideLink ul{ float:none;}
#ProWideLink ul > li{width: 100%; height: auto; float: none; display: block; border-bottom: 1px solid #999;}
#ProWideLink ul > li > a{display: block; height: auto; padding: 15px 10px; display: block;}
#ProWideLink ul > ul{ width: auto; display: none; position: relative; top: 0; height: auto; max-height: none; padding: 15px; background: #FFFFFF; margin: 0;}
#ProWideLink ul ul li{width: 100%; display: block;}
#ProWideLink ul ul li:last-child{border-bottom: none;}
#ProWideLink p.Tit{float: none; padding: 20px; font-size: 1.2rem; font-weight: bold; background: #005bac}
#ProWideLink ul li.Active:after{display: none;}

/*Ir*/

#Topics {padding: 40px 30px;}
#Topics h2{width: 100%; padding: 0; margin-bottom: 20px;}
#Topics h2 span:last-child{ margin-left: 0;}
#Topics ul li{padding: 0; background: #fff; margin-bottom: 20px;}
#Topics ul li a{display: block;}
#Topics ul li span.Cat{ display: block; width: 11rem; float: left; padding: 5px;font-size: 0.8rem; margin-bottom: 10px;}
#Topics ul li span.Data{ display: block; width: calc(100% - 11rem);float: left;background: #e6e6e6;text-align: left; padding: 0px; font-size: 0.8rem; margin-bottom: 10px;text-align: right;}
#Topics ul li span.Tit{ clear: left; width: 100%; display: block; font-size: 1rem; }
#Topics a.Btn{ min-width: auto; margin-bottom: 30px;width: 100%;}


body#Index #Topics{padding: 30px;}
body#Index #Topics ul{width: 100%; margin-bottom: 10px;}

#Topics{padding: 0;}
#Topics ul li span.Cat{width: 50%;}
#Topics ul li span.Data{width: 50%; background: none; float: left; text-align: right; padding: 5px;}
#Topics ul li{padding: 20px 0 0;}
#Topics ul li span.Tit{ padding: 0;}
#Topics ul li:after{content: ""; width: 93px; height: 3px; position: absolute; top: 0; left: 0; display: block;background-color: #d8d8d8;}
#Topics ul li:first-child:after{display: none;}
body.Ir #Product.IndexList{padding: 0 30px;}
body.Ir #Contents #Product .TabBox ul li{  padding-bottom: 30px; margin-bottom: 30px;}
body.Ir #Contents #Product .TabBox ul li img{display: block; margin: 0 auto 20px; max-width: 70%;}
body.Ir #Contents #Product .TabBox ul li dl{ text-align: left;}
body.Ir #Contents #Product .TabBox ul li dl dt{ border-bottom: 1px solid #999; width: 100%; font-size: 1.2rem; font-weight: bold; padding: 20px 0;}
body.Ir #Contents #Product .TabBox ul li dl dt a{ padding:0 0 0 20px;background: url(/common/img/arrow_blue.png) no-repeat left 0px center;}
body.Ir #Contents #Product .TabBox ul li dl dd{ border-bottom: 1px solid #999; width: 100%; margin-bottom: 40px;}
body.Ir #Contents #Product .TabBox ul li dl dd:last-of-type{broder-bottom:none;}
body.Ir #Contents #Product .TabBox ul li dl a{ padding: 15px 20px 15px 17px;background: url(/common/img/arrow_blue.png) no-repeat left center; color: #005bac; display: block; line-height: 1.2rem;}
#Contents #Product .TabBox ul li:before{content: ""; display: none;}

/*ニュース系*/
#Contents.Column .Left{width: 100%; margin-bottom: 40px;}
#Contents.Column .Right{ width: 100%; margin-bottom: 40px;}
.Right .Category h2{padding: 15px !important; font-size: 1.2rem !important;}
#Contents.Column h2 span:last-child{font-size: 0.8rem !important;}

.SiteMapStyle ul li{ width: 100%; margin: 0; float: none; border-bottom: 1px solid #ccc;}
.SiteMapStyle ul li a{ display: inline-block; background: url(/common/img/arrow_blue.png) no-repeat left center; padding-left: 16px; color: #005bac; padding: 15px 10px 15px 16px;}
div.News ul li a .Data{
    
}
/*アーカイブ*/
.ArchveLinkList li{
    width: 100% !important;
}

/*共通パーツ*/
#Contents img{max-width:100%;}
#Contents .EntryLeaf h1{font-size: 1.6rem !important;}
#Contents h1, #editor-input-content h1{font-size: 1.6rem !important;}
#Contents h2, #editor-input-content h2{ font-size: 1.4rem; margin-bottom: 10px;padding: 30px 0 10px;}
#Contents h3, #editor-input-content h3{ font-size: 1.2rem; margin-bottom: 10px;}
#Contents .Inner p.PageCatch, #editor-input-content p.PageCatch{font-size: 1.2rem; font-weight: bold;}
body .LatestEntry{margin-bottom: 40px;}
#Contents .Inner .Inner{padding: 0;}

.W10em{width:4rem;}
.W15em{width:6rem;}
.W20em{width:10rem;}
.W30em{width:15rem;}

/*ページ個別調整*/
/*form*/
.form-label{ width: 100%; float: none;}
.TextLayout .form-element{width: 100%; float: none; padding: 0; border: none;margin-bottom: 0;}
.form-element input{width: 100%; min-width: inherit;}
#PrivacyAgree{display: inline-block;}

body.Technology #Product .Inner{padding: 30px 0;}
body.Technology #Contents #Product .TabBox ul li{margin-bottom: 30px;}

.CoInfo .WordLayout, .IrManagement .WordLayout{display: block; font-weight: bold;}
.CoInfo .WordLayout > div, .IrManagement .WordLayout > div{width: 100%; margin-bottom: 10px; border: none; text-align: left; padding: 0;}
.CoInfo .WordLayout > div span, .IrManagement .WordLayout > div span{ display: inline-block; border-bottom: none; padding: 0; margin: 0 15px 0 0; line-height: 2.5rem; vertical-align: middle;}

body.Company #Product + div.Inner{padding-top: 30px;}
div.Anchor{margin: 30px 0;}
div.Anchor li{width: 100%; float: none; margin: 0;}

#HeadLine {padding: 20px 30px 30px;}
#HeadLine .HeadTopicsList ul li{padding-top: 15px;}
#HeadLine .HeadTopicsList ul li a{flex-wrap: wrap;}
#HeadLine .HeadTopicsList ul li a span.Cat{width: 50%;}
#HeadLine .HeadTopicsList ul li a span.Data{width: 50%; text-align: right;}
#HeadLine .HeadTopicsList ul li a span.Tit{width: 100%;}
#HeadLine .HeadTopicsList ul li:first-child{padding-top: 0;}
#HeadLine .HeadTopicsList ul li:first-child:after{display: none;}
#HeadLine .HeadTopicsList ul li:after {    content: "";    width: 93px;    height: 3px;    position: absolute;    top: 0;    left: 0;    display: block;    background-color: #d8d8d8;}

