/* ******************************************************************
 *	File name		: base.css
 *	Summary			: css base
 * ******************************************************************
 */
/*

ピンク　#F9C0C0　rgba(249,192,192,0.1)

*/

/* -----------------------------------------------------------------
   base
----------------------------------------------------------------- */

body{
	position:relative;
	width:100%;
	height:100%;
	line-height:145%;
	color:#222;
	background:#FFF;
}
#wrapper{
	position:relative;
	width:100%;
	height:100%;
}

/* -----------------------------------------------------------------
   header
----------------------------------------------------------------- */

header{
	position:fixed;
	top:0px;
	left:0px;
	width:250px;
	height:100%;
	background:rgba(255,255,255,0.95);
	z-index:50;
	-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);
	}
	header h1{
		position:absolute;
		top:20px;
		left:30px;
		width:190px;
		height:190px;
		margin:0 auto 10px;
		z-index:10;
	}
	header h1 img{
		width:100%;
		height:auto;
}
header p{
	position:absolute;
	top:220px;
	left:0px;
	width:100%;
	text-align:center;
	margin-bottom:15px;
	text-align:center;
	font-weight:bold;
	color:#F49595;
}

header nav{
	position:relative;
	width:250px;
	height:100%;
	padding-top:290px;
	z-index:1;
}
header nav ul{
	display:block;
	width:250px;
	list-style:none;
	}
	header nav ul > li{
		width:100%;
		padding:0 0 0 10px;
		font-size:0.95rem;
		text-align:left;
		color:#000;
		transition-duration:0.5s;
	}
	header nav ul > li:hover{
		background:linear-gradient(-90deg, rgba(249,192,192,1), rgba(249,192,192,0.5));
	}
	header nav ul > li a{
		display:block;
		width:100%;
		height:100%;
		padding:15px 10px 15px 20px;
		text-decoration:none;
		color:#000;
		z-index:10;
		transition-duration:0.3s;
	}
	header nav ul > li a:hover{
		text-decoration:none;
	}
	header nav ul > li > a:after{
		content:" ";
		display:inline-block;
		position:relative;
		top:-2px;
		width:4px;
		height:4px;
		margin-left:10px;
		border-top:1px solid #000;
		border-right:1px solid #000;
		transform:rotate(45deg);
}
header nav ul > li#nav_top{
	display:none;
}

/* IE */
@media all and (-ms-high-contrast: none){
	header nav ul li a{
		padding:9px 10px 0px 50px;
	}
}
/* --- responsive --- */
@media(max-width:767px){
	header{
		display:none;
	}
}


/* plus */
header nav ul li.plus:before,
header nav ul li.plus:after{
	content:" ";
	position:absolute;
	top:0px;
	left:250px;
	width:0px;
	height:100%;
	transition-duration:0.5s;
	}
	header nav ul li.plus:before{
		background:rgba(255,240,240,0.2);
		-moz-box-shadow:5px 0px 5px -5px rgba(0,0,0,0.4);
		-webkit-box-shadow:5px 0px 5px -5px rgba(0,0,0,0.4);
		box-shadow:5px 0px 5px -5px rgba(0,0,0,0.4);
		z-index:-2;
	}
	header nav ul li.plus:after{
		background:rgba(249,192,192,0.9);
		-moz-box-shadow:5px 0px 5px -5px inset rgba(0,0,0,0.4);
		-webkit-box-shadow:5px 0px 5px -5px inset rgba(0,0,0,0.4);
		box-shadow:5px 0px 5px -5px inset rgba(0,0,0,0.4);
		z-index:-1;
		}
		header nav ul li.plus:hover:before,
		header nav ul li.plus:hover:after{
			width:200px;
}
header nav ul li.plus ul{
	display:block;
	position:absolute;
	left:250px;
	width:0px;
	margin:-52px 0 0;
	overflow:hidden;
	transition-duration:0.5s;
	}
	header nav ul li.plus:hover ul{
		width:200px;
}

	header nav ul li.plus ul li{
		position:relative;
		width:200px;
		min-height:0px;
		margin:0px !important;
		padding:0px !important;
		font-size:0.8rem;
		text-align:left;
		color:#000;
		background:none;
		border:none;
		transition-duration:0.5s;
	}
	header nav ul li.plus ul li a{
		display:block;
		width:100%;
		height:100%;
		min-height:0px;
		margin:0px !important;
		padding:6px 10px 6px 10px;
		text-decoration:none;
		color:#000;
		z-index:10;
		transition-duration:0.3s;
	}
	header nav ul li.plus ul li a:hover{
		background:rgba(255,255,255,0.8);
	}
	header nav ul li.plus ul li a:after{
		display:none !important;
}

/* -----------------------------------------------------------------
   main
----------------------------------------------------------------- */

main{
	display:block;
	position:relative;
	width:100%;
	overflow:hidden;
	z-index:0;
}

#main_contents{
	position:relative;
	padding:0 0px 30px 0px;/* padding:0 30px 30px 280px; */
}

section{
	position:relative;
	max-width:100%;
	text-align:center;
}

.contents{
	position:relative;
	width:1080px;
	max-width:100%;
	margin:0 auto;
}

/* --- responsive --- */
@media(max-width:767px){
	main{
		padding-top:65px;
	}
}

/* -----------------------------------------------------------------
   Link
----------------------------------------------------------------- */

#ft_link{
	position:relative;
	padding:20px 30px 13px 0;
	background:#E0E0E3;
	}
	#ft_link ul{
		position:relative;
		width:100%;
		list-style:none;
		text-align:center;
	}
	#ft_link ul li{
		display:inline-block;
		position:relative;
		margin:0 10px 7px;
	}
	#ft_link ul li:hover{
		background:rgba(0,0,0,0.1);
		transition-duration:1.0s;
	}
	#ft_link ul li a{
}

/* -----------------------------------------------------------------
   head_contact
----------------------------------------------------------------- */

#head_contact{
	position:absolute;
	top:0px;
	right:0px;
	width:50%;
	text-align:right;
	background:linear-gradient(90deg, rgba(231,120,46,0), rgba(231,120,46,1));
	color:#FFF;
}
#head_contact a{
	position:relative;
	text-decoration:none;
	padding:0 30px 0 20px;
	font-size:0.8rem;
	color:#FFF;
	background:url(../../image/base/mail.png) no-repeat 0 3px;
	z-index:49;
}
/* --- responsive --- */
@media(max-width:767px){
	#head_contact{
		display:none;
	}
}

/* -----------------------------------------------------------------
   footer
----------------------------------------------------------------- */

footer{
	clear:both;
	position:relative;
	width: calc(100% - 250px);
	margin-left:250px;
	text-align:center;
	color:#FFF;
	z-index:20;
	background:#847575;
	}
	footer #copyright{
		position:relative;
		padding:10px 0 70px;
		text-align:center;
		font-size:0.75em;
}

/* --- responsive --- */
@media(max-width:767px){
	footer{
		clear:both;
		position:relative;
		width:100%;
		margin-left:0px;
		text-align:center;
		color:#FFF;
		z-index:20;
		background:#646473;
		}
		footer #copyright{
			position:relative;
			padding:10px 0 70px;
			text-align:center;
			font-size:0.75em;
	}
}

/* -----------------------------------------------------------------
   pagetop
----------------------------------------------------------------- */

#pagetop{
	position:fixed;
	right:20px;
	bottom:25px;
	width:50px;
	height:50px;
	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
	background:rgba(47,43,92,1);
	opacity:0.5;
	z-index:999;
	}
	#pagetop:before,
	#pagetop:after{
		content:" ";
		position:absolute;
	}
	#pagetop:before{
		top:8px;
		left:10px;
		width: 0;
		height: 0;
		margin-top: -15px;
		border:15px solid transparent;
		border-bottom:15px solid rgba(255,255,255,1);
	}
	#pagetop:after{
		top:23px;
		left:19px;
		width:13px;
		height:18px;
		background:rgba(255,255,255,1);
		z-index:0;
	}
	#pagetop span{
		display:none;
		position:absolute;
		top:-25px;
		height:22px;
		right:0px;
		width:80px;
		font-family:"ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace;
		font-size:10px;
		background:rgba(255,255,255,1);
		border:1px solid #000;
		border-radius:5px;
		-webkit-border-radius:5px;
		-moz-border-radius:5px;
		color:#000;
		line-height:20px;
		}
		#pagetop span:before,
		#pagetop span:after{
			content:" ";
			position:absolute;
		}
		#pagetop span:before{
			bottom:-12px;
			right:8px;
			width:0;
			height:0;
			border:5px solid transparent;
			border-top:7px solid rgba(0,0,0,1);
		}
		#pagetop span:after{
			bottom:-11px;
			right:8px;
			width:0;
			height:0;
			border:5px solid transparent;
			border-top:7px solid rgba(255,255,255,1);
	}
	/* hover */
	#pagetop:hover{
		opacity:1;
	}
	
	#pagetop a{
		display:block;
		position:absolute;
		left:0px;
		top:0px;
		width:100%;
		height:100%;
		color:#0061B1;
		border-radius:6px;
		-webkit-border-radius:6px;
		-moz-border-radius:6px;
		z-index:1;
}
@media print{
	#pagetop{
		display:none;
	}
}












