@charset "utf-8";

/* -----------------------------------

共通CSS

 -----------------------------------*/



/* 共通の設定 */

body {
    font-family:"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#333333;
}

img{
	vertical-align:middle;
	 max-width: 100%;
}

a{
	text-decoration:none;
}

a img:hover{
	opacity:0.8;
}

/* ClearFix */
.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}
.clearfix:after {
    clear: both;
}
.clearfix {
    *zoom: 1;
}

h2{
	font-size:22px;
	border-left:7px solid #d14235;
	padding-left:14px;
	margin-bottom:28px;
}

h3{
	font-size:22px;
	background:#e4e4e4;
	border-left:10px solid #d14235;
	padding:14px 20px;
	margin-bottom:28px;
}

/*--------------------------------------------

ヘッダー

----------------------------------------------*/

#header{
	padding:22px 2% 0 2%;
	max-width:960px;
	margin:0 auto;
}

#header .header_top{
	overflow:hidden;
	padding-bottom:24px;
}

#header h1{
	float:left;
	margin-right:1.7%;
	width:26%; 
}

.catch{
	width:17.2%; 
	float:left;
	margin-right:3.3%;
}

ul.sns{
	display:inline-block;
}

ul.sns li{
	display:inline-block;
}


.header_bottom{
	overflow:hidden;
	width:100%;
}

.menu{
	float:left;
	width: 93%;
}

.menu ul{
    overflow:hidden;
} 

.menu ul li{
    float:left;
    width:auto;
} 

.menu ul li a img:hover{ opacity:1; }

.menu_top{ padding-right:3%; }
.menu_company{padding-right:2.6%; cursor:pointer;}
.menu_work_member{padding-right:0.7%; cursor:pointer;}
.menu_special_{padding-right:1%; cursor:pointer;}
.menu_recruit{padding-right:0; cursor:pointer;}

.drop_down{
	display:none;
}

.header_bottom .entry{
	float:right;
	width:10.8%;
}
.menu .drop_down li a:hover{ opacity:0.8; }
.entry li a:hover{ opacity:0.8; }


/*--------------------------------------------

コンテンツ

----------------------------------------------*/

#container {
    border-top: 1px solid #1a1a1a;
    margin-top: 55px;
    padding: 50px 0 67px;
	line-height:1.5;
}

#main {
    background:#fff;
	width:77.2%;
	margin:0 auto;
	max-width:880px;
	padding:30px 40px;
}


.page{
	padding-bottom:55px;
}

.btn_underentry {
	margin:3em auto 1em;
	text-align:center;
	width:90%;
}



/*--------------------------------------------

フッター

----------------------------------------------*/

#footer{
    background:#002e5c;
	color:#fff;
	position:relative;
	padding-bottom:40px;
	width:100%;
}

#footer a{
	color:#fff;
}

#footer a:hover{
	opacity:0.8;
}

#back_top {
    bottom: 40px;
    position: fixed;
    right: 40px;
	z-index:2100;
}

#footerin{
	max-width: 960px;
	margin:0 auto;
	padding-top:45px;
}

/* ------------- メニュー ------------- */

.foot_menu li{
	display:inline-block;
	border-left:1px solid #fff;
	height:24px;
	padding-top:8px;
	padding-right:18px;
}
.foot_menu li a{
	margin:0 10px 0 0;
	padding: 4px 30px 4px 34px;
	background:url(../img/icon02.gif) right center no-repeat;
}
.foot_menu li img{
	padding-left:10px;
	display:inline-block;
}

.foot_menu li:first-child{
	padding-left: 0;
	border: none;
}

.copyright{
	padding-left: 34px;
}

.mail{
	word-wrap:normal;
}
.mail a {
	padding: 0 0 0 30px;
	background:url(../img/icon03.gif) left center no-repeat;
}






/* ++++++++++++++++++++++++〔 PCのスタイル 〕++++++++++++++++++++++++  */



@media all and (min-width: 640px) {
	
.pconly {
	display:block !important;
}
.sponly {
	display:none !important;
}
.pc_hidden{
display:none;
}
.sp_br{
	display:none;
}
/* ------------- header ------------- */

#sp_header{
	display:none;
}

.sp_catch{
	display:none;
}

.sp_sns{
	display:none;
}


.sp_page{
	display:none;
}

.header_bottom {
	overflow:visible;
	z-index:1000;
}
.header_bottom .inner {
	position:relative;
}
.menu ul {
	overflow:visible;
}
.menu ul li {
	position:relative;
}
.menu ul ul {
	position:absolute;
	top:55px;
	left:-52px;
	padding:10px 16px;
	background:#1a1a1a;
	width:196px;
	z-index:1000;
}
.menu ul li.menu_company ul {
	left: -66px;
}
.menu ul li.menu_work_member ul {
	left: -37px;
}
.menu ul li.menu_special_ ul {
	left: -67px;
}
.menu ul li.menu_recruit ul {
	left: -67px;
}
.menu ul ul li {
    float: none;
	display:block;
	line-height:2;
	font-size:16px;
	z-index:1000;
}
.menu ul ul li a {
	color:#FFF;
	text-decoration:none;
}
.entry {
	position:absolute;
	right:0;
	top:8px;
	background:#002e59;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	-o-border-radius: 6px;
	-ms-border-radius: 6px;
	font-size:14px;
	line-height:2;
	z-index:1000;
}
.entry #btn_entry {
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	-o-border-radius: 6px;
	-ms-border-radius: 6px;
	cursor:pointer;
}
.entry ul {
	display:none;
	padding:1em 0 1em 0.8em;
}
.entry ul li a {
	color:#FFF;
	text-decoration:none;	
}
.hidden {
	height:70px;
	overflow:hidden;
}
.fixed {
    position: relative;
	width:100%;
}
.header_bottom.fixed {
    position: fixed;
    top: 0;
	left:0;
	padding:0;
	background:#FFF;
	width:100%;
	border-bottom: 1px solid #1a1a1a;
}
.header_bottom.fixed .inner {
	margin:0 auto;
	width:100%;
	max-width:960px;
}
.slide_wrap {
	max-height:350px;
}
.bnr_entry {
	margin:30px auto;
	width:48%;
}



.monitor{
	display:none;
}

.foot_menu{
	font-size:11px;
	padding-left: 14%;
    width: 86%;
}




/* ------------- Footer エントリー ------------- */

.foot_entry{
	width:630px;
	margin:0 auto;
	margin-bottom:50px;
}

.foot_entry li {
	float:left;
}
.foot_entry li:first-child{
	margin-right:58px;
}


.foot_contact{
	border:1px solid #fff;
	width: 85%;
	margin:0 auto 40px auto;
	padding:0 0 0 3%;
	font-size:16px;
	height:50px;
	line-height:50px;
	vertical-align: middle;
	position:relative;
}

.contact_for_entry{
	position:absolute;
}

.tel{
font-size: 27px;
position: absolute;
left: 28%;
}

.mail{
font-size:24px;
position: absolute;
left: 55%;
}

.mail img{
	padding-right:16px;
}

}

@media all and (max-width: 980px) {

.slide_wrap {
	padding-bottom:0;
	max-height:300px;
}

}

@media all and (max-width: 840px) {
.contact_for_entry{
	font-size:11px;
}
.tel{
	font-size:18px;
}
.mail{
	font-size:18px;
}
}


@media all and (max-width: 780px) {

.slide_wrap {
	padding-bottom:0;
	max-height:225px;
}

}


@media all and (max-width: 640px) {
	
body{
	line-height:1.8;
}
	
.pconly {
	display:none !important;
}
.sponly {
	display:block !important;
}

#container {
    margin-top: 0;
}


.slide_wrap {
	padding-bottom:0;
	max-height:200px;
}

/* ------------- header ------------- */

#header {
padding:18px 0 0 0;
width: 100%;
}
.header_top{
margin:0 7.8%; /*50 / 640 x 100 = 7.8%*/
}
#header h1{
display:inline-block;
width: 100%;
margin-right:0;
padding-top:5px;
}

#header ul.sns{
display:none;
}

.sp_sns{
margin:0 auto 30px;
width:36%; /*160 / 540 x 100 = 59%*/
}
.sp_sns li:first-child {
float:left;
width:50%;
}
.sp_sns li:last-child {
float:right;
width:50%;
}

.sp_catch{
clear:both;
padding-top:24px;
}

.catch{
display:none;
}

.header_bottom{
display:none;
}
.sp_entry {
	background:#e5e5e5 left top no-repeat;
	z-index: 1001;
}
.sp_entry ul {
	display:none;
	/*padding:1em 0.5em;*/
}
.sp_entry ul li a {
	color:#FFF;
	text-decoration:none;	
}
.sp_entry.fixed {
    position: fixed;
    top: 0;
	left:auto;
	background:#e5e5e5 left top no-repeat;
	width:100%;
	background-size:auto;
}
.sp_entry.fixed a {
	width:100%;
}


.bnr_entry {
	margin:30px auto;
	width:65%;
}


.sp_entry {
	position:relative;
	overflow:hidden;
}
.sp_entry_wrap {
}

#sp_logo2 {
	display:none;
}
.fixed #sp_logo2 {
	display:block;
	float:left;
	width:18%;
	cursor:pointer;
}

#sp_entry_btn {
	float:left;
	width:82%;
	cursor:pointer;
}
#sp_entry_btn img {
	padding-left:21%;
	width:79%;
}
.fixed #sp_entry_btn {
	float:left;
	width:64%;
	cursor:pointer;
}
.fixed #sp_entry_btn img {
	padding-left:0;
	width:100%;
}

#sp_menu_btn{
	float:left;
	width:18%;
	cursor:pointer;
}


#sp_menu_list li {
	cursor:pointer;
}
#sp_menu_list li:last-child {
	border-bottom:1px #eaeaea solid;
}
#sp_menu_list li ul {
	background:#FFF;
	border-bottom:1px #eaeaea solid;
}
#sp_menu_list li ul li {
	padding:0.5em 0 0.5em 13%;
	border-top:1px #eaeaea solid;
	font-size:128.5714%;
}
#sp_menu_list li ul li a {
	display:block;
	width:100%;
	color:#333;
}

/* ------------- container ------------- */


#container{
border-top:none;
background-color: #fff;
padding: 50px 3.1% 67px 3.1%;
}

#main {
width: 100%;
padding:0;
margin-bottom: 30px;
}

.page {
padding-bottom: 20px;
}


.monitor{
width:90% !important;
margin:0 auto;
padding-bottom: 10px;
padding-top: 20px;
}

	
/* ------------- footer ------------- */

#back_top {
position: absolute;
top: -65px;
right: 30px;
width: 10%;
}


#footerin{
	width:100%;
	padding-top: 45px;
}

.foot_entry{
	width:100%;
	text-align:center;
}
.foot_entry li {
	float:none;
	margin:0 auto 60px auto;
	width:62%;
}
.foot_entry li:first-child{
	margin:0 auto 44px auto;
}
.foot_entry li img {
	width:100%;
}

.foot_contact {
border: 1px solid #fff;
width: 82%;
margin: 0 auto 40px auto;
padding: 30px 6px;
text-align:center;
}

.contact_for_entry {
display:block;
font-size: 20px;
margin-bottom:10px;
}

.tel {
display:block;
font-size: 27px;
margin-bottom:10px;
}

.mail{
font-size:18px;
}
.mail a {
	padding: 0 0 0 28px;
}

.foot_menu {
font-size: 18px;
width: 90%;
margin: 0 auto;
}

.foot_menu li {
display:block;
border-bottom: 1px solid #fff;
border-left:none;
text-align:center;
height: auto;
padding-bottom:20px;
padding-top: 15px;
padding-right: 0;
margin:0;
}
.foot_menu li a{
padding: 4px 30px 4px 0;
}
.foot_menu li:first-child {
border-bottom: 1px solid #fff;
}

.foot_menu li.copyright{
	margin: 0;
	padding-left: 0;
	font-size:12px;
	border-bottom:none;
}

}