@charset "utf-8";
/* -------------------------------------
     Site CSS
 (c) Copyright 2006 Sketches of Design
     version 2006-09-01
------------------------------------- */
*{
  margin: 0;
  padding: 0;
}
/*  General Rules
--------------------------------------*/
body{
  font-family: 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック','ヒラギノ角ゴ Pro W3', 'Noto Sans', 'Hiragino Kaku Gothic Pro', sans-serif;
}
/* Defalut Settings */
.box{
  margin: 15px 0 !important;
  padding: 20px 20px 10px 20px;
  background: #f0f3fa;
}
img{
  margin: 0 0 1em 0;
  border: 0;
  vertical-align: bottom;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
	img {
		image-rendering: -webkit-optimize-contrast;
	}
}
br{
  letter-spacing: 0;
}
.first{
  margin-left: 0 !important;
}
#content p{
  margin-top: 0;
  margin-bottom: 0.7em;
  line-height: 1.7;
  letter-spacing:0.06em;
}
p.image{
  margin:0;
  text-indent:0;
}
p.copy{
  text-indent:0;
  text-align:center;
}
p.posted{
  margin-top: 2em !important;
  text-indent:0;
  text-align:right;
}
p.fLeft{
  float: left;
  display: inline;
  margin: 0 1.5em 0.5em 0;
}
p.fRight{
  float: right;
  display: inline;
  margin: 0 0 0.5em 1.5em;
}
p.fLeft img,
p.fRight img{
  margin: 0;
}
#btt{
  position: fixed;
  right: 20px;
  bottom: 20px;
  margin: 0;
  z-index: 5000;
  width: 44px;
  height: 44px;
}
#btt a{
  background: url("../img/nav-btt.png") 0 0 no-repeat;
	background-size: 44px 44px !important;
	-webkit-background-size: 44px 44px !important;
	-moz-background-size: 44px 44px !important;
	-ms-background-size: 44px 44px !important;
	-o-background-size: 44px 44px !important;
}
#btt a:hover{
  filter: alpha(opacity=60);
  -moz-opacity:0.60;
  opacity:0.60;
}
.external {
    background: url("../img/nav_external.png") right center no-repeat;
    margin-right: 4px;
    padding-right: 14px;
}
span.arrow{
  font-family: Verdana, sans-serif;
  font-weight: bold;
}
/* Accessibility */
.skip{
  position:absolute;
  left:-10000px;
  width:0;
  /* \*/
  overflow: hidden !important;
  /* */
}
.accesibilty{
  display:none;
}
/* Form */
form{
  margin: 0 0 1em 0;
}
fieldset{
  padding: 0.25em 0.5em;
}
form dl{
  margin: 0 0 0.5em 0;
}
form dl dt{
  font-weight: normal;
}
form dl dd{
  margin-left: 0;
}
/* Defalut Link Design */
a:link,
a:visited,
a:active{
  color: #00b8ee;
  text-decoration: none;
}
a:hover{
  color: #00b8ee;
  text-decoration: underline;
}
/* list */
ul{
  margin: 0 0 0.5em 0;
  padding-left: 1.5em;
  list-style:disc;
}
ul ul{
  margin:0;
  list-style:circle;
  padding-left:1em;
}
ol{
  margin: 0 0 0.5em 0;
  list-style: decimal;
  padding-left: 2.5em;
}
dl{
  margin: 0 0 0.5em 0;
  line-height: 1.5em;
}
dt{
  font-weight: bold;
}
dd{
  padding-left:1em;
}
#content ul,
#content ol{
  margin: 0 0 0 1em;
  padding: 0;
}
#content ul{
  list-style-type: none;
}
#content ol{
  margin: 0 0 1em 40px;
  list-style-position: outside;
}
#content ol li,
#content ul li{
  margin: 0 0 0.8em 0;
}
#content ul li{
  padding: 0 0 0 12px;
  background: url("../img/nav-bullet.png") 0 0.6em no-repeat;
}
div.bc-area{
  background: #fff9b0;
}
ol.bc{
  margin: 0 auto !important;
  padding: 15px 40px;
  font-size: 79%;
  list-style: none;
  border-bottom: none;
  max-width: 968px;
  text-align: left;
}
ol.bc li.home{
  padding: 0 0 0 20px;
  background: url("../img/nav-bc-home.png") 0 center no-repeat;
}
ol.bc li span.arrow{
  margin: 0 5px;
}
ol.bc li a{
  color: #4d4d4d;
}
ol.bc li{
  display: inline;
  color: #999;
  margin: 0;
  padding: 0;
}
ol.bc li.first{
  background: none;
  padding-left: 0;
}
ol.bc li strong{
  color: #333;
  font-weight: normal;
}
ol.bc span{
  margin: 0 0 0 5px;
}
ul.flat{
  margin: 0 !important;
  list-style: none !important;
}
ul.flat li{
  display: inline;
}
/* table */
table{
  margin: 0 0 10px 0;
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
 /* line-height: 1.25;*/
  /* \*/
  width: 100%;
  /* */
}
table col.digit{
  text-align: right;
}
table col.centering{
  text-align: center;
}
table tr.odd{
  background: #F7F7F7;
}
table tr.even{
  background: #fff;
}
table thead{
}
table thead tr th,
table thead tr td{
  margin: 1px;
  color: #1E1F1E;
  text-align: center;
  font-weight: bold;
  border: none;
}
table thead tr th{
  text-align: center;
}
table tr th,
table tr td{
  border: none;
 /* border-bottom: 1px dotted #c6c9c6;*/
  padding: 15px 30px;
  text-align: left;
}
table tr th{
  border-right: 1px solid #e0e0e0;
  color: #303130;
}
caption{
  text-align: left;
}
th, td{
  border: none;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 0.1em 0.4em;
}
table ul, table ol, table dl{
  margin: 0;
}
table ul{
  padding: 0;
  list-style: none;
}
table caption{
  text-align: center;
}
table p.nav{
  margin-bottom: 0 !important;
}
table tr .left{
  text-align: left;
}
table tr .center{
  text-align: center;
}
table tr .right{
  text-align: right;
}
table tr th p,
table tr td p{
  margin: 0 !important;
  padding: 0 !important;
}
table ul li{
  margin: 0 !important;
}
#content table tr td ol{
  margin: 0 0 0 20px;
}
/* headline */
h1, h2, h3, h4, h5, h6{
  font-size: 100%;
  font-weight: normal;
  text-align: center;
}
#main .kv{
  height: 720px;
}
#main h1{
  padding: 50px 0;
  width: auto;
  font-size: 4.0rem;
  color: #fff;
}
#main .kv .backstretch img{
  top: 0 !important;
}
#main h1 span{
  display: block;
  padding: 64px 0;
	background-size: 48px 48px !important;
	-webkit-background-size: 48px 48px !important;
	-moz-background-size: 48px 48px !important;
	-ms-background-size: 48px 48px !important;
	-o-background-size: 48px 48px !important;
}
#content h2{
  margin: 0 0 20px 0;
  padding: 80px 0 20px 0;
  font-size: 2.4rem;
  color: #303130;
  letter-spacing: 0.1em;
}
#content h3{
  margin: 60px 0 20px 0;
}
#content h4{
  margin: 0 0 15px 0;
  font-size: 108%;
}
#content h3,
#content h4{
  letter-spacing: 0.05em;
  font-weight: 400;
  color: #1e1f1e;
}
/* decoration */
.banners a:hover,
.banners a:hover img{
  filter: alpha(opacity=75);
  -moz-opacity:0.75;
  opacity:0.75;
}
em{
  color: #3c62a1;
  font-weight: bold;
  font-style: normal;
}
strong{
  color: #303130;
  font-size: 108%;
  font-weight: bold;
}
.nav{
  text-align: right;
  font-size: 85%;
}
.nav a{
  padding: 0 0 0 12px;
  background: url("../img/nav-arrow.png") left center no-repeat;
}
.notice{
  text-align: right;
  font-size: 85%;
}
.weak{
  font-size: 85%;
  _font-size: small;
}
div#content blockquote{
  background-color: #f4f5f5;
  border: 1px solid #d2d2d2;
  color: #677880;
  margin: 1em 0 1.5em 0;
  padding: 0.5em 1em;
}
/*----- clearfix -----*/
/* for modern browsers: Firefox, Safari, Opera */
.CFX:after{
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
/* for win IE7 ,mac IE */
.CFX{
  display: inline-table;
  min-height: 1%;
}
/* for win IE6 */
/* \*/
* html .CFX{height: 1% !important;}
.CFX{display: block;}
/* */

/*----- FIR -----*/
.FIR{
  text-indent: -10000px !important;
  /* \*/
  overflow: hidden !important;
  /* */
  background-repeat: no-repeat;
  background-position: 0 0;
}
.FIR a{
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
  outline: 0;
}
ul.FIR, ol.FIR{
  margin: 0;
  padding: 0;
  list-style: none;
}
/*  Layout
////////////////////////////////////////// */
/* body */
html {
  font-size: 62.5%; /* 10px */
}
body{
  background: #E0E0E0;
  text-align: center;
  color: #666766;
  word-wrap: break-word;
  font-size: 1.6rem; /* 16px */
}
body br.sp{
  display: none;
}


/* wrapper */
#wrapper{
  margin: 0 auto !important;
  background: #fff;
  height: 100%;
  text-align: left;
  overflow: hidden;
}

/* header */
#header{
  position: fixed;
  background-color: #fff;
  box-shadow: 0 0 4px 2px rgba(158,158,158,0.3);
  width: 100%;
  min-height: 115px;
  z-index: 10000;
  transition: .3s;
  transition-property: min-height,border;
}
#header .inner{
  position: relative;
  margin: 0 auto;
  width: 1000px;
}
#header.no-shadow{
  box-shadow: none !important;
  min-height: 95px;
}
#header.no-shadow p#b-logo{
  padding: 12px 0;
  width: 60px;
  height: auto;
}
#header.no-shadow p#b-logo img,
#header.no-shadow p#g-logo img{
  max-width: 100%;
  height: auto;
}
#header.no-shadow p#g-logo{
  padding: 57px 0 0 0;
  width: 120px;
  height: auto;
}
#header.no-shadow .menu ul{
  top: 53px;
  font-size: 90%;
  transition: .3s;
}
#header.no-shadow .menu ul li a{
  padding: 0 24px 16px 24px;
}
#header.no-shadow .menu > ul > li > ul.normal-sub {
  top: 42px !important;
}
body.recruit #header .menu > ul > li.recruit > ul.normal-sub,
body.company #header .menu > ul > li.company > ul.normal-sub,
body.service #header .menu > ul > li.service > ul.normal-sub{
  display: none !important;
}
body.company.fixed #header .menu > ul > li.company > ul.normal-sub,
body.service.fixed #header .menu > ul > li.service > ul.normal-sub{
  display: block !important;
  z-index: -1;
}
#header p#b-logo,
#header p#g-logo{
  position: absolute;
  z-index: 10;
}
#header p#g-logo{
  right: 0;
}
#header p#b-logo,
#header p#b-logo img{
  transition: .3s;
  margin: 0;
}
#header p#b-logo{
  padding: 16px 0;
  width: 70px;
  height: 83px;
}
#header p#g-logo{
  padding: 68px 0 0 0;
  width: 161px;
  height: 20px;
}


#header .menu ul{
  position: absolute;
  top: 67px;
  left: 0;
  right: 0;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  list-style-type: none;
  text-align: center;
  /*
  height: 40px;*/
}
#header .menu ul li{
  display: inline-block;
}
#header .menu ul li a{
  padding: 0 24px 20px 24px;
  color: #303130;
}
#header .menu ul li.recruit ul li a{
  padding: 20px 16px !important;
}
body#home #header .menu ul li.home a,
body.company #header .menu ul li.company a,
body.service #header .menu ul li.service a,
body.recruit #header .menu ul li.recruit a,
body.contact #header .menu ul li.contact a,
#header .menu ul li a:hover{
  border-bottom: 4px solid #00b8ee;
  text-decoration: none;
}
#header .menu ul li ul{
  display: none;
  width: auto;
  border-top: 1px solid #e0e0e0;
  box-shadow: 0 4px 4px -2px rgba(158,158,158,0.3);
}
#header .menu ul li ul a{
  border: none !important;
}


/* main */
#main{
  margin-top: 115px;
  background-color: #f5f5f5;
}
#main.fixed{
  margin-top: 95px;
}
#main .sbtn{
  cursor: pointer;
}


/* content */
#content{
  margin: 0 auto;
  padding: 0 0 60px 0;
  overflow: hidden;
}

/* diagram */
div.diagram a.sp,
div.diagram a.FIR,
div.diagram span{
  display: none;
}
div.diagram p.image{
  margin: 0 !important;
}
div.diagram{
  text-align: center;
}

/* footer */
#footer{
  overflow: hidden;
  background: #e0e0e0;
  font-size: 86%;
}
#footer div.inner,
#footer ul.copyarea{
  margin: 0 auto !important;
}
#footer div.inner{
  width: 960px;
}
#footer ul,
#footer ul li,
#footer .copyarea ul li img,
#footer .copyarea ul li.copy,
#footer .copyarea ul li.b-siteid a{
  margin: 0;
  padding: 0;
  list-style-type: none;
}
#footer .copyarea ul li,
#footer div.inner ul.ft-menu{
  float: left;
  display: inline;
}
#footer .copyarea{
  background: #fff;
  padding: 0 20px;
  height: 60px;
  line-height: 61px;
  font-size: 86%;
}
#footer .copyarea ul{
  margin: 0 auto;
  max-width: 968px;
}
#footer .copyarea ul li{
  margin: 0 20px 0 0;
}
#footer .copyarea ul li.disclosure{
  margin: 0;
}
#footer .copyarea ul li a{
  color: #717071;
  text-decoration: none;
}
#footer .copyarea ul li.b-siteid,
#footer .copyarea ul li.b-siteid img{
  width: 212px;
  height: 13px;
}
#footer .copyarea ul li.b-siteid{
  margin: 0 165px 0 0;
}
#footer .copyarea ul li img{
  vertical-align: middle;
}
#footer ul li a:hover{
  text-decoration: underline !important;
}
#footer p.copy{
  background-color: #fff;
  line-height: 61px;
  font-size: 72%;
  color: #b8b8b8;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
#footer .copyarea ul li.copy{
        letter-spacing: -0.05em;
    }
}
/* Firefox */
@-moz-document url-prefix() {
#footer .copyarea ul li.copy{
        letter-spacing: normal;
    }
}
#footer div.inner ul.ft-menu{
  padding: 30px 20px;
  box-sizing: border-box;
  width: 25%;
}
#footer div.inner ul.first{
  border: none;
}
#footer div.inner ul.ft-menu li{
  margin: 0 0 5px 0;
}
#footer div.inner ul.ft-menu li a{
  color: #727171;
  text-decoration: none;
  padding: 0;
}
#footer div.inner ul.ft-menu li.title{
  margin: 0 0 12px 0;
}
#footer div.inner ul.ft-menu li.title a{
  color: #303130;
  background: url("../img/nav-bullet-active.png") 0 center no-repeat;
}





/*  font
--------------------------------------*/
h1, h2, h3, h4, h5, h6,
#header .menu ul li,

body.recruit div#content #info-area div#webpamphlet ul li,
div#content ul.navigation,
body#recruit-office #content #gallery-area .sp-slide p,
body#home #main #news-area dl,
body#home #pickup-area .sp-slide p,
body#company-idx #content div#message div.CFX,
body#company-idx div#content div#philosophy div.lead p,
body#company-idx div#content div#history div.inner dl dd em,
body#company-idx div#content div#history div.inner dl dd span,
body#company-idx div#content div#history div.inner dl dd ul,
body#recruit-idx div#content .info p.lead,
body#company-idx div#purpose p,
body#home #content #content-inner #recruit .text ul li a{
  font-family: 'Noto Sans Japanese';
  font-family: 'NotoSans-Regular'\9;
  font-weight: 400;
}
body.career-detail #content #entryarea p.ban,
body.interview #main #main-pic,
body#recruit-special-talk #content .profile p.year,
body#home #pickup-area .sp-slide p em{
  font-family: 'Noto Sans Japanese';
  font-family: 'NotoSans-Medium'\9;
  font-weight: 500;
}
/*body.recruit #content #entry-area p.ban a{
  font-family: 'Noto Sans Japanese';
  font-family: 'NotoSans-Bold'\9;
  font-weight: 600;
}*/
body#company-idx div#content div#history div.inner dl dt{
  font-family: 'Abel', sans-serif;
}
body#company-idx div#content div#history div.inner dl dd ul,
body#company-idx div#content div#history div.inner dl dd span{
  font-size: 1.3rem;
}
body#recruit-training div#content div#lv02-03 div.voices ul li,
body#service-idx #content div#business-areas div.block ul li{
  font-size: 1.4rem;
}
body#company-idx div#content div#philosophy div.CFX div p{
  font-size: 1.5rem;
}
body#home #content #content-inner #recruit .text ul li a,
body#company-idx div#content div#philosophy div.CFX div span,
body#company-idx div#content div#philosophy div.lead p{
  font-size: 1.6rem;
}
body#company-idx #content div#message div.CFX p.posted{
  font-size: 1.7rem;
}

body#recruit-office #content div h3,
body.interview #main h1,
body.interview div#content div#private h3,
body#recruit-idx div#content .info .inner h2,
body.recruit div#content #info-area h2,
body#recruit-message p.posted span,
body#recruit-training div#content div#lv02-03 div.voices h3,
body#company-idx #content div#message div.CFX,
body#company-idx #content div#message div.CFX p.posted em{
  font-size: 2.0rem;
}
body#recruit-idx div#content .info p.lead,
body#company-idx div#content div#philosophy div.CFX h3{
  font-size: 2.3rem;
}
body#company-idx div#content div#history div.inner dl dt{
  font-size: 2.5rem;
}
body#company-idx div#content div#philosophy div.lead h3{
  font-size: 3.3rem;
}


/*  content
////////////////////////////////////////// */
#content div#content-inner div div.inner{
  margin: 0 auto;
  width: 968px;
}
#content div#content-inner div#lead-area div.inner{
  width: auto;
}

/**/
div#content ul.navigation,
div#content ul.navigation li{
  margin: 0;
  background: none;
  padding: 0;
  list-style-type: none;
}
div#content ul.navigation{
  margin: 0 auto;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  background: #fff;
  max-width: 968px;
}
div#content ul.navigation li{
  display: inline;
}
div#content ul.navigation li a{
  display: inline-block;
  padding: 20px 30px 20px 30px;
  color: #424242;
}
body#company-idx div#content ul.navigation{
  padding: 0 60px 20px 60px;
  box-sizing: border-box;
}
body#company-idx div#content ul.navigation li a{
  padding: 20px 15px 0 15px;
}
div#content ul.navigation li a:hover{
  text-decoration: none;
  color: #00b8ee;
}
div#content ul.navigation.fixed{
  display: none;

  position: fixed;
  top: 95px;
  margin: 0 auto !important;
  border-top: 1px solid #e0e0e0;
  box-shadow: 0 4px 4px -2px rgba(158,158,158,0.3);
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  width: 100%;
  max-width: 100%;
  z-index: 10;
}
div#content ul.navigation.fixed li{
  font-size: 1.4rem;
}
div#content ul.navigation.fixed li a{
  padding: 12px 24px 12px 24px !important;
}


/*  home
--------------------------------------*/
body#home #main{
  background: url("../img/bg_home_kv.png") top center repeat-x #fff;
}
body#home #content ul,
body#home #content ul li{
  margin: 0;
  background: none;
  padding: 0;
  list-style-type: none;
}
body#home #main div.slider #top-slider,
body#home #content ul.slider{
  width: 1000px;
}
body#home #main div.kv,
body#home #main div.slider div.east{
  width: 1220px;
}
body#home #main div.kv,
body#home #main div.slider #top-slider{
  height: 502px;
}
body#home #main div.slider{
  position: relative;
  overflow: hidden;
  margin: 0 auto;
}
body#home #main div.slider #top-slider{
  margin: 0 auto !important;
  padding: 0 !important;
}
body#home #main div.slider #top-slider img{
  margin-top: 40px;
}
body#home #main div.slider div.east,
body#home #content div#news-area dl,
body#home #content div#concept ul li.first{
  margin: 0;
}
body#home #main div.slider div.east,
body#home #main #news-area h2,
body#home #main #news-area dl dt{
  position: absolute;
}
body#home #main div.slider div.east{
  top: 0;
  z-index: 100;
  height: 502px;
}
body#home #main p.scroll-sp{
  display: none;
}
body#home #main #news-area{
  position: relative;
  margin: -24px auto 0 auto;
  width: 968px;
  z-index: 100;
}
body#home #main #news-area h2{
  padding: 11px 36px;
  background-color: #00b8ee;
  height: 100%;
  color: #fff;
  box-sizing: border-box;
}
body#home #main #news-area dl{
  margin: 0;
  background-color: #fff;
  box-shadow: 0 0 4px 2px rgba(158,158,158,0.3);
  padding: 12px 12px 12px 136px;
}
body#home #main #news-area dl dt{
  font-weight: normal;
}
body#home #main #news-area dl dd{
  padding-left: 6.5em;
}
#main #news-area dl dd a{
  text-decoration: underline;
}
#main #news-area dl dd a:hover{
  text-decoration: none;
}
body#home #pickup-area{
  margin-top: -24px;
  background: linear-gradient(135deg, #fff362, #00b8ee);
  height: 228px;
}
body#recruit-office #content #gallery-area h2,
body.recruit #interview-area h2,
body#home #pickup-area h2{
  margin: 0 auto;
  padding-top: 64px;
  width: 968px;
  font-size: 2.8rem;
  text-align: left;
}
body#recruit-office #content #gallery-area .sp-slide,
body#home #pickup-area .sp-slide{
  cursor: pointer;
  padding: 20px;
  width: 290px !important;
  transition: .3s;
  transition-property: box-shadow, background;
}
body#recruit-office #content #gallery-area .sp-slide:hover,
/*body.recruit #interview-area .sp-slide:hover,*/
body#home #pickup-area .sp-slide:hover{
  background-color: #fff;
  box-shadow: 0 0 4px 2px rgba(158,158,158,0.3);
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
}
body#recruit-office #content #gallery-area .sp-slide p em,
body#home #pickup-area .sp-slide p em{
  font-weight: normal;
  color: #212121;
}
body.recruit #interview-area .sp-slide p span,
body#home #pickup-area .sp-slide p span{
  padding-left: 0.5em;
}
body#recruit-office #content #gallery-area .sp-mask,
body.recruit #interview-area .sp-mask,
body#home #pickup-area .sp-mask{
  overflow: visible;
  margin-top: 16px;
}
body#recruit-office #content #gallery-area .sp-horizontal .sp-arrows,
body.recruit #interview-area .sp-horizontal .sp-arrows,
body#home .sp-horizontal .sp-arrows{
  position: relative;
  margin: 0 auto;
  top: -358px;
  width: 968px !important;
}
body#home .sp-horizontal .sp-arrows{
  top: -342px;
}
body#recruit-office #content #gallery-area .sp-horizontal .sp-arrow{
  top: -7px;
  width: 12px;
  height: 18px;
}
body.recruit #interview-area .sp-horizontal .sp-arrow,
body#home .sp-horizontal .sp-arrow{
  top: 0;
  width: 12px;
  height: 18px;
}
body#recruit-office #content #gallery-area .sp-horizontal .sp-previous-arrow,
body#home .sp-horizontal .sp-previous-arrow{
  right: 48px;
  left: auto;
  background: url("../img/nav-pickup-prev.png");
}
body#recruit-office #content #gallery-area .sp-horizontal .sp-next-arrow,
body#home .sp-horizontal .sp-next-arrow{
  right: 0;
  background: url("../img/nav-pickup-next.png");
}
body#home #pickup-area .sp-slide p.text{
  border-bottom: 1px solid #e0e0e0;
  padding: 0.25em 0 0.5em 0;
  font-size: 1.4rem;
}
body.recruit #interview-area .sp-slide p.year,
body#home #pickup-area .sp-slide p.year{
  display: block;
  margin-top: 0.5em;
}
body#home #pickup-area .sp-slide p.more{
  position: absolute;
  right: 20px;
  bottom: 16px;
  margin: 0;
  font-size: 85%;
  color: #00b8ee;
}
body#home #content{
  margin-top: 320px;
  background-color: #f5f5f5;
}
body#home #content #content-inner{
  margin: 0 auto;
  padding: 64px 0 128px 0;
  width: 968px;
}
body#home #content #content-inner #company,
body#home #content #content-inner #service,
body#home #content #content-inner #recruit{
  position: relative;
}
body#home #content #content-inner #company,
body#home #content #content-inner #service{
  float: left;
  display: inline;
  width: 468px;
}
body#home #content #content-inner #service{
  float: right;
}
body#home #content #content-inner #recruit{
  position: relative;
  clear: both;
}
body#home #content #content-inner #recruit .imgwrap img{
  margin-top: -70px;
}
#content .imgwrap{
  position: relative;
	overflow: hidden;	/*拡大時にはみ出た部分を隠す*/
	background-color: #333;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  border-radius: 2px;
}
body#home #content .imgwrap{
	width: 468px;	/*画像の幅*/
	height: 256px;	/*画像の高さ*/
}
body#home #content #content-inner #recruit .imgwrap{
	width: 968px;	/*画像の幅*/
	height: 236px;	/*画像の高さ*/
}
#content .imgwrap img {
	display: block;
	margin: 0;
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}
body#home #content .imgwrap img {
  filter: alpha(opacity=60);
  -moz-opacity:0.60;
  opacity:0.60;
}
#content #info-area .sbtn:hover img,
#content .imgwrap:hover img {
	transform: scale(1.1);	/*画像の拡大率*/
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}
body#home #content #content-inner h2{
  position: absolute;
  top: 60px;
  margin: 0;
  padding-top: 42px;
  width: 100%;
  font-size: 2.8rem;
  color: #fff;
  z-index: 100;
}
body#home #content #content-inner h2 a{
  color: #fff;
  text-decoration: none !important;
}
body#home #content #content-inner #company h2{
  background: url("../img/p-icon-company_pc.png") top center no-repeat;
}
body#home #content #content-inner #service h2{
  background: url("../img/p-icon-service_pc.png") top center no-repeat;
}
body#home #content #content-inner #recruit h2{
  top: 24px;
  left: 24px;
  padding: 0 0 0 42px;
  background: url("../img/p-icon-recruit_pc.png") left center no-repeat;
  width: auto;
  text-align: left;
}
body#home #content #content-inner p.more{
  position: absolute;
  left: 50%;
  margin: 0 0 0 -40px;
  bottom: 56px;
  font-size: 1.3rem;
  width: 80px;
}
body#home #content #content-inner #recruit p.more{
  top: 32px;
  right: 32px;
  left: auto;
  bottom: auto;
}
body#home #content #content-inner p.more a{
  display: block;
  border: 1px solid #fff;
  padding: 4px 0;
  text-align: center;
  color: #fff;
  transition: .3s;
}
body#home #content #content-inner .imgwrap:hover p.more a{
  background-color: #fff;
  color: #999;
}
body#home #content #content-inner p.more a:hover{
  text-decoration: none;
}
body#home #content #content-inner .text{
  padding: 16px;
  font-size: 1.4rem;
}
body#home #content #content-inner #recruit .text{
  position: absolute;
  top: 114px;
  right: 32px;
  background-color: #fff;
  padding: 0;
  box-shadow: 0 0 4px 2px rgba(158,158,158,0.3);
  width: 468px;
}
body#home #content #content-inner #recruit .text p a{
  display: block;
  padding: 24px 32px 16px 32px;
  color: #666766;
  text-decoration: none !important;
}
body#home #content #content-inner #recruit .text ul{
  border-top: 1px solid #f5f5f5;
}
body#home #content #content-inner #recruit .text ul li{
  float: left;
  display: inline;
  width: 50%;
  text-align: center;
}
body#home #content #content-inner #recruit .text ul li a{
  display: inline-block;
  background: url("../img/nav-arrow.png") left center no-repeat;
  padding: 1em 0 1em 20px;
  color: #212121;
}
body#home #content #content-inner #recruit .text ul li a:hover{
  text-decoration: none;
  filter: alpha(opacity=60);
  -moz-opacity:0.60;
  opacity:0.60;
}


/* news */

#cboxTitle{
  display: none !important;
}
#inline-content{
  padding: 24px 24px 12px 24px;
  text-align: left;
}
#inline-content p,
#inline-content ul li{
  margin-bottom: 1em;
}
#inline-content p.posted{
  margin-bottom: 1.5em;
}
body.news #footer{
  padding: 0 !important;
  text-align: left !important;
}
body.news #main h1,
body.movie #main h1{
  padding: 0;
}
body.news #main .kv,
body.movie #main .kv{
  height: auto;
}
body.news h1 span,
body.movie h1 span{
  background: none !important;
}
body.news #content #lv02-01{
  margin-top: 32px;
}
body.news #content h2{
  padding-top: 32px;
}
body.news #content p.date{
  text-align: center;
  font-size: 1.2rem;
}
body.news #content p.posted{
  margin-bottom: 1.5em;
}



/*  company
--------------------------------------*/
#content div.section div.inner,
#content div#lead-area{
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 0 3px 2px rgba(158,158,158,0.2);
  margin: 16px auto 64px auto;
  padding: 60px;
  width: 848px;
}
body#cookie #content div#content-inner,
body.movie #content div#content-inner,
body#site #content div#content-inner,
body#disclosure #content div#content-inner,
body#privacy #content div#content-inner,
body#contact-idx #content div#lv02-01 div.inner,
body#redirect-idx #content div#lv02-01 div.inner,
body#company-idx div#content div#access div.CFX,
body#company-idx div#content div#history div.inner,
body#company-idx div#purpose .inner,
body#company-idx #content div#message div.inner{
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  background: #fff;
  box-shadow:0px 0px 6px 1px #d5d5d5;
}
body#cookie #content div#content-inner,
body#site #content div#content-inner,
body.movie #content div#content-inner,
body#disclosure #content div#content-inner,
body#privacy #content div#content-inner,
body#contact-idx #content div#lv02-01 div.inner,
body#redirect-idx #content div#lv02-01 div.inner,
body#company-idx div#content div#access div.CFX,
body#company-idx #content div#message div.inner{
  padding: 60px;
  width: 848px;
}
body.recruit div#main div.kv,
body.recruit div#main div.kv div.gradation,
body#service-idx div#main div.kv,
body#service-idx div#main div.kv div.gradation,
body#company-idx div#content div#history div.inner dl dt,
body#company-idx div#main div.kv,
body#company-idx div#main div.kv div.gradation{
  position: absolute;
}
body#service-idx #content,
body#company-idx #content{
  position: relative;
}
body.recruit div#main div.kv,
body#service-idx div#main div.kv,
body#company-idx div#main div.kv{
  width: 100%;
  z-index: 0;
}
body.recruit div#main div.kv div.gradation,
body#service-idx div#main div.kv div.gradation,
body#company-idx div#main div.kv div.gradation{
  left: 0;
  bottom: 0;
  background: url("../img/kv-gradation.png") 0 0 repeat-x !important;
  height: 180px;
  width: 100%;
  z-index: -1;
}
body#company-idx h1 span{
  background: url("../img/h1-company.png") top center no-repeat;
}
body#service-idx #content ul.navigation,
body#company-idx #content ul.navigation{
  margin: 226px auto 0 auto;
}
body#service-idx #content div#base,
body#service-idx #content div#business-areas,
body#company-idx #content div#outline,
body#company-idx #content div#message,
body#company-idx #content div#philosophy,
body#company-idx #content div#history,
body#company-idx #content div#organization,
body#company-idx #content div#access{
    margin-top: -80px;
    padding-top: 80px;
}
body#company-idx #content div#message,
body#company-idx #content div#organization{
    margin-top: 64px;
}
body#company-idx #content div#lead-area h2{
  margin: 0 0 20px 0;
}
body#company-idx #content div#message{
  background-color: #fff362;
}
body#company-idx #content div#philosophy{
  margin-top: 0;
}
body#company-idx #content div.even{
  margin: 60px 0 0 0;
  background: #fff;
  padding: 10px 0 60px 0;
}
body#company-idx #content div#outline table p.nav{
  text-align: left;
}
body#company-idx #content div#message div.CFX,
body#company-idx #content div#message div.CFX p.posted em,
body#company-idx div#content div#history div.inner dl dd em,
body#company-idx div#content div#history div.inner dl dd span{
  color: #212121;
}
body#company-idx #content div#message div.CFX p.lead{
  padding: 30px 0 0 0;
  line-height: 2;
  letter-spacing: 0.1em;
}
body#company-idx #content div#message div.CFX p.posted em{
  margin: 0 0 0 5px;
}
body#company-idx div#content div#philosophy div.lead p,
body#company-idx div#content div#philosophy div.lead h3{
  margin: 0;
}
body#company-idx div#content div#philosophy div.lead,
body#company-idx div#content div#philosophy div.CFX{
  margin: 0 auto;
  width: 968px;
}
body#company-idx div#content div#philosophy div.lead{
  background: url("../img/bg-company-philosophy-01.jpg") no-repeat scroll center center;
  background-size: cover;
  padding: 40px 0;
}
body#company-idx div#content div#philosophy div.lead h3{
  margin: 0 0 10px 0;
}
body#company-idx div#content div#philosophy div.CFX div{
  float: left;
  display: inline;
  width: 30%;
}
body#company-idx div#content div#philosophy div.CFX div.lv03-02{
  margin: 0 5%;
}
body#company-idx div#content div#philosophy div.CFX div span{
  display: block;
}
body#company-idx div#content div#history div.inner dl{
  background: url("../img/bg-company-history.gif") 144px center repeat-y;
  padding: 60px;
}
body#company-idx div#content div#history div.inner dl dt{
  width: 90px;
}
body#company-idx div#content div#history div.inner dl dt::before{
    position: absolute;
    top: 5px;
    bottom: 0;
    right: 0;
    margin: auto;
    content: "";
  background: red;
  width: 12px;
  height: 12px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
}
body#company-idx div#content div#history div.inner dl dt.year-01{
  color :#fff362;
}
body#company-idx div#content div#history div.inner dl dt.year-01::before{
  background :#fff362;
}
body#company-idx div#content div#history div.inner dl dt.year-02{
  color :#cce77e;
}
body#company-idx div#content div#history div.inner dl dt.year-02::before{
  background :#cce77e;
}
body#company-idx div#content div#history div.inner dl dt.year-03{
  color :#99db9a;
}
body#company-idx div#content div#history div.inner dl dt.year-03::before{
  background :#99db9a;
}
body#company-idx div#content div#history div.inner dl dt.year-04{
  color :#66d0b6;
}
body#company-idx div#content div#history div.inner dl dt.year-04::before{
  background :#66d0b6;
}
body#company-idx div#content div#history div.inner dl dt.year-05{
  color :#33c4d2;
}
body#company-idx div#content div#history div.inner dl dt.year-05::before{
  background :#33c4d2;
}
body#company-idx div#content div#history div.inner dl dt.year-06{
  color :#00b8ee;
}
body#company-idx div#content div#history div.inner dl dt.year-06::before{
  background :#00b8ee;
}
body#company-idx div#content div#history div.inner dl dt.year-07{
  color :#00a7e1;
}
body#company-idx div#content div#history div.inner dl dt.year-07::before{
  background :#00a7e1;
}
body#company-idx div#content div#history div.inner dl dt.year-08{
  color :#0084d6;
}
body#company-idx div#content div#history div.inner dl dt.year-08::before{
  background :#0084d6;
}
body#company-idx div#content div#history div.inner dl dd{
  margin: 0 0 30px 5em;
}
body#company-idx div#content div#history div.inner dl dd ul li{
  background: url("../img/nav-bullet-gray.gif") 0 0.5em no-repeat;
  line-height: 1.5;
}
body#company-idx div#content div#access div.CFX{
  margin: 0 0 30px 0;
}
body#company-idx div#content div#access .lv03-02 iframe.map-02{
  float: right;
}
body#company-idx div#content div#access div.CFX h3{
  margin: 0 0 20px 0;
}
body#company-idx div#content div#organization p.image,
body#company-idx div#content div#philosophy div.lead,
div#content ul.navigation{
  text-align: center;
}
body#company-idx div#content table tr dl{
  margin: 10px 0 0 20px;
}
body#company-idx div#content table tr dl dt{
  position: relative;
}
body#company-idx div#content table tr dl dt::after{
  position: absolute;
  right: 0;
  content: ":";
}
body#company-idx div#content table tr.address dl dt{
  width: 4em;
}
body#company-idx div#content table tr.office dl dt{
  width: 8em;
}
body#company-idx div#content table tr.address dl dd{
  padding: 0 0 0 4em;
}
body#company-idx div#content table tr.office dl dd {
  padding: 0 0 0 8.5em;
}
body#company-idx div#content table tr dl dd {
  margin: -1.5em 0 5px 0;
}
body#company-idx div#content table td table thead tr th{
  border-bottom: 1px solid #e0e0e0;
}
body#company-idx div#content table td table thead tr th.job{
  width: 40%;
}
body#company-idx div#content table td table thead tr th.name{
  width: 60%;
}
body#company-idx div#content table td table tr th{
  border-right: none;
}
body#company-idx div#content table td table tr th,
body#company-idx div#content table td table tr td{
  padding: 10px 15px;
}
body#contact-idx div#content div dl dt,
body#company-idx div#content div#access dl dt{
  width: 3.5em;
}
body#contact-idx div#content div dl dd,
body#company-idx div#content div#access dl dd{
  margin: -1.5em 0 2px 0;
  padding: 0 0 0 3.5em;
}
body#company-idx div#content h2 br{
  display: none;
}
body#company-idx div#conduct{
  background-color: #f2fbfd;
  padding-bottom: 60px;
}
body#company-idx div#conduct .tabs,
body#company-idx div#conduct .tab-content{
  border-radius: 4px;
background: #fff;
box-shadow: 0px 0px 6px 1px #d5d5d5;
}
body#company-idx div#conduct .tab-content{
  padding: 60px;;
}
body#company-idx div#conduct .lv03-01{
  margin-bottom: 40px;
}
body#company-idx div#conduct h3{
  margin-top: 0;
  font-size: 1.8rem;
}
body#company-idx div#conduct h3.button{
  position: relative;
  margin: 20px 0 0 0;
  border: 1px solid #00b8ee;
  background-color: #fff;
  padding: 15px 20px;
  text-align: left;
  cursor: pointer;
  transition: 0.3s;
}
body#company-idx div#conduct h3.button::before,
body#company-idx div#conduct h3.button::after{
  position: absolute;
  display: block;
  content: "";
  background-color: #00b8ee;
  width: 17px;
  height: 3px;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
}
body#company-idx div#conduct h3.button::before{
  width: 3px;
  height: 17px;
  top: 0;
  right: 22px;
  transform: rotate(0deg);
  transition: 0.3s;
}
body#company-idx div#conduct h3.button.active::before{
  transform: rotate(90deg);
}
body#company-idx div#conduct h3.button:not(.active):hover{
  background-color: #00b8ee;
  color: #fff;
}
body#company-idx div#conduct h3.button:not(.active):hover::before,
body#company-idx div#conduct h3.button:not(.active):hover::after{
  background-color: #fff;
}
body#company-idx div#conduct h3.button.active{
  border-bottom: none;
}
body#company-idx div#conduct div.wrap{
  display: none;
  border: 1px solid #00b8ee;
  border-top: none;
  background: #fff;
  padding: 20px 20px 10px 20px;
}
body#company-idx div#conduct ul li{
  background: none;
  padding-left: 0;
}
body#company-idx div#conduct ol ul{
  margin-top: 0.75em;
}
body#company-idx div#conduct ol ul li{
  font-size: 1.4rem;
}
body#company-idx div#conduct ul.tabs{
  display: flex;
  margin: 0;
}
body#company-idx div#conduct ul.tabs li{
  margin: 0;
  width: 33.333%;
  font-family: 'Noto Sans Japanese';
  text-align: center;
}
body#company-idx div#conduct ul.tabs li a{
  position: relative;
  display: block;
  padding: 1.5em 1em 1em 1em;
  color: #333;
}
body#company-idx div#conduct ul.tabs li a:hover{
  text-decoration: none;
}
body#company-idx div#conduct ul.tabs li a.is_active,
body#company-idx div#conduct ul.tabs li a:hover{
  font-weight: 500;
}
body#company-idx div#conduct ul.tabs li a.is_active{
  color: #00b8ee;
}
body#company-idx div#conduct ul.tabs li a::before{
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  background-color: #ccc;
  width: 100%;
  height: 4px;
}
body#company-idx div#conduct ul.tabs li a.is_active::before{
  background-color: #00b8ee;;
}

body#company-idx div#conduct .tab-content{
  display: none;
}
body#company-idx div#conduct .tab-content.is_show{
  display: block;
  margin-top: 0;
  border-radius: 0 0 4px 4px;
}

body#company-idx div#conduct #tab-03,
body#company-idx div#conduct #tab-03 h3{
  font-family: 'Noto Sans SC', sans-serif;
}

body#company-idx div#purpose{
  background-color: #fff;
  padding-bottom: 60px;
}
body#company-idx div#purpose p{
  text-align: center;

}
body#company-idx div#purpose p.lead{
  margin-bottom: 1em;
}

body#company-idx div#purpose .inner{
  padding: 60px 240px;
  box-sizing: border-box;
  width: 968px;
}
body#company-idx div#purpose .inner p{
  margin: 15px 0;
  font-size: 1.8rem;
  text-align: left;
  line-height: 40px;
}
body#company-idx div#purpose .inner p:last-child{
  margin-bottom: 0;
}
body#company-idx div#purpose .inner p.title{
  position: relative;
  margin: 0 0 40px 0;
  padding-bottom: 40px;
  font-size: 3.2rem;
  line-height: 1.8;
  color: #1e1f1e;
}

body#company-idx div#purpose .inner p.title::after{
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #1e1f1e;
  width: 50px;
  height: 2px;

}




/*  service
--------------------------------------*/
/* service-idx */
body#service-idx #content{
  margin: 0;
  padding: 0;
}
body#service-idx h1 span{
  background: url("../img/h1-service.png") top center no-repeat;
}
#main #content h2.first{
  margin-top: 0;
  padding-top: 0;
}
body#service-idx #content div#base{
  margin-top: -20px;
  padding: 80px 0 0 0;
}
body#service-idx #content div#base h2{
  position: absolute;
  padding: 20px 0;
  left: 0;
  right: 0;
}
body#service-idx #content div#base p,
body#service-idx #content div#base p img{
  margin: 0;
  max-width: 100%;
  height: auto;
  width /***/:100%;
}
body#service-idx #content div#business-areas{
  background: #fff;
}
body#service-idx #content div#business-areas div.inner{
  margin: 0 auto;
  padding: 10px 0 40px 0;
  width: 968px;
}
body#service-idx #content div#business-areas div.CFX{
  margin: 0 0 60px 0;
}
body#service-idx #content div#business-areas div.block{
  float: right;
  display: inline;
  width: 50%;
}
body#service-idx #content div#business-areas div.lv03-02 div.block{
  float: left;
}
body#service-idx #content div#business-areas div.block h3{
  margin: 0 0 15px 0;
  text-align: left;
}
body#service-idx #content div#business-areas div.block ul,
body#service-idx #content div#business-areas div.block ul li{
  margin: 0;
  background: none;
  padding: 0;
  list-style-type: none;
}
body#service-idx #content div#business-areas div.block ul{
  margin: 20px 0 0 0;
}
body#service-idx #content div#business-areas div.block ul li{
  margin: 0 0 5px 0;
  line-height: 1.4em;
}
body#service-idx #content div#business-areas div.block ul li span{
  display: inline-block;
  margin: 0 10px 0 0;
  padding: 2px 0;
  width: 80px;
  color: #fff;
  text-align: center;
}
body#service-idx #content div#business-areas div.block ul li.steel-tokyo span{
  background: #00a4c4;
}
body#service-idx #content div#business-areas div.block ul li.steel-kimitsu span{
  background: #b777c7;
}
body#service-idx #content div#business-areas div.block ul li.machine span{
  background: #37b892;
}
body#service-idx #content div#business-areas div.block ul li.build span{
  background: #59ab35;
}
body#service-idx #content div#business-areas div.block ul li.telecom span{
  background: #bbe330;
}
body#service-idx #content div#business-areas div.block ul li.railway span{
  background: #c4bd1d;
}
body#service-idx #content div#business-areas div.block ul li.electric span{
  background: #7bc00c;
}
body#service-idx #content div#business-areas div.block ul li.housing span{
  background: #408956;
}
body#service-idx #content div#business-areas div.block ul li.bank span{
  background: #416994;
}
body#service-idx #content div#business-areas div.block ul li.ministry span{
  background: #3db9db;
}


/*  contact
--------------------------------------*/
body#cookie div.kv,
body#site div.kv,
body.movie div.kv,
body#disclosure div.kv,
body#privacy div.kv,
body#contact-idx div.kv{
  height: 226px;
}
body#redirect-idx div.kv{
  height: auto;
}
body#cookie h1 span,
body#site h1 span,
body.movie h1 span,
body#disclosure h1 span,
body#privacy h1 span,
body#contact-idx h1 span,
body#redirect-idx h1 span{
  padding: 70px 0 64px 0;
	background-size: 60px 60px !important;
	-webkit-background-size: 60px 60px !important;
	-moz-background-size: 60px 60px !important;
	-ms-background-size: 60px 60px !important;
	-o-background-size: 60px 60px !important;
  color: #424242;
}
body#contact-idx h1 span{
  background: url("../img/h1-contact.png") top center no-repeat;
}
body#disclosure h1 span,
body#privacy h1 span{
  background: url("../img/h1-privacy.png") top center no-repeat;
}
body#cookie h1 span,
body#site h1 span,
body.movie h1 span{
  background: url("../img/h1-site.png") top center no-repeat;
}
body#contact-idx #main,
body#redirect-idx #main{
  background: url("../img/bg-contact-idx.jpg") bottom center repeat-x;
}
body#cookie #main,
body.movie #main,
body#site #main,
body#disclosure #main,
body#privacy #main{
  background: url("../img/bg-privacy-idx.png") top center repeat-x;
}
body#contact-idx #content div#lv02-01{
  margin: 10px 0 40px 0;
}
body#contact-idx #content div#lv02-01 h2{
  margin: 10px 0 20px 0;
}
/**/
body#cookie #wrapper,
body#site #wrapper,
body.movie #wrapper,
body#disclosure #wrapper,
body#privacy #wrapper{
  background: #e5f8fd;
}
body#cookie #content div#content-inner,
body#site #content div#content-inner,
body.movie #content div#content-inner,
body#disclosure #content div#content-inner,
body#privacy #content div#content-inner{
  margin: 20px auto 0 auto;
}

body#cookie #content div#content-inner div div.inner,
body#site #content div#content-inner div div.inner,
body.movie #content div#content-inner div div.inner,
body#disclosure #content div#content-inner div div.inner,
body#privacy #content div#content-inner div div.inner{
  width: auto;
}
body#cookie #content div#content-inner div#lv02-01 h2,
body#site #content div#content-inner div#lv02-01 h2,
body.movie #content div#content-inner div#lv02-01 h2,
body#disclosure #content div#content-inner div#lv02-01 h2,
body#privacy #content div#content-inner div#lv02-01 h2{
  padding: 20px 0;
}
body#privacy div#content p.images{
  margin-bottom: 3em;
}
body#privacy div#content div.posted{
  text-align: right;
}
body#privacy div#content p.mail{
  text-align: center;
}
body#privacy div#content p.mail a{
  display: inline-block;
  margin: 10px 0;
  border: 1px solid #fff362;
  background: #fff362;
  padding: 10px 20px;
  width: auto;
	transition: .3s;
  color: #666766;
}
body#privacy div#content p.mail a:hover{
  text-decoration: none;
  background: #fff;
}
body#site div#content table{
  word-break: break-word;
}
body#disclosure div#content p.nav{
  text-align: left;
  font-size: 100%;
}




/*  redirect
--------------------------------------*/
body#redirect-idx #main{
  padding: 0 0 100px 0;
}
body#redirect-idx #footer{
  padding: 20px 0;
  text-align: center;
}
body#redirect-idx #footer p.copy{
  font-size: 72%;
}






/* interview-area */
body#recruit-office #content #gallery-area{
  margin-bottom: 240px;
  background: linear-gradient(135deg, #fff9b0, #81dcf5);
  height: 228px;
}
body#recruit-office #content #gallery-area p,
body#home #main #pickup-area p,
body.recruit #interview-area p{
  margin: 0;
  letter-spacing: 0;
  line-height: normal;
}
body#recruit-office #content #gallery-area p.image,
body#home #main #pickup-area p.image,
body.recruit #main #interview-area p.image {
  overflow: hidden;
  margin-bottom: 0.75em;
  max-height: 159px;
}
body#recruit-office #content #gallery-area p.image img,
body#home #main #pickup-area p.image img,
body.recruit #main #interview-area p.image img{
  margin-bottom: 0;
  max-width: 100%;
}
body#home #main #pickup-area p.tag{
  position: absolute;
  top: 28px;
  left: 28px;
  padding: 6px 14px;
  line-height: 1;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  border-radius: 12px;
  font-size: 80%;
}
body#home #main #pickup-area p.year{
  margin-top: 0.5em;
}
body#home #main #pickup-area p.more,
body.recruit #main #interview-area p.more{
  bottom: 13px;
  width: auto;
}
body#recruit-interview #main #interview-area p.more{
  bottom: 7px;
}
body#home #main #pickup-area p.more a,
body.recruit #main #interview-area p.more a{
  border: none;
}
body#home #main #pickup-area .grad p.tag{
  background-color: #fff362;
  color: #000;
}
body#home #main #pickup-area .career p.tag{
  background-color: #00b8ee;
  color: #fff;
}
/*body.recruit div#main h1,
body.recruit div#main h1 em{
  color: #212121;
}*/

/* entry-area */
body.news #content #entry-area ul li img,
body.news #content #entry-area ul,
body.news #content #entry-area ul li{
  margin: 0;
  background: none;
  padding: 0;
  list-style-type: none;
}
body.news #content #entry-area{
  clear: both;
  margin: -64px auto 40px auto;
  margin: 64px auto 40px auto;
  padding: 0 64px 32px 64px;
  max-width: 968px;
  border-radius: 4px;
  background: #00b8ee;
  box-sizing: border-box;
}
body.news #content #entry-area h2{
  margin: 0 0 20px 0;
  padding: 20px 0 0 0;
  -moz-border-radius: 4px 4px 0 0;
  -webkit-border-radius: 4px 4px 0 0;
  border-radius: 4px 4px 0 0;
  text-align: center !important;
}
body.news #content #entry-area h2{
  color: #fff;
}
body.news #content #entry-area p.ban{
  margin: 16px auto 32px auto;
  text-align: center;
  max-width: 420px;
}
body.news #content #entry-area p.ban a{
  display: block;
  background-color: #fff362;
  line-height: 80px;
  color: #333;
  transition: 0.3s;
  font-size: 112%;
  pointer-events: none;/* close */
}
body.news #content #entry-area p.ban a:hover{
  text-decoration: none;
  opacity: 0.5;
}
body.news #content #entry-area div.navi{
  position: relative;
  background-color: #fff;
}
body.news #content #entry-area div.navi h3{
  position: absolute;
  top: 39%;
  left: 40px;
  margin: auto;
  color: #666;
}
body.news #content #entry-area.off div.navi h3{
  top: 29%;
}

body.news #content #entry-area div.navi img{
  display: block;
  margin: 8px auto 4px auto;
}
body.news #content #entry-area ul{
  -moz-border-radius: 0 0 4px 4px;
  -webkit-border-radius: 0 0 4px 4px;
  border-radius: 0 0 4px 4px;
  padding: 20px 40px 20px 270px;
}
body.news #content #entry-area ul li{
  float: left;
  display: inline;
  margin: 0 !important;
  width: 260px;
  height: 80px;
  text-align: center;
  color: #c6c9c6;
  font-size: 88%;
}
body.news #content #entry-area ul li.mynavi{
  float: right;
}
body.news #content #entry-area ul li span,
body.news #content #entry-area ul li a{
  display: block;
}
body.news #content #entry-area ul li span{
  padding: 0 0 6px 0;
}
body.news #content #entry-area ul li a{
  padding: 16px 0;
  transition: .3s;
}
body.news #content #entry-area ul li img{
  vertical-align: middle
}
body.news #content #entry-area{
  margin: 0 !important;
}
body.news #content #entry-area div.navi h3{
  left: 32px;
}
body.news #content #entry-area ul{
  padding: 20px 32px 20px 256px;
}
body.news #content #entry-area ul li{
  width: auto;
}




/* Cookie Agreement
   ========================================================================== */

#cookie_alert{
	letter-spacing:1px;
	box-sizing:border-box;
	position:fixed;
	bottom:20px;
	left:20px;
	width:350px;
	padding:45px 16px 29px 16px;
	border:solid 2px #00b8ee;
	background:#e5f8fd;
	color:#134c7f;
	opacity:0;
	pointer-events:none;
	transition:opacity .3s;
	z-index:6000;
	box-shadow:0 0 6px rgba(19,76,127,0.2);
  text-align: left;
}
#cookie_alert.on{
	opacity:1;
	pointer-events:auto;
}
#cookie_alert .tx{
	font-size:13px;
	line-height:20px;
}
#cookie_alert .tx.en{
	font-size:12px;
}
#cookie_alert .tx p{
	margin:0;
}
#cookie_alert .tx a{
	margin-left:4px;
	font-size:13px;
	color:#134c7f;
}
#cookie_alert .tx a:hover{
/*	text-decoration:none;*/
}
#cookie_alert .tx p:last-child{
	margin-top:22px;
}
#cookie_alert .tx p a{
  background: url("../img/nav-arrow.png") 0 center no-repeat;
  padding: 0 0 0 8px;
}
#cookie_alert .btn{
	position:absolute;
	bottom:25px;
	right:18px;
	display:block;
	padding: 0 15px;
	height:30px;
	line-height:30px;
	font-size:16px;
	color:#000;
	background:#FFF362;
	text-align:center;
	cursor:pointer;
}
#cookie_alert .btn:hover{
	background:#00B8EE;
}
#cookie_alert .close{
	display:block;
	position:absolute;
	top:16px;
	right:16px;
	width:16px;
	height:16px;
	cursor:pointer;
}
#cookie_alert .close::before,
#cookie_alert .close::after{
	position:absolute;
	top:0;
	left:calc( 50% - 1px );
	display:block;
	content:'';
	width:2px;
	height:16px;
	background:#134c7f;
}
#cookie_alert .close::before{
	transform:rotate(45deg);
}
#cookie_alert .close::after{
	transform:rotate(-45deg);
}
@media all and (max-width: 599px) {
	#cookie_alert{
		left:0;
		bottom:0;
		width:auto;
		height:auto;
		padding:24px 8px 8px
	}
	#cookie_alert .btn{
		right:8px;
		bottom:8px;
	}
	#cookie_alert .close{
		right:8px;
		top:8px;
	}
}