@charset "utf-8";
/* ******************************************************************
 *	File name		: base.css
 *	Summary			: css base
 * ******************************************************************
 */
/* ----------------------------------------------------------------- */
/*	base                                                             */
/* ----------------------------------------------------------------- */
/*

緑　#75BA29 rgba(117,186,41,0.5)
濃　#004B2D rgba(0,75,45,0.5)

*/

/*-----------------------------------
  body
-----------------------------------*/
*{

}
body{
	position:relative;
	width:100%;
	height:100%;
	line-height:145%;
	background:#fff;
	color:#222;
	}
	#wrapper{
		position:relative;
		width:100%;
		text-align:center;
		overflow:hidden;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	#wrapper{
		position:relative;
		width:100%;
		text-align:center;
		background:#FFF;
		overflow:hidden;
	}
}

/*-----------------------------------
  header
-----------------------------------*/

header{
	display:block;
	position:relative;
	width:100%;
	height:63px;
	text-align:center;
	border-bottom:4px solid #004117;
	border-image-slice: 1;
	}
	#head_contents{
		position:relative;
		width:1000px;
		max-width:100%;
		height:100%;
		margin:0 auto;
		text-align:center;
		z-index:10;
	}
	#head_contents h1{
		display:inline-block;
		position:absolute;
		top:12px;
		left:0px;
		width:470px;
		height:40px;
		z-index:10;
}

/* main_nav */
header #main_nav{
	position:absolute;
	top:20px;
	right:0px;
	width:320px;
	height:25px;
	margin:0 auto;
	list-style:none;
	z-index:20;
	}
	header #main_nav ul{
		display:-webkit-flex;
		display:flex;
		-webkit-box-pack:justify;
		-ms-flex-pack:justify;
		justify-content:space-between;
		flex-wrap:wrap;
		list-style:none;
		position:relative;
		height:100%;
		-webkit-overflow-scrolling:touch;
	}
	header #main_nav li{
		position:relative;
		width:76px;
		height:100%;
		text-align:center;
		transition-duration:0.5s;
	}
	header #main_nav li a{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		width:100%;
		height:100%;
		font-weight:bold;
		font-size:0.85em;
		text-align:center;
		text-decoration:none;
		color:#000;
		z-index:10;
		}
		header #main_nav li:after{
			content:" ";
			position:absolute;
			left:0px;
			bottom:-2px;
			width:100%;
			height:2px;
			background:#004117;
			transition-duration:0.7s;
			z-index:0;
		}
		header #main_nav li:hover:after{
			height:calc(100% + 2px);
			background:#cdd365;
		}
		header #main_nav li.active:after{
			height:calc(100% + 2px);
			background:#cdd365;
	}
	header #main_nav li#mn_app{
		top:-4px;
		position:relative;
		width:120px;
		height:120%;
		text-align:center;
		-moz-border-radius:10px;
		-webkit-border-radius:10px;
		border-radius:10px;
		background-color:#ED6A00;
		box-shadow: 0 4px 0 #ca1c30; /* 影の太さ・色 */
		cursor: pointer;
		text-decoration: none; /* 文字の下線を消す */
		}
		header #main_nav li#mn_app a{
			display:-webkit-flex;
			display:flex;
			justify-content:center;
			align-items:center;
			position:relative;
			width:100%;
			height:100%;
			font-weight:bold;
			font-size:1em;
			text-align:center;
			text-decoration:none;
			color:#FFF;
			z-index:10;
			}
			header #main_nav li#mn_app:after{
				content:none;
			}
			header #main_nav li#mn_app:hover{
				opacity:0.7;
				box-shadow: none;
				transform: translateY(3px);
				
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	header{
		display:none;
	}
}

/*-----------------------------------------------------------------------------------------

#pnkz{
	margin:13px 0;
	text-align:left;
	}
	#pnkz a{
		color:#0060B1;
		text-decoration:none;
	}
	#pnkz a:hover{
		text-decoration:underline !important;
}

-----------------------------------------------------------------------------------------*/

main{
	display:block;
	position:relative;
	text-align:center;
	background:#fff;
}
main section{
	position:relative;
	width:1000px;
	max-width:100%;
	margin:0 auto;
	padding:30px 0;
	text-align:center;
}
main section *{
	z-index:1;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	main section{
		width:100%;
	}
}

/*---------------------
 contents
---------------------*/

#search_co{
	display:block;
	position:relative;
	width:100%;
	margin:0 0 25px;
	text-align:center;
	}
	#search_co div{
		display:inline-block;
		position:relative;
		margin:0 auto;
		padding:15px 90px;
		background:#A6BBC6;
	}
	#search_co strong{
		display:inline-block;
		position:relative;
		top:3px;
		margin:0 15px 0 0 !important;
		font-weight:normal;
		font-size:1.2rem;
		color:#FFF;
	}
	#search_co form{
		display:inline-block;
		position:relative;
		padding:0px 7px;
		background:#FFF;
		border:1px solid #999;
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
		cursor:pointer;
	}
	#search_co form select,
	#search_co form option{
		cursor:pointer;
}
#co_list{
	width:100%;
}
#co_list *{
	transition-duration:0.5s;
}
#co_list ul{
	list-style:none;
}
#co_list > ul > li{
	position:relative;
	width:100%;
	min-height:100px;
	margin:0 0 20px;
	padding:12px 20px 7px;
	text-align:left;
	background:#FFF;
	-moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
	-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
	box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
}
#co_list ul li.nextsoon{
	background-color:#f4f4f4;
	color:#888;
	text-align:center;
	height:120px;
	padding:42px 0;
}
#co_list > ul > li .col_box{
	position:relative;
	width:100%;
	min-height:100px;
	padding:0px 0px 0px 200px;
	background:#FFF;
}

/* col_comment */
#co_list > ul > li .col_comment{
	width:100%;
	text-align:left;
	}
	#co_list > ul > li .col_comment p{
		width:100%;
		margin:0 0 7px;
		font-family:'Kosugi', sans-serif;
		font-weight:bold;
		font-size:1.2rem;
		color:#00A0AA;
}

#co_list > ul > li a{
	display:block;
	position:absolute;
	top:2px;
	left:2px;
	width:calc(100% - 4px);
	height:calc(100% - 4px);
	border:2px solid rgba(0,75,45,0);
	}
	#co_list > ul > li a span{
		display:none;
	}
	#co_list > ul > li a:hover{
		border:2px solid rgba(0,75,45,1);
		background:rgba(0,75,45,0.1);
}
#co_list > ul > li .logo{
	display:-webkit-flex;
	display:flex;
	justify-content:center;
	align-items:center;
	position:absolute;
	top:0px;
	left:0px;
	width:170px;
	height:calc(100% - 40px);
	min-height:100px;
	}
	#co_list > ul > li .logo img{
		position:relative;
		max-width:100%;
		max-height:100%;
		width:auto;
		height:auto;
}
#co_list > ul > li ul li{
	padding:5px 0 0px;
	font-size:0.84rem;
	border-bottom:1px dotted rgba(0,0,0,0.5);
	}
	#co_list > ul > li ul li:last-child{
		border-bottom:none;
	}
	#co_list > ul > li ul li b{
		display:inline-block;
		margin:0 10px 5px 0;
		padding:1px 15px;
		font-weight:normal;
		font-size:0.84rem;
		background:#dbd9c3;
		color:#000;
	}
	#co_list > ul > li ul li p{
		display:inline-block;
		margin:0px;
		font-size:0.84rem;
		line-height:1.5;
	}
	#co_list > ul > li ul li.col_co_name p{
		font-size:1.3rem;
		font-weight:bold;
	}
	#co_list > ul > li ul li.col_message p{
		display:block;
		margin:0 0 3px;
		font-size:0.80rem;
	}
	#co_list > ul > li ul li.col_recruitment{
	display:none;
}

/* col_recruitment_cate */
#co_list > ul > li .col_recruitment_cate{
	width:100%;
	}
	#co_list > ul > li .col_recruitment_cate ul{
		width:100%;
		list-style:none;
	}
	#co_list > ul > li .col_recruitment_cate ul li{
		display:inline-block;
		margin:0 5px 7px 0;
		padding:3px 20px;
		font-weight:bold;
		font-size:0.84rem;
		border:1px solid #F8C176;
		background:#FDE8CC;
		color:#ED6F59;
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
}


/* --- responsive --- */
@media only screen and (max-width:767px){
	#search_co div{
		width:100%;
		padding:15px 15px;
		}
		#search_co strong{
			display:block;
			position:relative;
			top:0px;
			margin:0 0 15px 0 !important;
			font-size:1.2rem;
			color:#004B2D;
		}
		#search_co form option{
			font-size:0.87rem;
	}

	#co_list > ul > li{
		position:relative;
		width:100%;
		min-height:100px;
		margin:0 0 18px;
		padding:10px 10px 4px 10px;
		background:#FFF;
		-moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
		-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
		box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
	}
	#co_list > ul > li .col_comment p{
		font-size:1.0rem;
	}
	#co_list > ul > li .col_box{
		min-height:auto;
		padding:0px;
	}
	#co_list > ul > li ul li.col_message p{
		font-size:0.77rem;
	}
	#co_list > ul > li .logo{
		position:relative;
		top:0px;
		left:20px;
		width:calc(100% - 40px);
		height:100px;
		margin:0 0 7px;
	}
	#co_list > ul > li ul li p{
		font-size:0.77rem;
	}
	#co_list > ul > li ul li.col_co_name p{
		font-size:0.9rem;
	}
}

/*---------------------
 contents
---------------------*/

#pageback{
	position:fixed;
	right:20px;
	bottom:-100px;
	width:50px;
	height:50px;
	-moz-border-radius:8px;
	-webkit-border-radius:8px;
	border-radius:8px;
	background:#FFFFFF;
	border:5px solid rgba(0,0,0,1);
	opacity:0.5;
	z-index:101;
	transition-duration:0.5s;
	}
	#pageback:hover{
		opacity:1;
	}
	#pageback:before{
		content:" ";
		position:absolute;
		top:5px;
		left:5px;
		width: 0;
		height: 0;
		margin-top: -16px;
		border:16px solid transparent;
		border-bottom:16px solid rgba(0,0,0,1);
	}
	#pageback:after{
		content:" ";
		position:absolute;
		top:20px;
		left:14px;
		width:13px;
		height:15px;
		background:rgba(0,0,0,1);
		z-index:0;
	}
	#pageback a{
		display:block;
		position:absolute;
		left:-5px;
		top:-5px;
		width:50px;
		height:50px;
		padding:0px;
		font-size:0.8em;
		text-indent:-9999px;
		-moz-border-radius:50%;
		-webkit-border-radius:50%;
		border-radius:50%;
		z-index:1;
		text-decoration:none;
}
#pageback.bottomfix{
	position:absolute;
	bottom:120px;
	transition-duration:0.5s;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	#pagetop{
		display:none;
	}
}

/*------------------------------------------------
  gakusei_power
-------------------------------------------------*/

#gakusei_power{
	position:relative;
	width:1000px;
	max-width:100%;
	margin:0 auto;
	padding:20px;
	text-align:center;
	border-top:2px solid #7ACAD5;
}
#gakusei_power a{
	display:inline-block;
	margin:0 auto;
	-moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
	-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
	box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
	transition-duration:0.5s;
	}
	#gakusei_power a:hover{
		-moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.7);
		-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.7);
		box-shadow: 0px 0px 5px rgba(0,0,0,0.7);
}

/*---------------------
  footer
---------------------*/

footer{
	display:block;
	position:relative;
	width:100%;
	padding-bottom:20px;
	text-align:center;
	background-image: linear-gradient(to right, #004e21 0%, #002100 100%);
	background-image-slice: 1;
	color:#000;
	overflow:hidden;
	}
	footer #ft_banner{
		display:block;
		position:relative;
		width:100%;
		margin:0 auto;
		padding:20px;
		text-align:center;
		list-style:none;
		background:#fff;
		border-top:2px solid #8fc31f;
	}
	footer #ft_banner ul{
		display:-webkit-flex;
		display:flex;
		-webkit-box-pack:justify;
		-ms-flex-pack:justify;
		justify-content:space-between;
		flex-wrap:wrap;
		position:relative;
		width:1000px;
		max-width:100%;
		margin:0 auto;
		text-align:center;
		list-style:none;
	}
	footer #ft_banner ul li{
		display:inline-block;
		width:30%;
		font-weight:bold;
		font-size:1.0rem;
		text-align:center;
		color:#000;
		border-right:2px solid #8fc31f;
		padding:0 50px 0 0;
		
	}
	footer #ft_banner ul li:last-child{
		border-right:none;		
	}
	footer #ft_banner ul li img{
		margin:10px 10 0 0;
}

footer address{
	padding:20px 0;
	color:#FFF;
	}
	footer address p:first-child{
		margin:0 0 10px;
		font-weight:bold;
		font-size:1.6rem;
	}
	footer address p b{
		display:inline-block;
		margin:7px 0 0 0;
		font-weight:bold;
		font-size:1.35rem;
	}
	footer address p a{
		color:#FFF;
		text-decoration:none;
}

footer p#copyright{
	clear:both;
	position:relative;
	margin:0px;
	padding:7px 20px;
	font-size:0.8rem;
	text-align:center;
	color:#FFF;
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	footer #ft_banner{
		padding:10px 20px;
		}
	footer #ft_banner ul{
		width:100%;
		}
		footer #ft_banner ul:after{
			display:none;
		}
		footer #ft_banner ul li{
			margin:0 auto 10px;
			font-size:0.75rem;
			padding:0 15px 0 0;
		}
		footer #ft_banner ul li img{
			height:26px;
			width:auto;
			height:auto;
			margin:5px 0 0 0;
	}
	footer address{
		padding:20px;
		}
		footer address p{
			font-size:0.9em;
		}
		footer address p:first-child{
			color:#FFF;
		}
		footer address p b{
			font-weight:bold;
			font-size:1.15em;
	}
	footer p#copyright{
		font-size:0.7rem;
	}
}
