@charset "utf-8";


/************************************************************
	Common
*************************************************************/
a { -webkit-tap-highlight-color:rgba(0, 0, 0, 0)!important; } 

/*.mm-menu {
    -webkit-overflow-scrolling: auto;
}*/

/************************************************************
	Fixed（Gnav上部固定）
*************************************************************/
nav#global.fixed {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10000;
}

/************************************************************
	Display
*************************************************************/
#page nav {
	display: none;
}

	@media all and (min-width: 769px){
		nav#global {
			display: block !important;
		}
		/* mmenu 開閉 非表示 */
		header#mmenu{
			display: none;
		}
		nav.bottom {
			display: block !important;
		}
		.slidemenu-close {
			display: none;
		}
	}
	@media screen and (max-width: 768px){
		nav.bottom {
			display: block !important;
		}
	}


/********************************************************
	Global Navigation
*********************************************************/

	/********************************************************
		jQuery.mmenu CSS // Mobile
	*********************************************************/
	@media only screen and (max-width: 768px){
		/* Basic
		------------------------------------------------------------*/
		/* jquery.mmenu.all.css */	

		/* Open Button
		------------------------------------------------------------*/
		header#mmenu {
			background: #013c80;
			height: 50px;
		}
		header#mmenu > a {
			display: block;
			width: 100%;
			color: #fff;
			text-decoration: none;
		}
		header#mmenu > a i {
			padding: 0 0.3em;
			font-size: 1.5em;
			line-height: 50px !important;
			-webkit-font-smoothing: antialiased;
			-moz-osx-font-smoothing: grayscale;
			vertical-align: middle !important;
		}

		/* Icon Example
		------------------------------------------------------------*/
		.mm-menu li.menu-item-home:first-of-type a:before {
			margin-right: 0.4em;
			font-family: FontAwesome;
			font-style: normal;
			font-weight: normal;
			line-height: 1;
			-webkit-font-smoothing: antialiased;
			-moz-osx-font-smoothing: grayscale;
			content: "\f015";
		}

		/* Theme Black Text Color（Defalt Theme Overwrite）
		------------------------------------------------------------*/
		.mm-menu.mm-theme-black { color: rgba(255, 255, 255, 1) !important;} /* default 0.6 */
		.mm-menu.mm-theme-black .mm-navbar > *, .mm-menu.mm-theme-black .mm-navbar a { color: rgba(255, 255, 255, 1) !important;} /* default 0.4 */
		.mm-menu.mm-theme-black em.mm-counter { color: rgba(255, 255, 255, 1) !important;} /* default 0.4 */
		.mm-menu.mm-theme-black .mm-listview > li .mm-prev::before, .mm-menu.mm-theme-black .mm-listview > li .mm-next::after, .mm-menu.mm-theme-black .mm-listview > li .mm-arrow::after {
			border-color: rgba(255, 255, 255, 1) !important; /* default 0.4 */
		}

		/* bottom
		------------------------------------------------------------*/
		.mm-navbar-bottom {
			height: 80px !important;
		}

		/* Background Color (Overwrite) ※Default Color #f3f3f3
		------------------------------------------------------------*/
	   /*nav#menu {
		  background-color: #323849;
	   }*/
	}


	/********************************************************
		jQuery Superfish // Desktop
	*********************************************************/
	@media all and (min-width: 769px){
		/* Basic
		------------------------------------------------------------*/
		nav#global {
			background: #013c80 none repeat scroll 0 0;
			padding: 0;
			white-space: nowrap;
			width: 100%;
		}
		nav#global ul#dropdown {
			margin: 0 auto;
			width: 100%;
			font-size: 100%;
		}
		nav#global ul ul { /* ie,chrome loading bug fix */
			display:none
		}
		.sf-menu,
		.sf-menu * {
			margin: 0;
			padding: 0;
			list-style: none;
			text-align: center;
		}
		.sf-menu ul {
			display: none;
			left: 0;
			position: absolute;
			top: 100%;
			z-index: 99;
		}
		.sf-menu li {
			position: relative;
		}
		.sf-menu > li {
			border-left: 1px solid #4E77A6;
			box-sizing: border-box;
			display: block;
			float: left;
			margin: 0;
			text-align: center;
			width: 14.28%;
		}
		.sf-menu > li:last-of-type {
			border-right: 1px solid #4E77A6;
		}
		.sf-menu li:hover > ul,
		.sf-menu li.sfHover > ul {
			display: block;
		}
		.sf-menu a {
			display: block;
			position: relative;
		}
		.sf-menu ul ul {
			top: 0;
			left: 100%;
		}
		
		/* Navigation
		------------------------------------------------------------*/
		/*.sf-menu {
			float: left;
			margin-bottom: 1em;
		}*/
		.sf-menu ul {
			min-width: 12em; /* allow long menu items to determine submenu width */
			*width: 12em; /* no auto sub width for IE7, see white-space comment below */
		}
		.sf-menu li {
			/*background: #FFF;*/
			white-space: nowrap; /* no need for Supersubs plugin */
			*white-space: normal; /* ...unless you support IE7 (let it wrap) */
			-webkit-transition: background .2s;
			transition: background .2s;
		}
	
		/* Second - Third Level
		------------------------------------------------------------*/
		.sub-menu li {
			text-align: left;
		}
		.sf-menu ul li {
			background: #0159ba none repeat scroll 0 0;
			border-bottom: 1px solid #fff;
		}
		.sf-menu ul li a {
			padding: 0 1rem;
		}
		.sf-menu ul li:last-of-type {
			border-bottom:none;
		}
			.sf-menu > li > ul > li:first-of-type {
				margin-top: 0;
			}
			.sf-menu ul li a {
				font-size: 1.3rem;
			}
		.sf-menu ul ul li {
			background: #1A8EE6;/* grandchild */
		}
		
		/* Link
		------------------------------------------------------------*/
		.sf-menu a {
			color: #fff;
			display: block;
			font-size: 1.4rem;
			font-weight: bold;
			height: 5.5rem;
			line-height: 5.5rem;
			text-decoration: none;
		}
		.sf-menu .faml:after {
			color: #fff;
			content:"\f078";
			font-size: 1.2rem;
			margin-top: -7px;
			position: absolute;
			right: 8%;
			top: 50%;
		}
			.sf-menu a:hover {
				background:#FCCF00;
				color: #003B7F;
				-moz-transition: 0.3s ease-in-out;
				-webkit-transition: 0.3s ease-in-out;
				transition: 0.3s ease-in-out;
			}
		.sf-menu ul a {
			padding: 0;
			/*border-top: 1px solid #fff;
			border-top: 1px solid rgba(255,255,255,.5);*/
		}
		/*.sf-menu li:hover,
		.sf-menu li.sfHover,
		.sf-menu li.current-menu-item a,
		.sf-menu li.current-menu-parent a {
			border-bottom: 2px solid #FFF;
			white-space: nowrap;
			*white-space: normal;
			-webkit-transition: none;
			transition: none;
		}*/
		.sf-menu > li {
		}
		.sf-menu > li.current-menu-item a,
		.sf-menu > li.current-menu-parent a {
			background:#9ddcfd;
			color: #003c7e;
		}
		.sf-menu li.nocurrent a,
		.sf-menu li.nocurrent a {
			background:inherit;
			color: #fff;
		}
		.sf-menu li.nocurrent a:hover,
		.sf-menu li.nocurrent a:hover {
			background:#FCCF00;
			color: #003B7F;
			-moz-transition: 0.3s ease-in-out;
			-webkit-transition: 0.3s ease-in-out;
			transition: 0.3s ease-in-out;
		}
		.sf-menu > li a:hover {
			/*background: #CCC;
			-webkit-border-radius: 5px;
			-ms-border-radius: 5px;
			-o-border-radius: 5px;
			border-radius: 5px;*/
		}
		/*重複回避(現在地)*/
		.sf-menu > li.current-menu-item:hover,
		.sf-menu > li.current-menu-parent:hover {
			/*-webkit-border-radius: 5px;
			-ms-border-radius: 5px;
			-o-bodder-radius: 5px;
			border-radius: 5px;
			background: #CCC;*/
			/*border-bottom: 2px solid #FFF !important;*/
		}

	}

	@media only screen and (min-width: 1000px){
		nav#global ul#dropdown {
			width: 1000px;
		}
	}

	@media only screen and (min-width: 768px) and (max-width: 999px) {
		nav#global ul#dropdown {
			font-size: 90%;
		}
		.sf-menu > li {
			margin: 0;
		}
		.sf-menu a {
			font-size: 1.2rem;
		}
	}

	@media only print {
		nav#global {
			width: 960px !important;/*★印刷幅★*/
			margin: 0 auto !important;
		}
	}


/************************************************************
	Footer Nabigation
*************************************************************/
	/* Basic
	------------------------------------------------------------*/
	footer {
		margin-top: 1.5em;
		padding: 1.5em 0 0;
		width: 100%;
		background: #013C80;
	}
		footer > div {
			margin: 0 auto 4rem;
			width: 1000px;
		}
		footer > p {
			margin: 0 auto 6rem;
			text-align:center;
			color:#FFF;
		}
			footer > p a ,
			footer > p a:hover {
				color:#FFF;
			}
	
		@media only screen and (min-width: 768px) and (max-width: 999px) {
			footer > div {
				width: 97%;
			}
			footer > p {
				margin: 0 auto 4rem;
			}
		}
		@media screen and (max-width: 768px){
			footer {
				padding: 0;
			}
				footer > div {
				margin: 0 auto 2rem;
					width: 100%;
				}
				footer > p {
					margin: 0 auto 2rem;
				}
		}

	/* Menu
	------------------------------------------------------------*/
	footer > div > div#menu1 {
		float: left;
		width: 65%;
	}
	footer > div > div#menu2 {
		float: right;
		width: 35%;
	}
	@media only screen and (min-width: 768px) and (max-width: 999px) {
		footer > div > div#menu1 {
			float: none;
			width: 100%;
			margin-bottom: 1em;
		}
		footer > div > div#menu2 {
			float: none;
			width: 100%;
		}
	}
	@media only screen and (max-width: 767px){
		footer > div > div#menu1 {
			float: none;
			width: 100%;
			margin-bottom: 1em;
		}
		footer > div > div#menu2 {
			float: none;
			width: 100%;
		}
	}

	/* Typography
	------------------------------------------------------------*/
	footer > div > div h3 {
		margin-bottom: 0.5em;
		font-weight: bold;
	}
	footer > div > div ul li a {
		text-decoration: none !important;
		color: #FFF !important;
	}
	footer > div > div ul li a:hover {
		text-decoration: underline !important;
	}

	/* Menu1
	------------------------------------------------------------*/
	footer > div > div#menu1 nav.bottom {
	}
		footer > div > div#menu1 nav.bottom ul {
		}
			footer > div > div#menu1 nav.bottom > ul > li {
				float: left;
				margin-bottom: 1rem;
				margin-right: 5%;
				width: 28%;
				font-size:1.3rem;
			}
			footer > div > div#menu1 nav.bottom > ul > li.width100 {
				width: 100%;
			}
			footer > div > div#menu1 nav.bottom > ul > li:before {
				color: #fdd723;
				content: "\f0a9";
				font-family: FontAwesome;
				font-style: normal;
				font-weight: normal;
				line-height: 1;
				margin-right: 0.5rem;
			}
			footer > div > div#menu1 nav.bottom > ul > li > ul > li {
				font-size:1.4rem;
				margin-left:1rem
			}
			footer > div > div#menu1 nav.bottom > ul > li > ul > li:before {
				color: #fdd723;
				content: "┗";
				margin-right: 0.5rem;
			}

		@media only screen and (min-width: 768px) and (max-width: 999px) {
		}
		@media only screen and (max-width: 767px){
			footer > div > div#menu1 nav.bottom > ul > li {
				background: #fff none repeat scroll 0 0;
				border-top: 1px solid #013c80;
				box-sizing: border-box;
				float: left;
				line-height: 4rem;
				margin: 0;
				padding: 0 1rem;
				text-align: left;
				width: 50%;
			}
			footer > div > div#menu1 nav.bottom > ul > li:nth-of-type(even) {
				border-left: 1px solid #013c80;
			}
			footer > div > div#menu1 nav.bottom > ul > li > ul {
				background: #efefef none repeat scroll 0 0;
				padding:1rem;
				margin-bottom:1rem;
			}
			footer > div > div#menu1 nav.bottom > ul > li > ul > li {
				line-height: 2;
				margin-left: 0;
			}
			footer > div > div#menu1 nav.bottom > ul > li:before ,
			footer > div > div#menu1 nav.bottom > ul > li > ul > li:before {
				content: none;
				margin-right: 0;
			}
				footer > div > div#menu1 nav.bottom ul li a {
					color: #013c80 !important;
					display: block;
				}
		}

	/* Menu2
	------------------------------------------------------------*/
	footer > div > div#menu2 nav.bottom {
	}
		footer > div > div#menu2 nav.bottom ul {
			text-align: center;
		}
			footer > div > div#menu2 nav.bottom ul li {
				border: 1px solid #fff;
				box-sizing: border-box;
				display: inline-block;
				height: 50px;
				line-height: 5rem;
				margin: 0.7rem;
				text-align: center;
				width: 150px;
			}
			footer > div > div#menu2 nav.bottom ul li a {
				display: block;
				box-sizing: border-box;
			}
			footer > div > div#menu2 nav.bottom ul li a:hover {
				background: #FFF ;
				color:#013C80!important;
				transition: all 0.3s ease 0s;
			}
			footer > div > div#menu2 nav.bottom ul li.recruit {
				width: 95%;
				background: #ffdb33;
				border: none;
				max-width: 320px;
				margin: 0;
			}
			footer > div > div#menu2 nav.bottom ul li.recruit a {
				color: #013c80!important;
				font-weight: bold;
			}
			footer > div > div#menu2 nav.bottom ul li.recruit a:hover {
			}
		@media only screen and (min-width: 768px) and (max-width: 999px) {
			footer > div > div#menu2 nav.bottom ul li.recruit {
				max-width: 655px;
			}
		}
		@media only screen and (max-width: 767px){
			footer > div > div#menu2 nav.bottom ul li {
				height: 40px;
				line-height: 4rem;
				margin: 2%;
				width: 45%;
			}
			footer > div > div#menu2 nav.bottom ul li.recruit {
				max-width: none;
				margin: 0 2.5%;
			}
		}

	/* COPYRIGHT
	------------------------------------------------------------*/
	footer > small {
		display: block;
		padding: 0.5em 0;
		background: #FFDB33;
		color: #013C80;
		font-size: 78%;
		text-align: center;
	}
		@media only screen and (max-width: 767px){
			footer small {
				font-size: 65%;
			}
		}


/************************************************************
	PAGE TOP
*************************************************************/
#page-top {
	position: fixed;
	bottom: 1em;
	right: 1em;
	font-size: 90%;
}
	#page-top a {
		background: #fdd723 none repeat scroll 0 0;
		border: 6px solid #013c80;
		border-radius: 4rem;
		color: #013c80;
		display: block;
		font-size: 1.4rem;
		font-weight: bold;
		height: 4rem;
		line-height: 1.5;
		padding: 1em;
		text-align: center;
		text-decoration: none;
		width: 4rem;
	}
		#page-top a:hover {
			background: #013c80;
			-moz-transition: 0.5s ease-in-out;
			-webkit-transition: 0.5s ease-in-out;
			transition: 0.5s ease-in-out;
			text-decoration: none;
			color: #fdd723;
		}
			#page-top a span {
				display: block;
			}

	@media only screen and (max-width: 767px){
		#page-top {
			bottom: 2em;
			right: 0.5em;
		}
			#page-top a {
				font-size: 1.2rem;
				height: 3rem;
				line-height: 3rem;
				width: 3rem;
			}
				#page-top a span {
					display: none;
				}
	}

