@charset "UTF-8";


/* FONT size
---------------------------------------------------------------------
[ px ]	[ % ]
10px 	72  %		19px 	136 %
11px 	79  %		20px 	143 %
12px 	86 %		21px 	150 %
13px 	93 %		22px 	158 %
14px 	100 %		23px 	165 %
15px 	108 %		24px 	172 %
16px 	115 %		25px 	179 %
17px 	122 %		26px 	186 %
18px 	129 %
---------------------------------------------------------------------*/




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 共通項目 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */



/* マージン */
.margin02 {	margin-bottom: 2px; }
.margin05 {	margin-bottom: 5px; }
.margin06 {	margin-bottom: 6px; }
.margin08 {	margin-bottom: 8px; }
.margin10 {	margin-bottom: 10px; }
.margin15 {	margin-bottom: 15px; }
.margin20 {	margin-bottom: 20px; }
.margin30 {	margin-bottom: 30px; }
.margin40 {	margin-bottom: 40px; }


/* 文字装飾 */
strong {
	font-weight: bold;
}

ul {
	
}
	ul li {
		list-style:none;	
	}


/* float解除 */
.cbox { 
}
* html .cbox {
	zoom: 100%;
}
*:first-child+html .cbox {
	display: inline-block;
}
.cbox:after {
	content: ""; 
	clear: both; 
	height: 0; 
	display: block; 
	visibility: hidden;
}
ul { 
}
* html ul {
	zoom: 100%;
}
*:first-child+html ul {
	display: inline-block;
}
ul:after {
	content: "."; 
	clear: both; 
	height: 0; 
	display: block; 
	visibility: hidden;
}




/* リンク */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
a {
	color: #000;
}
a:hover {
	color: #4F3C8B;
}


/* テキスト装飾 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 小文字 */
.cap {
	line-height: 1.5;
	font-size: 86%;
}
.bold {
	font-weight: bold;
}


/* 横幅 */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
body {
	font-family: YuGothic, 'Yu Gothic', 游ゴシック体, '游ゴシック', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'MS ゴシック', 'MS Gothic', sans-serif;
	text-align: justify;
	text-justify: inter-ideograph;
	-webkit-text-size-adjust: 100%;
	color: #000;
	padding: 0;
	margin: 0;
	width:100%;
	overflow-x:hidden;
	box-sizing: border-box;
}





/* PC */
@media screen and (min-width: 768px), print {



	
.sp,
#header_sp{
	display: none;
}

.hamburger {
	display: none !important;
}
	


/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ヘッダー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#header {
    width: 100%;
	min-width: 1040px !important;
	z-index:1000;
	height:110px;
	position:relative;
/*	overflow: auto;*/
}
* html #header {
	zoom: 100%;
}
*:first-child+html #header {
	display: inline-block;
}



    #header .rightNav {
        position:absolute;
		top:10px;
		right:10px;
		z-index:100;
    }
	
		#header ul#line01{
			margin-bottom:10px;
		}
		#header ul#line01 li{
			float: right;
			margin-left:3px;
		}
			#header ul#line01 li a{
				width:115px;
				height:34px;
				line-height:34px;
				font-weight:bold;
				display:block;
				text-align:center;
			}
			#header ul li.request
			 {
				background:#ff7b00;
				border-radius:3px;
			}
				#header ul li.request a
				 {
					color:#fff;
				}
			#header ul li.contact,
			#header ul li.access
			 {
				background:#fff;
				border-radius:3px;
			}
				#header ul li.contact a,
				#header ul li.access a
				 {
					color:#4F3C8B;
				}
			
			
			#header ul li.access
			 {
				margin-left:22px !important; 
			}
			#header ul li.search{
				width:230px; 
				position:relative;
				margin-left:10px !important; 
			}
			
			
			#header ul li.search form #keywords  {  
				width: 188px;  
				height: 26px;  
				background: #f9f5e1;  
				border: none;  
				padding: 4px;  
				float:left;
			}  
			#header ul li.search #searchBtn {  
				position: absolute;  
				top: 0;  
				right: 0px;  
			}  
			
			#header ul li.emergency{
				background:url(../img/arrow_right01.png) no-repeat left center;
				padding-left:12px;
			}
				#header ul li.emergency a{
					font-size:12px;
					width:auto !important;
				}
		
	
	
	
	
	
	
		#header ul#line02{
			float:right;
			width:603px;
			background:#fff;
			border-radius:3px;
		}
		#header ul#line02 li{
			float: right;
			border-left:1px solid #ddd;
		}
			#header ul#line02 li a{
				width:200px;
				height:40px;
				line-height:40px;
				font-weight:bold;
				color:#4F3C8B;
				text-align:center;
				display:block;
			}
		#header ul#line02 li.last{
			border-left:none;
		}
		#header ul#line02 li:hover{
			background:#4F3C8B;
			border-left:none;
		}
		#header ul#line02 li.first:hover{
			border-top-right-radius:5px;
			border-bottom-right-radius:5px;
		}
		#header ul#line02 li.last:hover{
			border-top-left-radius:5px;
			border-bottom-left-radius:5px;
			padding-left:1px;
		}
		#header ul#line02 li:hover a{
			color:#fff;
		}
		
		
		
    #header .shadow{
        position:absolute;
		top:-10px;
		right:-10px;
		z-index:10;
    }
	
	
	
	
	
	
	
	
	
.megamenu li{
}
.megamenu li a{
	display: block;
	margin: 0;
	text-decoration: none;
	font-weight:lighter;
	cursor:pointer;
}
.megamenu li ul{
	/*width:970px !important;*/
	width:730px !important;
	list-style: none;
	position: absolute;
	z-index: 2000 !important;
	top: 84px;
	right: 50%;
	margin: 0;
	padding: 0;
	padding:30px 0px 0px 30px;
   background-color: #fff;
   border-radius:5px;
}
.megamenu li ul a{
	top: 20%;
}
.megamenu li ul li{
	width:220px;
	height:90px;
    margin:0;
	margin-right:20px;
	float:left !important;
	font-size:12px;
	border-left:none !important;
}
.megamenu li ul li:hover{
	background:#fff !important;
	border-left:none;
}
.megamenu li ul li.last{
   background:none !important;
}
.megamenu li ul li a{
	text-align: left !important;
	color: #fff;
	font-size:100%;
	display:block;	
}
.megamenu li:hover > a{
}
	.megamenu li ul li img{
		float:left;
		width:80px;
	}
	.megamenu li ul li dl{
		float:right;
		width:210px;
		line-height:18px;
		color:#000;
	}
		.megamenu li ul li a{
			width:100% !important;
		}
		.megamenu li ul li dl dt{
			margin-bottom:5px;
			font-size:115%;
			font-weight:bold;
			color:#4F3C8B;
		}

		.megamenu li ul.juken{
			background-image:url(../img/arrow_bottom.png) !important;
			background-repeat:no-repeat !important;
			background-position:500px top;
		}
		.megamenu li ul.zaikou{
			background-image:url(../img/arrow_bottom.png) !important;
			background-repeat:no-repeat !important;
			background-position:695px top;
		}
		.megamenu li ul.gradu{
			background-image:url(../img/arrow_bottom.png) !important;
			background-repeat:no-repeat !important;
			background-position:895px top;
		}





#line02 li ul{
  opacity: 0;
  right: -20px;
  visibility: hidden;
  transition: .3s;
}
#line02 li:hover ul{
  right: 0px;
  visibility: visible;
  opacity: 1;
}



		.megamenu li ul li.coming {
			opacity:0.5;
		}

	
	





/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 検索ボックス */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#cse-search-box {
}
	#cse-search-box .hsForm {
	}
		#cse-search-box .searchForm {
			width: 86%;
			height: 14px;
			padding: 10px;
			background: #f9f5e1;
			border: none;
		}  
	#cse-search-box .hsBtn {
		width: 34px;
		position: absolute;
		top: 0;
		right: 0;
	}







/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ナビゲーション */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#nav {
	position: relative;
	z-index: 999;
	width: 100%;
	min-width: 1040px;
	background-color: #4F3C8B;
	-webkit-font-smoothing: antialiased;
}
    #nav #globalNavi {
    }
        #nav #globalNavi li {
            width: 20%;
            float: left;
        }
            #nav #globalNavi li a {
                display: block;
                text-align: center;
				background:url(../img/nav_line.gif) no-repeat right top;
				color: #FFF;
				height:66px;
				line-height:66px;
				font-weight: bold !important;
				font-size: 108%;
				letter-spacing:0.1em;
				position:relative;
            }
            #nav #globalNavi li.last a {
				background:none;
            }
			
			
	   
		#nav #globalNavi li ul li{
			width: 100%;
			float: none;
			position:relative;
		}
		#nav #globalNavi li ul li.cat{
			margin-top: 15px;
			padding: 5px 10px;
			background-color: #fff;
			box-sizing: border-box;
			color: #5e52c0;
			font-weight: 600;
			font-size: 14px;
			letter-spacing: 0.1em;
		}
			#nav #globalNavi li ul li a{
				height: auto !important;
				text-align:left;
				font-size: 14px;
				padding:10px;
				line-height:16px;
			}


			/*coming*/
			#nav #globalNavi li ul li.coming{
				opacity:0.5;
			}



	   
.dropmenu li{
	position:relative;
}
.dropmenu li ul{
	width: 100%;
	list-style: none;
	position: absolute;
	z-index: 1;
	top: 10px;
	left: 0;
	margin: 0;
	padding: 0;
   background-color: #4F3C8B;
}
.dropmenu li ul a{
	top: 20%;
	background:none !important;
	display: block;
	margin: 0;
	text-decoration: none;
	font-weight:lighter;
	/*opacity:0;*/
}
.dropmenu li ul li{
	height:auto;
    margin:0;
	float:none !important;
	/*border-top:1px solid #9e98da;*/
	font-size:12px;
	/*background:url(../img/arrow_right04.png) no-repeat right 8px center;*/
}
.dropmenu li ul li a{
	text-align: left;
	color: #fff;
	font-size:100%;
	display:block;	
}
.dropmenu li ul li:hover{
	/*background:#7b79e2 url(../img/arrow_right04.png) no-repeat right 8px center;*/
	background:#7b79e2;
}
.dropmenu li:hover > a{
}
.dropmenu li a:hover{
	color: #f7989f;
}



#globalNavi li ul{
  opacity: 0;
  top: 33px;
  visibility: hidden;
  transition: .15s;
}
#globalNavi li:hover ul{
  top: 66px;
  visibility: visible;
  opacity: 1;
}

	   
	   
	   
#globalNavi{
	
	}
	#globalNavi .on>a{
	background:#7b79e2 url(../img/nav_line.gif) no-repeat right top !important;
		}
	#globalNavi .on.last>a{
	background:#7b79e2 !important;
		}
	   
	   
.fixed {
    position: fixed !important;
    top: 0 !important;
    width: 100%;
	min-width: 1040px;
	z-index:3000;
}





/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* パンくずリスト  */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

#bread {
	padding-top: 10px;
	margin-bottom: 60px;
}
	#bread ul {
		font-size: 12px;
		float:left;
	}
	#bread ul li {
		float:left;
		margin-right: 10px;
		color: #000;
		padding-right:20px;
		background:url(../img/bread_arrow.png) no-repeat right center;
	}
	#bread ul li.last {
		background:none;
		margin-right: 0px;
		padding-right:0px;
		color:#4F3C8B;
	}
		#bread ul li a {
			text-decoration:underline;
		}






	
	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#wrapper {
	width: 100%;
	min-width: 1040px;
}

#contents {
	width: 1040px;
	margin: 0 auto;
	padding: 50px 0;
}

.area {
	width: 1040px;
	margin: 0 auto;
}
* html .area {
	zoom: 100%;
}
*:first-child+html .area {
	display: inline-block;
}
.area:after {
	content: "."; 
	clear: both; 
	height: 0; 
	display: block; 
	visibility: hidden;
}

.section{
	margin-bottom:80px;
	}




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 共通スタイル */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#main {
    width: 100%;
    min-width: 1040px;
	height:200px;
	text-align:center;
}





.titStyle01{
	color:#4F3C8B;
	font-size:143%;
	line-height:34px;
	margin-bottom:40px;
	letter-spacing:0.05em;
	}




.titStyle02 {
	padding:5px 13px;
	background:#4F3C8B;
	color:#fff;
	font-weight:bold;
	font-size:129%;
	margin-bottom:20px;
	letter-spacing:0.05em;
}




.titStyle03 {
	padding:10px;
	border-bottom:2px solid #cecbec;
	padding:0 0 5px 25px;
	color:#4F3C8B;
	font-weight:bold;
	font-size:129%;
	margin-bottom:20px;
	background: url(../img/icon_circle.gif) no-repeat left 10px;
	letter-spacing:0.05em;
}
.titStyle03 span{
	font-size:80%;
}






.tableStyle01 {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 15px;
	background:#fff;
}
	.tableStyle01 th {
		border: solid 1px #d9d9d9;
		border-left: none;
		border-right:none;
		background: #f6f2de;
		padding: 20px 20px;
		line-height: 1.4em;
		text-align:center;
		width:120px;
		font-weight:lighter;
	}
	
	.tableStyle01 .tx_center {
		text-align:center;
	}
	.tableStyle01 .tx_right {
		text-align:right;
	}
	.tableStyle01 td {
		border: solid 1px #d9d9d9;
		border-right: none;
		border-left: none !important;
		padding: 20px 20px;
		line-height:20px;
		letter-spacing:0.02em;
	}
		.tableStyle01 td .bold{
			font-weight:bold;
			color:#4F3C8B;
		}
		
	.tableStyle01 .bold{
		font-weight:bold;
		}
	.tableStyle01 p{
		margin-bottom:5px;
		}
	.tableStyle01 span.small{
		font-size:85%;
		}
	.tableStyle01 .purple {
		color:#4F3C8B;
		font-weight:bold;
	}







.tableStyle02 {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 15px;
	background:#fff;
}
.tableStyle02 .bgColor_red{
	background:#b12929;
	}
.tableStyle02 .bgColor01{
	background:#9b733a;
	}
.tableStyle02 .bgColor02{
	background:#c5733a;
	}
.tableStyle02 .bgColor_pink{
	background:#ffafac;
	}
.tableStyle02 .bgColor_blue{
	background:#7fbfe5;
	}
.tableStyle02 .bgColor_green{
	background:#92dbc2;
	}
.tableStyle02 .bgColor_orange{
	background:#ffad6b;
	}
.tableStyle02 .bgColor_aqua{
	background:#7ed1ea;
	}
	
		
	.tableStyle02 th {
		border: solid 1px #d3d3d3;
		padding: 10px 10px;
		line-height: 1.4em;
		text-align:center;
		font-weight:lighter;
		color:#fff;
		font-weight:bold;
		text-align:center;
	}
	.tableStyle02 td {
		border: solid 1px #d3d3d3;
		padding: 6px 10px;
		line-height:20px;
		letter-spacing:0.02em;
		font-weight:bold;
		text-align:center;
	}
	.tableStyle02 .line01 {
		background:#f1eee1;
		width:10px;
		padding: 6px 20px;
		color:#000;
	}
	.tableStyle02 td.line01.padding0 {
		background:#f1eee1;
		width:10px;
		padding: 6px 0px;
	}
	.tableStyle02 .tx_left {
		text-align:left;
	}
	.tableStyle02 td.line02 {
		text-align:left;
		width:210px;
	}
	.tableStyle02 .padding0 {
		padding:0;
	}
		









	.listStyle01 li{
		background: url(../../common/img/dot01.png) no-repeat left 8px;
		padding-left:15px;
		margin-bottom:5px;
		line-height:22px;
		}






.shadowBtn a{
	text-align:center;
	color:#4F3C8B;
	letter-spacing:0.1em;
	font-weight:bold;
	box-shadow:3px 6px 30px 3px #e2e4e6;
	-moz-box-shadow:3px 6px 30px 3px #e2e4e6;
	-webkit-box-shadow:3px 6px 30px 3px #e2e4e6;
	min-width:115px;
	display:block;
	padding-left:15px;
	}
	




/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* フォーム */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

#Form {
	background:#f1f1f1;
	padding:10px 30px;
	margin-bottom:30px;
}

	#Form span.red {
		color: #bd0000;
	}
	


#Form table {
	width: 100%;
	border-collapse: collapse;
}
	#Form table tr {
		background: url(../../common/img/dot_line.png) repeat-x left bottom;
	}
	#Form table tr.last {
		background: none;
	}
		#Form table tr th {
			padding: 20px 0px;
			line-height: 1.4em;
			font-weight: bold;
			width:175px;
		}
		#Form table tr.last th {
			padding: 20px 0px 20px 0;
		}
		#Form table tr td {
			padding: 20px 0;
			font-size: 84%;
		}
		#Form table tr.last td {
			padding: 20px 0 20px 0;
		}
		#Form table tr td input {
			width: 356px;
			padding: 12px;
			border:1px solid #e0e0e0;
			margin-right:10px;
			font-size:14px;
		}
		#Form table tr td.short input {
			width: 176px;
			margin-right:10px;
		}
		#Form table tr td.short input+input {
			margin-right:0px;
		}
		#Form table tr td textarea {
			width: 480px !important;
			height: 255px !important;
			padding: 15px !important;
			border:1px solid #e0e0e0;
			font-size:14px;
			resize: vertical;
		}
		
		
	






.Form {
	background:#f1f1f1;
	padding:10px 30px;
	margin-bottom:30px;
}

	.Form span.red {
		color: #bd0000;
	}
	


.Form table {
	width: 100%;
	border-collapse: collapse;
}
	.Form table tr {
		background: url(../../common/img/dot_line.png) repeat-x left bottom;
	}
	.Form table tr.last {
		background: none;
	}
		.Form table tr th {
			padding: 20px 0px;
			line-height: 1.4em;
			font-weight: bold;
			width:175px;
		}
		.Form table tr.last th {
			padding: 20px 0px 20px 0;
		}
		.Form table tr td {
			padding: 20px 0;
			font-size: 84%;
		}
		.Form table tr.last td {
			padding: 20px 0 20px 0;
		}
		.Form table tr select {
			font-size:14px !important;
		}
		.Form table tr td input {
			width: 356px;
			padding: 12px;
			border:1px solid #e0e0e0;
			margin-right:5px;
			font-size:14px;
		}
		.Form table tr td.short input {
			width: 176px;
			margin-right:10px;
		}
		.Form table tr td.short input+input {
			margin-right:0px;
		}
		.Form table tr td textarea {
			width: 480px !important;
			height: 255px !important;
			padding: 15px !important;
			border:1px solid #e0e0e0;
			font-size:14px;
			resize: vertical;
		}
		
		
	

.FormBtnArea {
	width:560px;
	margin:0 auto;
}
	.FormBtnArea li.reset {
		float: left;
	}
	.FormBtnArea li.confirm {
		float: right;
	}
		.FormBtnArea li button {
			border: none !important;
			background: none;
			color:#fff;
			font-size:115%;
			font-weight:bold;
			letter-spacing:0.1em;
			border-radius:3px;
		}
		.FormBtnArea li.reset button {
			width:204px;
			background:#808080;
			padding:15px 0;
		}
		.FormBtnArea li.confirm button {
			width:334px;
			background:#4F3C8B;
			padding:15px 0;
		}











/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* コンテンツエリアとサイドバナーエリア */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
	
	
#wrapper .contentArea {
	width:740px;
	float:left;
}
#wrapper .sideArea {
	width:250px;
	float:right;
	padding-bottom: 100px;
}
	#wrapper .sideArea ul{
		border-top:1px solid #d6d6d6;
		margin-bottom:30px;
	}
		#wrapper .sideArea ul li{
			background: url(../img/arrow_right01.png) no-repeat right 10px center;
		}
		#wrapper .sideArea ul li.cat{
			background: none;
			background-color: #5d52c0;
			color: #fff;
			padding: 3px 5px 2px;
			margin-top: 40px;
			text-align: center;
		}
		#wrapper .sideArea ul li a{
			padding:15px 15px 15px 5px;
			display:block;
			border-bottom:1px solid #d6d6d6;
			letter-spacing: -0.3px;
			font-size: 14px;
		}
		#wrapper .sideArea ul li.on a{
			color:#4F3C8B;
		}
	#wrapper .sideArea p{
		margin-bottom:10px;
	}
	
	
		/*coming*/
		#wrapper .sideArea ul li.coming{
			padding:15px 10px;
			display:block;
			border-bottom:1px solid #d6d6d6;
			background:none !important;
		}
		#wrapper .sideArea ul li.coming span{
			opacity:0.5;
		}
	
	
	
	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* フッター */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#footer {
	width: 100%;
	min-width: none;
    background: #4F3C8B;
    padding: 25px 0;
}




    #footer .footer_logo {
        width:330px;
		float:left;
    }
		#footer .footer_logo img{
			float:left;
			margin-right:10px;
		}
		#footer .footer_logo p{
			color:#fff;
			font-size:86%;
			line-height:18px;
		}
	
	
	
    #footer dl {
        width:650px;
		float:right;
		color:#fff;
    }
        #footer dl dt {
			margin-bottom:5px;
        }
			#footer dl dt p{
				text-align:right;
				float:right;
			line-height:18px;
			}
				#footer dl dt a{
					color:#fff;
					font-size:86%;
					line-height:18px;
				}
				#footer dl dt p span{
					float:left;
					margin-left:20px;
					background: url(../img/arrow_right02.gif) no-repeat left center;
					padding-left:12px;
				}
				#footer dl dt p:nth-child(2) span:nth-child(1) {
					background: url(../img/icon_pdf.gif) no-repeat left center;
					padding-left:15px;
				}
				
        #footer dl dd {
            font-size: 10px;
            letter-spacing: 1px;
			font-size:86%;
			text-align:right;
			line-height:18px;
		}


	

/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* トップへ戻るボタン */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */


#pagetop_sp{
	display:none !important;
	}


#pagetop{
	position:fixed;
	right:20px;
	bottom:-400px;
	z-index:1000;
	width:94px;
	cursor:pointer;
	}
	#pagetop .pencil{
		position:absolute;
		bottom:0;
		left:37px;
		}
	#pagetop .txt{
		position:absolute;
		bottom:190px;
		left:0px;
		opacity:0;
		}




}





	.pagetop_active_anime {
		animation: pagetop_active_anime 1s forwards;
		-webkit-animation: pagetop_active_anime 1s forwards;
		-ms-animation: pagetop_active_anime 1s forwards;
	}
	@keyframes pagetop_active_anime {
	  0% { bottom: -400px;}
	  50% { bottom: 0px; }
	  100% { bottom: 0px; }
	}
	@-webkit-keyframes pagetop_active_anime {
	  0% { bottom: -400px;}
	  50% { bottom: 0px; }
	  100% { bottom: 0px; }
	}
	@-ms-keyframes pagetop_active_anime {
	  0% { bottom: -400px;}
	  50% { bottom: 0px; }
	  100% { bottom: 0px; }
	}


	.pagetop_active_anime .txt{
		animation: pagetop_txt_active_anime 1s forwards;
		-webkit-animation: pagetop_txt_active_anime 1s forwards;
		-ms-animation: pagetop_txt_active_anime 1s forwards;
	}
	@keyframes pagetop_txt_active_anime {
	  0% { opacity: 0; bottom:190px; }
	  30% { opacity: 0; bottom:190px; }
	  90% { opacity: 1; bottom:220px; }
	  100% { opacity: 1; bottom:220px; }
	}
	@-webkit-keyframes pagetop_txt_active_anime {
	  0% { opacity: 0; bottom:190px; }
	  30% { opacity: 0; bottom:190px; }
	  90% { opacity: 1; bottom:220px; }
	  100% { opacity: 1; bottom:220px; }
	}
	@-ms-keyframes pagetop_txt_active_anime {
	  0% { opacity: 0; bottom:190px; }
	  30% { opacity: 0; bottom:190px; }
	  90% { opacity: 1; bottom:220px; }
	  100% { opacity: 1; bottom:220px; }
	}
	


	.pagetop_off_anime {
		animation: pagetop_off_anime 1s forwards;
		-webkit-animation: pagetop_off_anime 1s forwards;
		-ms-animation: pagetop_off_anime 1s forwards;
	}
	@keyframes pagetop_off_anime {
	  0% { bottom: 0px;}
	  30% { bottom: 0px; }
	  90% { bottom: -400px; }
	  100% { bottom: -400px; }
	}
	@-webkit-keyframes pagetop_off_anime {
	  0% { bottom: 0px;}
	  30% { bottom: 0px; }
	  90% { bottom: -400px; }
	  100% { bottom: -400px; }
	}
	@-ms-keyframes pagetop_off_anime {
	  0% { bottom: 0px;}
	  30% { bottom: 0px; }
	  90% { bottom: -400px; }
	  100% { bottom: -400px; }
	}


	.pagetop_off_anime .txt{
		animation: pagetop_txt_off_anime 1s forwards;
		-webkit-animation: pagetop_txt_off_anime 1s forwards;
		-ms-animation: pagetop_txt_off_anime 1s forwards;
	}
	@keyframes pagetop_txt_off_anime {
	  0% { opacity: 1; bottom:220px;}
	  60% { opacity: 0;  bottom:190px;}
	  100% { opacity: 0;  bottom:190px;}
	}
	@-webkit-keyframes pagetop_txt_off_anime {
	  0% { opacity: 1; bottom:220px;}
	  60% { opacity: 0;  bottom:190px;}
	  100% { opacity: 0;  bottom:190px;}
	}
	@-ms-keyframes pagetop_txt_off_anime {
	  0% { opacity: 1; bottom:220px;}
	  60% { opacity: 0;  bottom:190px;}
	  100% { opacity: 0;  bottom:190px;}
	}









/* スマホ */
@media only screen and (max-width: 767px) {
	
	
.pc,
#header,
#nav
{
	display: none;
}

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


.area {
	width: 94%;
	margin: 0 auto;
}


body{
	width:100%;
	overflow-x:hidden;
	}



/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* ヘッダー */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#header_sp {
	padding: 15px;
	background:#fff;
}
	#header_sp h1 {
		width: 220px;
		line-height: 1;
	}
		#header_sp h1 img {
			width: 100%;
			height:auto;
		}





	#header_sp #MenuNav{
		display: none;
		clear: both;
		position:absolute;
		top:0px;
		left:0;
		width:90%;
		height:80%;
		z-index:1000;
	    background: rgba(92, 82, 192, 0.6);
		padding:0px 5% 3% 5%;
		padding-bottom:200px;
		}
		#header_sp #MenuNav .space{
			width:100%;
			height:90px;
			}
		#header_sp #MenuNav .inner{
			width:100%;
			height:100%;
			overflow-y: scroll;
			-webkit-overflow-scrolling:touch;
			overflow-x:hidden;
			}
	
	.heightFixed{
		position:fixed !important;
		width: 100%;
		height: 100%;
  		}


	#header_sp #MenuNav dl {
		/*background: url(../img/dot.gif) repeat-x bottom;*/
		border-bottom:1px solid #9e98da;
	}
	#header_sp #MenuNav dl.last {
		/*background: url(../img/dot.gif) repeat-x bottom;*/
		border-bottom:none !important;
	}
	#header_sp #MenuNav dl#recruit_menu {
		/*background: url(../img/dot.gif) repeat-x bottom;*/
		border-bottom:none;
	}
	
	#header_sp #MenuNav dl#examH_menu {
		background: none;
		border-bottom:1px solid #4d98cd;
	}
		#header_sp #MenuNav dl dt{
			background: #fff;
		}
			#header_sp #MenuNav dl dt a {
				padding: 12px 4% 10px 4%;
				display: block;
				color:#4F3C8B;
				font-weight: 600;
			
				position:relative;
			}
			
			
			
			
			
			#header_sp #MenuNav dl+dl+dl dt img{
				position:absolute;
				left:50%;
				top:50%;
				margin-left:-10%;
				margin-top:-5px;
				width:20%;
			}
			
			
			
			
			
		#header_sp #MenuNav dl dd {
			background: #4F3C8B;
		}
			#header_sp #MenuNav dl dd ul {
				margin:0 3%;
				padding: 5% 0;
			}
			#header_sp #MenuNav dl dd ul li{
				line-height:18px;
				border-top:1px solid #9e98da;
				border-bottom:1px solid #9e98da;
			}
			#header_sp #MenuNav dl dd ul li + li{
				border-top: none;
			}
			#header_sp #MenuNav dl dd ul li.cat{
				margin-top: 25px;
				padding: 5px 10px;
				background-color: #fff;
				box-sizing: border-box;
				color: #5e52c0;
				font-weight: 600;
				font-size: 14px;
				letter-spacing: 0.1em;
			}	
			#header_sp #MenuNav dl dd ul li.last{
				/* border-bottom:none; */

			}
				#header_sp #MenuNav dl dd ul li a{
					color:#fff;
					padding:3% 3%;
					display:block;
				}
			
			#header_sp #MenuNav .blogBtn {
				margin-top:3%;
			}
			
			
			#header_sp #MenuNav ul.other{
				padding:0 !important;
				margin-top:3%;
			}
			#header_sp #MenuNav ul.other li {
				float:left;
				width:50%;
			}
				#header_sp #MenuNav ul.other li img{
					width:100%;
				}
				
				
				
				
			#header_sp .spMega{
				margin-top:10px;
				}
				#header_sp .spMega dl{
					border-bottom:1px solid #fff !important;
					}
				#header_sp .spMega dl.last{
					border-bottom:none !important;
					}
				#header_sp .spMega dt a{
					background:#7b79e2;
					color:#fff !important;
					}
				#header_sp .spMega dd{
					background:#fff !important;
					}
				#header_sp .spMega dd li{
					background:#fff;
				
					}
					#header_sp .spMega dd li a{
						color:#000 !important;
					
						}
						
						
						
			/*coming soon*/	
			#header_sp #MenuNav dl dd ul li.coming span{
				opacity:0.5 !important;
				padding:3% 3%;
				display:block;
				color:#fff;
			}
			#header_sp #MenuNav .spMega dl .coming span{
				opacity:0.5 !important;
				padding:3% 3%;
				display:block;
				color:#000;
			}





				
				
			#header_sp .other li{
				width:90% !important;
				margin-bottom:5px;
				margin-left:5%;
			}
			#header_sp .other li a{
				width:100%;
				height:34px;
				line-height:34px;
				font-weight:bold;
				display:block;
				text-align:center;
			}
			#header_sp .other li.request
			 {
				background:#ff7b00;
				border-radius:3px;
			}
				#header_sp .other li.request a
				 {
					color:#fff;
				}
			#header_sp .other li.contact,
			#header_sp .other li.access
			 {
				background:#fff;
				border-radius:3px;
			}
				#header_sp .other li.contact a,
				#header_sp .other li.access a
				 {
					color:#4F3C8B;
				}
			
			
			#header_sp .other li.access
			 {
			}
			#header_sp .other li.search{
				display: none !important;
			}
			
			#header_sp .other li.emergency{
				background:url(../img/arrow_right04.png) no-repeat left center;
				padding-left:12px;
				background-size:8px !important;
				
			}
				#header_sp .other li.emergency a{
					font-size:12px;
					width:auto !important;
					color:#fff;
					text-align:left;
				}
		
				
				
				
				
				
	


.hamburger {
  display: block;
  position: absolute;
  /*top: 2.5%;*/
  right: 0%;
  z-index: 10000;
  padding: 12px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  -webkit-tap-highlight-color: transparent;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  
  padding-bottom:35px;
  background:url(../img/menu_txt.png) no-repeat 42% bottom;
  background-size:60%;
}
.hamburger__icon {
  position: relative;
  margin-top: 7px;
  margin-bottom: 7px;
}
.hamburger__icon, .hamburger__icon:before, .hamburger__icon:after {
  display: block;
  width: 30px;
  height: 1px;
  background-color: #4F3C8B;
  -moz-transition-property: background-color, -moz-transform;
  -o-transition-property: background-color, -o-transform;
  -webkit-transition-property: background-color, -webkit-transform;
  transition-property: background-color, transform;
  -moz-transition-duration: 0.4s;
  -o-transition-duration: 0.4s;
  -webkit-transition-duration: 0.4s;
  transition-duration: 0.4s;
}
.hamburger__icon:before, .hamburger__icon:after {
  position: absolute;
  content: "";
}
.hamburger__icon:before {
  top: -12px;
}
.hamburger__icon:after {
  top: 12px;
}
.hamburger.active{
  background: none;
  background:url(../img/menu_txt_close.png) no-repeat 42% bottom;
  background-size:60%;

}
.hamburger.active .hamburger__icon {
  background-color: transparent;
}
.hamburger.active .hamburger__icon:before, .hamburger.active .hamburger__icon:after {
  background-color: #fff;
}
.hamburger.active .hamburger__icon:before {
  -moz-transform: translateY(12px) rotate(45deg);
  -ms-transform: translateY(12px) rotate(45deg);
  -webkit-transform: translateY(12px) rotate(45deg);
  transform: translateY(12px) rotate(45deg);
}
.hamburger.active .hamburger__icon:after {
  -moz-transform: translateY(-12px) rotate(-45deg);
  -ms-transform: translateY(-12px) rotate(-45deg);
  -webkit-transform: translateY(-12px) rotate(-45deg);
  transform: translateY(-12px) rotate(-45deg);
}








/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* パンくずリスト  */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

#bread {
	padding-top: 10px;
	margin-bottom: 50px;
}
	#bread ul {
		font-size: 12px;
		float:left;
	}
	#bread ul li {
		float:left;
		margin-right: 10px;
		color: #000;
		padding-right:20px;
		background:url(../img/bread_arrow.png) no-repeat right center;
	}
	#bread ul li.last {
		background:none;
		margin-right: 0px;
		padding-right:0px;
		color:#4F3C8B;
	}
		#bread ul li a {
			text-decoration:underline;
		}





	
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 基本レイアウト */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

#wrapper {
	/*padding: 3%;*/
	margin-bottom: 10px;
	text-align: left;
	font-size: 12px;
}


.section {
	margin-bottom: 10%;
}



.shadowBtn a{
	text-align:center;
	color:#4F3C8B;
	letter-spacing:0.1em;
	font-weight:bold;
	box-shadow:3px 6px 30px 3px #e2e4e6;
	-moz-box-shadow:3px 6px 30px 3px #e2e4e6;
	-webkit-box-shadow:3px 6px 30px 3px #e2e4e6;
	min-width:115px;
	display:block;
	padding-left:15px;
	}
	





/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* コンテンツエリアとサイドバナーエリア */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
	
	
#wrapper .contentArea {
}
#wrapper .sideArea {
}
	#wrapper .sideArea ul{
		display:none;
	}
	
	#wrapper .sideArea p {
		width: 49%;
		float: left;
	}
	#wrapper .sideArea p:nth-child(2) {
		float: right;
	}

	#wrapper .sideArea p:last-child {
		width: 100%;
    	margin-top: 6px;
	}
	





/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* フッター */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
#footer {
	width: 100%;
	border-top:1px solid #c8c8c8;
	padding: 22px 0;
    background: #4F3C8B;
}
	#footer a{
		color:#fff !important;
	}


    #footer .footer_logo {
		margin-bottom:15px;
    }
		#footer .footer_logo img{
			width: 50px;
			float:left;
			margin-right:10px;
			margin-bottom:10px;
		}
		#footer .footer_logo p{
			color:#fff;
			font-size:86%;
			line-height:18px;
		}
	
	
	
    #footer dl {
		color:#fff;
    }
        #footer dl dt {
			margin-bottom:10px;
        }
			#footer dl dt p{
				text-align:left;
				line-height:18px;
			}
				#footer dl dt a{
					color:#fff;
					font-size: 72%;
					line-height:18px;
				}
				#footer dl dt p span{
					float:left;
					margin-left:20px;
					background: url(../../common/img/arrow_right02.gif) no-repeat left center;
					padding-left:12px;
				}
				#footer dl dt p:nth-child(2) span:nth-child(1) {
					background: url(../img/icon_pdf.gif) no-repeat left center;
					padding-left:15px;
				}
				
        #footer dl dd {
			font-size: 72%;
			text-align:center;
			padding-top: 10px;
		}

		
		




#topcontrol{
	z-index:1000;
	}





/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* 共通スタイル */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */




/* main
--------------------- */
#main {
    width: 100%;
	text-align:center;
}
	#main h2 img {
		max-width: 380px;
		height: auto;
	}





.titStyle01{
	color:#4F3C8B;
	font-size: 129%;
	margin-bottom:20px;
	line-height:28px;
	}






.titStyle02 {
	padding: 7px 13px 5px 13px;
	background:#4F3C8B;
	color:#fff;
	font-weight:bold;
	font-size:122%;
	margin-bottom:10px;
	letter-spacing:0.05em;
}




.titStyle03 {
	border-bottom: 2px solid #cecbec;
	padding: 10px 10px 10px 25px;
	color:#4F3C8B;
	font-weight:bold;
	font-size:122%;
	line-height: 1.4em;
	margin-bottom:15px;
	background: url(../img/icon_circle.gif) no-repeat left 0.9em;
	letter-spacing:0.05em;
}
.titStyle03 span{
	font-size:80%;
}






.tableStyle01 {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 15px;
	background:#fff;
}
	.tableStyle01 th {
		border: solid 1px #d9d9d9;
		border-left: none;
		border-right:none;
		background: #f6f2de;
		padding: 10px 10px;
		line-height: 1.4em;
		text-align:center;
		width:30%;
		font-weight:lighter;
	}
	
	.tableStyle01 .tx_center {
		text-align:center;
	}
	.tableStyle01 .tx_right {
		text-align:right;
	}
	.tableStyle01 td {
		border: solid 1px #d9d9d9;
		border-right: none;
		border-left: none !important;
		padding: 10px 10px;
		line-height:20px;
		letter-spacing:0.02em;
	}
		.tableStyle01 td .bold{
			font-weight:bold;
			color:#4F3C8B;
		}
		
	.tableStyle01 .bold{
		font-weight:bold;
		}
	.tableStyle01 p{
		margin-bottom:5px;
		}
	.tableStyle01 span.small{
		font-size:85%;
		}
	.tableStyle01 .purple {
		color:#4F3C8B;
		font-weight:bold;
	}








.tableStyle02 {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 15px;
	background:#fff;
}
.tableStyle02 .bgColor_red{
	background:#b12929;
	}
.tableStyle02 .bgColor01{
	background:#9b733a;
	}
.tableStyle02 .bgColor02{
	background:#c5733a;
	}
.tableStyle02 .bgColor_pink{
	background:#ffafac;
	}
.tableStyle02 .bgColor_blue{
	background:#7fbfe5;
	}
.tableStyle02 .bgColor_green{
	background:#92dbc2;
	}
.tableStyle02 .bgColor_orange{
	background:#ffad6b;
	}
.tableStyle02 .bgColor_aqua{
	background:#7ed1ea;
	}
	
		
	.tableStyle02 th {
		border: solid 1px #d3d3d3;
		padding: 2% 3%;
		line-height: 1.4em;
		color:#fff;
		font-weight:bold;
		text-align:center;
		white-space: nowrap;
	}
	.tableStyle02 td {
		border: solid 1px #d3d3d3;
		padding: 1% 2%;
		line-height:20px;
		letter-spacing:0.02em;
		font-weight:bold;
		text-align:center;
	}
	.tableStyle02 .line01 {
		background:#f1eee1;
		width:10px;
		padding: 2%;
		color:#000;
	}
	.tableStyle02 .tx_left {
		text-align:left;
	}
	.tableStyle02 .line02 {
		text-align:left;
	}
	.tableStyle02 .padding0 {
		padding:0;
	}
		










	.listStyle01 li{
		background: url(../../common/img/dot01.png) no-repeat left 8px;
		padding-left:15px;
		margin-bottom:5px;
		line-height:22px;
		}








/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* フォーム */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

#Form {
	background:#f1f1f1;
	padding:1% 5%;
	margin-bottom:5%;
}
	#Form span.red {
		color: #bd0000;
	}
	


#Form table {
	width: 100%;
	border-collapse: collapse;
}
	#Form table tr {
		background: url(../../common/img/dot_line.png) repeat-x left bottom;
	}
	#Form table tr.last {
		background: none;
	}
		#Form table tr th {
			padding: 3% 0px;
			line-height: 1.4em;
			font-weight: bold;
			width:35% !important;
		}
		#Form table tr.last th {
			padding: 20px 0px 20px 0;
		}
		#Form table tr td {
			padding: 20px 0;
			font-size: 84%;
			width:65% !important;
		}
		#Form table tr.last td {
			padding: 20px 0 20px 0;
		}
		#Form table tr td input {
			padding: 12px;
			border:1px solid #e0e0e0;
			margin-right:10px;
			font-size:14px;
			width:100%;
			box-sizing:border-box;
		}
		#Form table tr td.short input {
			margin-right:1%;
			width:49%;
			float:left;
		}
		#Form table tr td.short input+input {
			margin-right:0px;
		}
		#Form table tr td textarea {
			width:100% !important;
			border:1px solid #e0e0e0;
			font-size:14px;
			resize:vertical;
			box-sizing:border-box;
		}
		
		
	





.Form {
	background:#f1f1f1;
	padding:1% 5%;
	margin-bottom:5%;
}
	.Form span.red {
		color: #bd0000;
	}
	


.Form table {
	width: 100%;
	border-collapse: collapse;
}
	.Form table tr {
		background: url(../../common/img/dot_line.png) repeat-x left bottom;
	}
	.Form table tr.last {
		background: none;
	}
		.Form table tr th {
			padding: 3% 0px;
			line-height: 1.4em;
			font-weight: bold;
			width:35% !important;
		}
		.Form table tr.last th {
			padding: 20px 0px 20px 0;
		}
		.Form table tr td {
			padding: 20px 0;
			font-size: 84%;
			width:65% !important;
		}
		.Form table tr.last td {
			padding: 20px 0 20px 0;
		}
		.Form table tr td input {
			padding: 12px;
			border:1px solid #e0e0e0;
			margin-right:10px;
			font-size:14px;
			width:100%;
			box-sizing:border-box;
		}
		.Form table tr td.short input {
			margin-right:1%;
			width:49%;
			float:left;
		}
		.Form table tr td.short input+input {
			margin-right:0px;
		}
		.Form table tr td textarea {
			width:100% !important;
			border:1px solid #e0e0e0;
			font-size:14px;
			resize:vertical;
			box-sizing:border-box;
		}
		
		
	

.FormBtnArea {
}
	.FormBtnArea li.reset {
		float: left;
		width:40%;
	}
	.FormBtnArea li.confirm {
		float: right;
		width:57%;
	}
		.FormBtnArea li button {
			border: none !important;
			background: none;
			color:#fff;
			font-size:115%;
			font-weight:bold;
			letter-spacing:0.1em;
			border-radius:3px;
		}
		.FormBtnArea li.reset button {
			background:#808080;
			padding:15px 0;
			width:100%;
		}
		.FormBtnArea li.confirm button {
			background:#4F3C8B;
			padding:15px 0;
			width:100%;
		}













		
/* ++++++++++++++++++++++++++++++++++++++++++++++ */
/* トップへ戻るボタン */
/* ++++++++++++++++++++++++++++++++++++++++++++++ */

#pagetop{
	display:none;
	}
#pagetop_sp{
	position:fixed;
	right:0%;
	bottom:0px;
	z-index:1000;
	width: 70px;
	cursor:pointer;
	display:none;
}
	#pagetop_sp .pencil{
		position:absolute;
		bottom:0;
		right:3%;
		width:20%;
		}
	#pagetop_sp .txt{
		position:absolute;
		bottom:190px;
		right:0;
		opacity:0;
		}

	
	
}











#globalNavi li.menu_active ul li a{
	animation: menu_active 0.4s forwards;
	-webkit-animation: menu_active 0.4s forwards;
	-ms-animation: menu_active 0.4s forwards;
	
	}

@keyframes menu_active {
  0% { opacity: 0;}
  50% { opacity: 0;}
  100% { opacity: 1;}
}
@-webkit-keyframes menu_active {
  0% { opacity: 0;}
  50% { opacity: 0;}
  100% { opacity: 1;}
}
@-ms-keyframes menu_active {
  0% { opacity: 0;}
  50% { opacity: 0;}
  100% { opacity: 1;}
}








