@charset "utf-8";
@import url(https://fonts.googleapis.com/css?family=Lato:300);
/* INITIALIZE
2013.11.10 Reset CSS including HTML5 tags (with box-sizing to border-box)
Masayuki Fukumoto (OSSI Inc.)
==================================================== */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form, label,legend,table,
caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main,summary,time,mark,audio,video,a{margin:0; padding:0; border:0; font-size:100%; background:transparent; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main{display:block;}
nav ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:''; content:none;}
pre,code,kbd,samp{font-family:monospace,monospace; font-size:inherit;}
table{border-collapse:collapse; border-spacing:0;}
img{border:0;}
address,caption,cite,code,dfn,em,th,var,i{font-style:normal; font-weight:normal;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%; font-weight:normal;}
sup{vertical-align:text-top; font-size:75%;}
sub{vertical-align:text-bottom; font-size:75%;}
input,textarea,select,button{vertical-align:middle; font-family:inherit; font-size:inherit; font-weight:inherit; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box;}
a{outline:none;}
audio:not([controls]){display:none;}
time{display:inline;}
[hidden]{display:none;}
input::-ms-clear,input::-ms-reveal,input:focus::-ms-clear,input:focus::-ms-reveal{visibility:hidden; display:none;}
button::-moz-focus-inner,input[type="reset"]::-moz-focus-inner,input[type="button"]::-moz-focus-inner,input[type="submit"]::-moz-focus-inner,input[type="file"]>input[type="button"]::-moz-focus-inner{padding:0; border:0;}
/* BASE CONFIGURATIONS
==================================================== */
/*
gray:dedede
base:445963
main:009fe2
pink:d97d9a
green:80b780
border:999
*/

/* global 
=======================================================*/
@media screen and (min-width:641px){
html{overflow-y: scroll;}
}

body{font-size:13px; font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; color:#445963; line-height:1.75;-webkit-text-size-adjust:100%; text-size-adjust:100%;}
/* anchor and button transitions 
a img,
button,
input[type=button],
input[type=submit],
input[type=reset],
a{-webkit-transition:all 0.3s ease-out; -moz-transition: all 0.3s ease-out; -o-transition:all 0.3s ease-out; -ms-transition:all 0.3s ease-out; transition:all 0.3s ease-out; color:#06c;}
*/
a:hover,button:hover,input[type=button]:hover,input[type=submit]:hover,input[type=reset]:hover{cursor:pointer; text-decoration:none;}
a:link{color:#009fe2; text-decoration:none;}
a:visited{color:#009fe2; text-decoration:none;}
a:hover{color:#009fe2; text-decoration:underline;}
a:active{color:#445963;}
a:hover img{}
::-webkit-input-placeholder{color:#ccc; opacity:1;}
:-moz-placeholder{color:#ccc;}
::-moz-placeholder{color:#ccc; opacity:1;}
:-ms-input-placeholder{color:#ccc;}
button{border:none; padding:0; margin:0; background:none;}
article,
section{clear:both;}
article:after,
section:after{clear:both; content:''; display:block;}
#sensor{width:5px; height:5px; position:absolute; left:0; bottom:0;}
/* wrapper
======================================================= */
#wrapper{position:relative; padding-top:95px; min-width:1200px;}
/* header
======================================================= */
#siteHeader{height:95px; clear:both; position:fixed; width:100%; z-index:100; left:0; top:0; background:rgba(255,255,255,.8);}
#siteHeader .inner{width:1200px; height:95px; position:relative; margin:0 auto;}
#siteID{width:124px; height:40px; position:absolute; left:35px; top:30px;}

#sns {width:90px; height: 40px; position:absolute; left:188px; top:30px;font-size:0; }
#sns a {white-space:nowrap; text-indent:200%; overflow:hidden; width:45px; height:40px; display:inline-block;}
#sns a.tw { background:url(../images/ico_tw.png) center center no-repeat;}
#sns a.fb { background:url(../images/ico_fb.png) center center no-repeat;}

/* nav
======================================================= */
#global{width:800px; height:95px; clear:both; z-index:1; position:relative; left:50%; margin-left:-200px;}
#global:after{content:''; display:block; clear:both;}
#global ul{float:right; padding-top:30px;}
#global ul li{display:inline-block; font-size:18px; line-height:1.3; height:37px;}
#global ul li a{display:block;}
#global ul li{margin-right:40px;}
#global ul li:last-child{margin-right:0;}
#global ul li a{background:url(/common/images/gNav.png) no-repeat; width:90px; height:36px; display:block; text-indent:105%; white-space:nowrap; overflow:hidden;}
#global ul li.home     a{width: 52px; background-position:   0px 0;} 
#global ul li.services a{width:129px; background-position: -95px 0;}
#global ul li.company  a{width: 72px; background-position:-270px 0;}
#global ul li.contact  a{width: 108px; background-position:-385px 0;}
#global ul li.career   a{width:107px; background-position:-525px 0;}
#global ul li.column   a{width: 90px; background-position:-660px 0;}
#global ul li.home     a:hover{background-position:   0px -50px;}
#global ul li.services a:hover{background-position: -95px -50px;}
#global ul li.company  a:hover{background-position:-270px -50px;}
#global ul li.contact  a:hover{background-position:-385px -50px;}
#global ul li.career   a:hover{background-position:-525px -50px;}
#global ul li.column   a:hover{background-position:-660px -50px;}
.home     #global ul li.home     a{background-position:   0px -50px;} 
.services #global ul li.services a{background-position: -95px -50px;}
.company  #global ul li.company  a{background-position:-270px -50px;}
.contact  #global ul li.contact  a{background-position:-385px -50px;}
.career   #global ul li.career   a{background-position:-525px -50px;}
.column   #global ul li.column   a{background-position:-660px -50px;}
#global ul li ul,
#global ul.sub,
#siteHeader .toggle{display:none;}

/* footer
======================================================= */
#siteFooter{background:#009fe2; color:#fff; position:relative;}
#siteFooter .inner{width:1200px; margin:0 auto; padding:30px 0 30px 180px; position:relative; }
#siteFooter img.footLogo{position:absolute; left:0; top:35px;}
#siteFooter ul{}
#siteFooter ul li{list-style:none; float:left; padding:0 12px 0 0; margin:0 12px 6px 0; border-right:1px #fff solid; line-height:1.2;}
#siteFooter ul li:nth-child(6){clear:left;}
#siteFooter ul li a{color:#fff;} 
#siteFooter p{clear:both;}
#siteFooter ul.certificateLogo{ position:absolute; top:20px; right:0px;}
#siteFooter ul.certificateLogo li{ border:none; padding:0; margin:0 0 6px 12px;}
#siteFooter ul.certificateLogo li:nth-of-type(-n+4){display:none;}
.home #siteFooter ul.certificateLogo li:nth-child(-n+4){display:inline-block;}
.home #siteFooter ul li:nth-child(7){clear:left;}
/* breadcrumbs
======================================================= */
#breadcrumbs{background:#dadee1; clear:both;}
#breadcrumbs ul{clear:both; width:1200px; margin:0 auto; padding-left: 10px}
#breadcrumbs ul li{display:inline-block; padding:15px 0;}
#breadcrumbs ul li:before{content:'> '}
#breadcrumbs ul li:first-child:before{content:'';}
#breadcrumbs ul li a{color:#445963;}
#breadcrumbs br{display:none;}

/* main
======================================================== */
main{}
main .mainBlock {width:1200px; margin:0 auto; padding-top:60px; padding-bottom:120px;}
body.case main .mainBlock {padding-bottom:50px;}
main .mainBlock > .sideMenu {width:320px; padding-right:25px; float:left;}
main .mainBlock > .sideMenu h2 {font-size:19px; font-weight:bold; text-align:right; margin-bottom:18px;}
main .mainBlock:after {content:""; clear:both; display:block;}

/* top
=======================================================*/
body.home{}
body.home main{opacity:0; background:url(/images/mainBackground.jpg) no-repeat center top; padding-top:95px; position:relative; top:-95px; margin-bottom:-95px;}
body.home #siteHeader{background:rgba(255,255,255,1);}
#topPage a,
#topPage .topMain a,
#topPage .topMain a:after{transition:all .2s ease-in;}
/*.earthBg{width:100% height:853px; position:absolute; left:0; top:0; background:url(/images/introBg.png) no-repeat center 0; z-index:1; opacity:1;}*/
#topPage h1,
h1.ourServices{text-indent:102%; white-space:nowrap; background:url(/images/headings.png) no-repeat; overflow:hidden; height:60px;}
.topMainWrap{position:relative;}
.topMainWrap .bg{position:absolute; left:0; top:0; width:100%; height:100%; background:#fff;}
.topMain{width:1200px; margin:0 auto; height:853px; position:relative; padding:130px 0 0; position:relative;}
.topMain .earth{width:1200px; height:853px; position:absolute; left:0; top:0; background:url(/images/introPc.png) top center no-repeat; z-index:1; opacity:0;}
#topPage .topMain .logo{width:360px; height:100px; overflow:hidden; margin:0 auto; position:relative; z-index:20; opacity:0; top:50px;}
#topPage .topMain .logo img{display:block;}
#topPage .topMain h1{background:url(/images/intro.png) no-repeat; width:554px; height:88px; overflow:hidden; text-indent:600px; white-space:nowrap; margin:0 auto; position:relative; z-index:20; opacity:0;}
.topMain .intro{width:388px; border:1px #bbb solid; float:left; background-color:#fff; background-repeat:no-repeat; background-position:center top; position:relative; z-index:30; opacity:0; top:50px;}
.topMain .intro.service{background-image:url(/images/imgService.jpg);}
.topMain .intro.works{background-image:url(/images/imgWorks.jpg); margin:0 18px;}
.topMain .intro.career{background-image:url(/images/imgCareer.jpg);}
.topMain .intro h2{font-size:18px; font-weight:bold; margin-bottom:5px;}
.topMain .intro p{margin-bottom:10px;}
.topMain .intro p.link{position:relative; font-weight:bold;}
.topMain .intro p.link:before{content:''; background:url(/common/images/sprite_2x.png) no-repeat 0 0; background-size:500px auto; width:25px; height:25px; display:inline-block; vertical-align:middle; margin:-2px 5px 0 0;}
.topMain .intro a{display:block; padding:275px 30px 20px 30px; text-decoration:none; color:#333; position:relative;}
.topMain .intro a .link{color:#1894d0;}
.topMain .intro a:after{position:absolute; left:0; top:0; width:100%; height:100%; background:rgba(255,255,255,.7); content:''; display:block; opacity:0;}
.topMain .intro a:hover:after{opacity:.7;}
.topMain .intro a:hover .link{text-decoration:underline;}
.topNews{height:566px; padding-top:60px;}
.topNews h1{width:1200px; margin:0 auto 25px;}
.topNews p{text-align:center; margin-bottom:15px;}
.topNews p a{text-decoration:underline;}
.headline{height:345px; overflow:hidden; position:relative;}
.headline .inner{width:100%; height:325px; position:absolute; top:10px; left:50%; margin-left:-600px;}
.headline .newsBlock{position:absolute; left:0px; top:0px; width:100%; overflow:hidden; margin:0 -10px;}
.newsBlock div.entry{width:272px; border:1px #bbb solid; background:#fff; float:left; margin-right:10px; margin-left:10px;}
.newsBlock div.entry a{text-decoration:none; display:block; width:100%; height:100%; padding:0 15px 20px; background-position:center top; background-repeat:no-repeat; position:relative;}
.newsBlock div.entry.new a:after {content:"NEW!!"; position:absolute; background-color:#ff8f00; line-height:1.0; padding:8px 14px; font-size:14px; display:block; left:0; top:0; color:#FFFFFF;}
.newsBlock div.entry a figure{width:270px; height:178px; background-position:center center; background-repeat:no-repeat; background-size:contain; margin:0 -15px 15px;}
.newsBlock div.entry a:hover{opacity:.4;}
.newsBlock div.entry dt{font-size:14px; margin-bottom:10px;}
.newsBlock div.entry dt i{font-size:12px; text-align:center; min-width:68px; padding:5px; display:inline-block; line-height:1.2; color:#fff; margin-right:5px;}
.newsBlock div.entry dd{font-size:18px; line-height:1.5;}
.newsBlock div.entry.news  a dt{color:#009fe2;}
.newsBlock div.entry.news  a dt i{background:#009fe2;}
.newsBlock div.entry.event a dt{color:#8fa3ad;}
.newsBlock div.entry.event a dt i{background:#90a4ae;}
.newsBlock div.entry.other a dt{color:#8fa3ad;}
.newsBlock div.entry.other a dt i{background:#455a64;}
.newsBlock div.entry a dd{color:#445963;}
.topService{height:2990px; margin:0 auto; padding-top:100px;}
#topPage .topService h1{background-position:center -60px; margin-bottom:110px;}
.topService h2{background:url(/images/topH1ttl.png) left top no-repeat; overflow:hidden; text-indent:102%; white-space:nowrap;  margin-bottom:40px; }
.topService h3{font-size:45px; line-height:1.2; margin-bottom:30px;}
.topService p{margin-bottom:50px;}
.topService a{display:inline-block; position:relative; font-size:16px; color:#fff; padding:15px 30px; background:#009fe2; min-width:320px;}
.topService a:hover{text-decoration:none; opacity:.4;}
.topService a:after{content:''; display:block; width:25px; height:25px; background:url(/common/images/sprite_2x.png) no-repeat -100px 0; background-size:500px auto; position:absolute; right:10px; top:50%; margin-top:-12.5px;}

.topService section{position:relative;}
.topService section.si{height:820px;}
.topService section.si .inner{width:1178px; margin:0 auto; padding-right:550px;}
.topService section.si .bg{height:820px; width:100%; position:absolute; left:-16px; top:50px; background:url(/images/categoryImg01.png) center top no-repeat; opacity:0;}
.topService section.si h2{width:554px; height:140px; line-height:1.0; font-size:0px;}
.topService section.si p{padding-right:180px;}
.topService section.mobile{height:1055px;}
.topService section.mobile .inner{width:1200px; height:1055px; margin:0 auto; padding:270px 0 0 730px;}
.topService section.mobile .bg{width:100%; height:1055px; position:absolute; left:0; top:100px; background:url(/images/categoryImg02.png) center 150px no-repeat; opacity:0;}
.topService section.mobile h2{width:291px; height:121px; background-position:0 -180px; margin-bottom:30px;}
.topService section.mobile h2:before{background-position:-150px -50px; top:-20px;}
.topService section.cloud{height:838px;}
.topService section.cloud .inner{width:1140px; height:838px; padding:260px 600px 0 0; margin:0 auto;}
.topService section.cloud .bg{width:100%; height:838px; position:absolute; left:-25px; top:120px; background:url(/images/categoryImg03.png) center center no-repeat; opacity:0;}
.topService section.cloud h2{margin-bottom:40px; width:346px; height:87px; background-position:0 -360px;}
.topService section.cloud h2:before{background-position:-300px -50px; top:-20px;}
.topCases{width:100%; height:620px; padding-top:85px; margin:0 auto;}
#topPage .topCases h1{background-position:center -120px; margin-bottom:20px;}
#topPage .topCases h1 + p {text-align:center;  width:320px; height:55px; line-height:55px; border:1px solid #009fe2; margin:0 auto 30px; font-size:17px; font-weight:bold;}
#topPage .topCases h1 + p a {display:block; width:100%; height:100%;}
.topCases .case{width:270px; border:1px #bbb solid; float:left; margin:0 10px 20px;}
.topCases .case a{text-decoration:none; display:block; color:#445963; height:100%;}
.topCases .case a:hover{opacity:.4;}
.topCases .case h2{text-align:center; padding:3px; color:#fff;}
.topCases .case.si h2{background:#d97d9a;}
.topCases .case.mobile h2{background:#59c1ec;}
.topCases .case.cloud h2{background:#80b780;}
.topCases .case p{font-size:17px; padding:10px 15px;}
.topCases .case ul{padding:0 15px 15px;}
.topCases .case li{display:inline-block; background:#808f9c; border-radius:4px; margin-right:5px; color:#fff; font-size:12px; padding:2px 8px; line-height:1.2;}
.topPlatform{background:#ebf1f5;}
.topPlatform .inner{width:1144px; padding:70px 0; margin:0 auto 0; clear:both;}
.topPlatform .inner:after{content:''; display:block; clear:both;}
#topPage .topPlatform h1,
h1.ourServices{background-position:center -180px; margin-bottom:40px;}
.topPlatform .item{width:270px; border:1px #bbb solid; float:left; margin:0 8px; background:#fff;}
.topPlatform .item{margin-bottom:10px;}
.topPlatform .item h2{padding:0 15px 5px; font-size:18px; font-weight:bold; text-align:center; line-height:1.3;}
.topPlatform .item p{padding:0 15px 15px; color:#8fa3ad;}
.topPlatform .item a{display:block; position:relative;color:#fff; padding:12px; text-align:center; background:#009fe2;}
.topService a:hover{text-decoration:none; opacity:.4;}
.topPlatform .item a:hover{text-decoration:none; opacity:.4;}
.topPlatform .item a:after{content:''; display:block; width:25px; height:25px; background:url(/common/images/sprite_2x.png) no-repeat -100px 0; background-size:500px auto; position:absolute; right:10px; top:50%; margin-top:-12.5px;}
/* common 
=======================================================*/
article>header{margin:0 auto; text-align:center; padding:60px 0 0 0;}
article>header h1{font-size:46px; font-weight:normal; text-align:center; line-height:1.2;}
article>header h1 i{font-size:30px; color:#009fe2; display:block; font-family: 'Lato', sans-serif;}


/* services
=======================================================*/

/* index */
.services #wrapper{min-width:1200px;}
.servicesIndex{width:1168px; margin:0 auto;}
.servicesIndex header{height:400px;}
.servicesIndex header h1{background:url(/common/images/h1Ttl.png) no-repeat; background-position:0 0; width:317px; height:95px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.servicesIndex header nav{padding-top:60px;}
.servicesIndex header nav li{width:180px; display:inline-block; list-style:none; vertical-align:top; line-height:1.4;}
.servicesIndex header nav li a{padding-top:100px; display:block; position:relative; min-height:160px;}
.servicesIndex header nav li a:before{content:''; display:block; background:url(/common/images/sprite_2x.png) no-repeat; background-size:500px auto; position:absolute; width:100px; height:100px; left:50%; top:0; margin-left:-50px;}
.servicesIndex header nav li a.si:before{background-position:0 -275px;}
.servicesIndex header nav li a.mobile:before{background-position:-100px -275px;}
.servicesIndex header nav li a.cloud:before{background-position:-200px -275px;}
.servicesIndex header nav li a.si.active:before{background-position:0 -175px;}
.servicesIndex header nav li a.mobile.active:before{background-position:-100px -175px;}
.servicesIndex header nav li a.cloud.active:before{background-position:-200px -175px;}
.servicesIndex header nav li a{color:#b5bdc1;}
.servicesIndex header nav li a.active{color:#445963;}
.servicesIndex header nav li a i{color:#b5bdc1; display:block; font-family: 'Lato', sans-serif; font-size:10px;}
.servicesIndex header nav li a.active i{color:#009fe2;}
.servicesIndex header nav li a:hover{text-decoration:none; opacity:.4;}
.serviceList{padding-bottom:80px;}
.serviceList div{width:272px; border:1px #bbb solid; float:left; margin:10px; background:#FFF;}
.serviceList div a{display:block; padding:0 15px 15px; color:#445963;}
.serviceList div a:hover{text-decoration:none; opacity:.4;}
.serviceList div figure{margin:0 -15px 10px;}
.serviceList div h2{font-weight:bold; font-size:18px;}
/* contents */
.servicesContent{}
.servicesContent header{background:url(/services/images/contentHeaderShade.png) repeat-x bottom; padding:10px 0 15px; margin-bottom:60px; text-align:left;}
.servicesContent header h1{text-align:left;}
.servicesContent header .inner{width:1200px; min-height:480px; padding:70px 20px 30px 610px; margin:0 auto; position:relative;}

.servicesContent header .inner .mainVisual{width:720px; min-height:450px; position:absolute; left:-90px; bottom:0; z-index:-1; background-position:center bottom; background-repeat:no-repeat; background-size:contain;}
.servicesContent header .inner .mainVisual img{display:none;}

/*
.servicesContent header.ms .inner {padding:120px 0px 0 640px;}
.servicesContent header.infra .inner {padding:120px 0px 0 650px; height:540px;}
.servicesContent header.seap .inner{padding:60px 0px 0 650px;}



.servicesContent header.ms .inner .mainVisual{width:952px; height:450px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvWindows.jpg) left bottom no-repeat; margin-left:-230px;}
.servicesContent header.infra .inner .mainVisual{width:966px; height:500px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvInfra.jpg) left bottom no-repeat; margin-left:-180px;}
.servicesContent header.largescale .inner .mainVisual{width:846px; height:538px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvLargescale.jpg) left bottom no-repeat; margin-left:-180px;}
.servicesContent header.erp .inner .mainVisual{width:681px; height:476px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvErp.jpg) left bottom no-repeat;}
.servicesContent header.speed .inner .mainVisual{width:841px; height:538px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvSpeed.jpg) left bottom no-repeat; margin-left:-180px;}
.servicesContent header.kaito .inner .mainVisual{width:771px; height:405px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvKaito.jpg) left bottom no-repeat; margin-left:-180px;}
.servicesContent header.any3 .inner .mainVisual{width:685px; height:368px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvAny3.jpg) left bottom no-repeat; margin-left:-50px;}
.servicesContent header.seap .inner .mainVisual{width:904px; height:501px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvSeap.jpg) left bottom no-repeat; margin-left:-180px;}
.servicesContent header.beacapp .inner .mainVisual{width:683px; height:419px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvbeacapp.jpg) left bottom no-repeat;}
.servicesContent header.aws .inner .mainVisual{width:683px; height:461px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvAws.jpg) left bottom no-repeat; margin-left:-100px;}
.servicesContent header.ibm .inner .mainVisual{width:685px; height:466px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvIbm.jpg) left bottom no-repeat; margin-left:-50px;}
.servicesContent header.robot .inner .mainVisual{width:796px; height:511px; position:absolute; left:0; bottom:0; z-index:-1; background:url(/services/images/mvRobot.jpg) left bottom no-repeat; margin-left:-100px;}
.servicesContent header.ms .mainVisual img,
.servicesContent header.infra .inner .mainVisual img,
.servicesContent header.largescale .inner .mainVisual img,
.servicesContent header.erp .inner .mainVisual img,
.servicesContent header.speed .inner .mainVisual img,
.servicesContent header.any3 .inner .mainVisual img,
.servicesContent header.seap .inner .mainVisual img{display:none;}
*/

.servicesContent header h1{font-size:46px; font-weight:normal; line-height:1.2; margin-bottom:20px;}
.servicesContent header p{margin-bottom:20px;}
.servicesContent header p.lead{font-size:38px; line-height:1.2; margin-bottom:20px; font-weight:bold;}
.servicesContent section{width:1140px; margin:0 auto 120px;}
.servicesContent section figure{width:540px;}
.servicesContent section figure img{width:100%; height:auto;}
.servicesContent section.figureL figure{float:left;}
.servicesContent section.figureR figure{float:right;}
.servicesContent section .content{width:570px;}
.servicesContent section.figureL .content{float:right;}
.servicesContent section.figureR .content{float:left;}
.servicesContent section .content h2{font-size:40px; line-height:1.2; margin-bottom:20px;}
.servicesContent section .content p{margin-bottom:30px;}
.servicesContent section .notelogo{font-size:13px;}
.servicesContent section .notelogo:after{content:""; clear:both; display:block;}
.servicesContent section .notelogo dt{float:left; margin-right:10px;}
.servicesContent footer{background:#e9eef1; margin-bottom:50px; padding:60px 0;}
.servicesContent footer ul{text-align:center;}
.servicesContent footer ul li{display:inline-block; line-height:1.0; text-align:left;}
.servicesContent section .content a{margin-bottom:10px;}
.servicesContent header a.blank{margin-top:15px;}
.servicesContent header a,
.servicesContent section .content a,
.servicesContent footer ul li a{display:inline-block; position:relative; font-size:16px; color:#fff; padding:20px 40px; background:#009fe2; min-width:500px; border-radius:10px;}
.servicesContent header a{margin-bottom:10px;}
.servicesContent footer ul li a{font-size:17px; color:#fff; min-width:352px; padding:25px 26px 25px 56px; margin-right:15px;}
.servicesContent footer ul li:last-child{margin-right:0px;}
.servicesContent header a.blank:hover,
.servicesContent section .content a:hover,
.servicesContent footer ul li a:hover{text-decoration:none; opacity:.4;}
.servicesContent header a.blank:after,
.servicesContent section .content a:after,
.servicesContent footer ul li a:after{content:''; display:block; width:25px; height:25px; background:url(/common/images/sprite_2x.png) no-repeat -100px 0; background-size:500px auto; position:absolute; right:20px; top:50%; margin-top:-12.5px;}
.servicesContent header a.blank,
.servicesContent section .content a.blank{padding-left:50px;}
.servicesContent header a.blank:before,
.servicesContent section .content a.blank:before,
.servicesContent footer ul li a:before{content:''; display:block; width:25px; height:25px; background:url(/common/images/sprite_2x.png) no-repeat -300px -25px; background-size:500px auto; position:absolute; right:auto; left:20px; top:50%; margin-top:-12.5px;}
.servicesContent section.related{margin-bottom:40px; width:1140px;}
.servicesContent section.related > h2{font-size:40px; text-align: center; margin-bottom:20px;}
.servicesContent section.related .item{width:268px; margin:8px;}
.servicesContent section.related .item figure{width:100%;}
.servicesContent section.related .item img{max-width:100%; height:auto;}
.servicesContent section.related div a{padding:0 0 15px;}
.servicesContent section.related div a figure{margin:0 0 15px;}
.servicesContent section.related div a h2,
.servicesContent section.related div a p{padding:0 15px;}



/* case
=======================================================*/

/* index */
.case #wrapper{min-width:1200px;}

.caseIndex{width:1168px; margin:0 auto;}
.caseIndex .topCases{padding:20px 0 50px; clear:both; height:auto;}
.caseIndex .topCases:after{content:''; display:block; clear:both;}
.caseIndex header h1{background:url(/common/images/h1Ttl.png) no-repeat; background-position:0 -665px; width:180px; height:95px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.caseIndex header nav{padding:40px 0 70px; position:relative; width:1128px; margin:0 auto; clear:both;}
.caseIndex header nav:after,
.caseIndex header nav .category:after{content:''; display:block; clear:both;}
.caseIndex header nav .category{width:640px; margin:0 auto; border:1px #ccc solid; border-radius:5px; clear:both; overflow:hidden; text-align:center;}
.caseIndex header nav .category li{width:136px; float:left; border-right:1px #ccc solid;}
.caseIndex header nav .category li:nth-child(1){width:126px;}
.caseIndex header nav .category li:nth-child(2){width:240px;}
.caseIndex header nav .category li:last-child{border-right:none;}
.caseIndex header nav li a{display:block; color:#bababa; height:27px; line-height:27px;}
.caseIndex header nav .category li a:hover,
.caseIndex header nav .category li a.active{background:#009fe2; color:#fff; text-decoration:none;}
.caseIndex header nav .keyword{position:absolute; right:-8px; top:38px;width:195px; height:40px;}
.caseIndex header nav .keyword input[type=text] { border:1px #ccc solid; border-radius:5px; padding:0 5px;clear:both; overflow:hidden;width:195px; height:40px; font-size:15px; line-height:40px; text-align:left;}
.caseIndex header nav .keyword button {content:""; position:absolute; right:0; top:0;width:40px; height:40px; border-radius: 0 5px 5px 0; background:url(../images/icon_search.png) center center no-repeat #009fe2;}
.caseIndex .caseBlock:after{content:''; display:block; clear:both;}
.casesList{width:1144px; margin:0 auto;padding-bottom:15px; min-height:413px;}
.casesList .caseBlock {clear:both;}
.casesList .case{width:270px; border:1px #bbb solid; float:left; margin:0 8px 20px;}
.casesList .case a{text-decoration:none; display:block; color:#445963; height:100%;}
.casesList .case a:hover{opacity:.4;}
.casesList .case h2{text-align:center; padding:3px; color:#fff;}
.casesList .case.si h2{background:#d97d9a;}
.casesList .case.mobile h2{background:#59c1ec;}
.casesList .case.cloud h2{background:#80b780;}
.casesList .case p{font-size:17px; padding:10px 15px;}
.casesList .case ul{padding:0 15px 15px;}
.casesList .case li{display:inline-block; background:#808f9c; border-radius:4px; margin-right:5px; color:#fff; font-size:12px; padding:2px 8px; line-height:1.2;}
.casesList + .pager {padding-top:15px;}
.caseIndex .caseBlock.si .case.mobile,
.caseIndex .caseBlock.si .case.cloud,
.caseIndex .caseBlock.mobile .case.si,
.caseIndex .caseBlock.mobile .case.cloud,
.caseIndex .caseBlock.cloud .case.si, 
.caseIndex .caseBlock.cloud .case.mobile{display:none;}


/*
ページ下部　関連製品など

*/
.overSection {margin:0;padding:40px 0 20px; }
.overSection  section.related{width:1144px; margin:0 auto; height:auto;}
.overSection  section.related > h2{font-size:40px; text-align: center; line-height:1.0;margin-bottom:15px;}
.overSection  section.related > h2 span {display:block; font-size:12px; margin-top:8px;}
.overSection  section.related .case{width:268px; margin:8px;}
.overSection  section.related .case figure{width:100%;}
.overSection  section.related .case img{max-width:100%; height:auto;}
.overSection.serviceList {border-bottom:1px solid #FFF; background: url(../images/relatedServiceShade.png) left top repeat-x #009FE2;}
.serviceList section.related {font-size:0; text-align:center;}
.serviceList section.related > h2 {color:#fff;}
.serviceList section.related div.item {float:none; display:inline-block; margin:0 7px; vertical-align:top;}

.serviceList section.related div.item a{padding:0 0 15px;}
.serviceList section.related div.item a figure{margin:0 0 15px;}
.serviceList section.related div.item a h2,
.serviceList section.related div.item a p{padding:0 15px;}
.serviceList section.related div.item a p{font-size:13px;}
.overSection.caseList {}
.overSection.caseList section.related {width:100%;}
.overSection.caseList section.related > h2 {color:#009fe2;}
.caseList .case{width:270px; border:1px #bbb solid; float:left; margin:0 8px;}
.caseList .case a{text-decoration:none; display:block; color:#445963; height:100%;}
.caseList .case a:hover{opacity:.4;}
.caseList .case h2{text-align:center; padding:3px; color:#fff;}
.caseList .case.si h2{background:#d97d9a;}
.caseList .case.mobile h2{background:#59c1ec;}
.caseList .case.cloud h2{background:#80b780;}
.caseList .case p{font-size:17px; padding:10px 15px;}
.caseList .case ul{padding:0 15px 15px;}
.caseList .case li{display:inline-block; background:#808f9c; border-radius:4px; margin-right:5px; color:#fff; font-size:12px; padding:2px 8px; line-height:1.2;}


/* company
=======================================================*/
/* index introduction */
.companyInf{width:1140px; margin:0 auto; padding-bottom:100px;}
.companyInf.blogIndex {width:1148px;}
.companyInf header{height:320px; text-align:center;}
.companyInf.blogIndex header{height:240px;}
.companyInf header h1,
.companyInf header h1{background:url(/common/images/h1Ttl.png) no-repeat; background-position:0 -120px; width:180px; height:95px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.companyInf header nav,
.companyInf header nav{margin-top:50px;}
.companyInf header nav li{display:inline-block; margin:0 15px; font-size:15px;}
.companyInf header nav li a{color:#445963;}
.companyInf header nav li a.active{color:#009fe2;}
.companyInf .intro{padding-left:490px; position:relative;}
.companyInf .intro .lead,
.companyInf .intro p.signature{font-size:30px; font-family:"游明朝体", "Yu Mincho", YuMincho,"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "MS PMincho",  serif; line-height:1.4; margin-bottom:30px;}
.companyInf .intro p.signature small{font-size:16px; padding-right:5px;}
.companyInf .intro p{font-size:14px; margin-bottom:1.2em;}
.companyInf .intro figure{width:453px; height:354px; position:absolute; left:0; top:10px;}

.companyInf .intro.second{padding-left:0px; padding-top: 30px; padding-right: 490px; position:relative; }
.companyInf .intro.second figure{width:453px; height:354px; position:absolute; left:680px; top:40px;}

.companyInf .outline{}
.companyInf .outline .colMap{width:440px; float:left;}
.companyInf .outline .colInf{width:600px; float:right;}
.companyInf .outline .colMap .logo{text-align:center; margin-bottom:70px;}
.companyInf .outline dl{}
.companyInf .outline dl dt{margin-bottom:5px; color:#8fa3ad;}
.companyInf .outline dl dd{font-size:15px; margin-bottom:30px;}
.companyInf .outline .colMap dl dd{font-size:13px;}
.companyInf .outline td{padding-right:20px;}
.companyInf .outline a.btn{display:inline-block; position:relative; font-size:13px; color:#fff; padding:5px 25px 5px 10px; background:#009fe2; border-radius:5px; margin-top:10px; min-width:200px;}
.companyInf .outline a.btn:hover{text-decoration:none; opacity:.4;}
.companyInf .outline a.btn:after{content:''; display:block; width:25px; height:25px; background:url(/common/images/sprite_2x.png) no-repeat -100px 0; background-size:500px auto; position:absolute; right:5px; top:50%; margin-top:-12.5px;}

/*アツラエ追加*/
.companyInf .outline .colInf .container {display: flex; align-items: center;}
.companyInf .outline .colInf .container .item {flex: 1;}
/**/

.companyInf .policies,
.companyInf .management{width:740px; float:right; border-left:1px #ccc solid; padding:0 40px 40px; margin-right:50px;}
.companyInf .policies h2,
.companyInf .management h2{font-size:30px; font-family:"游明朝体", "Yu Mincho", YuMincho,"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "MS PMincho",  serif; line-height:1.4; margin-bottom:15px;}
.companyInf .learning h2{font-size:30px; line-height:1.4; margin-bottom:15px;}
.companyInf .policies p,
.companyInf .management p{margin-bottom:1.2em; font-size:14px;}
.companyInf .policies h3{margin-bottom:5px; color:#8fa3ad;font-size: 20px;}
.companyInf .policies h4{border-bottom:solid 1px #ccc; font-size: 16px; margin-bottom:1.2em;}
.companyInf .policies ul{margin:0.5em 0 1.5em 1.5em; list-style:disc; font-size:14px;}
.companyInf .policies ol{margin:0 0 0 1.5em; font-size:14px;}
.companyInf .policies ol li,
.companyInf .policies ul li{margin-bottom:1.5em;}
.companyInf .policies ol li li{margin-bottom:.5em;}
.companyInf .policies .box-style {border: solid 1px #ccc; padding: 20px; margin: 0 0 1.5em 0;}
#hstList{width:900px; margin:0 auto; background:url(/company/images/historyBg.png) repeat-y center top; position:relative;}
#hstList header{padding:0 10%; height:60px; position:absolute; left:0; top:0; width:100%;}
#hstList header div{width:40%; float:left; font-size:20px; line-height:1.4; border-bottom:1px #ccc solid; height:60px;}
#hstList header div:first-child{}
#hstList header div:last-child{float:right;}
#hstList .year{clear:both; position:relative; margin-bottom:30px}
#hstList .year h2{border:2px #ccc solid; width:90px; height:90px; line-height:86px; text-align:center; font-size:20px; font-family:Arial, Helvetica, sans-serif; border-radius:45px; margin:0 auto; background:#fff; font-weight:bold; margin-bottom:15px;}
#hstList .year ul{list-style:none;}
#hstList .year ul li{background:url(/company/images/hstTip.png) no-repeat left center; margin-left:450px; clear:both; font-size:16px; padding:5px 0 5px 30px; line-height:1.5; position:relative;}
#hstList .year ul li:after{content:''; display:block; clear:both;}
#hstList .year ul li figure{float:left; margin:0 15px 0 0;}
#hstList .year ul li figure img{display:block;}
#hstList .year ul li.soc{margin:0 450px 0 0; padding-right:30px; background:none; text-align:right; position:relative; width:450px; min-height:2em;}
#hstList .year ul li.soc figure{float:right; margin:5px 0 0; clear:both;}
#hstList .year ul li.soc:before{content:''; display:block; width:20px; height:1px; background:#c6d0d5; position:absolute; right:0; top:16px;}
#hstList .year ul li small{font-size:12px; display:block; margin-top:5px;}
#hstList .year ul li.soc small{text-align:right;}
#hstList .section{border:1px #c6d0d5 solid; border-radius:10px; padding:20px; width:730px; margin:0 auto 30px; background:#fff; text-align:center;}
#hstList .section h3{font-size:24px; font-weight:bold;}
#hstList .section h3 br{display:none;}
#hstList .section p{font-size:16px; margin-bottom:10px;}
.companyInf .organization{width:840px; margin:0 auto 60px;}
.companyInf .organization h2{font-size:30px; margin-bottom:30px; text-align:center;}
.companyInf .management h3{font-size:30px; margin:40px 0 15px; line-height:1.3; clear:both;}
.companyInf .management h4{font-size:22px; margin:0 0 15px; line-height:1.3;}
.companyInf .management table{width:100%;}
.companyInf .management table th,
.companyInf .management table td{padding:15px; border:1px #ccc solid;}
.companyInf .management table th{text-align:center; font-size:12px; width:20%;}
.companyInf .management table td ul{margin-left:1.5em;} 
.companyInf .learning{width:740px; float:right; border-left:1px #ccc solid; padding:0 0 0 40px; margin-right:50px;}
.companyInf .learning section{margin-bottom:50px; margin-top:-110px; padding-top:110px;}
.companyInf .learning section p{font-size:14px;}
.jma{width:1200px; margin:0 auto;}
.jma header h1{background:url(/common/images/h1Ttl.png) no-repeat; background-position:0 -480px; width:454px; height:44px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%; margin-bottom:30px;}
.jma header p{font-size:15px; margin-bottom:50px;}
.jma section{width:830px; float:right; padding:0 0 0 40px; border-left:1px #ccc solid; margin-bottom:60px;}
.jma section .lead{font-size:32px; font-family:"游明朝体", "Yu Mincho", YuMincho,"ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "MS PMincho",  serif; line-height:1.4; margin-bottom:25px;}
.jma section figure{margin-bottom:50px;}
.jma section div{border-bottom:1px #ccc solid; padding:0 0 25px; margin-bottom:25px;}
.jma section div dl{margin-bottom:15px;}
.jma section div dt{font-size:20px;}
.jma section div dd{font-size:10px;}
.jma section div ul{margin-left:1.5em;}

/* blog 
=======================================================*/
/* index */
body.blog.index {overflow-y: scroll;}
.blogList .blog{margin-bottom:20px;}

.blogList nav{padding:30px 0 50px; position:relative; width:1128px; margin:0 auto; clear:both;}
.blogList nav:after,
.blogList nav .category:after{content:''; display:block; clear:both;}
.blogList nav .category{width:544px; margin:0 auto; border:1px #ccc solid; border-radius:5px; clear:both; overflow:hidden;}
.blogList nav .category li{width:25%; float:left; border-right:1px #ccc solid; text-align:center;}
.blogList nav .category li:last-child{border-right:none;}
.blogList nav li a{display:block; color:#bababa; height:27px; line-height:27px;}
.blogList nav .category li a:hover,
.blogList nav .category li a.active{background:#009fe2; color:#fff; text-decoration:none;}
.blogList nav .archive{position:absolute; right:0; top:30px; border:1px #ccc solid; border-radius:5px; clear:both; overflow:hidden; width:140px; height:27px;}
.blogIndex .blogBlock{clear:both; margin:0 -10px;}
.blogIndex .blogBlock:after{content:''; display:block; clear:both;}
.blogIndex .blogBlock .blog{transition:opacity .5s ease-in; opacity:0;}
.blogIndex .blogBlock.culture .blog.event,
.blogIndex .blogBlock.culture .blog.other,
.blogIndex .blogBlock.event .blog.culture,
.blogIndex .blogBlock.event .blog.other,
.blogIndex .blogBlock.other .blog.culture,
.blogIndex .blogBlock.other .blog.event,
.blogIndex .blogBlock.y2015 .blog.y2016,
.blogIndex .blogBlock.y2016 .blog.y2015{display:none;}
.blogBlock div.blog{width:272px; border:1px #bbb solid; background:#fff; float:left; margin-right:10px;margin-left:10px;}
.blogBlock div.blog a{text-decoration:none; display:block; width:100%; height:100%; padding:0 15px 20px; background-position:center top; background-repeat:no-repeat; position:relative;}
.blogBlock div.blog.new a:after {content:"NEW!!"; position:absolute; background-color:#ff8f00; line-height:1.0; padding:8px 14px; font-size:14px; display:block; left:0; top:0; color:#FFFFFF;}
.blogBlock div.blog a figure{width:270px; height:178px; background-position:center center; background-repeat:no-repeat; background-size:contain; margin:0 -15px 15px;}
.blogBlock div.blog a:hover{opacity:.4;}
.blogBlock div.blog dt{font-size:14px; margin-bottom:10px;}
.blogBlock div.blog dt i{font-size:12px; text-align:center; min-width:68px; padding:5px; display:inline-block; line-height:1.2; color:#fff; margin-right:5px;}
.blogBlock div.blog dd{font-size:18px; line-height:1.5;}
.blogBlock div.blog.culture  a dt{color:#009fe2;}
.blogBlock div.blog.culture  a dt i{background:#009fe2;}
.blogBlock div.blog.event a dt{color:#8fa3ad;}
.blogBlock div.blog.event a dt i{background:#90a4ae;}
.blogBlock div.blog.other a dt{color:#8fa3ad;}
.blogBlock div.blog.other a dt i{background:#455a64;}
.blogBlock div.blog a dd{color:#445963;}





/* news 
=======================================================*/
/* index */
.newsList{width:1168px; margin:0 auto; padding-bottom:60px; min-height:549px;}
.newsList .entry{margin-bottom:20px;}
.newsIndex header h1{background:url(/common/images/h1Ttl.png) no-repeat; background-position:0 -360px; width:201px; height:91px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.newsIndex header nav{padding:30px 0 40px; position:relative; width:1128px; margin:0 auto; clear:both;}
.newsIndex header nav:after,
.newsIndex header nav .category:after{content:''; display:block; clear:both;}
.newsIndex header nav .category{width:544px; margin:0 auto; border:1px #ccc solid; border-radius:5px; clear:both; overflow:hidden;}
.newsIndex header nav .category li{width:25%; float:left; border-right:1px #ccc solid;}
.newsIndex header nav .category li:last-child{border-right:none;}
.newsIndex header nav li a{display:block; color:#bababa; height:27px; line-height:27px;}
.newsIndex header nav .category li a:hover,
.newsIndex header nav .category li a.active{background:#009fe2; color:#fff; text-decoration:none;}
.newsIndex header nav .archive{position:absolute; right:0; top:30px; border:1px #ccc solid; border-radius:5px; clear:both; overflow:hidden; width:140px; height:27px;}
.newsIndex .newsBlock{clear:both;}
.newsIndex .newsBlock:after{content:''; display:block; clear:both;}
.pager{text-align:center; margin-top:30px; clear:both; margin-bottom:40px;}
.pager li{display:inline-block; font-size:18px; line-height:1; border-right:1px #acb6bc solid;}
.pager li a{color:#acb6bc; padding:0 18px 0 16px;}
.pager li a.active {color:#009fe2; }
.pager li a:hover{color:#009fe2; text-decoration:none;}
.pager li.pass{padding:0 15px 0 12px; color:#acb6bc;}
.pager li:last-child{border-right:none;}
/*
.pager li:first-child,
.pager li:last-child{font-weight:bold;}
*/
/* detail */
.newsDetail{width:700px; margin:0 auto 60px;}
.newsDetail header{text-align:left; padding-bottom:30px;}
.newsDetail header h1{font-size:30px; margin-bottom:10px; text-align:left;}
.newsDetail header div{font-size:14px;}
.newsDetail header div i{display:inline-block; padding:2px 12px; color:#fff; margin-right:10px; font-size:12px;}
.newsDetail header div i.news{background:#009fe2;}
.newsDetail header div i.event{background:#90a4ae;}
.newsDetail header div i.other{background:#455a64;}
.newsBody{font-size:14px;}
.newsBody p,
.newsBody ul,
.newsBody ol,
.newsBody dl,
.newsBody table{margin-bottom:1.5em;}
.newsBody .mainImg{margin-bottom:30px;}
.newsBody p.lead{font-size:18px; font-weight:bold;}
.newsBody h2{font-size:22px; margin:30px 0 15px; border-bottom:1px #ccc solid; padding-bottom:2px; line-height:1.3;}
.newsBody h3{font-size:18px; margin:25px 0 10px; border-left:5px #ccc solid; padding:0 0 0 5px; line-height:1.3;}
.newsBody h4{font-size:16px; margin:30px 0 5px; font-weight:bold; line-height:1.5;}
.newsBody table h4{font-size:16px; margin:5px 0 5px; font-weight:bold; line-height:1.5;}
.newsBody strong{font-weight: bold;}
.newsBody ul{margin-left:1.5em;}
.newsBody ol{margin-left:1.5em;}
.newsBody li{margin-bottom:.5em;}
.newsBody dl dt{font-weight:bold; margin-bottom:.25em;}
.newsBody dl dd{margin-bottom:1em;}
.newsBody figure{margin-bottom:30px;}
.newsBody figure.lt{float:left;}
.newsBody figure.rt{float:right;}
.newsBody figure.ct{clear:both;}
.newsBody figure img{max-width:100%; margin:0 auto; display:block;}

.newsIndex .newsBlock .entry{transition:opacity .5s ease-in; opacity:0;}
.newsIndex .newsBlock.news .entry.event,
.newsIndex .newsBlock.news .entry.other,
.newsIndex .newsBlock.event .entry.news,
.newsIndex .newsBlock.event .entry.other,
.newsIndex .newsBlock.other .entry.news,
.newsIndex .newsBlock.other .entry.event,
.newsIndex .newsBlock.y2015 .entry.y2016,
.newsIndex .newsBlock.y2016 .entry.y2015{display:none;}


/* form
=======================================================*/
.contactForm{width:750px; margin:0 auto 60px;}
.contactForm header h1{background:url(/common/images/h1Ttl.png) no-repeat; background-position:0 -240px; width:271px; height:91px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.contactForm header h1.application{background:url(/common/images/h1Ttl3.png) no-repeat; background-position:0 -240px; width:470px; height:95px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.contactForm header h1.awsmigration{background:url(/common/images/awsmigration.png) no-repeat; background-position:0 -240px; width:512px; height:91px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.contactForm header h1.manufacturing_dx{background:url(/common/images/manufacturing_dx.png) no-repeat; background-position:0 -233px; width:537px; height:100px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.contactForm header h1.chatbot_pharmaceutical{background:url(/common/images/chatbot_pharmaceutical.png) no-repeat; background-position:0 -233px; width:537px; height:100px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.contactForm header p{padding:30px 0; text-align:left;}
.contactForm .privacy{background:#ebf1f5; padding:20px; margin-bottom:10px;}
.contactForm .privacy h2{font-size:18px; margin-bottom:10px;}
.contactForm em{color:#c00;}
.contactForm input[type=text],
.contactForm input[type=email],
.contactForm input[type=tel],
.contactForm select,
.contactForm textarea{border:1px #ccc solid; border-radius:8px; padding:10px; font-size:20px; width:100%;}
.contactForm input[type=checkbox]{border:none; width:25px; height:25px; vertical-align:middle; background:url(/common/images/sprite_2x.png) no-repeat -325px -25px; background-size:500px auto; -webkit-appearance:none; -ms-appearance:none; -moz-appearance:none; appearance:none; position:relative; top:-2px;}
.contactForm input[type=checkbox]:checked{background-position:-350px -25px;}
.contactForm .formItem{font-size:18px; width:360px; float:left; margin-bottom:30px;}
.contactForm .formItem.nameKnaji input[type=text],
.contactForm .formItem.nameKana  input[type=text]{width:170px; display:inline-block;}
.contactForm .formItem.nameKnaji input[name=last_name],
.contactForm .formItem.nameKana  input[name=00N10000003j9V7]{margin-left:10px;}
.contactForm .formItem.agreement,
.contactForm .formItem.company,
.contactForm .formItem.nameKnaji,
.contactForm .formItem.email,
.contactForm .formItem.interest,
.contactForm .formItem.purpose{clear:both;}
.contactForm .formItem.dept,
.contactForm .formItem.nameKana,
.contactForm .formItem.tel,
.contactForm .formItem.class{float:right;}
.contactForm .formItem.comment{clear:both; float:none; width:100%;}
.contactForm .formItem.agreement{font-size:14px;}
.contactForm .formItem .label{font-size:14px;}
.contactForm .formItem label{display:block;}
.contactForm .formItem dt{font-size:12px;}
.contactForm .formItem dd{font-size:18px;}
.ss_user_notnull{font-size:12px; color:#c00;}
.contactForm .btnSpace{clear:both; margin-top:50px;}
.contactForm .btnSpace:after{content:''; clear:both; display:block;}
.contactForm .btnSpace button{width:320px; height:56px; position:relative; line-height:56px; font-size:18px; text-align:center;}
.contactForm .btnSpace button:after{content:''; display:block; width:25px; height:25px; position:absolute; top:50%; margin-top:-12.5px;}
.contactForm .btnSpace button:hover{opacity:.4;}
.contactForm .btnSpace button.fwd{background:#009fe2; float:right; color:#fff;}
.contactForm .btnSpace button.fwd:after{background:url(/common/images/sprite_2x.png) no-repeat -100px 0; background-size:500px auto; right:10px;}
.contactForm .btnSpace button.rtn{background:#ebf1f5; float:left; color:#8fa3ad;}
.contactForm .btnSpace button.rtn:after{background:url(/common/images/sprite_2x.png) no-repeat -125px -25px; background-size:500px auto; left:10px;}
.contactForm p.confirm{text-align:center; font-size:16px; padding:40px 0 30px;}
/*.contactForm h2{font-size:24px; margin:50px 0 15px;}*/
.contactForm p{margin-bottom:1em; font-size:16px;}
/* misc */
.misc{width:700px; margin:0 auto 60px;}
.misc h1{margin-bottom:20px;}
.misc header h1{background:url(/common/images/h1Ttl.png) no-repeat; background-position:0 -550px; height:42px; margin:0 auto 20px; overflow:hidden; white-space:nowrap; text-indent:100%;}
.misc header h1.privacy{width:362px; background-position:0 -550px;}
.misc header h1.cookie{background:url(/common/images/h1Ttl4.png) no-repeat; background-position:55px; width:623px; height:100px; margin:0 auto 20px; overflow:hidden; white-space:nowrap; text-indent:100%;}
.misc header h1.telework{background:url(/common/images/h1Ttl6.png) no-repeat; background-position:55px; width:623px; height:100px; margin:0 auto 20px; overflow:hidden; white-space:nowrap; text-indent:100%;}
.misc header h1.terms{width:548px; background-position:0 -620px;}
.misc section h2{font-size:20px; margin:40px 0 5px;}
.misc section p{margin-bottom:1.5em;}
.misc section ol,
.misc section ul{margin:1.5em 0 1.5em 1.5em; font-size:14px;}
.misc section ol li,
.misc section ul li{margin:1.5em 0 .5em;}
.misc header{margin-bottom:40px;}
.misc header p{text-align:left;}
div.ssl figure{float:left;}
div.ssl p{padding-left:70px;}
ul.linkList{margin-bottom:30px;}
ul.linkList li{margin-bottom:.5em; list-style:none;}
ul.linkList li a{position:relative; padding-left:25px; text-decoration:underline;}
ul.linkList li a:before{content:''; display:block; position:absolute; left:0; top:50%; margin-top:-12.5px; width:25px; height:25px; background:url(/common/images/sprite_2x.png) no-repeat -375px -25px; background-size:500px auto;}
ul.linkList li a:hover{text-decoration:none;}
.fLt{float:left; margin:0 25px 25px 0;}
.fRt{float:left; margin:0 0 25px 25px;}
.sideMenu{width:300px; float:left; margin-left:20px;}
.sideMenu.fixed{position:fixed; left:auto; top:115px;}
.sideMenu li{font-size:15px; margin-bottom:20px; text-align:right;}
.sideMenu li a{color:#445963;}
.sideMenu li a:hover,
.sideMenu li a.active{color:#009fe2;}
.jma .sideMenu{margin-left:30px;}
p.signature{text-align:right; font-size:12px;}
.sitemap header h1{background:url(/common/images/h1Ttl_sitemap.png) no-repeat; width:285px; height:45px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.sitemap ul.primary,
.sitemap ul.secondary{width:350px; float:left; margin:0; padding:0;}
.sitemap ul.primary ul,
.sitemap ul.secondary ul{width:auto; float:none;}
.sitemap section ul{}
.sitemap section ul li{font-size:20px; color:#009fe2; margin:20px 0 0 0;}
.sitemap ul ul{margin:10px 0 0 0px; padding:0;}
.sitemap ul ul li{font-size:15px; margin:0 0 5px 0; list-style:none;}
.sitemap ul ul li a{color:#333;}

@media screen and (max-width:640px){
.misc header h1.cookie{background:url(/common/images/h1Ttl4_sp.png) no-repeat; background-position:80px; width:662px; height:42px; margin:0 auto 20px; overflow:hidden; white-space:nowrap; text-indent:100%;}
.misc header h1.telework{background:url(/common/images/h1Ttl6_sp.png) no-repeat; background-position:80px; width:662px; height:42px; margin:0 auto 20px; overflow:hidden; white-space:nowrap; text-indent:100%;}
.contactForm header h1.awsmigration{background:url(/common/images/awsmigration_sp.png) no-repeat; background-position:0; width:346px; height:95px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.contactForm header h1.manufacturing_dx{background:url(/common/images/manufacturing_dx_sp.png) no-repeat; background-position:0; width:346px; height:95px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
.contactForm header h1.chatbot_pharmaceutical{background:url(/common/images/chatbot_pharmaceutical_sp.png) no-repeat; background-position:0; width:346px; height:95px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
}

@media screen and (max-width:480px){
.misc header h1.cookie{background:url(/common/images/h1Ttl4_sp.png) no-repeat; background-position:5px; width:662px; height:42px; margin:0 auto 20px; overflow:hidden; white-space:nowrap; text-indent:100%;}
.misc header h1.telework{background:url(/common/images/h1Ttl6_sp.png) no-repeat; background-position:5px; width:662px; height:42px; margin:0 auto 20px; overflow:hidden; white-space:nowrap; text-indent:100%;}
.contactForm header h1.application{background:url(/common/images/h1Ttl3_sp.png) no-repeat; background-position:0 -240px; width:240px; height:95px; margin:0 auto; overflow:hidden; white-space:nowrap; text-indent:100%;}
}
/* caseDetail */
body.case.index {overflow-y: scroll;}
.caseDetail{width:850px; float:right; padding:0 80px; border-left: 1px solid #ccc;}
.caseDetail header{text-align:center; padding:0 0 45px;}
.caseDetail header dl{margin-bottom:0px !important;}
.caseDetail header dl dt{line-height:1.0; margin-bottom:35px;}
.caseDetail header dl dd{font-size:26px; margin-bottom:18px;}
.caseDetail header h1{font-size:32px; margin-bottom:0px; line-height:1.5; color:#445963; border-bottom:none;}
.caseDetail header div{font-size:14px;}
.caseDetail header figure.mv{margin:45px 0 0px 0px; }
.caseDetail header figure.mv figcaption{text-align:right; font-size:10px; line-height:30px;}
.caseDetail header h1{font-size:32px; margin-bottom:0px; line-height:1.5; color:#445963; border-bottom:none;}
.case .caseDetail section.itemBlock{margin-bottom:60px; }
.case .caseDetail section.itemBlock:last-child{margin-bottom:0px;}
.case .caseDetail section.itemBlock hr{margin-top:60px; color:#c6d0d5;}
.caseDetail h1{font-size:20px; color:#009fe2; padding-bottom:10px; margin-bottom:35px; border-bottom:1px solid #c6d0d5; text-align:center;}
.caseDetail h2{font-size:30px; text-align:center; line-height:1.5; margin-bottom:25px;}
.caseDetail h3{font-size:20px; text-align:center; line-height:1.5; margin-bottom:13px;}
.caseDetail .purpose{border:2px solid #009fe2; padding:35px 45px 45px 45px; margin-bottom:65px; position:relative;}
.caseDetail .purpose ul{margin-bottom:30px;}
.caseDetail .purpose dl{margin-top:30px; clear:both;}
.caseDetail .purpose dd ul{margin-left:1.5em;}
.caseDetail .purpose ul:last-child,
.caseDetail .purpose dl:last-child{margin-bottom:0px; font-size:13px;}
.caseDetail .purpose dl dt{color:#90a4ae; margin-bottom:10px; line-height:1.0;}
.caseDetail .purpose h2{background:#009fe2; width:55px; height:93px; line-height:94px; font-size:14px; margin-top:-35px; display:table !important; vertical-align:baseline; margin-bottom:0px; color:#fff; margin-bottom:20px; float:left;}
.caseDetail .purpose p.tit{padding-left:72px; font-size:20px; line-height:1.6; margin-bottom:0px;}
.caseDetail .reason{background:#eef2f5; padding:30px 45px; margin:10px 0 45px;}
.caseDetail .reason h2{font-size:20px; margin-bottom:25px;}
.caseDetail .reason dl{margin-bottom:0px !important;}
.caseDetail .reason dl dt{color:#90a4ae;}
.caseDetail .reason dl dd{margin-bottom:30px;}
.caseDetail .reason dl dd:last-child{margin-bottom:10px;}
.caseDetail .comProf{border:2px solid #e2e7ea; padding:30px 42px; margin-top:30px;}
.caseDetail .comProf h2{font-size:16px; margin-bottom:13px; line-height:1.0; text-align:left;}
.caseDetail .comProf dl:after{content:""; display:block; clear:both;}
.caseDetail .comProf dl dt{float:left; }
.caseDetail .comProf dl dd{padding-left:45px; position:relative;}
.caseDetail .comProf dl dd:before{content:"："; left:0px; top:0px;}
.caseDetail .comProf hr{margin:25px 0;}
.caseDetail .comProf p{margin-bottom:0px !important;}
.caseDetail .comProf p,
.caseDetail .comProf dl{font-size:12px;}

.caseDetail a.bBtn { position:relative; margin:50px auto 0; width: 500px; height:70px; line-height:1.0; padding:26px 35px; box-sizing:border-box; color:#FFF; font-size:17px; font-weight:bold; background-color:#009FE2; display:block; border-radius:10px; transition: all .3s; }
.caseDetail a.bBtn:hover {opacity:0.4; text-decoration:none;}
.caseDetail a.bBtn:after{content:''; display:block; width:25px; height:25px; background:url(/common/images/sprite_2x.png) no-repeat -100px 0; background-size:500px auto; position:absolute; right:10px; top:50%; margin-top:-12.5px;}

.caseDetail p.caseNote{margin-top:33px; font-size:12px;}
.caseDetail{font-size:14px;}
.caseDetail p,
.caseDetail figure{margin-bottom:20px;}
.caseDetail figure figcaption{font-size:12px; color:#8296a0; margin-top:10px;}
.caseDetail figure figcaption span{color:#455a64;}
.caseDetail figure.lt,
.caseDetail figure.rt{width:280px;}
.caseDetail figure.lt{float:left; margin:0 30px 33px 0;}
.caseDetail figure.rt{float:right; margin:0 0 33px 30px;}
.caseDetail figure.ct{clear:both;}
.caseDetail figure img{max-width:100%; margin:0 auto; display:block;}
.caseDetail .caseBtn{line-height:1.0; width:502px;  margin:45px auto 0;  background:#009fe2; border-radius:10px; font-size:17px; font-weight:bold;} 
.caseDetail .caseBtn a{line-height:68px; display:block; color:#fff; background:url(/case/images/btnArrow.png) 472px center no-repeat; padding:0 15px 0 35px;}
.caseDetail .caseBtn a:hover{color:#fff; text-decoration:none;}
.caseDetail .comProf figure.rt{width:190px; margin-bottom:0px;}


@media screen and (min-width:641px){
	.mobscroller {position: relative; overflow:hidden; min-height:342px; }
    .mobscroller .mobscInner{width:100%; height:342px; position:absolute; left:50%; margin-left:-572px;}
    .mobscroller .mobscInner2{width:100%; height:342px; position:absolute; left:63%; margin-left:-572px;}
	.mobscroller .mobscInner .caseBlock {margin:0 -8px;}
}
@media screen and (max-width:640px){
/* add 171225 */
.companyInf .intro,
.companyInf .intro.second{padding:0 30px;}
.companyInf .intro .lead,
.companyInf .intro p.signature{font-size:20px; margin-bottom:20px;}
.companyInf .intro p.signature small{font-size:12px;}
.companyInf .intro figure,
.companyInf .intro.second figure{width:auto; height:auto; position:relative; left:auto; top:auto;}
/**/

body{font-size:12px; font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","droid-sans", sans-serif;}
/* anchor and button transitions */
a{-webkit-transition:none; -moz-transition:none; -o-transition:none; -ms-transition:none; transition:none;}
a img,
button,
input[type=button],
input[type=submit],
input[type=reset],
a{-webkit-transition:none; -moz-transition:none; -o-transition:none; -ms-transition:none; transition:none; color:#009fe2;}
a:hover{opacity:1 !important;}
img{max-width:100%; height:auto;}
/* wrapper
======================================================= */
#wrapper{position:relative; width:100%; min-width:320px; overflow:hidden; background:#fff; padding-top:0;}
#page{position:relative; left:0; top:0; width:100%; min-width:320px;}
/* z */
#global{}
#siteHeader,
#siteFooter,
main{}
#sensor{width:1px; height:1px;}
/* header
======================================================= */
#siteHeader{height:44px; position:relative; left:auto; top:auto;}
body.home #siteHeader{background:#fff;}
#siteHeader .inner{width:auto; height:44px;}
#siteID{width:100px; height:auto; position:absolute; left:50%; top:5px; margin-left:-50px;}
#siteID img{width:100%; height:auto;}
#siteHeader .toggle{display:block; width:44px; height:44px; background:url(/common/images/sprite_2x.png) no-repeat -400px 0 rgba(255,255,255,.8); background-size:500px auto; position:fixed; left:0; top:0; z-index:100;}

#sns {width:90px; height: 40px; position:absolute; left:100%; margin-left:-90px; top:2px;font-size:0; }


#siteHeader .toggle a.close{display:none;}
#siteHeader .toggle a{display:block; text-indent:50px; overflow:hidden; white-space:nowrap; width:44px; height:44px;}
/* nav
======================================================= */
#global ul li{margin-right:0 !important;}
#global ul li a{background:none; width:100% !important; height:auto; text-indent:0; white-space:normal; overflow:visible;}
#global{position:fixed; left:-280px; top:0; background:url(/common/images/logo_2x.png) no-repeat center 5px #fff; background-size:100px auto; width:280px; padding:50px 10px 20px 15px; box-shadow:-5px 0 10px rgba(0,0,0,.15) inset; margin:0;}
#global:after{content:''; display:block; width:270px; height:15px; position:absolute; left:0; bottom:0; background:#fff;}
#global .container{overflow:auto;}
#global ul{float:none;}
#global ul li{display:inline; text-align:left; font-size:16px; line-height:1.3;}
#global ul li i{display:none;}
#global ul li a{padding:8px 18px 8px 0; position:relative;}
#global ul li ul{display:block; border:1px #eee solid; border-width:1px 0; padding:10px 0; margin-bottom:10px; display:none;}
#global ul li ul li{font-size:14px;}
#global ul li ul li ul{border:none; padding:0; display:block;}
#global ul li ul li ul li{font-size:12px;}
#global ul li ul li ul li a:before{content:'―'; color:#ccc; padding-right:5px;}
#global ul li a:after{content:''; display:block; width:25px; height:25px; background:url(/common/images/sprite_2x.png) no-repeat -100px 0; background-size:500px auto; position:absolute; right:10px; top:50%; margin-top:-12.5px;}
#global ul li.services>a:after,
#global ul li.company>a:after{background-position:-200px 0;}
#global ul li.services>a.open:after,
#global ul li.company>a.open:after{background-position:-250px 0;}
#global ul li ul li a:after{content:''; background:url(/common/images/sprite_2x.png) no-repeat -300px 0; background-size:500px auto;}
#global ul.sub{display:block; padding-top:0;}
#global ul li a:hover,
#global ul li a:hover i,
#global ul li ul li a{color:#445963 !important; text-decoration:none;} 
/* footer
======================================================= */
#siteFooter{margin:0; top:0;}
#siteFooter .inner{width:auto; padding:20px 0 20px;}
#siteFooter img.footLogo{position:relative; display:block; margin:0 auto 10px; width:60px; height:auto; left:auto; top:auto;}
#siteFooter ul{margin-bottom:10px; padding:0 15px; text-align:center;}
#siteFooter ul li{list-style:none; float:none; display:inline-block; padding:0 8px 0 0; margin:0 5px 6px 0;}
#siteFooter ul li:nth-child(6){clear:none;}
#siteFooter ul li:last-child{border-right:0;}
#siteFooter ul li a{color:#fff;} 
#siteFooter p{clear:both; padding:0; text-align:center;}
#siteFooter ul.certificateLogo{ display:none;}
/* main
======================================================== */
main{}

main .mainBlock {width:auto; margin:0; padding-top:0; padding-bottom:0;}
body.case main .mainBlock {padding-bottom:0;}
main .mainBlock > .sideMenu {width:auto; padding-right:0; float:none;}
main .mainBlock > .sideMenu h2 {font-size:19px; text-align:left; padding-left:10px; padding-bottom:10px;margin-bottom:0; border-bottom:1px solid #ccc;}
main .mainBlock:after {content:""; clear:both; display:block;}

/* breadcrumbs
======================================================= */
#breadcrumbs{display:none;}
/* top
=======================================================*/
body.home main{opacity:1;}
#topPage{}
.topMain .earth{opacity:1;}
#topPage .topMain .logo{opacity:1;}
#topPage .topMain h1{opacity:1;}
#topPage .earth{height:auto; width:auto;}
#topPage .logo{display:none;}
body.home{min-width:320px;}
body.home main{background:none;}
#topPage{background:none;}
#topPage h1,
h1.ourServices{text-indent:0; white-space:normal; background:none; overflow:visible; height:auto; color:#009fe2; font-family:'Lato', sans-serif; text-align:center; font-size:24px;}
.topMain{width:100%; height:auto; padding:0;}
#topPage .topMain h1{background:url(/images/introSp.png) no-repeat; background-size:cover; width:100%; height:200px; margin:0; text-indent:102%; opacity:0;}
.topMain .intro{display:none;}
.topNews{height:auto; padding:20px 30px; background:#eff5f9;}
.topNews h1{width: 100%; margin-bottom: 5px;}
.topNews h1 + p {border: 1px solid #009fe2; font-weight: bold; width: 100%; height: 30px; line-height: 30px; margin: 0 auto 15px; font-size: 15px; text-decoration: none;}
#topPage .topNews h1 + p a {display: block; width: 100%; height: 100%; text-decoration: none;}
.headline{height:auto; width:100%; overflow:auto; position:relative;}
.headline .inner{height:auto; position:relative; top:auto; left:auto; margin-left:0;}
.headline .newsBlock{position:relative; left:auto; top:auto; width:auto; overflow:visible; margin:0;}
.headline div.entry{width:170px; margin-left:0;}
.headline div.entry a{padding:0 10px 15px;}
.headline div.entry a figure{width:168px; height:95px; background-position:center center; background-size:contain; margin:0 -10px 10px;}
.headline div.entry dt{font-size:10px; margin-bottom:7px;}
.headline div.entry dt i{font-size:9px; min-width:45px; padding:2px 3px;}
.headline div.entry dd{font-size:12px; line-height:1.5;}
.headline div.entry.news  a dt{color:#009fe2;}
.headline div.entry.news  a dt i{background:#009fe2;}
.headline div.entry.event a dt{color:#8fa3ad;}
.headline div.entry.event a dt i{background:#90a4ae;}
.headline div.entry a dd{color:#445963;}
.topService{height:auto; width:auto; padding:15px 30px;}
#topPage .topService h1{margin-bottom:15px;}
.topService h2{background:none !important;}
.topService section.si h2,
.topService section.mobile h2,
.topService section.cloud h2{ text-indent:0 !important; width:100%; height:auto;}
.topService h2{font-size:22px; line-height:1.4; margin-bottom:20px; text-align:center; padding:130px 0 0; position:relative;}
.topService h2 i{ color:#009fe2; display:block; font-family: 'Lato', sans-serif;}
.topService section.si h2:before{background-position:0 -50px;}
.topService h2 i{font-size:12px;}
.topService h2:before{content:''; display:block; width:150px; height:125px; background:url(/common/images/sprite_2x.png) no-repeat 0 0; background-size:500px auto; position:absolute; left:50%; top:0; margin-left:-75px;}
.topService h3{font-size:18px; line-height:1.4; margin-bottom:15px; text-align:center;}
.topService p{margin-bottom:20px;} 
.topService a{display:block; position:relative; font-size:14px; color:#fff; padding:10px 15px; background:#009fe2; min-width:0;}
.topService a:hover{text-decoration:none; opacity:.4;}
.topService a:after{content:''; display:block; width:25px; height:25px; background:url(/common/images/sprite_2x.png) no-repeat -100px 0; background-size:500px auto; position:absolute; right:10px; top:50%; margin-top:-12.5px;}
.topService section{height:auto;}
.topService section .bg{display:none;}
.topService section.si,
.topService section.mobile,
.topService section.cloud{height:auto;}
.topService section.si .inner,
.topService section.mobile .inner,
.topService section.cloud .inner{width:auto; height:auto; padding:0 0 30px; clear:both; background:none;}
.topService section.mobile{margin-left:0px;}
.topService section.si p{padding-right:0;}
.topService section.mobile h2{margin-bottom:20px;}
.topService section.mobile h2:before{background-position:-150px -50px; top:0;}
.topService section.cloud h2{margin-bottom:20px; padding-top:110px;}
.topService section.cloud h2:before{background-position:-300px -50px; top:0;}
.topService section.cloud p{padding-right:0;}

/*.mobscroller {position: relative; overflow:auto; height:auto; }
.mobscroller .mobscInner{width:100%; height:auto; position:relatvie; left:auto; margin-left:0;}*/




.topCases{width:auto; height:auto; padding:20px 30px; background:#eff5f9;}
#topPage .topCases h1 + p {width:100%; height:30px; line-height:30px; margin:0 auto 15px; font-size:15px; }
#topPage .topCases h1{margin-bottom:5px;}
.topCases .case{width:180px; margin:0 10px 0 0;}
.caseIndex .topCases .case a{background:#fff;}
.topCases .case p{font-size:12px; font-weight:bold; padding:10px;}
.topCases .case ul{padding:0 10px 10px;}
.topCases .case li{display:inline-block; background:#808f9c; border-radius:4px; margin-right:5px; color:#fff; font-size:9px; padding:2px 6px; line-height:1.2;}
.topPlatform{background:#fff;}
.topPlatform .inner{width:auto; padding:20px 30px 30px;}
#topPage .topPlatform h1,
h1.ourServices{margin-bottom:15px;}
.topPlatform .item{width:180px; margin:0 10px 0 0;}
.topPlatform .item h2{padding:0 10px 5px; font-size:13px;}
.topPlatform .item p{padding:0 10px 10px; font-size:10px;}
.topPlatform .item a{padding:12px;}
.topPlatform .item a:after{right:5px;}
.topCases .mobscroller,
.topPlatform .mobscroller{width:100%; position:relative;}
.topCases .mobscInner,
.topPlatform .mobscInner{width:840px;}
.topCases .case img,
.topPlatform .item img{width:100%; height:auto;}
/* common 
=======================================================*/
article>header{padding:30px 0 0 0;}
article>header h1{font-size:30px; line-height:1.2; margin-bottom:30px;}
article>header h1 i{font-size:20px;}
/* services
=======================================================*/
/* index */
.servicesIndex header h1{font-size:30px; background:none; width:100%; height:auto; text-indent:0;}
.servicesIndex header h1 i{font-size:20px;}
.servicesIndex{width:auto;}
.servicesIndex header{height:auto; padding:40px 0;}
.servicesIndex header nav{padding-top:30px;}
.servicesIndex header nav li{width:100px;}
.servicesIndex header nav li a{padding-top:50px; min-height:100px; font-size:10px;}
.servicesIndex header nav li a:before{content:''; display:block; background:url(/common/images/sprite_2x.png) no-repeat; background-size:250px auto; position:absolute; width:50px; height:50px; left:50%; top:0; margin-left:-25px;}
.servicesIndex header nav li a.si:before{background-position:0 -136px;}
.servicesIndex header nav li a.mobile:before{background-position:-50px -136px;}
.servicesIndex header nav li a.cloud:before{background-position:-100px -136px;}
.servicesIndex header nav li a.si.active:before{background-position:0 -87px;}
.servicesIndex header nav li a.mobile.active:before{background-position:-50px -87px;}
.servicesIndex header nav li a.cloud.active:before{background-position:-100px -87px;}
.serviceList{padding:0 30px 40px 30px;}
.serviceList div{width:100%; margin:0 0 10px; float:none; clear:both; word-break:break-all;}
.serviceList div a{padding:0 10px 10px;}
.serviceList div a:hover{opacity:1;}
.serviceList div figure{margin:0 -10px 10px;}
.serviceList div figure img{width:200px; display:block; margin:0 auto; height:auto;}
.serviceList div h2{font-weight:bold; font-size:16px; line-height:1.2; margin-bottom:10px; text-align:center;}
.serviceList section.related div.item + .item {margin-top:20px;}
.servicesContent header a, .servicesContent section .content a, .servicesContent footer ul li a{min-width:0;}
.servicesContent header a{margin:0 30px; padding:10px 20px; display:block;}

/* contents */
.servicesContent{}
.services #wrapper{min-width:320px;}
.servicesContent header{margin-bottom:20px;}
.servicesContent header .inner,
.servicesContent header.ms .inner,
.servicesContent header.infra .inner,
.servicesContent header.seap .inner{width:100%; height:auto; padding:15px 0 30px;}
.servicesContent header .inner .mainVisual,
.servicesContent header.ms .inner .mainVisual,
.servicesContent header.infra .inner .mainVisual,
.servicesContent header.largescale .inner .mainVisual,
.servicesContent header.erp .inner .mainVisual,
.servicesContent header.kaito .inner .mainVisual,
.servicesContent header.any3  .inner .mainVisual,
.servicesContent header.seap  .inner .mainVisual,
.servicesContent header.beacapp  .inner .mainVisual,
.servicesContent header.aws  .inner .mainVisual,
.servicesContent header.ibm .inner .mainVisual,
.servicesContent header.speed .inner .mainVisual,
.servicesContent header.robot .inner .mainVisual{width:100%; height:200px; position:relative; left:auto; bottom:auto; z-index:0; margin:0 0 10px; min-height:0; margin-left:0; background-position:center bottom; background-size:90% auto;}
.servicesContent header.ms .inner .mainVisual img,
.servicesContent header.infra .inner .mainVisual img,
.servicesContent header.largescale .inner .mainVisual img,
.servicesContent header.erp .inner .mainVisual img,
.servicesContent header.kaito .mainVisual img,
.servicesContent header.any3 .mainVisual img,
.servicesContent header.seap .mainVisual img,
.servicesContent header.beacapp .mainVisual img,
.servicesContent header.ibm .inner .mainVisual img,
.servicesContent header.aws .mainVisual img,
.servicesContent header.speed .mainVisual img,
.servicesContent header.robot .mainVisual img{display:block !important;}
.servicesContent header.inner .mainVisual img{width:100%; height:auto; position:relative; left:auto; bottom:auto; z-index:0; margin:0 0 10px; background:none !important; margin-left:0px;}

.servicesContent header h1{font-size:30px; margin-bottom:10px; padding:0 30px; text-align:center;}
.servicesContent header p.lead{font-size:20px; margin-bottom:10px; padding:0 30px; text-align:center;}
.servicesContent header p{padding:0 30px;}
.servicesContent section{width:100%; margin:0 auto 15px; padding:0 30px; border-bottom:1px #ccc dotted;}
.servicesContent section figure{width:auto;}
.servicesContent section figure img{width:100%; height:auto;}
.servicesContent section.figureL figure,
.servicesContent section.figureR figure{float:none; clear:both;}
.servicesContent section .content{width:auto;}
.servicesContent section.figureL .content,
.servicesContent section.figureR .content{float:none; clear:both;}
.servicesContent section .content h2{font-size:20px; margin-bottom:20px; text-align:center;}
.servicesContent section .content p{margin-bottom:30px;}
.servicesContent section .notelogo{font-size:100%;}
.servicesContent section .notelogo:after{content:""; clear:both; display:block;}
.servicesContent section .notelogo dt{float:none; margin-right:0px;}
.servicesContent section .notelogo dd{line-height:1.4; margin-bottom:20px;}
.servicesContent footer{margin:15px 0; padding:30px 0;}
.servicesContent footer ul{text-align:center; margin:0 30px;}
.servicesContent footer ul li{display:block; line-height:1.0; text-align:left; margin-right:0px;}
.servicesContent section .content a:last-child{margin-bottom:15px;}
.servicesContent header a.blank,
.servicesContent section .content a,
.servicesContent footer ul li a{display:block; padding:15px 20px; min-width:0; border-radius:5px; margin-bottom:5px; font-size:14px;}
.servicesContent footer ul li a{font-size:14px; margin-right:0px;  margin-bottom:5px; padding:20px 20px 20px 60px;}
.servicesContent header a.blank{margin:20px 30px 0 30px; padding:15px 25px 15px 60px;}
.servicesContent header a.blank:hover,
.servicesContent section .content a:hover{text-decoration:none; opacity:.4;}
.servicesContent header a.blank:after,
.servicesContent section .content a:after{content:''; display:block; width:25px; height:25px; background:url(/common/images/sprite_2x.png) no-repeat -100px 0; background-size:500px auto; position:absolute; right:10px;}

.servicesContent section.related{margin-bottom:30px; width:100%;}
.servicesContent section.related > h2{font-size:28px;}
.servicesContent section.related .item{width:100%; margin:0 0 10px;}
.servicesContent section.related .item figure{width:100%;}
.servicesContent section.related .item img{width:auto;}
.servicesContent section.related .item.case{width:48%;}
.servicesContent section.related .item.case:nth-of-type(2n){float:right;}
.servicesContent section.related .item.case:nth-of-type(2n+1){clear:both;}

.servicesContent section.related.topCases{background:transparent;}





/* case
=======================================================*/
/* index */
.case #wrapper{min-width:320px;}
.caseIndex {width:auto;}
.caseIndex header h1{background:none; width:100%; height:auto; text-indent:0; margin-bottom:30px;}
.caseIndex header nav{padding:0 30px 30px; position:relative; width:auto;}

.caseIndex header nav .category{width:100%; margin-bottom:10px;}
.caseIndex header nav li{width:50%; overflow:hidden;}
.caseIndex header nav li a{display:block; color:#bababa;padding:0 7px; line-height:35px; height:35px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.caseIndex header nav li:nth-child(2n) {border-right:none;}
.caseIndex header nav li:nth-child(n+3) {border-top:1px solid #CCCCCC;}
.caseIndex header nav div{position:relative; right:auto; z-index:100; width:100%; height:35px;}
.caseIndex header nav .archive{position:static; left:auto; right:auto; top:auto; width:100%; position:relative;}
.caseIndex header nav .archive:after{right:15px; top:8px;}
.caseIndex header nav .archive li{background:#fff;}



.caseIndex .caseBlock div.case{width:50%; float:left; margin:0 0 10px; padding:0 5px; border:none;}
.caseIndex .caseBlock div.case a{border:1px #bbb solid; padding:0 0 10px;}
.caseIndex .caseBlock div.case a figure{width:auto;  background-position:center center; background-size:100% auto; margin:0;}
.caseIndex .caseBlock div.case dt{font-size:10px; margin-bottom:7px;}
.caseIndex .caseBlock div.case dt i{font-size:9px; min-width:45px; padding:2px 3px;}
.caseIndex .caseBlock div.case dd{font-size:12px; line-height:1.5;}
.casesList{width:auto; margin:0 auto;padding:0 30px 20px; min-height:auto;}
.casesList .case{width:180px; margin:0 10px 0 0; background:#fff; overflow:hidden;}
.casesList .case h2{margin:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.casesList .case p{font-size:12px; font-weight:bold; padding:10px;}
.casesList .case ul{padding:0 10px 10px;}
.casesList .case li{display:inline-block; background:#808f9c; border-radius:4px; margin-right:5px; color:#fff; font-size:9px; padding:2px 6px; line-height:1.2;}
.caseIndex header nav .category li,
.caseIndex header nav .category li:nth-child(1),
.caseIndex header nav .category li:nth-child(2){width:50%;}
.caseIndex header nav .keyword {right:0; top:0; width:100%;height:100%;}
.caseIndex header nav .keyword input[type=text] { width:100%; height:35px; line-height:35px; right:0;}
.caseIndex header nav .keyword button {height:35px; width:35px; background-size: 35px 35px}
.overSection {margin:0;padding:20px 30px 20px; }
.overSection  section.related{width:auto; margin:0 auto; height:auto;}
.overSection  section.related > h2{font-size:20px; margin-bottom:12px;}
.overSection  section.related > h2 span {margin-top:5px;}
.overSection  section.related .mobscroller{width:100%; position:relative;}
.overSection section.related .case{width:180px; margin:0 10px 0 0; background:#fff;}
.overSection section.related.case p{font-size:12px; font-weight:bold; padding:10px;}
.overSection section.related .case ul{padding:0 10px 10px;}
.overSection section.related .case li{font-size:9px; padding:2px 6px;}
.overSection.caseList section.related > h2 {color:#009fe2;}
.caseList .case{width:100%; border:1px #bbb solid; float:left; margin:0 8px;}
.caseList .case p{font-size:12px; font-weight:bold; padding:10px;}
.caseList .case ul{padding:0 15px 15px;}
.caseList .case li{display:inline-block; background:#808f9c; border-radius:4px; margin-right:5px; color:#fff; font-size:12px; padding:2px 8px; line-height:1.2;}





/* company
=======================================================*/
/* index introduction */
.companyInf,
.companyInf.blogIndex {width:100%; padding-bottom:40px;}
.companyInf header h1{background:none; width:100%; height:auto; text-indent:0; margin-bottom:30px;}
.companyInf header{height:auto;}
.companyInf header nav{margin-top:0; margin-bottom:30px;}
.companyInf header nav ul{clear:both; border:1px #ccc solid; border-width:1px 0;}
.companyInf header nav ul:after{content:''; display:block; clear:both;}
.companyInf header nav li{display:block; margin:0; width:50%; float:left; font-size:12px; border:1px #ccc solid; border-top:none; overflow:hidden;}
.companyInf header nav li:nth-child(odd){border-left:none; }
.companyInf header nav li:nth-child(even){border-right:none; border-left:none;}
.companyInf header nav li:last-child{border-bottom:none;}
.companyInf header nav li a{color:#445963; display:block; padding:5px 15px 5px 3px; position:relative; overflow:hidden; text-overflow: ellipsis; white-space:nowrap;}
.companyInf header nav li a:after{content:''; display:block; width:12px; height:12px; background:url(/common/images/sprite_2x.png) no-repeat -50px 0; background-size:250px auto; position:absolute; right:3px; top:50%; margin-top:-6px;}
.companyInf header nav li a.active{color:#009fe2;}
.companyInf .intro{padding:0 30px;}
.companyInf .intro .lead,
.companyInf .intro p.signature{font-size:20px; margin-bottom:20px;}
.companyInf .intro p.signature small{font-size:12px;}
.companyInf .intro figure{width:auto; height:auto; position:relative; left:auto; top:auto;}
.companyInf .outline{}
.companyInf .outline .colMap,
.companyInf .outline .colInf{width:auto; float:none; padding:0 30px 15px;}
.companyInf .outline .colMap .logo{text-align:center; margin-bottom:30px;}
.companyInf .outline dl{}
.mapContainer{position:relative; padding-bottom:56.25%; padding-top:30px; height:0; overflow:hidden;}
.mapContainer iframe,
.ggmap object,
.ggmap embed{position:absolute; top:0; left:0; width:100%; height:100%;}
.companyInf .policies,
.companyInf .management{width:100%; float:none; border-left:0; padding:0 30px 40px; margin-right:0;}
.companyInf .policies h2,
.companyInf .management h2{font-size:24px; margin-bottom:15px;}
.companyInf .policies ul{margin:0.5em 0 1.5em 1em; list-style:disc; font-size:14px;}
.companyInf .policies ol{margin:0 0 50px 1em; font-size:14px;}
.companyInf .policies ol li,
.companyInf .policies ul li{margin-bottom:1em;}
.companyInf .policies ol li li{margin-bottom:.5em; line-height:1.4;}
.companyInf .policies .signature{text-align:right; font-size:12px;}
.companyInf .history dl{background:url(/company/images/historyBg.png) repeat-y 60px top; padding:0 30px; }
.companyInf .history dt{}
.companyInf .history dd{padding:10px 0 10px 70px; min-height:70px;}
.companyInf .history dd:nth-of-type(odd){padding-right:0;}
.companyInf .history dd:nth-of-type(even){padding-left:70px;}
.companyInf .history dd:nth-of-type(odd) ul{text-align:left; padding-right:0;}
.companyInf .history dd:nth-of-type(odd) ul li{border-right:0; padding-right:0;}
.companyInf .history dd:nth-of-type(even) ul{padding-left:0;}
.companyInf .history dd:nth-of-type(even) ul li{border-left:0; padding-left:0;}
.companyInf .history dd ul{margin-left:1.5em;}
.companyInf .history dd li{list-style:disc; margin-bottom:0.5em;}
#hstList{width:auto; background:url(/company/images/historyBg.png) repeat-y 60px top; padding:0 30px;}
#hstList header{padding:0; height:auto; position:static; left:auto; top:auto; margin-bottom:15px;}
#hstList header div{width:auto; float:none; font-size:16px; border-bottom:1px #ccc solid; height:auto; text-align:left; padding:10px 10px 10px 40px; background:#fff;}
#hstList header div:first-child{color:#999; background:url(/company/images/hstTip2.png) no-repeat left center #fff;}
#hstList header div:last-child{float:none; background:url(/company/images/hstTip.png) no-repeat left center #fff;}
#hstList .year{margin-bottom:15px}
#hstList .year h2{border:2px #ccc solid; width:60px; height:60px; line-height:56px; font-size:16px; border-radius:30px; margin:0; float:left; clear:both; margin-bottom:10px;}
#hstList .year ul{margin-left:30px;}
#hstList .year ul li{background:url(/company/images/hstTip.png) no-repeat left center; margin:0 0 15px 0; font-size:14px; padding:0 0 0 30px;}
#hstList .year ul li figure{float:left; margin:0 10px 0 0; width:74px;}
#hstList .year ul li figure img{width:100%; height:auto;}
#hstList .year ul li.soc{margin:0 0 15px; padding-left:30px; background:none; text-align:left; position:relative; width:auto; min-height:0; background:url(/company/images/hstTip2.png) no-repeat left center; color:#999}
#hstList .year ul li.soc figure{float:left; margin:0 15px 15px 0; clear:none;}
#hstList .year ul li.soc:before{content:''; display:none;}
#hstList .year ul li small{font-size:11px; display:block; margin-top:5px;}
#hstList .year ul li.soc small{text-align:left;}
#hstList .section{border-radius:5px; padding:10px; width:auto;}
#hstList .section h3{font-size:16px;}
#hstList .section h3 br{display:inline;}
#hstList .section p{font-size:12px; margin-bottom:0;}
.companyInf .organization{width:auto; margin:0 auto 30px; padding:0 30px;}
.companyInf .organization h2{font-size:24px; margin-bottom:20px;}
.companyInf .management h3,
.companyInf .learning h2{font-size:20px; margin:30px 0 10px;}
.companyInf .management h4{font-size:16px; margin:0 0 10px;}
.companyInf .management table{width:100%;}
.companyInf .management table th,
.companyInf .management table td{padding:0 0 10px; border:0; display:block;}
.companyInf .management table td{border-bottom:1px #ccc solid;}
.companyInf .management table th{text-align:left; font-size:14px; width:100%; font-weight:bold; padding:10px 0 0 0;}
.companyInf .management table td ul{margin-left:1.5em;} 
.companyInf .learning{width:100%; float:none; border-left:0; padding:0 30px; margin-right:0;}
.companyInf .learning section{margin-bottom:30px;}
.companyInf .learning section p{font-size:14px;}
.jma{width:100%;}
.jma header h1{margin-bottom:30px; background:none; width:100%; height:auto; text-indent:0;}
.jma header p{font-size:15px; margin-bottom:20px; padding:0 30px;}
.jma section{width:auto; float:none; padding:0 30px; border-left:none; margin-bottom:30x;}
.jma section .lead{font-size:20px; margin-bottom:25px;}
.jma section figure{margin-bottom:30px;}
.jma section div{border-bottom:1px #ccc solid; padding:0 0 25px; margin-bottom:25px;}
.jma section div dl{margin-bottom:15px;}
.jma section div dt{font-size:20px;}
.jma section div dd{font-size:10px;}
.jma section div ul{margin-left:1.5em;}

/*blog index*/
.blogList{width:auto; margin:0 auto; padding:0 30px 40px; min-height:auto;}
.blogList nav{position:relative; width:auto; padding:30px 0;}
.blogList nav .category{width:100%; margin-bottom:10px;}
.blogList nav .category li{width:50%; overflow:hidden;}
.blogList nav .category li a{display:block; color:#bababa;padding:0 7px; height:35px; line-height:35px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.blogList nav li:nth-child(2n) {border-right:none;}
.blogList nav li:nth-child(n+3) {border-top:1px solid #CCCCCC;}
.blogList nav div{position:relative; right:auto; z-index:100; width:100%;}
.blogList nav .archive{position:static; left:auto; right:auto; top:auto; width:100%; position:relative;}
.blogList nav .archive:after{right:15px; top:8px;}
.blogList nav .archive li{background:#fff;}

.blogIndex .blogBlock{margin:0;}
.blogIndex .blogBlock div.blog{width:50%; float:left; margin:0 0 10px; padding:0 5px; border:none;}
.blogIndex .blogBlock div.blog a{border:1px #bbb solid; padding:0 10px 10px;}
.blogBlock div.blog.new a:after {padding:3px 5px; font-size:10px;}

.blogIndex .blogBlock div.blog a figure{width:auto; height:80px; background-position:center center; background-size:100% auto; margin:0 -10px 10px;}
.blogIndex .blogBlock div.blog dt{font-size:10px; margin-bottom:7px;}
.blogIndex .blogBlock div.blog dt i{font-size:9px; min-width:45px; padding:2px 3px;}
.blogIndex .blogBlock div.blog dd{font-size:12px; line-height:1.5;}



/* form
=======================================================*/
.contactForm{width:100%; margin:0 auto 30px;}
.contactForm header h1{background:none; width:100%; height:auto; text-indent:0; margin-bottom:30px;}
.contactForm header p{padding:0 30px; text-align:left; font-size:14px;}
.contactForm .privacy{background:#ebf1f5; padding:15px 15px 10px; margin-bottom:10px;}
.contactForm .privacy h2{font-size:18px; margin:0 0 10px;}
.contactForm .formItem{font-size:186x; width:auto; float:none; margin-bottom:20px; padding:0 15px; clear:both;}
.contactForm .formItem.nameKnaji input[type=text],
.contactForm .formItem.nameKana  input[type=text]{width:45%; display:inline-block;}
.contactForm .formItem.nameKnaji input[name=last_name],
.contactForm .formItem.nameKana  input[name=00N10000003j9V7]{margin-left:5px;}
.contactForm .formItem.agreement,
.contactForm .formItem.company,
.contactForm .formItem.nameKnaji,
.contactForm .formItem.email,
.contactForm .formItem.interest,
.contactForm .formItem.purpose{clear:both;}
.contactForm .formItem.dept,
.contactForm .formItem.nameKana,
.contactForm .formItem.tel,
.contactForm .formItem.class{float:none;}
.contactForm .formItem.comment{clear:both; float:none; width:100%;}
.contactForm .formItem.agreement{font-size:14px;}
.contactForm .formItem .label{font-size:14px;}
.contactForm .formItem label{display:block;}
.contactForm .formItem dt{font-size:12px;}
.contactForm .formItem dd{font-size:18px;}
.contactForm .btnSpace{clear:both; margin-top:40px; padding:0 15px;}
.contactForm .btnSpace button{width:100%; margin-bottom:15px;}
.contactForm p.confirm{font-size:14px; padding:20px 0 15px;}
.contactForm section{padding:0 30px;}
/* news 
=======================================================*/
/* index */
.newsList{width:auto; margin:0 auto; padding:0 30px 40px;}
.newsIndex header h1{background:none; width:100%; height:auto; text-indent:0; margin-bottom:30px;}
.newsIndex header nav{padding:0 30px 60px; position:relative; width:auto;}
.newsIndex header nav .category{width:100%; margin:0 auto; border:1px #ccc solid; border-radius:5px; clear:both; overflow:hidden; margin-bottom:10px;}
.newsIndex header nav li a{display:block; color:#bababa; height:35px; line-height:35px;}
.newsIndex header nav div{position:absolute; left:0; top:50px; z-index:100; width:100%; padding:0 30px;}
.newsIndex header nav .archive{position:static; left:auto; right:auto; top:auto; width:100%; position:relative;}
.newsIndex header nav .archive:after{right:15px; top:8px;}
.newsIndex header nav .archive li{background:#fff;}
.newsIndex .newsBlock div.entry{width:50%; float:left; margin:0 0 10px; padding:0 5px; border:none;}
.newsIndex .newsBlock div.entry a{border:1px #bbb solid; padding:0 10px 10px;}
.newsBlock div.entry.new a:after {padding:3px 5px; font-size:10px;}

.newsIndex .newsBlock div.entry a figure{width:auto; height:80px; background-position:center center; background-size:100% auto; margin:0 -10px 10px;}
.newsIndex .newsBlock div.entry dt{font-size:10px; margin-bottom:7px;}
.newsIndex .newsBlock div.entry dt i{font-size:9px; min-width:45px; padding:2px 3px;}
.newsIndex .newsBlock div.entry dd{font-size:12px; line-height:1.5;}
.pager{margin:15px -30px 30px;}
.pager li{font-size:15px;}
.pager li a{padding:0 13px 0 11px;}
.pager li.pass{padding:0 10px 0 8px;}
.newsDetail{width:auto; margin:0 auto 30px; padding:0 30px;}
.newsDetail header{padding-bottom:20px; text-align:left;}
.newsDetail header h1{font-size:20px; text-align:left;}
.newsDetail header div{font-size:12px;}
.newsDetail header div i{font-size:11px;}
.newsBody{font-size:14px;}
.newsBody .mainImg{margin-bottom:15px;}
.newsBody p,
.newsBody ul,
.newsBody ol,
.newsBody dl,
.newsBody table{margin-bottom:1.25em;}
.newsBody p.lead{font-size:16px;}
.newsBody h2{font-size:18px; margin:20px 0 10px;}
.newsBody h3{font-size:16px; margin:15px 0 10px;}
.newsBody h4{font-size:15px; margin:15px 0 10px;}
.newsBody figure{margin-bottom:30px;}
.newsBody figure.lt{float:none; clear:both;}
.newsBody figure.rt{float:none; clear:both;}
.newsBody figure.ct{clear:both;}
.newsBody figure img{max-width:100%; margin:0 auto; display:block;}




/* case 
=======================================================*/
.caseDetail{width:auto; margin:0 auto 30px; padding:0 30px;}
.caseDetail header{padding:20px 0; text-align:left;}
.caseDetail header figure.mv{margin:0px; }
.caseDetail header h1{font-size:20px; text-align:center;}
.case .caseDetail section.itemBlock{margin-bottom:30px; }
.case .caseDetail section.itemBlock:last-child{margin-bottom:0px;}
.case .caseDetail section.itemBlock hr{margin-top:30px; color:#c6d0d5;}
.caseDetail p,
.caseDetail ul,
.caseDetail ol,
.caseDetail dl,
.caseDetail table{margin-bottom:1.25em;}
.caseDetail p.lead{font-size:16px;}
.caseDetail h1{font-size:20px; margin-bottom:20px;}
.caseDetail h2{font-size:20px; text-align:left; line-height:1.5; margin-bottom:20px;}
.caseDetail h3{font-size:18px; text-align:left; line-height:1.5; margin-bottom:13px;}
.caseDetail figure{margin-bottom:30px;}
.caseDetail figure.lt{float:none; clear:both;}
.caseDetail figure.rt{float:none; clear:both;}
.caseDetail figure.ct{clear:both;}
.caseDetail figure img{max-width:100%; margin:0 auto; display:block;}
.caseDetail .purpose{border:2px solid #009fe2; padding:20px; margin-bottom:35px; position:relative;}
.caseDetail .purpose ul{margin-bottom:20px;}
.caseDetail .purpose dl{padding-top:0px; margin-bottom:0px;}
.caseDetail .purpose dd ul{margin-left:1.5em;}
.caseDetail .purpose ul:last-child,
.caseDetail .purpose dl:last-child{margin-bottom:0px; font-size:13px;}
.caseDetail .purpose dl dt{color:#90a4ae; margin-bottom:10px; line-height:1.0;}
.caseDetail .purpose h2{background:#009fe2; width:100%; height:auto; line-height:1.0; font-size:18px; position:static; padding:10px 0; margin-bottom:20px; color:#fff; text-align:center; margin-top:0px;}
.caseDetail .purpose p.tit{padding-left:0px; font-size:18px; line-height:1.6;}
.caseDetail .reason{background:#eef2f5; padding:22px; margin:10px 0 28px;}
.caseDetail .reason h2{font-size:20px; margin:0px 0 15px 0;}
.caseDetail .reason dl dd{margin-bottom:15px;}
.caseDetail .reason dl dd:last-child{margin-bottom:0px;}
.caseDetail .reason ol{margin-left:1.5em;}
.caseDetail .reason ol:last-child{margin-bottom:0px;}
.caseDetail .comProf{border:2px solid #e2e7ea; padding:15px 21px; margin-top:20px; margin-bottom:15px;}
.caseDetail .comProf h2{font-size:15px; margin-bottom:13px; line-height:1.0; text-align:left;}
.caseDetail .comProf dl:after{content:""; display:block; clear:both;}
.caseDetail .comProf dl dt{float:left; }
.caseDetail .comProf dl dd{padding-left:45px; position:relative;}
.caseDetail .comProf dl dd:before{content:"："; left:0px; top:0px;}
.caseDetail .comProf hr{margin:16px 0;}
.caseDetail .comProf p{margin-bottom:0px !important;}
.caseDetail .comProf p,
.caseDetail .comProf dl{font-size:10px;}

.caseDetail a.bBtn {margin:20px auto 0; width: 100%; height:44px; padding:15px 15px; font-size:14px; border-radius:5px;}


.caseDetail p.caseNote{margin-top:33px; font-size:12px;}
.caseDetail header dl{margin-bottom:0px !important; text-align:center;}
.caseDetail header dl dt{line-height:1.0; margin-bottom:18px;}
.caseDetail header dl dd{font-size:18px; margin-bottom:18px;}
.caseDetail figure.lt,
.caseDetail figure.rt{width:100%; text-align:center;}
.caseDetail figure img{max-width:100%; margin:0 auto; display:block;}
.caseDetail .comProf figure.rt{width:100%; text-align:center; margin:0 0 15px 0px;} 
.caseDetail .caseBtn{line-height:1.0; width:100%;  margin:30px auto 0;  background:#009fe2; border-radius:10px; font-size:16px; font-weight:bold;} 
.caseDetail .caseBtn a{line-height:50px; display:block; color:#fff; background:url(/case/images/btnArrow.png) 95% center no-repeat; padding:0 15px 0 20px;}
.caseDetail .caseBtn a:hover{color:#fff; text-decoration:none;}
/* misc 
=======================================================*/
.misc{width:auto; margin:0 auto 30px; padding:0 30px;}
.misc h1{margin-bottom:20px;}
.misc header h1{background:none; height:auto; margin:0 auto 20px; text-indent:0; white-space:normal; overflow:visible;}
.misc header h1.terms,
.misc header h1.privacy{width:100%;}
.misc section h2{font-size:18px; margin:30px 0 5px;}
.misc section p{margin-bottom:1.5em;}
.misc section ol,
.misc section ul{margin:1.5em 0 1.5em 1.5em; font-size:14px;}
.misc section ol li,
.misc section ul li{margin:1.5em 0 .5em;}
.misc header{margin-bottom:30px;}
.misc header p{text-align:left;}
div.ssl figure{float:left;}
div.ssl p{padding-left:70px;}
.sitemap section{padding-bottom:40px;}
.sitemap ul.primary,
.sitemap ul.secondary{width:auto; float:none; clear:both; margin:0; padding:0 30px;}
.sitemap ul.primary ul,
.sitemap ul.secondary ul{width:auto; float:none;}
.sitemap section ul{}
.sitemap section ul li{font-size:20px; color:#009fe2; margin:20px 0 0 0;}
.sitemap ul ul{margin:10px 0 0 0px; padding:0;}
.sitemap ul ul li{font-size:15px; margin:0 0 5px 0; list-style:none;}
.sitemap ul ul li a{color:#333;}

.sideMenu.scrFix{display:none;}
.sideMenu{width:auto; float:none; margin-left:0; border-top:1px #ccc solid;}
.sideMenu li{font-size:14px; margin-bottom:0; text-align:left; border-bottom:1px #ccc solid;}
.sideMenu li a{display:block; padding:10px; position:relative;}
.sideMenu li a:after{content:''; display:block; width:12px; height:12px; background:url(/common/images/sprite_2x.png) no-repeat -50px 0; background-size:250px auto; position:absolute; right:3px; top:50%; margin-top:-6px;}
.jma .sideMenu{margin-left:0;}
}

/* 2025/01/20追記
=======================================================*/
.sup_pro {
    list-style: none;
}