@charset "utf-8";

/* ------------------------------------------------------------
                                        下層ページ共通
------------------------------------------------------------ */
body{
	background:#eeeeee;
	color:#555;
}

/* headerは固定化しない */
#header {
	position: absolute;
	top:0 px;
	z-index: 999;
}

#contents{
	width:100%;
	padding:30px 0 0 0;
	min-height: 760px;
}

 #contents .inner{
	width:922px;
	margin:0 auto;
}


/* ------------------------------------------------------------
                                        NAV active
------------------------------------------------------------ */

#work li.work a,
#work-list li.work a,
#work-performance-list li.work a,
#performance li.performance a,
#performance-list li.performance a,
#our-business li.our-business a,
#contact li.contact-us a,
#recruit li.recruit a,
#profile li.company-profile a,
#news li.news a {
	background-position:left bottom;
}

/* ------------------------------------------------------------
                                        Pankuzu
------------------------------------------------------------ */

.pankuzu {
  padding-top: 66px;
  height:40px;
	background:#aaaaaa;
 }
 .pankuzu p{
	 width:922px;
	 padding:0 12px;
	 display:block;
	 margin:0 auto;
	 font-size:12px;
	line-height:40px;
	color:#fff;
}
 .pankuzu p a{
	color:#fff;
}

/* ------------------------------------------------------------
                                        Titles
------------------------------------------------------------ */

.page-title{
	background:#fff;
  height:54px;
  padding-top:20px;
}
.page-title h2{
	 width:922px;
	 padding:0 12px;
	 display:block;
	 margin:0 auto;
}

#contents h2{
  background: #333;
  color: #fff;
  border-radius: 5px;
  text-align: center;
  padding: 15px 0 12px;
  font-size: 20px;
}

/* ------------------------------------------------------------
                                        Margins
------------------------------------------------------------ */
.mb0{
	margin-bottom:0px !important;
}
.mb14{
	margin-bottom:14px !important;
}
.mb20{
	margin-bottom:20px !important;
}
.mb30{
	margin-bottom:30px !important;
}
.mb35{
	margin-bottom:35px !important;
}
.mb55{
	margin-bottom:55px !important;
}

/* ------------------------------------------------------------
                                        事業案内
------------------------------------------------------------ */

#our-business li.our-business a{
	opacity:0.7;
}

#our-business .block01{
	margin-bottom:40px;
}
#our-business .block02{
	margin-bottom:40px;
	background:#fff;
	padding:20px;
}
#our-business .block03{
	background:#fff;
	padding:20px;
	margin-bottom:40px;
}
#our-business .left{
	width:391px;
	float:left;
}
#our-business .right{
	width:391px;
	float:right;
}

#our-business h3{
	color:#2b70d6;
	font-size:16px;
	margin-bottom:10px;
}
#our-business ul.business{
	list-style-type:disc;
	color:#333;
	list-style-position:inside;
}
#our-business ul.business li{
	font-size:13px;
	margin-bottom:8px;
}
#our-business h4{
	font-size:14px;
	font-weight:bold;
	margin-bottom:10px;
}

a.fadeIn,
input.fadeIn{
  -webkit-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  }
a.fadeIn:hover,
input.fadeIn:hover{
	opacity:0.8;
  -webkit-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  }
#our-business #footer{
	position:relative;
}
#our-business .contact-area{
	background:#fff url(../images/business/icon-contact.png) no-repeat center top;
	padding:35px 0;
	text-align:center;
}
.subtxt{
	text-align:center;
	margin-bottom:10px;
	line-height:1.5em;
	font-size:16px;
	color:#333;
	font-weight:bold;
}
.subtxt2{
	line-height:1.5em;
	font-size:13px;
	color:#333;
	margin-top:15px;
}
.mb25{
	margin-bottom:25px;
}

.mt10{
	margin-top:10px;
}
.mt20{
	margin-top:20px;
}

/* ------------------------------------------------------------
                                        作品紹介
------------------------------------------------------------ */

#work #contents,
#profile #contents,
#recuit #contents{
	padding-bottom:80px;
}
#work .block01{
	margin-bottom:11px;
}
#work a.work01{
	display:block;
	background:url(../images/work/btn_work01.jpg) no-repeat center top;
	width:922px;
	height:310px;
	position:relative;
	z-index:0;
}
#work .block01 a span{
	display:block;
	position:relative;
	width:922px;
	height:310px;
	background:url(../images/work/gray_work.png) no-repeat bottom;
	background-size:100% 60px;
	z-index:1;
}
#work a.work02,#work a.work03,#work a.work04,#work a.work05,#work a.work06,#work a.work07{
	width:300px;
	height:235px;
	position:relative;
	display:block;
	z-index:0;
}
a.fade:before{
	content: ""; /* 新しい要素を作る */
	display: block; /* ブロックレベル要素に */
	background:url(../images/work/gray_work.png);
	position:absolute;
	top:0px;
	left:0px;
	z-index:1;
	opacity:0;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
#work .block01 a.fade:before{
	width:922px;
	height:310px;
}
#work a.work02:before,#work a.work03:before,#work a.work04:before,#work a.work05:before,#work a.work06:before,#work a.work07:before{
	width:300px;
	height:235px;
}
a.fade:hover:before{
	opacity:1;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
#work .block02 ul li a span{
	display:block;
	width:300px;
	height:235px;
	position:relative;
	z-index:1;
	background:url(../images/work/gray_work.png) no-repeat bottom;
	background-size:100% 60px;
}
#work .block01 a span img,
#work .block02 ul li a span img{
	position:absolute;
	bottom:0px;
	left:0px;
	z-index:2;
}
#work a.work02{
	background:url(../images/work/btn_work02.jpg) no-repeat center top;
}
#work a.work03{
	background:url(../images/work/btn_work03.jpg) no-repeat center top;
}
#work a.work04{
	background:url(../images/work/btn_work04.jpg) no-repeat center top;
}
#work a.work05{
	background:url(../images/work/btn_work05.jpg) no-repeat center top;
}
#work a.work06{
	background:url(../images/work/btn_work06.jpg) no-repeat center top;
}
#work a.work07{
	background:url(../images/work/btn_work07.jpg) no-repeat center top;
}
#work .block02 ul li{
	float:left;
	margin:0 11px 11px 0;
}
#work .block02 ul li.last{
	margin-right:0px;
}

#work-list .block01 ul.work-nav,
#work-performance-list .block01 ul.work-nav,
#performance .block01 ul.work-nav,
#performance-list .block01 ul.work-nav,
#news .block01 ul.news-nav{
	margin-bottom:30px;
}
#work-list .block01 ul.work-nav li,
#work-performance-list .block01 ul.work-nav li,
#performance .block01 ul.work-nav li,
#performance-list .block01 ul.work-nav li,
#news .block01 ul.news-nav li{
	float:left;
	margin-right:25px;
}
#work-list .block01 ul.work-nav li a,
#work-performance-list .block01 ul.work-nav li a,
#performance .block01 ul.work-nav li a,
#performance-list .block01 ul.work-nav li a,
#news .block01 ul.news-nav li a{
	display:inline-block;
	background:url(../images/work/arw_gray.png) no-repeat left 50%;
	padding:5px 10px 5px 15px;
	font-size:14px;
	color:#555;
	text-decoration:none;
}
#work-list .block01 ul.work-nav li a:hover,
#work-performance-list ul.work-nav li a:hover,
#work-performance-list ul.work-nav li.active a,
#performance .block01 ul.work-nav li a:hover,
#work-list .block01 ul.work-nav li.active a,
#performance .block01 ul.work-nav li.active a,
#performance-list ul.work-nav li a:hover,
#performance-list ul.work-nav li.active a,
#news .block01 ul.news-nav li a:hover,
#news .block01 ul.news-nav li.active a{
	display:inline-block;
	background:#1c56a7 url(../images/work/arw_white.png) no-repeat 5px 50%;
	padding:5px 10px 5px 15px;
	color:#fff;
	text-decoration:none;
	border-radius:5px;
}
#work-list .block02,
#work-performance-list .block02,
#performance .block02,
#performance-list .block02{
	margin-bottom:30px;
}
#work-list .block02 a.btn-perform,
#work-performance-list .block02 a.btn-perform,
#performance .block02 a.btn-perform,
#recruit .block01 a.btn-other,
#contact .block01 a.btn-entry,
#performance-list .block02 a.btn-perform{
	float:right;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
#recruit .block01 a.btn-other{
margin-right: 210px;
}
#work-list .block02 a.btn-perform:hover,
#work-performance-list .block02 a.btn-perform:hover,
#performance .block02 a.btn-perform:hover,
#recruit .block01 a.btn-other:hover,
#performance-list .block02 a.btn-perform:hover,
#contact .block01 a.btn-entry:hover{
	opacity:0.8;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
#work-list .block03,
#work-performance-list .block03,
#performance .block03,
#performance-list .block03{
	padding-bottom:80px;
}
#work-list .block03 ul.worklist li,
#performance .block03 ul.worklist li{
	margin:0 11px 11px 0;
	float:left;
	background:#fff;
}
#work-list .block03 ul.worklist li a,
#performance .block03 ul.worklist li a{
	width:175px;
	height:150px;
	display:block;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	opacity:1;
	position:relative;
}
#work-list .block03 ul.worklist li a span,
#performance .block03 ul.worklist li a span{
	position:absolute;
	bottom:0px;
	left:0px;
	text-align:left;
	display:block;
	padding:6px 10px  5px;
	color:#fff;
	font-size:13px;
	font-weight:normal;
	z-index: 5;
	background:url(../images/work/gray_work.png);
	width:155px;
}
#work-list .block03 ul.worklist li:nth-child(5),
#work-list .block03 ul.worklist li:nth-child(10),
#work-list .block03 ul.worklist li:nth-child(15),
#work-list .block03 ul.worklist li:nth-child(20),
#performance .block03 ul.worklist li:nth-child(5),
#performance .block03 ul.worklist li:nth-child(10),
#performance .block03 ul.worklist li:nth-child(15),
#performance .block03 ul.worklist li:nth-child(20){
	margin-right:0;
}
h3.title01{
	font-size:18px;
	font-weight:bold;
	margin-bottom:15px;
	color:#555;
	border-bottom:2px solid #999;
	padding-bottom:10px;
}
ul.pager{
	display:table;
	margin:20px auto 0;
}
ul.pager li{
	display:table-cell;
	padding:0 5px;
}
ul.pager li a{
	background:#999;
	color:#fff;
	padding:10px;
	display:inline-block;
	border-radius:3px;
	text-decoration:none;
	font-size:12px;
}
ul.pager li.active a{
	background:#1C56A6;
	color:#fff;
	padding:10px;
	display:inline-block;
	border-radius:3px;
	text-decoration:none;
}
ul.pager li a:hover{
	text-decoration:underline;
}

#work-performance-list table.performancelist,
#performance-list table.performancelist{
	width:100%;
}

#work-performance-list table.performancelist td,
#work-performance-list table.performancelist th,
#performance-list table.performancelist td,
#performance-list table.performancelist th{
	padding:15px 20px;
	border:1px solid #fff;
	font-size:14px;
	text-align:center;
}

#work-performance-list table.performancelist th,
#performance-list table.performancelist th{
	background:#3275d5;
	color:#fff;
}

#work-performance-list table.performancelist td,
#performance-list table.performancelist td{
	background:#fff;
	color:#333;
}
#work-performance-list table.performancelist tr:nth-child(odd) td,
#performance-list table.performancelist tr:nth-child(odd) td{
	background:#f6f6f6;
}
#work-performance-list table.performancelist td a,
#performance-list table.performancelist td a{
	color:#6596dd;
}

#work-performance-list table.performancelist td a:hover,
#performance-list table.performancelist td a:hover{
	color:#333;
}

/* ------------------------------------------------------------
                                       Some CSS for examples
------------------------------------------------------------ */

object, embed {
	vertical-align: top;
}

#login_error {
	display: none;
	background: red;
	color: #FFF;
}

form label {
	display: block;
}

form p {
	padding: 7px;
	line-height: 1.6;
}

#inline1 {
    overflow: auto;
	width: 500px;
	height: 100px;
	background-color: #FDFDFD;
}

#page #inline1 {
	display: none;
}

#page #inline2 {
	display: none;
}

#tip7-title {
    text-align: left;
}

#tip7-title b {
    display: block;
    margin-right: 80px;
}

#tip7-title span {
    float: right;
}

a.fade2:before{
	content: ""; /* 新しい要素を作る */
	display: block; /* ブロックレベル要素に */
	background:url(../images/work/gray_work.png);
	position:absolute;
	top:0px;
	left:0px;
	z-index:1;
	opacity:0;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	width:100%;
	height:100%;
}
a.fade2:hover:before{
	opacity:1;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-ms-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}


/* ------------------------------------------------------------
                                       会社案内
------------------------------------------------------------ */

#profile .block01{
	margin-bottom:30px;
}

#profile #main-content,
#recruit #main-content{
	float:left;
	width:685px;
	background:#fff;
	padding:20px;
}
#profile #main-content .block02{
}
#profile #side-content,
#recruit #side-content{
	float:right;
	width:175px;
}
#profile #side-content ul li a,
#recruit #side-content ul li a{
	width:175px;
	height:60px;
	display:block;
	overflow:hidden;
	background-position:left;
	background-repeat:no-repeat;
	text-indent:-999999px;
	border-bottom:1px solid #fff;
  -webkit-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#profile #side-content ul li:last-child a,
#recruit #side-content ul li:last-child a{
	border-bottom:none;
}
#profile #side-content ul li a:hover,
#recruit #side-content ul li a:hover{
	opacity:0.8;
  -webkit-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  -moz-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}
#profile #side-content ul li a.active,
#recruit #side-content ul li a.active{
	background-position:right;
}

#profile #side-content ul li.message a{
	background-image:url(../images/profile/btn_message.png);
}
#profile #side-content ul li.outline a{
	background-image:url(../images/profile/btn_outline.png);
}
#profile #side-content ul li.history a{
	background-image:url(../images/profile/btn_history.png);
}
#profile #side-content ul li.access a{
	background-image:url(../images/profile/btn_access.png);
}
.center-txt{
	text-align:center;
}
.right-txt{
	text-align:right;
}
.fs16{
	font-size:16px !important;
}
.fs20{
	font-size:20px;
}

#contents p{
	margin-bottom:10px;
	line-height:1.5em;
	font-size:14px;
	color:#555555;
}
table.profile-table{
	width:100%;
}
table.profile-table th,
table.profile-table td{
	border-bottom:1px solid #999;
	text-align:left;
	line-height:1.5em;
	font-size:14px;
}
table.profile-table th{
	font-weight:bold;
	padding:20px 10px 20px 30px;
	vertical-align:middle;
  white-space: nowrap;
	vertical-align:middle;
}
table.profile-table th a,
table.recruit-table td a{
	font-weight:normal;
	color:#6596dd;
}
table.profile-table td{
	font-weight:normal;
	padding:20px 30px 20px 10px;
}
table.profile-table td strong,
#contents p strong,
table.recruit-table strong{
	font-weight:bold;
}
table.profile-table td span{
	font-size:12px;
}
a.link_arw{
	background:url(../images/profile/icon-arw.png) no-repeat left 50%;
	padding-left:10px;
	font-size:12px;
	color:#6596dd;
}

a.link_arw2{
	background:url(../images/recruit/icon_arw_gray.png) no-repeat left 50%;
	padding-left:10px;
	font-size:12px;
	color:#555;
}

img.btn_zoom{
	float:right;
}
img.btn_print{
	display:block;
	margin:20px auto 0;
}

img.map{
	width:100%;
	height:auto;
}

/* ------------------------------------------------------------
                                       採用情報・お問い合わせ
------------------------------------------------------------ */

#recruit #side-content ul li.message a{
	background-image:url(../images/recruit/btn_message.png);
}
#recruit #side-content ul li.outline a{
	background-image:url(../images/recruit/btn_outline.png);
}
#recruit #side-content ul li.entry a{
	background-image:url(../images/recruit/btn_entry.png);
}

#recruit .block01,
#contact .block01{
	margin-bottom:35px;
}
#recruit #main-content{
}

#contents p.subtitle{
	border-bottom:1px solid #999;
	padding-bottom:10px;
	margin-bottom:20px;
	font-size:18px;
	font-weight:bold;
}

table.recruit-table,
table.contact-table{
	width:100%;
}
table.recruit-table th,
table.recruit-table td,
table.contact-table th,
table.contact-table td{
	line-height:1.5em;
	padding:15px;
	border:1px solid #999;
	font-size:14px;
}
table.recruit-table th{
	background:#fef9f4;
	white-space:nowrap;
	font-weight:bold;
	text-align:left;
	vertical-align:middle;
	width:35%;
}
table.contact-table th{
	width:30%;
	background:#fef9f4;
	white-space:nowrap;
	font-weight:bold;
	text-align:left;
	vertical-align:middle;
}
table.recruit-table th span,
table.contact-table th span{
	font-weight:normal;
	color:red;
}
table.recruit-table td{
	width:65%;
}
table.contact-table td{
	width:70%;
}
#recruit form p,
#contact form p{
	padding:0;
}
#contents p.small{
	font-size:12px;
	font-weight:normal;
	padding:0;
	margin-bottom:0;
}
#recruit form input[type="text"],
#recruit form textarea,
#contact form input[type="text"],
#contact form textarea {
  font-size: 14px;
  border-radius: 5px;
  border: 1px solid #999;
  padding: 5px;
  }
  #recruit form label{
	  display:inline;
  }
  #contact input.input-full,
  #contact textarea.textarea-full{
  width:615px;
  }
  #recruit input.input-full,
  #recruit textarea.textarea-full{
  width:475px;
  }
  #contact input.tell{
  width:100px;
  }

#recruit form input[type="image"],
#contact form input[type="image"]{
	display:block;
	margin:0 auto;
}
#recruit form,
#contact form{
  font-size: 14px;
}

#recruit form p.error,
#contact form p.error{
  color: #fff;
  padding: 10px;
  background-color: red;
}
#contact #contents .container,
#privacy #contents .container,
#sitemap #contents .container,
#news #contents .container{
	padding:20px;
	background:#fff;
}
#contact #contents,
#privacy #contents,
#sitemap #contents,
#news #contents,
#recruit #contents{
	padding-bottom:80px;
}

/* ------------------------------------------------------------
                                       サイトマップ
------------------------------------------------------------ */

table.sitemap{
}
table.sitemap a{
	background:url(../images/recruit/icon_arw_gray.png) no-repeat left 30%;
	padding:10px 10px 10px 10px;
	font-size:14px;
	color:#555;
	text-decoration:none;
	line-height:1.5em;
	display:block;
  margin: 0 0 0 20px;
}
table.sitemap a span{
	display:block;
	font-size:12px;
	color:#6596dd;
}
table.sitemap td{
	vertical-align:middle;
}
td.second-top{
	background-image:url(../images/sitemap/sitemap-second-top.png);
	background-repeat:no-repeat;
	background-position:center center;
	overflow:hidden;
	width:100px;
}

td.second{
	background-image:url(../images/sitemap/sitemap-second.png);
	background-repeat:no-repeat;
	background-position:center center;
	overflow:hidden;
	width:100px;
}
td.second-bottom{
	background-image:url(../images/sitemap/sitemap-second-bottom.png);
	background-repeat:no-repeat;
	background-position:center center;
	overflow:hidden;
	width:100px;
}
td.second-single{
	background-image:url(../images/sitemap/sitemap-line.png);
	background-repeat:no-repeat;
	background-position:center center;
	overflow:hidden;
	width:100px;
}

td.third{
	background-image:url(../images/sitemap/sitemap-third.png);
	background-repeat:no-repeat;
	background-position:center center;
	overflow:hidden;
	width:50px;
}

/* ------------------------------------------------------------
                                       ニュース
------------------------------------------------------------ */

ul.news-list li{
  padding-bottom: 10px;
  border-bottom: 1px dotted #999;
  margin-bottom:20px;
}
ul.news-list li.month-end{;
  border-bottom: 2px solid #999;
}

#news p.new{
	display:inline-block;
	color:#fff;
	background:red;
	font-size:12px;
	padding:2px 4px 1px;
  line-height: 1.5em;
}
#news span.release{
	display:inline-block;
	color:#fff;
	background:#2b70d6;
	font-size:12px;
	padding:2px 4px 1px;
  line-height: 1.5em;
}
#news span.topics{
	display:inline-block;
	color:#fff;
	background:#2cd627;
	font-size:12px;
	padding:2px 4px 1px;
  line-height: 1.5em;
}
#news span.event{
	display:inline-block;
	color:#fff;
	background:#9a27d6;
	font-size:12px;
	padding:2px 4px 1px;
  line-height: 1.5em;
}
ul.news-list li a{
	background:url(../images/news/icon-arw-red.png) no-repeat left 30%;
	padding:0 0 0 10px;
	color:#555;
	text-decoration:none;
  }
ul.news-list li a:hover{
	text-decoration:underline;
}

#news h3{
	border-left: 4px solid #555;
	padding-left:10px;
	padding-top:5px;
	padding-bottom:5px;
  line-height: 1.5em;
}

a.back{
	background:url(../images/recruit/icon_arw_gray.png) no-repeat left 50%;
	padding-left:10px;
	font-size:12px;
	color:#555;
	text-decoration:none;
	line-height:1.5em;
	display:block;
  float:right;
  text-align:right;
}
#contents p.subtitle2{
	margin-bottom: 25px;
  margin-top: 10px;
	text-align:center;
	font-size:20px;
	font-weight:bold;
	color:#555555;
}
.non-print{
	display:block;
}
.for-print{
	display:none;
}
.map-area{
	width:100%;
	height:auto;
}