@charset "utf-8";

/*--Reset-----------------------------------------------------------*/

* {
	margin: 0;
	padding: 0;
}

html,body{
    width: 100% !important;
}

html {
	overflow: auto;
}

ul,ol {
	list-style: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

body {
	font-size: 14px;
	line-height: 1.6;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
    overflow-x: hidden;
    position: relative;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
}

a,a:link,a:visited {
	color: #003399;
	text-decoration: underline;
}

a:hover,a:active {
	color: #003399;
	text-decoration: none;
}

article,aside,details,footer,header,main,menu,nav,section,summary {
	display: block;
}

p.image {
	margin: 10px 0;
}

p.image2 {
	margin: 20px 0;
	text-align: center;
}

p.space {
	margin: 30px 0 10px 0;
}

span.font-12 {
	font-size: 12px !important;
}

span.font-15 {
	font-size: 15px !important;
}

span.font-18 {
	font-size: 18px !important;
}

span.font-22 {
	font-size: 22px !important;
}

span.font-24 {
	font-size: 24px !important;
}

span.white {
	color: #fff;
}

span.blue {
	color: #008cc6;
	font-weight: bold;
}

span.pale-blue {
	color: #2484b9;
}

span.gray {
	color: #666;
}

span.color-purple {
	color: #3366cc;
}

p.img {
	text-align:center;
}

p.img2 {
	text-align:center;
	margin: 10px 0;
}

p.inner-title {
	margin: 10px 0;
}

p.right {
	text-align: right;
}

p.right2 {
	text-align: right;
	margin-right: 15px;
}

p.office {
	max-width: 237px;
	padding: 15px 0 10px 0;
	text-align: center;
}

p.member {
	padding: 15px 0 10px 0;
}

p.button {
	margin: 0 0 30px 0;
}

/* index */

#index-wrapper {
	position:relative;
	width: 1023px;
	margin: 20px auto 30px auto;
}

#index-left {
	float: left;
	max-width: 666px;
}

#index-right {
	float: right;
	max-width: 325px;
}

ul.index-banner li {
	margin-bottom: 5px;
}

.page-box {
	position:relative;
	width: 1000px;
	margin: 20px auto;
	background: url(../images/about-4.jpg) no-repeat right top;
}

.text-box {
	position:relative;
	width: 970px;
	margin: 20px auto;
	font-size: 16px;
}

.title-page {
	position:relative;
	width: 995px;
	margin: 20px auto;
	padding: 15px 0;
	font-size: 18px;
	border-top: 2px dotted #008cc6;
	border-bottom: 2px dotted #008cc6;
	color: #008cc6;
	font-weight: bold;
}

.title-page p {
	margin-left: 20px;
}

p.about-image {
	margin: 20px 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
	text-align: center;
}

table.about {
	position:relative;
	width: 636px;
	font-size: 16px;
}

table.about td {
	padding: 15px 0;
	border-top: 2px dotted #008cc6;
}

table.about td.b {
	padding: 15px 0;
	border-top: 2px dotted #008cc6;
	border-bottom: 2px dotted #008cc6;
}

table.about p {
	margin-left: 20px;
}

table.about-b {
	position:relative;
	width: 1023px;
	font-size: 16px;
}

table.about-b td {
	padding: 15px 0;
}

table.about-b p {
	margin-left: 20px;
}

/* */

footer {
	min-width: 1023px;
	overflow: hidden;
}

	footer #copyright {
		width: 1023px;
		text-align: right;
		margin: 0 auto;
		padding: 10px;
	}
	
	ul.footer-nav {
		margin: 15px auto;
		text-align:center;
		font-size: 12px;
	}	
	
	ul.footer-nav li {
		display: inline;
		margin: 0 15px;
	}

	ul.footer-nav li a {
		text-decoration: underline;
		color: #000;
	}
	
	ul.footer-nav li a:hover {
		text-decoration: none;
		color: #000;
	}
	
/* */

#hover-click{
  position: relative;
  width: 100%;
  margin: 0 0 30px 0;
  z-index: 100 !important;
}
#hover-click > a{
  display: block;
  width: 100%;
  background: #ccc;
  color: #fff;
  font-size: 14px;
  text-align: center;
  text-decoration: none;
  z-index: 100 !important;
}
#hover-click > div{
  display: none;
  z-index: 9999;
  position: absolute;
  width: 250px !important;
  left: -190px;
  padding: 0 0 20px 0;
  background: #fff;
  text-align: center;
  z-index: 100 !important;
}

/* */

#hover-click-b {
	position:relative;
  width: 100%;
}
#hover-click-b > a{
  display: block;
  width: 100%;
  max-width: 40px;
  margin-right: 73px;
  margin-left: auto;
  text-align: right;
}
#hover-click-b > div{
  display: none;
  z-index: 9999;
  position: absolute;
  width: 100%;
  padding: 20px 0 20px 0;
  background: #fff;
  border: 1px solid #3590bf;
  text-align: center;
}

/* */

div.l-search {
	position: relative !important;
	width: 100% !important;
	max-width: 250px !important;
	margin: 0 auto !important;
}

input.l-search__text {
	width: 100% !important;
	max-width: 250px !important;
}

.cse .gsc-control-cse,
.gsc-control-cse {
	border: none !important;
  background-color: transparent !important;
  border-color: transparent !important;
  padding-top: 0 !important;
}

.style_2 {
	position: absolute;
	right: 5px;
	top: 3px;
}

.style_2:hover {
	filter: alpha(opacity=0);
	opacity: 0.0;
}

/*--h-nav----------------------------------------------------------*/

#nav {
	display: none;
	width:100%;
	border-top: 4px solid #0099cb;
	background-color: #ffffff;
}

ul.h-nav2 {
	text-align:left;
}

ul.h-nav2 li a {
	display: block;
	position: relative;
	padding: 5px 25px 5px 10px;
	border-bottom: 1px solid #999;
	background: #FFF;
	color: #333;
	font-size: 14px;
	text-decoration: none;
}

ul.h-nav2 li ul li {
	padding: 0!important;
}

span.text {
	padding: 0 0 0 5px !important;
}

ul.h-nav2 li a:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-top: solid 2px #999;
	border-right: solid 2px #999;
	-webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

ul.h-nav2 li ul li a {
	display: block;
	position: relative;
	padding: 5px 25px 5px 10px;
	border-bottom: 1px solid #999;
	background: #fff;
	color: #333;
	font-size: 14px;
	text-decoration: none;
}

ul.h-nav2 li ul li a:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-top: solid 2px #999;
	border-right: solid 2px #999;
	-webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

ul.h-nav2 li ul li ul li a:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-top: none !important;
	border-right: none !important;
	-webkit-transform: none !important;
    transform: none !important;
}

/* res-logo */

div#smart-top {
	position:relative;
	width: 100%;
	margin: 0 auto;
}

div.res-box-m {
	position: absolute;
	top: 10px;
	left: 5px;
	z-index: 1;
}

div.res-box-s {
	position: absolute;
	top: 10px;
	left: 5px;
	z-index: 1;
}


ul.res-logo2 {
	display: inline;
	list-style: none;
	text-align: left;
}

/* member */

#member-nav {
	position:relative;
	width: 1023px;
	text-align: center;
	margin: 20px auto 0 auto;
}

#member-nav li {
	display: inline;
	margin: 0 1px;
}
	
div.member-box {
	position:relative;
	width: 940px;
	margin: 30px auto 0 auto;
	font-size: 14px;
}

div.member-left {
	float: left;
	width: 146px;
	margin-right: 10px;
	margin-bottom: 15px;
}

div.member-right {
	flota: right;
}

div.member-hr {
	height: 1px;
	width: 790px;
	border-top: 1px dotted #008cc6;
	margin-left: auto;
	margin-right: 0;
	margin-top: 5px;
	margin-bottom: 5px;

}

div.member-right p {
	padding: 5px !important;
}

/* accordion.js */

.syncer-acdn {
	cursor: pointer;
}

#syncer-acdn-01,#syncer-acdn-02,#syncer-acdn-03,#syncer-acdn-04,#syncer-acdn-05,#syncer-acdn-06,#syncer-acdn-07,#syncer-acdn-08 {
	display: none;
}

/*--layout----------------------------------------------------------*/

/* 0 to 768px */

body {
	-webkit-text-size-adjust: 100%;
}

div.hr-bg {
	position:relative;
	overflow:hidden;
    padding: 0 500%;
    margin: 0 -500%;
    width: 100%;
	height: 4px;
	background: url(../images/bar.jpg) repeat;
}

div.title-bg {
	position:relative;
	overflow:hidden;
    padding: 0 500%;
    margin: 0 -500%;
    width: 100%;
	height: 77px;
	background: url(../images/header/bar-bg.jpg) repeat;
}

div.footer-bg {
	position:relative;
	overflow:hidden;
    padding: 0 500%;
    margin: 0 -500%;
    width: 100%;
	background: #cccccc;
}

div.footer-bg2 {
	position:relative;
	overflow:hidden;
    padding: 0 500%;
    margin: 0 -500%;
    width: 100%;
	background: url(../images/footer-bg.jpg) repeat;
}

div.footer-copy {
	position:relative;
	width: 1023px;
	margin: 15px auto;
	padding: 0;
	text-align: right;
	color: #666666;
}

div#hr-bg-top-p,
div.hr-bg-top-p2 {
	position:relative;
	overflow:hidden;
    padding: 0 500%;
    margin: 0 -500%;
    width: 100%;
	height: 4px;
	background: url(../images/bar.jpg) repeat center;
}

header {
	position:relative;
	width: 1023px;
	overflow: hidden;
	line-height: 0;
}

nav {
	overflow: hidden;
	background: #fff;
}

nav ul {
		padding: 0;
		max-width: 665px;
		list-style: none;
		overflow: hidden;
		float: left;
}

nav ul li {
		float: left;
	}

ul#page-nav {
	position: relative;
	width: 1023px;
	margin: 10px auto 5px auto;
}

ul#page-nav li {
	display:inline;
	margin: 0 3px 0 0;
}

ul.top-menu {
	float: right;
	padding-left: 80px;
}

ul.top-menu li {
	display: inline;
	margin: 0 5px;
}

div.smart-box {
	position: absolute;
	right: 115px;
	top: 15px;
	z-index: 9999 !important;
}

div.smart-box2 {
	position: absolute;
	width: 100% !important;
	right: 0;
	top: 15px;
}

ul.smart-menu li {
	display: inline;
	margin: 0 1px;
}

ul.pc-menu {
	position:absolute;
	top: 55px;
	right: 0;
	margin: 10px 0;
}

ul.pc-menu li {
	display: inline;
	margin: 0 5px;
}

ul.pc-menu li a {
	font-size: 12px;
	color: #333333;
	text-decoration: underline;
}

ul.pc-menu li a:hover {
	font-size: 12px;
	color: #333333;
	text-decoration: none;
}
	
div#nav-top {
	position: relative;
	width: 100%;
	margin: 10px auto 0 auto;
	text-align: left;
}

#contents #main {
	overflow: hidden;
	margin-bottom: 40px;
}

div#main-title {
	float: right;
	width: 750px;
	background: #fff;
	border: 1px solid #008cc6;
	font-size: 24px;
}

div#main-title ul {
    list-style: none;
    width: 850px;
    font-size: 20px;
	padding: 5px 10px 0 0;
}

div#main-title ul li {
    margin-bottom: 5px;
    padding-left: 1em; /*1em（1文字）分、右に動かす*/
    color: #008cc6;
}

	#contents #main article {
		overflow: hidden;
		padding: 0 20px;
	}

#contents aside {
	overflow: hidden;
}

	#contents aside p {
		padding: 10px;
	}

footer {
	overflow: hidden;
}

	footer #copyright {
		padding: 10px;
	}

/* page-title
------------------------- */

div.page-title-inner {
	position: relative;
	width: 995px;
	height: 45px;
	margin: 30px auto 0 auto;
	background: #008cc6;
	font-size: 18px;
}

div.page-title-inner h2 {
	color: #fff;
	margin: 0;
	padding: 10px;
}

div.page-title2 {
	position: relative;
	width: 1023px;
	height: 55px;
	margin: 0 auto;
	font-size: 24px;
	background: url(../images/bar-bg.jpg) repeat;
}

div.page-title3 {
	position: relative;
	width: 100%;
	max-width: 1023px;
	height: 77px;
	margin: 0 auto;
	font-size: 24px;
	background: url(../images/bar-bg.jpg) repeat;
}

div.title-left {
	float: left;
	height: 77px;
	margin-left: 20px;
	background: url(../images/sircle-2.png) no-repeat center left;
	text-indent: 60px;
	color: #666359;
}

div.title-left2 {
	float: left;
	height: 55px;
	margin-left: 20px;
	background: url(../images/p-sircle.png) no-repeat center left;
	text-indent: 60px;
	color: #666359;
}

div.title-left h2 {
	padding: 0;
	margin: 20px 0;
	font-weight:normal;
}

div.title-left2 h2 {
	padding: 0;
	margin: 10px 0;
	font-weight:normal;
}

div.title-right {
	float: right;
	height: 77px;
	margin: 20px 25px 0 0;
}

#text-box {
	float: right;
	width: 740px;
	padding: 10px 5px;
	font-size: 16px;
}

#text-box2 {
	position: relative;
	width: 720px;
	margin: 0 auto;
	padding: 0 5px;
}

#text-box3 {
	position: relative;
	width: 750px;
	margin: 10px auto;
	padding: 0 5px;
}

.page-box2 {
	position:relative;
	width: 931px;
	margin: 0 auto;
}

.gray-box {
	position:relative;
	width: 931px;
	margin: 0 auto 40px auto;
	background: #e5e5e5;
}

.gray-box p {
	padding: 25px 90px;
}

/* table-list */

table.list {
	position:relative;
	width: 925px;
	margin: 30px auto;
	text-align:center;
}

table.list td {
	padding: 5px;
}

table.list td.one {
	background: #2484b9;
}

table.list td.two {
	background: #48a5cb;
}

table.list td.three {
	background: #d8eef5;
	border-right: 2px solid #fff;
}

table.list td.six {
	background: #d8eef5;
	border-bottom: 2px solid #fff;
}

table.list td.four {
	background: #d9d9d9;
	border-right: 2px solid #fff;
}

table.list td.five {
	background: #e5e5e5;
	border-right: 2px solid #fff;
}

span.list-title {
	color: #fff;
	font-size: 22px;
}

/* table.list2 */

/* table-list */

table.list2 {
	position:relative;
	width: 435px;
	margin: 30px 0 30px 50px;
	text-align:center;
}

table.list2 td {
	padding: 5px;
}

table.list2 td.one {
	background: #2484b9;
}

table.list2 td.two {
	background: #48a5cb;
}

table.list2 td.three {
	background: #d8eef5;
	border-right: 2px solid #fff;
}

table.list2 td.six {
	background: #d8eef5;
	border-bottom: 2px solid #fff;
}

table.list2 td.four {
	background: #d9d9d9;
	border-right: 2px solid #fff;
}

table.list2 td.five {
	background: #e5e5e5;
	border-right: 2px solid #fff;
}

table.list2 td.seven {
	background: #fff;
	border-right: 2px solid #fff;
	text-align:left !important;
}

/* news
------------------------- */

dl.news {
	width: 100%;
	margin-bottom: 30px;
	font-size: 15px;
	overflow: hidden;
}

dl.news dt {
	clear: both;
	float: left;
	width: 135px;
	margin: 0;
	padding: 7px 0 7px 0;
	color: #009933;
}

dl.news dd.a {
	margin: 0;
	padding: 7px 0 7px 135px;
	border-bottom: 1px dotted #008cc6;
	color: #333;
}

dl.news dd a {
	color: #000;
	text-decoration: none;
}

dl.news dd a:hover {
	color: #0066cc;
	text-decoration: underline;
}

dl.news dd:after {
	content: "";
	display: block;
	clear: both;
}

/* news-bottom
------------------------- */

div.news-bottom {
	position: relative;
	width: 100%;
	margin: 0 auto;
}

div.bottom-left {
	float: left;
	width: 90%;
}

div.bottom-right {
	float: right;
	width: 5%;
	padding: 5px 10px;
	background: #fff;
}

/* news-list
------------------------- */

dl.news-list {
	margin: 0 5px 30px 5px;
}

dl.news-list dt {
    clear:left;
    float:left;
	width: 100px;
    margin: 0;
    padding: 10px 0 3px 0.5em;
	font-weight: bold;
	color: #287f87;
}

dl.news-list dd {
	padding: 8px 0;
	margin: 8px 0;
}

dl.news-list dd.a {
    margin: 0;
	margin-left: 5em;
    padding: 10px 0.5em 3px 3em;
}
#wrapper #index-wrapper #index-left .news .a a:hover {
	color: #06C;
	text-decoration: underline;
}


dl.news-list dd.a:after {
	content : "";
	display : block;
	visibility: hidden;
	height : 0;
	clear : both;  
}

/* side
------------------------- */

div#side-title {
	width: 180px;
	background: #008cc6;
	font-size: 16px;
	height: 40px;
}

ul#side-nav {
	font-size: 18px;
}

ul#side-nav li {
	margin-bottom: 5px;
	padding: 10px;
	border-left: 6px solid #33cccc;
	background: #fff;
}

ul#side-nav li a,
ul#side-nav-recruit li a,
ul#side-nav-company li a,
ul#side-nav-job li a,
ul#side-nav-en li a,
ul#side-nav-member li a {
	color: #000;
	text-decoration: none;
}

h3.title-side {
	padding: 8px 5px;
	font-weight: bold;
	text-align:center;
	color: #fff;
}

/* box
------------------------- */

div.box {
	position: relative;
	margin: 40px auto;
}

div.box2 {
	position: relative;
	margin: 40px auto;
}

div.left-box {
	float: left;
	width: 491px;
}

div.left-box p {
	margin: 5px 0;
}

div.right-box {
	float: right;
	width: 491px;
}

div.right-box p {
	margin: 5px 0;
}

p.map {
	margin: 10px 0 20px 0;
	padding: 0;
}

div.clear {
	clear: both;
}

/* pagetop
------------------------- */

div.pagetop {
	position:relative;
	max-width: 1023px;
	width: 100%;
	margin: 10px auto 5px auto;
	text-align: right;
}

/* .viewer
------------------------- */
.viewer {
    margin: 0 auto;
    width: 100%;
    position: relative;
    overflow: hidden;
	z-index: 1;
}
.viewer ul {
    width: 100%;
    overflow: hidden;
    position: relative;
}
.viewer ul li {
    top: 0;
    left: 0;
    width: 100%;
    position: absolute;
}
.viewer ul li img {
    width: 100%;
}

div.entry-button {
	position: absolute;
	bottom: 2%;
	right: 19%;
}

/* ** */

div#contents-bg {
	position:relative;
	overflow:hidden;
    padding: 0 500%;
    margin: 0 -500%;
    width: 100%;
	background: url(../images/bg.jpg) repeat;
}

/* ぱんくずリスト領域の設定
----------------------------------------------------------------------*/

div#pankuzu {
	position:relative;
	height: 100%;
	color: #666;
	/* z-index: 8888 !important; */
	font-size: 12px;
	margin: 10px 0 10px 0px;
}

div#pankuzu li {
	display:inline;
	list-style-type:none;
	/* z-index: 8888 !important; */
}

div#pankuzu li a {
	padding-right:10px;
	background:url(../images/pankuzu.gif) no-repeat right center;
	color: #666666;
	text-decoration: underline;
	/* z-index: 8888 !important; */
}

div#pankuzu li a:visited {
	color: #666666;
	text-decoration: none;
	/* z-index: 8888 !important; */
}

div#pankuzu li a:hover {
	color: #ccc;
	text-decoration: none;
	/* z-index: 8888 !important; */
}

@media only screen and (min-width: 960px) {

div.smart-box2 {
	display: none;
}

/* nav */

.js .nav-collapse {
    position: relative;
}

.js .nav-collapse.closed {
    max-height: none;
}

#nav {
	display: none;
}

.nav-toggle {
    display: none;
}

ul.res-logo2 {
	display: none;	
}

/* */

.smart-box {
	display: none;
}

div#nav-top {
	display: none;
}

div.hr-bg {
	position:relative;
	overflow:hidden;
    padding: 0 500%;
    margin: 0 -500%;
    width: 100%;
	height: 4px;
	background: url(../images/bar.jpg) repeat;
}

header {
	position:relative;
	min-width: 1023px;
	overflow: hidden;
	margin: 10px auto;
}

#contents {
	position: relative;
	overflow: hidden;
	width: 1023px;
	margin: 0 auto;
}

#news {
	overflow: hidden;
	width: 1023px;
	margin: 0 auto;
}

#news-list {
	overflow: hidden;
	width: 780px;
	margin: 0 auto;
}

nav {
	position:relative;
	width: 1023px;
	margin: 0 auto;
	overflow: hidden;
	background: #fff;
}

nav ul {
		padding: 0;
		list-style: none;
		overflow: hidden;
	}

nav ul li {
		float: left;
	}

#contents #main {
	float: left;
	width: 850px;
	overflow: hidden;
}

	#contents #main article {
		overflow: hidden;
		padding: 0 20px;
	}

#contents aside {
	float: left;
	width: 180px;
	overflow: hidden;
}

	#contents aside p {
		padding: 10px;
	}

/* ** */}
