@charset "UTF-8";


/*--------------------------------------------------------------------
 *	body
 *--------------------------------------------------------------------*/

body {
	background: transparent url('../images/body_bg.gif') repeat-x left top;
	color: #141414;
	min-width:1000px;
	width:100%;
}


/*--------------------------------------------------------------------
 *	header
 *--------------------------------------------------------------------*/

div#header {
	width: 100%;
	margin: 0 auto 17px;
	z-index: 40;
}

div#header div#header_contents {
	margin: 0 0 3px 0;
}

div#header h1 {
	float: left;
	margin: 7px 0 0 10px;
	_margin-left: 5px;
	width: 297px;
}

div#header div#utility {
	float: right;
	width: 384px;
	margin: 14px 10px 0 0;
	_margin-right: 5px;
	padding: 0;
}

div#header div#utility div#utility_tool {
	margin: 0 18px 0 0;
	padding: 0;
	float: left;
	font-size: 75%;
	width: 164px;
	background: transparent url("../images/utility_member_bg.gif") no-repeat scroll left bottom;
}

div#header div#utility div#utility_tool p {
	margin: 0;
	padding: 10px 7px 11px ;
	background: transparent url("../images/utility_member_top.gif") no-repeat scroll left top;
}

div#header div#utility div#utility_member {
	/*margin: 0 18px 0 0;*/
	margin: 0;
	padding: 0;
	float: left;
	font-size: 75%;
	width: 144px;
	height: 64px;
	/* background: transparent url("../images/utility_member_bg.gif") no-repeat scroll left bottom; */
}
div#header div#utility div#utility_member p {
	margin: 0;
}
div#header div#utility div#utility_member a {
	display: block;
	padding: 0;
	text-align: center;
	font-size: 1.6em;
	font-weight: bold;
}

div#header div#utility div#utility_member a#login_btn {
	padding: 0px 2px 0px 24px;
	height: 28px;
	line-height: 30px;
	margin-bottom: 6px;
    border: solid 1px #2b91ab;
	color: white;
	background:#2b91ab  url(../images/mypagekey_hover.png) no-repeat 10px;
}
div#header div#utility div#utility_member a#login_btn:hover {
	opacity: 0.7;
}
div#header div#utility div#utility_member a#mypage_btn {
	padding: 0px 2px 0px 16px;
	height: 28px;
	line-height: 30px;
	margin: 0;
	border: solid 1px #eeaa00;
	color: white;
	background:#eeaa00  url(../images/mypagekey_hover.png) no-repeat 10px;
}
div#header div#utility div#utility_member a#mypage_btn:hover {
	opacity: 0.7;
	
}
div#header div#utility div#utility_member a  {
	text-decoration: none;
}

div#header div#utility form {
	margin: 0;
	padding: 0;
}

div#header div#utility div#utility_search {
	margin: 0 0 0;
	padding: 0 0 10px 0;
	float: right;
	width: 216px;
	background: transparent url("../images/utility_search_bg.gif") no-repeat scroll left bottom;
}

div#header div#utility div#utility_search p {
	margin: 0 0 3px;
	padding: 0;
}

div#header div#utility div#utility_search input#search_keyword {
	border: 1px solid #cccccc;
	float: left;
	height: 20px;
	margin: 0 5px 0 9px;
	padding-right: 3px;
	padding-left: 3px;
	width: 150px;
}

div#header div#utility div#utility_search input#searchBtton {
	float: left;
	margin-right: 11px;
}

#utility_search2 {
	position: relative;
	float: right;
	width: 216px;
	height: 48px;
	padding: 18px 7px 0 7px;
/* 	border: 1px solid #ccc;
	background-color: #efefef; */
}
#utility_search2 p {
	margin: 0 0 -6px 0;
}
#utility_search2 table {
	margin: 0;
	border: none;
}
#utility_search2 table td {
	border: none;
	padding: 0 !important;
}
#utility_search2 .gsc-search-box-tools .gsc-search-box .gsc-input {
	padding: 5px 0 !important;
	font-size: 0.9rem;
}
div#header div#utility #to_english {
	position: absolute;
	top: 0px;
    left: 109px;
	width: 100px;
	margin: 0 12px ;
	border: 1px solid #2b91ab;
	background: #fff;
	text-align: center;
	font-size: 130%;
}
div#header div#utility #to_english a {
	text-decoration: none;
}
div#header div#utility #to_english a:hover {
	opacity: 0.8;
}
div#header div#gmenu {
	margin: 0;
	padding: 0;
	position: absolute;
	position: relative;
	z-index: 999;
}

div#header div#gmenu ul {
	height: 40px;
	position: relative;
	margin: 0 10px 0 10px;
	z-index: 50;
}

div#header div#gmenu ul li {
	list-style-type: none;
	position: absolute;
	margin: 0;
	padding-left: 2px;
	background: transparent url("../images/gmenu_line.gif") repeat-x scroll left top;
	text-indent: -9999px;
	zoom: 1;
}

div#header div#gmenu ul li a {
	display: block;
	padding: 0;
	height: 40px;
	text-decoration: none;
	white-space:nowrap;
	overflow:hidden;
	zoom: 1;
}

div#header div#gmenu ul li#gmenu_home {
	padding-left: 0;
	left: 0;
	width: 6%;
}

div#header div#gmenu ul li#gmenu_info {
	left: 6%;
	width: 7%;
}

div#header div#gmenu ul li#gmenu_proposal {
	left: 13%;
	width: 7%;
}

div#header div#gmenu ul li#gmenu_kensyu {
	left: 20%;
	width: 7%;
}

div#header div#gmenu ul li#gmenu_josei {
	left: 27%;
	width: 7%;
}

div#header div#gmenu ul li#gmenu_gakujutsu {
	left: 34%;
	width: 8%;
}

div#header div#gmenu ul li#gmenu_international {
	left: 42%;
	width: 9%;
}

div#header div#gmenu ul li#gmenu_gakkai {
	left: 51%;
	width: 8%;
}

div#header div#gmenu ul li#gmenu_shukai_tihou {
	left: 59%;
	width: 9%;
}

div#header div#gmenu ul li#gmenu_senmoni {
	left: 68%;
	width: 8%;
}

div#header div#gmenu ul li#gmenu_ninteii {
	left: 76%;
	width: 8%;
}

div#header div#gmenu ul li#gmenu_publications {
	left: 84%;
	width: 8%;
}

div#header div#gmenu ul li#gmenu_about {
	left: 91.8%;
	width: 8%;
}

div#header div#gmenu ul li#gmenu_home a {
	background: transparent url("../images/gmenu_01.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_info a {
	background: transparent url("../images/gmenu_02.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_proposal a {
	background: transparent url("../images/gmenu_03.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_kensyu a {
	background: transparent url("../images/gmenu_04.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_josei a {
	background: transparent url("../images/gmenu_05.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_gakujutsu a {
	background: transparent url("../images/gmenu_06.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_international a {
	background: transparent url("../images/gmenu_07.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_gakkai a {
	background: transparent url("../images/gmenu_13.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_shukai_tihou a {
	background: transparent url("../images/gmenu_08.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_senmoni a {
	background: transparent url("../images/gmenu_09.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_ninteii a {
	background: transparent url("../images/gmenu_14.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_publications a {
	background: transparent url("../images/gmenu_10.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_coi a {
	background: transparent url("../images/gmenu_11.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li#gmenu_about a {
	background: transparent url("../images/gmenu_12.gif") no-repeat scroll center top;
}

div#header div#gmenu ul li a:hover {
	background-position: center bottom !important;
}

div#header div#gmenu ul li.current a {
	background-position: center bottom !important;
}

div#header div#gmenu ul ul {
	display: none;
	width: 200px;
	height: auto;
	position: absolute;
	top: 100%;
	left: 0;
	margin: 0;
	padding: 0 10px;
	background: transparent url('../images/gmenu_sub_bg.png') repeat left top;
	background-color: #ffffff;
	border: 1px solid #e7e7e7;
}

div#header div#gmenu ul li#gmenu_about ul {
	width: 190px;
	left: 0;
}

div#header div#gmenu ul ul li {
	position: relative;
	background: #fff8f8;
	color: #030303;
	margin: 5px 0;
	padding: 0 0 0 10px;
	background: transparent url('../images/arrow_01.gif') no-repeat left 0.4em;
}

div#header div#gmenu ul ul li a:link, 
div#header div#gmenu ul ul li a:visited {
	color: #000000;
}

div#header div#gmenu ul ul li a:hover,
div#header div#gmenu ul ul li a:active {
	color: #2b91ab;
}

div#header div#gmenu ul li#gmenu_home ul li a,
div#header div#gmenu ul li#gmenu_info ul li a,
div#header div#gmenu ul li#gmenu_proposal ul li a,
div#header div#gmenu ul li#gmenu_kensyu ul li a,
div#header div#gmenu ul li#gmenu_josei ul li a,
div#header div#gmenu ul li#gmenu_gakujutsu ul li a,
div#header div#gmenu ul li#gmenu_international ul li a,
div#header div#gmenu ul li#gmenu_gakkai ul li a,
div#header div#gmenu ul li#gmenu_shukai_tihou ul li a,
div#header div#gmenu ul li#gmenu_senmoni ul li a,
div#header div#gmenu ul li#gmenu_publications ul li a,
div#header div#gmenu ul li#gmenu_coi ul li a,
div#header div#gmenu ul li#gmenu_about ul li a,
div#header div#gmenu ul ul li a {
	background-image: none;
	height: auto;
	text-indent: 0;
	white-space:normal;
	overflow:visible;
	zoom: 1;
}

* div#header div#gmenu ul ul li
*+div#header div#gmenu ul ul li {
	display: inline;
	width: 100%;
	margin: 0.5em 0;
}


/*--------------------------------------------------------------------
 *	main
 *--------------------------------------------------------------------*/

div#container {
	margin: 0 10px 5px;
	padding: 0 0;
	z-index: 1;
}

div#container div#main {
	float: left;
	width: 100%;
	min-width: 545px;
	position: relative;
	margin-right: -185px;
	z-index: 10;
}

div#container div#main div#contents {
	margin: 0 235px 0 235px;
	z-index: 20;
}

div#container div#smenu_left {
	float: left;
	margin-right: -220px;
	width: 220px;
	position: relative;
	z-index: 30;
}

div#container div#smenu_left ul#l_smenu_list {
	list-style-type: none;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}

div#container div#smenu_left ul#l_smenu_list li {
	margin: 0 0 0 0;
	padding: 0 0 8px 0 ;
}

div#container div#smenu_left ul#l_smenu_list li#smenu_left_senmoni {
	float: left;
	margin-right: 10px;
}
div#container div#smenu_left_kyu {
	float: left;
	margin-right: -220px;
	width: 220px;
	position: relative;
	z-index: 30;
}

div#container div#smenu_left_kyu ul#l_smenu_list_kyu {
	list-style-type: none;
	margin: 18.6em 0 0 0;
	padding: 0 0 0 0;
}

div#container div#smenu_left_kyu ul#l_smenu_list_kyu li {
	margin: 0 0 0 0;
	padding: 0 0 8px 0 ;
}

div#container div#smenu_right {
	float: left;
	width: 220px;
	margin-left: -35px;
	position: relative;
	z-index: 30;
}

div#container div#smenu_left ul#l_smenu_list_about {
	list-style-type: none;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}
div#container div#smenu_left ul#l_smenu_list li .ttl {
	margin: 0 0 1em 0;
	border: 1px solid #2b91ab;
	font-weight: bold;
	color: #2b91ab;
	text-align: center;
	font-size: 1rem;
}
div#container div#smenu_left ul#l_smenu_list_about li {
	list-style: none outside;
	margin: 5px 0 0 0;
	padding: 0 0 0 1.5em;
	line-height: 130%;
	background: url('../images/arrow_02.gif') no-repeat left 0.4em;
}

div#container div#smenu_left_about {
	float: left;
	margin-right: -220px;
	width: 220px;
	position: relative;
	z-index: 30;
}

div#container div#smenu_right ul#r_smenu_list {
	position: relative;
	list-style-type: none;
	margin: 0 0 0 0;
	padding: 0;
}

div#container div#smenu_right ul#r_smenu_list li {
	margin: 0 0 4px 0;
	padding: 0 0 0 0 ;
}

div#container div#smenu_right ul#r_smenu_list li a {
	display: block;
	margin: 0 0 0 0;
	padding: 3px 5px;
	background-color: #2b91ab;
}

div#container div#smenu_right ul#r_smenu_list li a:link, 
div#container div#smenu_right ul#r_smenu_list li a:visited {
	color: #ffffff;
	text-decoration: none;
	vertical-align: baseline;
	background-color: #2b91ab;
}

div#container div#smenu_right ul#r_smenu_list li a:hover, 
div#container div#smenu_right ul#r_smenu_list li a:active {
	color: #ffffff;
	text-decoration: none;
	background-color: #3fa4be;
}

div#container div#smenu_right ul#r_smenu_list li.emergency a {
	display: block;
	margin: 0 0 0 0;
	padding: 1em 5px;
	background-color: #ffcccc;
	border: 3px solid #e62f2b;
	font-size: 130%;
	font-weight: bold;
	color: #e62f2b;
	text-align: center;
}

div#container div#smenu_right ul#r_smenu_list li.emergency a:link, 
div#container div#smenu_right ul#r_smenu_list li.emergency a:visited {
	color: #ffffff;
	text-decoration: none;
	vertical-align: baseline;
	background-color: #ffcccc;
	border: 3px solid #e62f2b;
	color: #e62f2b;
}

div#container div#smenu_right ul#r_smenu_list li.emergency a:hover, 
div#container div#smenu_right ul#r_smenu_list li.emergency a:active {
	color: #ffffff;
	text-decoration: none;
	background-color: #e62f2b;
}
div#container div#smenu_right ul#r_smenu_list li.frame a {
	display: block;
	margin: 0 0 0 0;
	padding: 1px 5px;
	background-color: #e4faff;
	border: 3px solid #2b91ab;
	font-weight: bold;
	color: #2b91ab;
}

div#container div#smenu_right ul#r_smenu_list li.frame a:link, 
div#container div#smenu_right ul#r_smenu_list li.frame a:visited {
	color: #ffffff;
	text-decoration: none;
	vertical-align: baseline;
	background-color: #e4faff;
	border: 3px solid #2b91ab;
	color: #2b91ab;
}

div#container div#smenu_right ul#r_smenu_list li.frame a:hover, 
div#container div#smenu_right ul#r_smenu_list li.frame a:active {
	color: #ffffff;
	text-decoration: none;
	background-color: #3fa4be;
}

div#container div#smenu_right ul#r_smenu_list li ul.sub {
	list-style-type: none;
	margin: 4px 5px 0 8px;
	padding: 0 0 0 0 ;
}

div#container div#smenu_right ul#r_smenu_list li ul.sub li {
	margin: 0 0 0 0;
	padding: 0 0 0 7px ;
	background: transparent url('../images/arrow_01.gif') no-repeat left 0.4em;
}

div#container div#smenu_right ul#r_smenu_list li ul.sub li a {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	background-color: transparent;
	zoom: 1;
}

div#container div#smenu_right ul#r_smenu_list li ul.sub li a:link, 
div#container div#smenu_right ul#r_smenu_list li ul.sub li a:visited {
	color: #000000;
	text-decoration: none;
	vertical-align: baseline;
	background-color: transparent;
}

div#container div#smenu_right ul#r_smenu_list li ul.sub li a:hover, 
div#container div#smenu_right ul#r_smenu_list li ul.sub li a:active {
	color: #2b91ab;
	text-decoration: none;
	background-color: transparent;
}
div#container div#smenu_right ul#r_smenu_list li.tool a {
	display: block;
	margin: 0;
	padding: 0;
}
div#container div#smenu_right ul#r_smenu_list li.img_link a {
	padding: 0;
	background: none;
}
div#container div#smenu_right ul#r_smenu_list li.img_link a img {
	width: 100%;
	height: auto;	
}
div#container div#smenu_right .flyer_block {
	display: flex;
	justify-content: space-between;
	margin: 0;
	list-style: none;
}
div#container div#smenu_right .flyer_block li {
	width: 48%;
}
div#container div#smenu_right .flyer_block li img {
	width: 100%;
}
div#container div#smenu_right #fb {
	margin: 0.5em 0;
}
div#container div#smenu_right #fb_block {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
div#container div#smenu_right #fb a {
	display: inline-block;
	padding: 7px 12px 4px 46px;
	border: 1px solid #1877f2;
	color: #1877f2;
	background: url(../images/fb_logo.png) no-repeat 10px 5px/21px;
	text-decoration: none;
	font-weight: bold;
}
div#container div#smenu_right #fb a:hover {
	opacity: 0.8;
	transition: .4s;
}
div#container div#smenu_right #r_smenu_list #twitter_box{
	display: flex;
	justify-content: space-between;
}
div#container div#smenu_right #r_smenu_list #twitter_box{
	display: flex;
	justify-content: space-between;
}
div#container div#smenu_right #r_smenu_list #twitter_box #twitter {
	width: 60px;
	height: 31px;
	border: solid 1px #1d9bf0;
	text-align: center;
}

div#container div#smenu_right #r_smenu_list #twitter_box #twitter:hover {
	opacity: 0.8;
	transition: .4s;
}
div#container div#smenu_right #r_smenu_list #twitter_box #twitter img {
	width: 30px;
	padding-top: 4px;
}

/*--------------------------------------------------------------------
 *	footer
 *--------------------------------------------------------------------*/

div#footer {
	margin: 0 0 2em;
}

div#footer_contents {
	margin: 0 10px;
	/*border-top: 3px solid #00a0c6;*/
}

div#footer_contents p#logo {
	margin: 12px auto 0.5em;
}

div#footer_contents address#address {
	margin: 0 0 0 0;
	float: left;
}

div#footer_contents address#copyright {
	margin: 0 0 0 0;
	float: right;
}
div#footer_menu {
	margin: 20px 10px 0 10px;
	padding: 0 235px;
	background-color: #0d5571;
}
div#footer_menu ul {
	float: left;
	width: 23.85%;
	margin: 0;
	margin-right: 1.5%;
	list-style: none;
	font-weight: bold;
	font-size: 0.9rem;
}
div#footer_menu ul:last-child {
	margin-right: 0;
}
div#footer_menu ul li {
	border-bottom: 1px solid #fff;
}
div#footer_menu ul li.arw:first-child {
	margin-top: 1em;
}
div#footer_menu ul li.arw a {
	display: inline-block;
	padding-left: 10px;
	background: url(../images/arrow_03.png) no-repeat left 0.5em;
	background-size: 5px;
}
div#footer_menu ul li.arw:nth-child(n+2) {
	margin-top: 1em;
}
div#footer_menu ul li.arw.mt0 {
	margin-top: 0;
}
div#footer_menu ul li a {
	color: #fff;
	text-decoration: none;
}
div#footer_menu ul li a:hover {
	text-decoration: underline;
}
div#footer_menu ul li .sub {
	width: 100%;
	margin: 5px 0 1em 0;
	font-weight: normal;
	font-size: 12px;
}
div#footer_menu ul li .sub li {
	margin: 3px 0;
	border: none;
}


/*------------------------------------------ hyperlink */

a:link, a:visited {
	color: #2b91ab;
	text-decoration: underline;
	vertical-align: baseline;
}

a:hover, a:active {
	color: #6fd0e9;
	text-decoration: none;
}


/*-------------------------------------------------------------------------------*
 *	Clear fix
 *-------------------------------------------------------------------------------*/

div#header,
div#header div#header_contents,
div#header div#utility,
div#header div#utility div#utility_member,
div#header div#utility div#utility_search,
div#header div#gmenu ul,
div#container,
div#main,
div#main div#smenu_left,
div#main div#smenu_right,
div#main div#contents,
div#footer,
div#footer_contents {
	zoom: 100%;
}

div#header:after,
div#header div#header_contents:after,
div#header div#utility:after,
div#header div#utility div#utility_member:after,
div#header div#utility div#utility_search:after,
div#header div#gmenu ul:after,
div#container:after,
div#main:after,
div#main div#smenu_left:after,
div#main div#smenu_right:after,
div#main div#contents:after,
div#footer:after,
div#footer_contents:after,
div#footer_menu::after {
	content: ".";
	display: block;
	visibility: hidden;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
	clear: both;
}

/*-------------------------------------------------------------------------------*
 *	印刷用の記述
 *-------------------------------------------------------------------------------*/
@media print{

#smenu_left,
#smenu_right,
#footer {
	display:none;
}
div#container div#main div#contents {
	margin: 0;
	width: 100%;
}

	
}
