@charset "UTF-8";

/****************************
  GLOBAL SETTING
    width : 940px
*****************************/

* {
	margin:  0;
	padding: 0; 
	line-height: 1;
}
ul { list-style: none; }
fieldset, img { border: none; }
table { border-collapse: collapse; }

a, :focus, :active {
	outline: none;
}
a:link, 
a:visited {
	text-decoration: none;
	color: #09f;
}
a:hover, 
a:active {
	text-decoration: underline;
}

#header a:hover, 
#header a:active, 
#nav a:hover, 
#nav a:active {
	text-decoration: none;
}

body {
	margin:  0;
	padding: 0;
	background-color: #fff;
	text-align: left;
	color: #333;
	font-family: 'Helvetica Neue', arial, 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	font-size: 80%;
	-webkit-font-smoothing: antialiased;
}

/****************************
  header
*****************************/

#header {
	margin:  0;
	padding: 8px 0 5px;
	background-color: #fff;
}

a#logo {
	float: left;
	margin:  0;
	padding: 0;
}
a#logo:before {
	font-family: 'kinomoto' !important;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	content: '\e605';
	color: #3b5998;
	font-size: 46px;
	padding-right: 2px;
}

a#nav_lang {
	float: right;
	margin:  10px 0 0 15px;
	padding: 7px 6px;
	border: 1px solid #c5cdd6;
	border-radius: 3px;
	background-color: #fff;
	color: #3269ad;
	font-size: 11px;
}
a#nav_lang:hover {
	border: 1px solid #bbb;
	background-color: #f9f9f9;
}
a#nav_lang:active {
	background-color: #eee;
}

.logo_rikunabi_pc {
	display: block;
	float: right;
	margin: 3px 15px 0 0;
	padding: 0;
}

.logo_rikunabi_pc > span.chiiki {
	vertical-align: 12px;
}

.logo_rikunabi_pc > span.mynavi {
	/* vertical-align: 6px; */
	vertical-align: 0px;
}

.logo_rikunabi_pc a {
	margin-left: 5px;
}

.logo_rikunabi_pc > .mynavi img {
	height: 42px;
	width: initial;
}

.logo_rikunabi_sp {
	display: none;
}

.logo_chiiki_kenin_kigyou {
	display: block;
	float: left;
	margin:  15px 0 0 15px;
	padding: 0;
}

@media (max-width: 767px) {
	.logo_rikunabi_pc {
		display: none;
	}

	.logo_rikunabi_sp {
		clear: both;
		display: block;
		width: 100%;
		margin:  0;
		padding: 0 10px 0 10px;
		text-align: left;
		line-height: 1;
	}

	.logo_rikunabi_sp > span {
		display: block;
		padding: 8px 0;
	}

	.logo_rikunabi_sp > a {
		padding: 8px 10px 8px 0;
	}

	.logo_rikunabi_sp > span + a > img {
		height: 42px;
		width: initial;
	}

	.logo_chiiki_kenin_kigyou {
		clear: both;
		float: none;
		margin:  5px 0 0 10px;
	}
}

/* search */

#formsearch {
	float: right;
	margin:  10px 0 0 0;
	padding: 0;
	vertical-align: top;
	position: relative;
}
#search_words {
	outline: none;
	display: inline-block;
/* 	width: 300px; */
	width: 160px;
	margin:  0;
	padding: 5px 32px 5px 5px;
	border: 1px solid #e3e3e3;
	border-radius: 2px;
	background-color: #eae8e8;
	color: #000;
	font-size: 14px;
	line-height: 18px;
	-webkit-appearance: none;
	appearance: none;
}
#search_words:focus {
	border: 1px solid #aaa;
	box-shadow: 0 0 4px rgba(0, 0, 0, .4);
}
#btn_search {
	position: absolute;
	right: 0px;
	top: 0px;
	display: inline;
	-webkit-appearance: button;
	appearance: button;
	user-select: none;
	outline: none;
	margin:  0;
	padding: 0 10px;
	border: none;
	background: none;
	color: #000;
	font-size: 16px;
	line-height: 30px;
	cursor: pointer;
}

/****************************
  nav
*****************************/

#wrapper_nav {
	width: 100%;
	border-bottom: 1px solid #fff;
	background: linear-gradient(to bottom, #36518a,#3f60a4);
}

#nav {
	clear: both;
	width: 940px;
	margin-right: auto;
	margin-left:  auto;
}

.fixed {
	position: fixed;
	z-index: 7999;
	top:  0;
	left: 0;
}

ul#ul_nav_global {
	margin:  0;
	padding: 0;
	text-align: left;
}
ul#ul_nav_global > li {
	display: inline-block;
	margin:  0;
	padding: 0;
	vertical-align: middle;
	font-size: 13px;
	line-height: 1;
}

ul#ul_nav_global > li > a {
	display: block;
	margin:  0;
	padding: 12px 19px;
	color: #fff;
	-webkit-transition: all 0.2s;
	   -moz-transition: all 0.2s;
	        transition: all 0.2s;
}

ul#ul_nav_global > li > a:hover, 
ul#ul_nav_global > li > a.active {
	background: linear-gradient(to bottom, #000,#555);
}

/****************************
  footer
*****************************/

#footer {
	clear: both;
	margin:  2em 0 0;
	padding: 0 0 1.5em;
	background-color: #eee;
}
#footer, 
#footer a {
	color: #444;
	line-height: 1.5;
}

#footer > .container {
	display: table;
}
#footer > .container > div {
	display: table-cell;
	padding: 1.5em 1em 0 0;
	vertical-align: top;
}
#footer > .container > div.footer_nav {
	padding-right: 0;
	text-align: right;
}

table.table_footer {
	margin:  1em 0 0;
	padding: 0;
}
table.table_footer th, 
table.table_footer td {
	margin:  0;
	padding: 0 1.5em 0 0;
	text-align: left;
	color: #555;
	font-weight: normal;
	font-size: 1em;
	line-height: 1.5;
}

#footer div.footer_nav > ul > li {
	display: inline-block;
	margin:  0;
	padding: 0 0 .5em 1.5em;
	font-size: 1em;
	line-height: 1;
}

#toTop {
	display: none;
	position: fixed;
	z-index: 1000;
	right: 1em;
	bottom: 0;
	width:  3.5em;
	height: 2.7em;
	margin:  0;
	padding: .5em 0 0;
	background-color: rgba(0, 0, 0, .6);
	text-align: center;
	color: #fff;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 4px 4px 0 0;
	-webkit-transition: all 0.2s;
	   -moz-transition: all 0.2s;
	        transition: all 0.2s;
}
#toTop:before {
	font-family: 'fontawesome';
	content: '\f077';
}
a#toTop:hover {
	height: 2.9em;
}

/****************************
  responsive
*****************************/

.container {
	margin-right: auto;
	margin-left:  auto;
	padding-right: 15px;
	padding-left:  15px;
}

@media (min-width: 940px) {
	.container {
		width: 940px;
		padding-right: 0;
		padding-left:  0;
	}
}

.container:before,
.container:after {
	display: table;
	content: " ";
}
.container:after {
	clear: both;
}

@media (max-width: 767px) {
	#header > .container {
		padding-right: 10px;
		padding-left:  10px;
	}

	a#logo {
		margin-left: 5px;
	}

	a#logo:before {
		font-size: 44px;
		padding-right: 1px;
	}

	a#nav_lang {
		margin-right: 5px;
		margin-left:  0;
	}

	#formsearch {
		clear: both;
		float: none;
		width: 96%;
		margin: 10px auto;
		text-align: center;
	}

	#search_words {
		width: 100%;
	}

	/* nav */
	#nav {
		width: auto;
	}

	ul#ul_nav_global {
		display: none;
		text-align: left;
	}
	ul#ul_nav_global > li {
		display: block;
		border-top: 1px solid #fff;
	}
	ul#ul_nav_global > li > a {
		font-weight: normal;
		font-size: 14px;
	}

	#menu-trigger,
	#menu-trigger span {
		transition: all .4s;
		box-sizing: border-box;
	}
	#menu-trigger {
		float: right;
		width:  26px;
		height: 20px;
		margin: 13px 5px 20px 15px;
		position: relative;
	}
	#menu-trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 3px;
		background-color: #3b5998;
	}
	#menu-trigger span:nth-of-type(1) {
		top: 0;
	}
	#menu-trigger span:nth-of-type(2) {
		top: 8px;
	}
	#menu-trigger span:nth-of-type(3) {
		bottom: 0;
	}
	#menu-trigger:not(.active):hover span:nth-of-type(1) {
		top: -2px;
	}
	#menu-trigger:not(.active):hover span:nth-of-type(3) {
		bottom: -2px;
	}
	#menu-trigger.active span:nth-of-type(1) {
		-webkit-transform: translateY(8px) rotate(-45deg);
		transform: translateY(8px) rotate(-45deg);
	}
	#menu-trigger.active span:nth-of-type(2) {
		opacity: 0;
	}
	#menu-trigger.active span:nth-of-type(3) {
		-webkit-transform: translateY(-8px) rotate(45deg);
		transform: translateY(-8px) rotate(45deg);
	}
}
