@charset "utf-8";

/*****************************************
			Social Buttons
*****************************************/
#social {
	margin: -40px auto 20px auto;
}
/*****************************************
				Container
*****************************************/
#container {
	min-width: 1100px;
	min-height: 100%;
	position: relative;
}
/*****************************************
				Header
*****************************************/
#header {
	min-width: 1100px;
	height: 150px;
	transition: 0.3s;
}
#headerFollow {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 5000;
}
#headerInner {
	background-color: #FFF;
	width: 100%;
	height: 130px;
}
#headerContents {
	background: url(../img/header/gray_bar.png) 0 0 repeat-x;
	width: 100%;
	height: 50px;
	padding: 0 0 0 200px;
	letter-spacing: -0.4em;
	box-sizing: border-box;
	transition: 0.3s;
}
#headerBox {
	width: calc(100% - 200px);
	margin: 0 0 0 200px;
	padding: 13px 0 0 0;
	letter-spacing: -0.4em;
	position: relative;
	transition: 0.3s;
}
#logoTitle {
	width: 186px;
	height: 184px;
	position: absolute;
	left: 0;
	top: 0;
	transition: 0.3s;
}
#logoTitle a {
	display: block;
	width: 100%;
	height: 100%;
	background: url(../img/header/logo_title.png) 0 0 no-repeat;
	background-size: 100% auto;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
}
#logoTitle a:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
#btnEmergency {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 155px;
	height: 49px;
	margin: 0 12px 0 0;
}
#btnEmergency a {
	display: flex;
	width: 100px;
	height: 49px;
	padding: 0 0 0 55px;
	background: url(../img/header/btn_emergency.png) 22px 12px no-repeat;
	background-color: #B90001;
	color: #FFF;
	font-weight: bold;
	align-items: center;
	text-decoration: none;
	font-size: 81%; 
}
#btnEmergency a:hover {
	background-color: #F94041;
}
#btnApplication {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 155px;
	height: 49px;
}
#btnApplication a {
	display: flex;
	width: 110px;
	height: 49px;
	padding: 0 0 0 45px;
	background: url(../img/header/btn_application.png) 16px 12px no-repeat, url(../img/header/blue_line.png) 0 46px repeat-x, url(../img/header/gray_line.png) 0 0 repeat-y, url(../img/header/gray_line.png) 100% 0 repeat-y, url(../img/header/gray_line.png) 0 100% repeat-x;
	background-color: #FFF;
	color: #022498;
	font-weight: bold;
	align-items: center;
	text-decoration: none;
	font-size: 81%; 
}
#btnApplication a:hover {
	background-color: #FFE;
}
#headerButton {
	display: inline-block;
	vertical-align: top;
	font-size: 87.5%;
	float: right;
}
#headerSns {
	display: inline-block;
	vertical-align: top;
	margin: 0 5px 0 0;
	float: right;
}
#headerSns a {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	width: 27px;
	height: 27px;
	margin: 9px 9px 0 0;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
}
#headerTwitter {
	background: url(../img/header/sns_twitter.png) 0 0 no-repeat;
}
#headerFacebook {
	background: url(../img/header/sns_facebook.png) 0 0 no-repeat;
}
#headerInstagram {
	background: url(../img/header/sns_instagram.png) 0 0 no-repeat;
}
#headerYoutube {
	background: url(../img/header/sns_youtube.png) 0 0 no-repeat;
}
@media screen and (max-width: 1370px) {
	#header {
		height: 135px;
	}
	#logoTitle {
		width: 126px;
		height: 126px;
	}
	#headerContents {
		min-width: 1100px;
		padding: 0 0 0 136px;
	}
	#headerBox {
		width: calc(100% - 136px);
		min-width: 964px;
		margin: 0 0 0 136px;
	}
/*
	#headerSns {
		margin: 0 5px 0 0;
	}
*/
}
/*****************************************
			Browser Support
*****************************************/
#btnBrowserSupport {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	background-color: #FFF;
	margin: 8px 8px 0 0;
	padding: 0 15px;
	line-height: 27px;
	border: 1px solid #DDD;
	color: #103D91;
	text-decoration: none;
}
#btnBrowserSupport:hover {
	background-color: #103D91;
	border: 1px solid #103D91;
	color: #FFF;
}
/*****************************************
			Foreigners
*****************************************/
#foreigners {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	margin: 8px 8px 0 0;
	position: relative;
	z-index: 4000;
}
#btnForeigners {
	display: block;
	background: url(../img/parts/arw_down_blue.png) 92% 50% no-repeat;
	background-color: #FFF;
	padding: 0 25px 0 15px;
	line-height: 27px;
	border: 1px solid #DDD;
	color: #103D91;
	text-decoration: none;
}
#btnForeigners:hover {
	background: url(../img/parts/arw_down_white.png) 92% 50% no-repeat;
	background-color: #103D91;
	border: 1px solid #103D91;
	color: #FFF;
}
/*#foreignersList {
	display: none;
	width: 100%;
	height: auto;
	padding: 3px 0 0 0;
	position: absolute;
	top: 29px;
	left: 0;
	z-index: 4000;
	overflow: hidden;
}*/
#foreigners ul {
	display: none; 	
	list-style: none;
	width: 100%; 	
	position: absolute; 	
	top: 29px; 	
	left: 0; 	
	z-index: 4000; 	
	overflow: hidden; 
}
#foreigners ul li {
	background: #FFF;
	margin: -1px 0 0 0;
	border: 1px solid #CCC;
}
#foreigners ul li a {
	background: #FFF;
	display: block;
	padding: 3px 14px;
	text-decoration: none;
}
#foreigners ul li a:hover {
	background: #2D71F0;
	color: #FFF;
}
#foreigners .btn_close {
	width: 100vw;
	height: 100vh;
	text-indent: 200%;
	overflow: hidden;
	white-space: nowrap;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}
/*****************************************
			Accessibility
*****************************************/
#accessibility {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	margin: 8px 8px 0 0;
	position: relative;
	z-index: 4000;
}
#btnAccessibility {
	display: block;
	background: url(../img/parts/arw_down_blue.png) 92% 50% no-repeat;
	background-color: #FFF;
	padding: 0 25px 0 15px;
	line-height: 27px;
	border: 1px solid #DDD;
	color: #103D91;
	text-decoration: none;
}
#btnAccessibility:hover {
	background: url(../img/parts/arw_down_white.png) 92% 50% no-repeat;
	background-color: #103D91;
	border: 1px solid #103D91;
	color: #FFF;
}
#accessibility .btn_close {
	width: 100vw;
	height: 100vh;
	text-indent: 200%;
	overflow: hidden;
	white-space: nowrap;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}
/*****************************************
				Tools
*****************************************/
#tools {
	display: none;
	width: 350px;
	padding: 3px 0 0 0;
	position: absolute;
	top: 29px;
	right: 0;
	text-align: right;
}
#toolsInner {
	display: inline-block;
	background: #FFF;
	padding: 3px 3px 3px 5px;
	border: 1px solid #CCC;
}
/*****************************************
			Size Changer
*****************************************/
#sizeChanger {
	display: inline-block;
	margin: 0 10px 0 0;
	text-align: left;
	letter-spacing: normal;
	vertical-align: top;
	overflow: hidden;
}
#sizeChanger dt {
	margin: 0 5px 0 0;
	line-height: 30px;
	float: left;
	font-size: 81%;
	color: #000;
}
#sizeChanger dd {
	float: left;
}
#sizeChanger dd#df {
	margin: 0 3px 0 0;
	font-size: 81%;
}
#sizeChanger dd#zf {}
#sizeChanger dd a {
	display: block;
	min-width: 26px;
	height: 26px;
	line-height: 26px;
	background-color: #FFF;
	color: #000;
	border: 2px solid #000;
	overflow: hidden;
	text-align: center;
	text-decoration: none;
}
#sizeChanger dd a:hover {
	background-color: #000;
	color: #FFF;
}
/*****************************************
			Color Changer
*****************************************/
#colorChanger {
	display: inline-block;
	text-align: left;
	letter-spacing: normal;
	vertical-align: top;
	overflow: hidden;
}
#colorChanger dt {
	margin: 0 5px 0 0;
	line-height: 30px;
	float: left;
	font-size: 81%;
	color: #000;
}
#colorChanger dd {
	margin: 0 3px 0 0;
	float: left;
	font-size: 81%;
}
#colorChanger dd#bg_black { margin: 0; }
#colorChanger dd a {
	display: block;
	overflow: hidden;
	text-align: center;
	text-decoration: none;
}
#colorChanger dd#bg_default a {
	background: #FFF;
	min-width: 26px;
	height: 26px;
	line-height: 26px;
	color: #000;
	border: 2px solid #CCC;
}
#colorChanger dd#bg_blue a {
	background: #039;
	min-width: 30px;
	height: 30px;
	line-height: 30px;
	color: #FF0;
}
#colorChanger dd#bg_yellow a {
	background: #FF0;
	min-width: 28px;
	height: 28px;
	line-height: 28px;
	color: #039;
	border: 1px solid #CCC;
}
#colorChanger dd#bg_black a {
	background: #000;
	min-width: 30px;
	height: 30px;
	line-height: 30px;
	color: #FF0;
}
#colorChanger dd#bg_default a:hover {
	background: #000;
	color: #FFF;
	border: 2px solid #000;
}
#colorChanger dd#bg_blue a:hover {
	background: #47D;
	color: #FF0;
}
#colorChanger dd#bg_yellow a:hover {
	background: #FF9;
	color: #009;
}
#colorChanger dd#bg_black a:hover {
	background: #757575;
}
/*****************************************
				Navigation
*****************************************/
#gNav {}
#gNav ul {
	display: flex;
	width: calc(100% - 136px);
	list-style: none;
	position: relative;
	z-index: 2000;
}
#gNav ul li {
	width: 20%;
	height: 54px;
	margin: 0 0 0 2px;
	box-sizing: border-box;
	letter-spacing: normal;
}
#gNav ul li#gNav01 {
	margin: 0;
}
#gNav ul li a {
	background-color: #102D9D;
	width: 100%;
	height: 100%;
	position: relative;
	color: #FFF;
	text-decoration: none;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 4px;
	line-height: 1.3;
	font-size: 93%;
}
#gNav ul li a span {
	padding: 16px 2px 16px 44px;
}
#gNav ul li#gNav01 a span {
	background: url(../img/gnav/gnav01.png) 0 50% no-repeat;
}
#gNav ul li#gNav02 a span {
	background: url(../img/gnav/gnav02.png) 0 50% no-repeat;
}
#gNav ul li#gNav03 a span {
	background: url(../img/gnav/gnav03.png) 0 50% no-repeat;
}
#gNav ul li#gNav04 a span {
	background: url(../img/gnav/gnav04.png) 0 50% no-repeat;
}
#gNav ul li#gNav05 a span {
	background: url(../img/gnav/gnav05.png) 0 50% no-repeat;
}
#gNav ul li#gNav06 a span {
	background: url(../img/gnav/gnav06.png) 0 50% no-repeat;
}
#gNav ul li a:hover {
	background-color: #2D71F0;
}
/* Drop Down */
#gNav ul li .gNavBox {
	display: none;
	background: #F3F3F3;
	width: 100%;
	height: auto;
	padding: 2px 0 0 2px;
	border: 1px solid #102D9D;
	position: absolute;
	top: 53px; 
	left: 0;
	z-index: 9999;
	overflow: hidden;
	box-sizing: border-box;
}
#gNav ul li ul {
	width: 100%;
	height: auto;
	display: block;
	max-height: calc(100vh - 300px);
	overflow: auto;
	letter-spacing: -0.4em;
}
#gNav ul li ul li {
	width: 25%;
	min-height: 50px;
	height: auto;
	line-height: 1.4;
	margin: 0 0 2px 0;
	padding: 0 2px 0 0;
	display: flex;
/*	display: inline-block;	*/
	vertical-align: top;
	letter-spacing: normal;
	font-size: 93%;
	position: relative;
	box-sizing: border-box;
	float: left;
}
#gNav ul li ul li a {
	background: #FFF;
	display: flex;
	width: 100%;
	min-height: 50px;
	padding: 0 8px;
	height: auto;
	color: #102D9D;
	text-align: left;
	justify-content: flex-start;
	border: 1px solid #AAA;
	border-radius: 0;
	box-sizing: border-box;
	font-size: 100%;
}
#gNav ul li ul li a:hover {
	background: #102D9D;
	color: #FFF;
}
.gNavBoxBottom {
	background: #F3F3F3;
	margin: 0 2px 2px 0;
	padding: 5px 2px;
	text-align: center;
	letter-spacing: -0.4em;
}
#gNav ul li .gNavBoxBottom a.btn_list,
#gNav ul li .gNavBoxBottom span.btn_close {
	display: inline-block;
	width: 8em;
	height: auto;
	line-height: 40px;
	margin: 0 5px;
	padding: 0;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	letter-spacing: normal;
	vertical-align: top;
	background: #102D9D;
	border-radius: 2px;
	color: #FFF;
	font-size: 100%;
}
#gNav ul li .gNavBoxBottom a.btn_list:hover,
#gNav ul li .gNavBoxBottom span.btn_close:hover {
	background: #2D71F0;
}
@media screen and (max-width: 1280px) {
	#gNav ul li a {
		font-size: 80%;
	}
	#gNav ul li a span {
		padding: 16px 4px 16px 44px;
	}
}
/*****************************************
				 Button
*****************************************/
#btnSeachBox {
	display: block;
	background: url(../img/header/btn_searchbox.png) 50% 50% no-repeat, url(../img/parts/white50.png) 0 0 repeat;
	width: 54px;
	height: 54px;
	text-indent: 110%;
	overflow: hidden;
	white-space: nowrap;
	position: absolute;
	top: 13px;
	right: 74px;
	border-radius: 3px;
}
#btnSeachBox.boxHover,
#btnSeachBox:hover {
	background: url(../img/header/btn_searchbox_white.png) 50% 50% no-repeat;
	background-color: #102D9D;
}
#btnMenuBox {
	display: block;
	background: url(../img/header/btn_menubox.png) 50% 50% no-repeat, url(../img/parts/white50.png) 0 0 repeat;
	width: 54px;
	height: 54px;
	text-indent: 110%;
	overflow: hidden;
	white-space: nowrap;
	position: absolute;
	top: 13px;
	right: 10px;
	border-radius: 3px;
}
#btnMenuBox:hover {
	background: url(../img/header/btn_menubox_white.png) 50% 50% no-repeat;
	background-color: #102D9D;
}
/*****************************************
			Search Form
*****************************************/
#searchBox {
	background: #102D9D;
	width: 660px;
	padding: 2px 0 2px 2px;
	border: 1px solid #FFF;
	border-right: 0;
	overflow: hidden;
	transition: 0.3s;
	position: absolute;
	top: 129px;
	right: -100%;
	opacity: 0;
}
#searchBox.boxOpen {
	right: 0;
	opacity: 1;
}
#searchBox .tab {
	width: 660px;
	height: 36px;
	list-style: none;
	overflow: hidden;
}
#searchBox .tab li {
	width: 220px;
	height: 36px;
	line-height: 36px;
	float: left;
}
#searchBox .tab li:first-child {
	margin: 0;
}
#searchBox .tab li a {
	display: block;
	width: 100%;
	height: 100%;
	text-align: center;
	background: #102D9D;
	color: #FFF;
	font-size: 90%;
	font-weight: bold;
	text-decoration: none;
}
#searchBox .tab li a.active {
	background: #EEE;
	color: #102D9D;
}
#searchBox .tab li a:hover {
	background: #2D71F0;
	color: #FFF;
}
/*****************************************
			Google Search
*****************************************/
#googleArea {
	background: #EEE;
	width: 660px;
	height: 50px;
}
#googleBox { padding: 5px; }
#gsc-iw-id1,
#gsc-iw-id2 {
	height: 36px !important;
	border: solid 2px #102D9D;
}
#gsc-iw-id1 input,
#gsc-iw-id2 input {
	position: relative;
	top: 6px;
}
.gsc-input-box-hover { box-shadow: none !important; }
.gsib_a { padding: 0 0 0 5px !important; }
.gsc-search-button input,
.gsc-search-button-v2 {
    width: 100px !important;
    min-width: 100px !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
	border: none !important;
}
/*****************************************
				Search
*****************************************/
#search {
	background: #EEE;
	width: 650px;
	height: 40px;
	padding: 5px;
}
#field_search {
	width: 530px;
	height: 36px;
	line-height: 36px;
	border: solid 2px #102D9D;
	padding: 0 5px;
	font-size: 100%;
	float: left;
}
#btn_search {
	width: 100px;
	height: 40px;
	background: url(../img/parts/search_icon.png) 50% 50% no-repeat;
	background-color: #102D9D;
	border: none;
	border-radius: 3px;
	text-indent: 110%;
	overflow: hidden;
	white-space: nowrap;
	cursor: pointer;
	float: right;
	color: #FFF;
}
/*****************************************
			Search Keyword
*****************************************/
#wellSearchKeyword {
	background: #EEE;
	width: 660px;
	height: 50px;
	overflow: hidden;
}
#wellSearchKeyword ul {
	height: 44px;
	padding: 3px 5px;
	list-style: none;
	letter-spacing: -0.4em;
}
#wellSearchKeyword li {
	background: url(../img/parts/list_point03.png) 0 4px no-repeat;
	margin: 0 14px 0 0;
	padding: 0 0 0 16px;
	line-height: 20px;
	display: inline-block;
	vertical-align: top;
	letter-spacing: normal;
	font-size: 87.5%;
	text-decoration: none;
}
/*****************************************
				Color Box
*****************************************/
/* 
	User Style:
	Change the following styles to modify the appearance of Colorbox.  They are
	ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#colorbox.navtype,
#cboxOverlay.navtype,
.navtype #cboxWrapper {
	overflow: visible;
}
#colorbox.navtype {
	width: 100% !important;
	height: 100vh !important;
	top: 0 !important;
	left: 0 !important;
	position: fixed !important;
}
.navtype #cboxWrapper {
	width: 100% !important;
	height: 120vh !important; 
}
#cboxOverlay.navtype {
	background: none;
/*
	background: #103D91;
	opacity: 0.9 !important;
	filter: alpha(opacity = 90) !important;
*/
}
.navtype #cboxTopLeft,
.navtype #cboxTopRight,
.navtype #cboxBottomLeft,
.navtype #cboxBottomRight,
.navtype #cboxMiddleLeft,
.navtype #cboxMiddleRight,
.navtype #cboxTopCenter,
.navtype #cboxBottomCenter {
	display: none;
	background: none;
}
.navtype #cboxContent {
	background: none;
	overflow: visible;
}
.navtype .cboxIframe {
	background: #FFF;
}
.navtype #cboxError {
	padding: 50px;
	border: 1px solid #CCC;
}
.navtype #cboxLoadedContent {
	height: auto !important;
	margin-bottom: 28px;
}
.navtype #cboxTitle {
	position: absolute;
	bottom: 4px;
	left: 0;
	text-align: center;
	width: 100%;
	color: #949494;
}
.navtype #cboxCurrent {
	position: absolute;
	bottom: 4px;
	left: 58px;
	color: #949494;
}
.navtype #cboxLoadingOverlay {
	background: none;
}
.navtype #cboxLoadingGraphic {
	background: none;
}
/*****************************************
				Navigation
*****************************************/
#menuBox {
	width: 100% !important;
	height: 200vh !important;
	background: #103D91;
	opacity: 0.9 !important;
	filter: alpha(opacity = 90) !important;
	position: fixed;
	left: 0;
	top: 0;
}
#menuBoxInner {
	max-width: 1000px;
	height: 80vh;
	margin: 0 auto;
	padding: 10vh 0;
	position: relative;
	overflow: hidden;
}
#menuBoxList {
	width: 100%;
	overflow: hidden;
}
#menuBoxList ul {
	list-style: none;
	letter-spacing: -0.4em;
}
#menuBoxList ul li {
	display: inline-block;
	width: 196px;
	margin: 0 0 0 5px;
	letter-spacing: normal;
	vertical-align: top;
}
#menuBoxList ul li:first-child {
	margin: 0;
}
#menuBoxList ul li a {
	display: block;
	background: url(../img/parts/arw_white.png) 96% 50% no-repeat;
	padding: 10px 20px 10px 10px;
	border: 1px solid #FFF;
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
}
#menuBoxList ul li a:hover {
	background-color: #006;
}
#menuBoxContents {
	width: 100%;
	height: calc(80vh - 95px);
	margin: 30px 0 0 0;
	overflow: auto;
}
#menuBoxContents h2 {
	padding: 15px 10px;
	font-size: 115%;
	font-weight: bold;
	cursor: pointer;
	border-bottom: 1px solid #FFF;
	color: #FFF;
}
#menuBoxContents h2:hover {
	color: #FF0;
}
#menuBoxContents ul {
	display: none;
	padding: 10px 0 0 0;
	list-style: none;
	letter-spacing: -0.4em;
}
#menuBoxContents ul li {
	display: inline-block;
	width: 325px;
	letter-spacing: normal;
	vertical-align: top;
}
#menuBoxContents ul li:first-child {
	margin: 0;
}
#menuBoxContents ul li a {
	display: block;
	background: url(../img/parts/list_point04.png) 7px 13px no-repeat;
	padding: 8px 20px 8px 28px;
	text-decoration: none;
	color: #FFF;
}
#menuBoxContents ul li a:hover {
	color: #FF0;
	text-decoration: underline;
}
.navtype #cboxClose {
	display: block;
	height: auto !important;
	line-height: 15px;
	padding: 5px 10px;
	color: #FFF;
	border: 1px solid #FFF;
	position: absolute;
	top: 5vh;
	right: 5vh;
	left: auto;
	bottom: auto;
	z-index: 10000;
}
.navtype #cboxClose:hover {
	background-color: #006;
}
/*****************************************
				Wrapper
*****************************************/
#wrapper {
	clear: both;
	padding: 0 0 450px 0;
}
/*****************************************
			Topicpath
*****************************************/
#topicpath {
	margin: 0 0 25px 0;
	padding: 0 0 15px 0;
	border-bottom: 2px solid #315ECE;
	transition: 0.3s;
}
#topicpath ol {
	background: url(../img/parts/current.png) 0 5px no-repeat;
	width: 970px;
	margin: 0 auto;
	padding: 0 0 0 30px;
	list-style: none;
	letter-spacing: -0.4em;
}
#topicpath ol li {
	margin: 0;
	display: inline-block;
	height: 30px;
	line-height: 30px;
	letter-spacing: normal;
	vertical-align: top;
	font-size: 87.5%;
}
#topicpath ol li a {
	display: block;
	margin: 0 8px 0 0;
	padding: 0 14px 0 0;
	background: url(../img/parts/topicpath_arw.png) 100% 50% no-repeat;
}
#topicpath ol li a:hover {
	text-decoration: none;
}
@media screen and (max-width: 1370px) {
	#topicpath {
		padding: 0 0 10px 0;
		border-bottom: 2px solid #315ECE;
	}
}
/*****************************************
			Category Title
*****************************************/
#ANSHIN #categoryTitle,
#KURASHI #categoryTitle,
#KENKOU #categoryTitle,
#SYUROU #categoryTitle,
#KYOUIKU #categoryTitle,
#GYOUSEI #categoryTitle,
#GIKAI #categoryTitle {
	width: 910px;
	margin: 0 auto 20px auto;
	padding: 20px 0 20px 90px;
	font-size: 200%;
	font-weight: bold;
	color: #000;
}
#ANSHIN #categoryTitle { background: url(../img/title/cat_anshin.png) 0 10px no-repeat; }
#KURASHI #categoryTitle { background: url(../img/title/cat_kurashi.png) 0 10px no-repeat; }
#KENKOU #categoryTitle { background: url(../img/title/cat_kenkou.png) 0 10px no-repeat; }
#SYUROU #categoryTitle { background: url(../img/title/cat_syurou.png) 0 10px no-repeat; }
#KYOUIKU #categoryTitle { background: url(../img/title/cat_kyouiku.png) 0 10px no-repeat; }
#GYOUSEI #categoryTitle { background: url(../img/title/cat_gyousei.png) 0 10px no-repeat; }
#GIKAI #categoryTitle { background: url(../img/title/cat_gikai.png) 0 10px no-repeat; }
#DEFAULT #categoryTitle {
	width: 1000px;
	margin: 0 auto 20px auto;
	font-size: 200%;
	font-weight: bold;
	color: #000;
}
/*****************************************
				Main
*****************************************/
#main {
	width: 100%;
	padding: 0 0 30px 0;
	position: relative;
}
#mainContents {
	padding: 0 0 10px 0;
	overflow: hidden;
}
/*****************************************
			Local Navigation
*****************************************/
#lNav {
	width: 1000px;
	margin: 0 auto 28px auto;
}
#lNav ul {
	border: 2px solid #CCC;
	padding: 10px 5px 0 0;
	list-style: none;
	letter-spacing: -0.4em;
}
#lNav ul li {
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	margin: 0 0 10px 15px;
}
#lNav ul li a {
	display: block;
	background: url(../img/parts/list_point01.png) 0 7px no-repeat;
	padding: 0 4px 0 17px;
}
/*****************************************
			Page Title
*****************************************/
#pageTitle,
.newsTitle {
	background: #0C27A0;
	width: 1000px;
	margin: 0 auto 25px auto;
	border-radius: 8px;
	overflow: hidden;
}
#pageTitle .innerTitle,
.newsTitle .innerTitle {
	display: block;
	padding: 10px 15px;
	font-size: 150%;
	font-weight: bold;
	color: #FFF;
}
/*****************************************
				Contents
*****************************************/
#contents,
.contentsCalendar {
	width: 980px;
	margin: 0 auto 10px auto;
	padding: 0 10px;
	overflow: hidden;
	position: relative;
	z-index: 1000;
}
/*****************************************
			Contents Title
*****************************************/
#contents h2,
.contentsCalendar h2 {
	background: url(../img/title/title_bar.png) 12px 9px no-repeat, url(../img/title/title_line.png) 0 100% repeat-x;
	margin: 15px -10px 8px -10px;
	padding: 6px 5px 6px 27px;
	font-size: 135%;
	font-weight: bold;
	color: #009;
	overflow: hidden;
}
#contents h3,
.contentsCalendar h3 {
	background: url(../img/title/title_dot.png) 10px 15px no-repeat;
	margin: 15px -10px 8px -10px;
	padding: 5px 5px 4px 28px;
	border: 3px solid #0C27A0;
	border-radius: 10px;
	font-size: 121%;
	font-weight: bold;
	color: #0C27A0;
}
#contents h4,
.contentsCalendar h4 {
	margin: 15px -10px 8px -10px;
	padding: 0 6px 4px 6px;
	border-bottom: solid 2px #BBB;
	font-size: 106%;
	font-weight: bold;
}
#contents h5,
.contentsCalendar h5 {
	margin: 15px -10px 8px -10px;
	padding: 0 6px 4px 6px;
	border-bottom: dashed 1px #999;
	font-size: 106%;
	font-weight: bold;
}
#contents h6,
.contentsCalendar h6 {
	margin: 15px -10px 8px -10px;
	padding: 0 6px 4px 6px;
	border-bottom: dotted 1px #999;
	font-size: 106%;
	font-weight: bold;
}
#contents h2:first-child,
#contents h3:first-child,
#contents h4:first-child,
#contents h5:first-child,
#contents h6:first-child,
.contentsCalendar h2:first-child,
.contentsCalendar h3:first-child,
.contentsCalendar h4:first-child,
.contentsCalendar h5:first-child,
.contentsCalendar h6:first-child {
	margin-top: 0;
}
/*****************************************
			List Index
*****************************************/
.list_index {
	clear: both;
	margin: 0 0 20px 0;
}
.list_index ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none;
}
.list_index ul li {
	margin: 0 !important;
	padding: 6px 3px 6px 24px !important;
	background-position: 6px 13px !important;
	border-bottom: 1px dotted #CCC;
}
.list_index ul li p {
	margin: 2px 0 0 0 !important;
	font-size: 93%;
}
/*****************************************
			News List Index
*****************************************/
.newsListIndex {
	clear: both;
	margin: 0 0 20px 0;
}
.newsListIndex dl {
	padding: 6px 3px 6px 24px !important;
	list-style: none;
	background: url(../img/parts/list_point01.png) 6px 11px no-repeat;
	border-bottom: 1px dotted #CCC;
}
.newsListIndex dl dt {
	font-size: 93%;
}
.newsListIndex dl dd {
}
.newsListIndex dl dd p {
	margin: 2px 0 0 0 !important;
	font-size: 93%;
}
/*****************************************
			Directory News
*****************************************/
#dirNews {
	width: 1000px;
	margin: 0 auto 25px auto;
	border-bottom: 2px solid #0C27A0;
	overflow: hidden;
	position: relative;
}
#dirNews h3 {
	background: #0C27A0;
	padding: 6px 5px 4px 14px;
	font-size: 135%;
	font-weight: bold;
	color: #FFF;
	overflow: hidden;
}
#dirNewsList {
	height: 200px;
	margin: 0 auto;
	border-top: none;
	overflow: auto;
	position: relative;
	border-top: none;
}
#dirNews dl {
	padding: 10px 5px 10px 0;
	border-top: 1px dotted #666;
	overflow: hidden;
}
#dirNews dl:first-of-type {
	border-top: none;
}
#dirNews dl dt {
	width: 10.5em;
	padding: 0 0 0 0.5em;
	float: left;
	color: #000;
}
#dirNews dl dd {
	margin: 0 0 0 11em;
}
/*****************************************
			Directory Index
*****************************************/
#dir,
#dirRel {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
	letter-spacing: -0.4em;
}
.dirIndex,
#dirRelInfo,
.dirRelIndex,
.dirIndexSpecial {
	width: 312px;
	margin: 0 20px 20px 0;
	padding: 2px;
	background: #FFF;
	border: 2px solid #0C27A0;
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	overflow: hidden;
}
.dirIndex:nth-child(3n),
#dirRelInfo:nth-child(3n),
.dirRelIndex:nth-child(3n),
.dirIndexSpecial:nth-child(3n) {
	margin-right: 0;
}
.dirIndex h3,
#dirRelInfo h3,
.dirRelIndex h3,
.dirIndexSpecial h3 {
	background: url(../img/title/title_bar_white.png) 7px 7px no-repeat;
	background-size: 4px 24px;
	background-color: #0C27A0;
	padding: 8px 10px 8px 20px;
	color: #FFF;
	font-size: 100%;
	font-weight: bold;
	line-height: 1.41;
	overflow: hidden;
}
.dirIndex h3 a,
#dirRelInfo h3 a,
.dirRelIndex h3 a,
.dirIndexSpecial h3 a {
	color: #FFF;
	display: block;
}
.dirIndex h3 a:hover,
#dirRelInfo h3 a:hover,
.dirRelIndex h3 a:hover,
.dirIndexSpecial h3 a:hover {
	color: #FF0;
}
#dirRelInfo { border: 2px solid #805; }
.dirRelIndex { border: 2px solid #040; }
.dirIndexSpecial { border: 2px solid #C30; }
#dirRelInfo h3 { background-color: #805; }
.dirRelIndex h3 { background-color: #040; }
.dirIndexSpecial h3 { background-color: #C30; }
.dirIndex p,
#dirRelInfo p,
.dirRelIndex p,
.dirIndexSpecial p {
	margin: 8px 0;
	padding: 0 10px;
	line-height: 1.41;
}
.dirIndex ul,
#dirRelInfo ul,
.dirRelIndex ul,
.dirIndexSpecial ul {
	margin: 8px 10px;
	list-style: none;
	border-bottom: 1px dotted #0C27A0;
}
.dirIndex ul li,
#dirRelInfo ul li,
.dirRelIndex ul li,
.dirIndexSpecial ul li {
	border-top: 1px dotted #0C27A0;
}
.dirIndex ul li a,
#dirRelInfo ul li a,
.dirRelIndex ul li a,
.dirIndexSpecial ul li a {
	background: url(../img/parts/list_point01.png) 5px 11px no-repeat;
	padding: 5px 5px 5px 22px;
	display: block;
	text-decoration: none;
}
.dirIndex ul li a:hover,
#dirRelInfo ul li a:hover,
.dirRelIndex ul li a:hover,
.dirIndexSpecial ul li a:hover {
	background-color: #EEE;
}
.dirIndex ul li p,
#dirRelInfo ul li p,
.dirRelIndex ul li p,
.dirIndexSpecial ul li p {
	display: block;
	margin: 2px 0 !important;
	padding: 0 0 0 5px;
	border-left: solid 3px #AAA;
	float: none;
	clear: both;
}
/*****************************************
		Directory Index Contents
*****************************************/
.dirIndexContents {
	overflow: hidden;
}
.dirIndexImage .dirIndexContents {}
.dirIndexImage .dirIndexContents img {
	display: block;
	margin: 8px auto 15px auto;
	max-width: 100%;
	height: auto;
}
.dirIndexImage {
	width: 312px;
	margin: 0 20px 20px 0;
	padding: 2px;
	background: #FFF;
	border: 2px solid #0C27A0;
	display: inline-block;
	letter-spacing: normal;
	vertical-align: top;
	overflow: hidden;
}
.dirIndexImage:nth-child(3n) {
	margin: 0 0 20px 0;
}
.dirIndexImage h3 {
	background: url(../img/title/title_bar_white.png) 7px 7px no-repeat;
	background-size: 4px 24px;
	background-color: #0C27A0;
	padding: 8px 10px 8px 20px;
	color: #FFF;
	font-size: 100%;
	font-weight: bold;
	line-height: 1.41;
	overflow: hidden;
}
.dirIndexImage h3 a {
	color: #FFF;
	display: block;
}
.dirIndexImage h3 a:hover {
	color: #FF0;
}
.dirIndexImage p {
	margin: 8px 0;
	padding: 0 10px;
	line-height: 1.41;
}
.dirIndexImage ul {
	margin: 8px 10px;
	list-style: none;
	border-bottom: 1px dotted #0C27A0;
}
.dirIndexImage ul li {
	border-top: 1px dotted #0C27A0;
}
.dirIndexImage ul li a {
	background: url(../img/parts/list_point01.png) 5px 11px no-repeat;
	padding: 5px 5px 5px 22px;
	display: block;
	text-decoration: none;
}
.dirIndexImage ul li a:hover {
	background-color: #EEE;
}
.dirIndexImage ul li p {
	display: block;
	margin: 2px 0 !important;
	padding: 0 0 0 5px;
	border-left: solid 3px #AAA;
	float: none;
	clear: both;
}
/*****************************************
		Directory Image Box List
*****************************************/
.dirImageBoxList {
	margin: 0 0 25px 0;
	padding: 0 0 25px 0;
	letter-spacing: normal;
	border-bottom: dotted 3px #CCC;
}
.dirImageBoxList:last-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}
.dirImageBoxList.boxPage {
	margin: 0 0 10px 0;
	padding-bottom: 0;
	border-bottom: none;
}
.dirImageBoxList .dirTitle {
	background: url(../img/title/title_bar.png) 12px 9px no-repeat, url(../img/title/title_line.png) 0 100% repeat-x;
	margin: 15px 0 8px 0;
	padding: 6px 5px 6px 27px;
	font-size: 135%;
	font-weight: bold;
	color: #009;
	overflow: hidden;
}
.dirImage {
	margin: 0 0 8px 0;
	padding: 1px;
	border: solid 3px #0C27A0;
}
.dirImage img {
	max-width: 100%;
	height: auto;
}
.dirImageBoxList p {
	margin: 0 0 12px 0;
}
.dirImageBoxList .dirImageBox {
	margin: 0 0 10px 0;
	padding: 8px;
	border: solid 1px #0C27A0;
	overflow: hidden;
}
.dirImageBoxList .dirImageBox:last-child {
	margin-bottom: 0;
}
.dirImageBoxList .dirImageBox .dirThumbImage {
	width: 300px;
	float: left;
}
.dirImageBoxList .dirImageBox .dirThumbImage img {
	display: block;
	max-width: 100%;
	height: auto;
}
.dirImageBoxList .dirImageBox .dirImageBoxContents {
	margin: 0 0 0 308px;
}
.dirImageBoxList .dirImageBox .dirImageBoxContents .dirPageTitle {
	margin: 0 0 5px 0;
	padding: 6px 8px;
	background: #0C27A0;
	font-size: 108%;
	font-weight: bold;
	color: #FFF;
}
.dirImageBoxList .dirImageBox .dirImageBoxContents .dirPageTitle a {
	color: #FFF;
}
.dirImageBoxList .dirImageBox .dirImageBoxContents .dirPageTitle a:hover {
	color: #FF0;
}
.dirImageBoxList .dirImageBox .dirImageBoxContents p {
	margin-bottom: 0;
	padding: 0 8px;
}
.dirImageBoxList .dirBox {
	margin: 0 0 10px 0;
	padding: 8px;
	border: solid 1px #0C27A0;
	overflow: hidden;
}
.dirImageBoxList .dirBox:last-child {
	margin-bottom: 0;
}

.dirImageBoxList .dirBox .dirImageBoxContents .dirPageTitle {
	margin: 0 0 5px 0;
	padding: 6px 8px;
	background: #0C27A0;
	font-size: 108%;
	font-weight: bold;
	color: #FFF;
}
.dirImageBoxList .dirBox .dirImageBoxContents .dirPageTitle a {
	color: #FFF;
}
.dirImageBoxList .dirBox .dirImageBoxContents .dirPageTitle a:hover {
	color: #FF0;
}
.dirImageBoxList .dirBox .dirImageBoxContents p {
	margin-bottom: 0;
	padding: 0 8px;
}
/*****************************************
		Directory Index Q&A
*****************************************/
#dirIndexImageQA,
#dirIndexQA {
	width: 992px;
	margin: 0 0 15px 0;
	padding: 2px;
	background: #FFF;
	border: 2px solid #333;
	letter-spacing: normal;
	vertical-align: top;
	overflow: hidden;
}
#dirIndexImageQA h3,
#dirIndexQA h3 {
	background: url(../img/title/title_bar_white.png) 7px 7px no-repeat;
	background-size: 4px 24px;
	background-color: #333;
	padding: 8px 10px 8px 20px;
	color: #FFF;
	font-size: 100%;
	font-weight: bold;
	line-height: 1.41;
	overflow: hidden;
}
#dirIndexImageQA h3 a,
#dirIndexQA h3 a {
	color: #FFF;
	display: block;
}
#dirIndexImageQA h3 a:hover,
#dirIndexQA h3 a:hover {
	color: #FF0;
}
#dirIndexImageQABox,
#dirIndexQABox {
	padding: 8px 10px 5px 10px;
}
#searchQA {
	padding: 0 5px;
	width: 957px;
	height: 38px;
	line-height: 38px;
	border: solid 2px #333;
	overflow: hidden;
}
#field_search_QA {
	width: 920px;
	height: 38px;
	line-height: 38px;
	border: none;
	float: left;
}
#btn_search_QA {
	width: 35px;
	height: 38px;
	display: inline-block;
	vertical-align: top;
	background: url(../img/parts/search_icon_black.png) 50% 50% no-repeat;
	border: none;
	text-indent: 105%;
	overflow: hidden;
	white-space: nowrap;
	cursor: pointer;
}
#btn_search_QA:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
#dirIndexImageQA ul,
#dirIndexQA ul {
	margin: 8px 0;
	list-style: none;
	border-bottom: 1px dotted #333;
}
#dirIndexImageQA ul li,
#dirIndexQA ul li {
	border-top: 1px dotted #333;
}
#dirIndexImageQA ul li a,
#dirIndexQA ul li a {
	background: url(../img/parts/list_point01.png) 5px 11px no-repeat;
	padding: 5px 5px 5px 22px;
	display: block;
	text-decoration: none;
}
#dirIndexImageQA ul li a:hover,
#dirIndexQA ul li a:hover {
	background-color: #EEE;
}
/*****************************************
			Page Information
*****************************************/
#pageInfo {
	width: 1000px;
	margin: 0 auto 15px auto;
	overflow: hidden;
	font-size: 93%;
}
#pageInfo ul {
	background: url(../img/parts/pageinfo.png) 100% 0 repeat-y;
	list-style: none;
	overflow: hidden;
	text-align: right;
	letter-spacing: -0.4em;
}
#pageInfo ul li {
	background: url(../img/parts/pageinfo.png) 0 0 repeat-y;
	display: inline-block;
	line-height: 26px;
	letter-spacing: normal;
}
#pageInfo ul li span {
	display: inline-block;
}
#counter span {
	background: url(../img/parts/icon_count.png) 10px 3px no-repeat;
	padding: 0 10px 0 54px;
}
#update span {
	background: url(../img/parts/icon_update.png) 10px 6px no-repeat;
	padding: 0 10px 0 63px;
}
#print a {
	background: url(../img/parts/icon_print.png) 10px 2px no-repeat;
	padding: 0 10px 0 44px;
	display: block;
}
/*****************************************
				Page Top
*****************************************/
#pageTop {
	display: none;
	background: url(../img/parts/pagetop.png) 0 0 no-repeat;
	width: 139px;
	height: 293px;
	text-indent: 105%;
	overflow: hidden;
	white-space: nowrap;
	position: fixed;
	right: 50%;
	bottom: 40px;
	margin: 0 -670px 0 0;
	z-index: 2500;
}
#pageTop:hover {
	animation: pagetop 0.3s linear;
}
@keyframes pagetop {
	0% {
		height: 293px;
	}
	50% {
		height: 313px;
	}
	100% {
		height: 293px;
	}
}
/*
@keyframes pagetop {
	0% {
		transform: translate(0px, 0px) rotateZ(0deg)
	}
    25% {
		transform: translate(2px, 2px) rotateZ(1deg)
	}
    50% {
		transform: translate(0px, 2px) rotateZ(0deg)
	}
    75% {
		transform: translate(2px, 0px) rotateZ(-1deg)
	}
    100% {
		transform: translate(0px, 0px) rotateZ(0deg)
	}
}
*/
/*****************************************
				Footer
*****************************************/
#footer {
	clear: both;
	width: 100%;
	height: 448px;
	margin: -450px 0 0 0;
	border-top: 2px solid #315ECE;
	position: relative;
}
#footerInner {
	width: 1000px;
	height: 245px;
	margin: 40px auto 0 auto;
	overflow: hidden;
}
#footerLogo {
	background: url(../img/footer/footer_logo.png) 0 0 no-repeat;
	width: 102px;
	height: 124px;
	float: left;
	display: block;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
}
#footerLogo:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
#footerContents {
	width: 580px;
	padding: 0 0 0 20px;
	float: left;
	overflow: hidden;
}
#footerContact {
	margin: 0 0 8px 0;
	letter-spacing: -0.4em;
}
#footerContact dt {
	line-height: 30px;
	font-size: 130%;
	font-weight: bold;
	color: #0C2E92;
	letter-spacing: normal;
}
#footerContact dd#footerAddress {
	margin: 0 0 6px 0;
	font-size: 87.5%;
	line-height: 22px;
	letter-spacing: normal;
}
#footerContact dd#footerTel,
#footerContact dd#footerFax {
	font-size: 130%;
	font-weight: bold;
	line-height: 54px;
	display: inline-block;
	vertical-align: top;
	letter-spacing: normal;
}
#footerContact dd#footerTel {
	background: url(../img/footer/footer_tel.png) 0 50% no-repeat;
	margin: 0 20px 0 0;
	padding: 0 0 0 58px;
}
#footerContact dd#footerFax {
	background: url(../img/footer/footer_fax.png) 0 50% no-repeat;
	padding: 0 0 0 48px;
}
#footerContact dd span {
	background: url(../img/footer/skyblue_line.png) 0 86% repeat-x;
	padding: 0 5px;
}
#footerHour {
	margin: 0 0 8px -0.4em;
	font-size: 87.5%;
	line-height: 22px;
	overflow: hidden;
}
#footerHour dt {
	width: 6em;
	color: #0C2E92;
	float: left;
}
#footerHour dd {
	margin: 0 0 0 6em;
}
#footerInq {
	display: block;
	background: #A1C8E6;
	width: 17em;
	height: 33px;
	line-height: 33px;
	border-radius: 33px;
	color: #039;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
}
#footerInq:hover {
	background: #039;
	color: #FFF;
}
#jinkouBox {
	background: url(../img/footer/jinkou_frame.png) 0 0 repeat;
	width: 254px;
	height: 190px;
	padding: 3px;
	float: right;
}
#jinkouBoxInner {
	background: #FFF;
	width: 254px;
	height: 190px;
	overflow: hidden;
}
#jinkouBox iframe {
	width: 100%;
	height: 100%;
}
/*****************************************
			  Footer Nav
*****************************************/
#footerNav {
	width: 1000px;
	margin: 0 auto;
}
#footerNav ul {
	list-style: none;
	letter-spacing: -0.4em;
}
#footerNav ul li {
	display: inline-block;
	background: url(../img/footer/line.png) 0 50% no-repeat;
	line-height: 28px;
	padding: 0 0 0 13px;
	letter-spacing: normal;
	text-align: center;
	vertical-align: top;
}
#footerNav ul li:first-child {
	background: none;
	padding: 0;
}
#footerNav ul li {
	margin: 0 10px 0 0;
}
#footerNav ul li a {
	display: block;
	padding: 0 2px;
	line-height: 30px;
	font-size: 87.5%;
	color: #0A3992;
	text-decoration: none;
}
#footerNav ul li a:hover {
	color: #C03;
}
/*****************************************
			   Copy Right
*****************************************/
#copyright {
	width: 1000px;
	height: 35px;
	line-height: 20px;
	margin: 0 auto;
	font-size: 70%;
	color: #0A3992;
	clear: both;
	position: relative;
	z-index: 1000;
}
/*****************************************
				Ad Banner
*****************************************/
#adBanner {
	background: url(../img/banner/banner_line.png) 0 0 repeat-x;
	width: 100%;
	position: relative;
	bottom: 0;
	left: 0;
}
#adBannerInner {
	width: 1000px;
	margin: 0 auto;
	padding: 25px 0 10px 0;
	position: relative;
}
#bnr_about {
	display: block;
	background: url(../img/banner/bnr_about.png) 0 0 no-repeat;
	width: 201px;
	height: 76px;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	position: absolute;
	right: 0;
	top: -65px;
	z-index: 2000;
}
#bnr_about:hover {
	background-position: 0 -76px;
}
#adBannerInner ul {
	width: 960px;
	padding: 0 0 0 32px;
	list-style: none;
	overflow: hidden;
}
#adBannerInner ul li {
	width: 137px;
	height: 52px;
	margin: 0 23px 10px 0;
	float: left;
}
#adBannerInner ul li img {
	width: 100%;
	height: auto;
}
/*****************************************
				aruterio
*****************************************/
#aruterioTop,
#aruterioMenu {
	margin: 0 auto;
	width: 935px;
	overflow: hidden;
	background: #85CDDB;
}
#aruterioTop .mv {
	float: left;
}
#aruterioTop .menuBox {
	float: right;
	width: 398px;
}
#aruterioTop .menu {
	height: 233px;
	padding: 10px 40px;
	box-sizing: border-box;
	display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
#aruterioTop .menu a,
#aruterioMenu .menu a {
	width: 155px;
	height: 40px;
	display: block;
}
#aruterioMenu .menu a {
	margin: 0 10px 0 0;
}
#aruterioMenu .menu a:nth-child(4n) {
	margin: 0;
}
#aruterioMenu .visual {
	width: 225px;
	height: 162px;
	float: left;
}
#aruterioMenu .menu {
	padding: 5px 30px;
	box-sizing: border-box;
	width: 710px;
	height: 104px;
	float: right;
	display: -webkit-flex;
    display: flex;
	justify-content: flex-start;
	-webkit-justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
/*****************************************
			PR Box
*****************************************/
.prBox {
}
.prBoxContents {
	margin: 0 0 10px 0;
	overflow: hidden;
}
.prBoxContents img {
	float: left;
}
.prBoxContents ul,
.prBoxContents ol {
	margin: 0 0 0 210px !important;
}
.prBoxContents ul li.sub {
}
.prBoxContents ul li.sub ul {
	margin: 0 !important;
	padding: 0 0 0 15px !important;
	list-style: circle !important;
}
.prBoxContents ul li.sub ul li {
	background: none !important;
	padding: 0 0 0 0 !important;
}
.prDesc {
	margin: 0 !important;
	padding: 5px;
	background: #FC9;
}
/*****************************************
			parliamentBox
*****************************************/
.parliamentBox {
}
.parliamentBoxContents {
	margin: 0 0 10px 0;
	overflow: hidden;
}
.parliamentBoxContents img {
	float: left;
}
.parliamentBoxContents .box1st {
	width: 360px;
	margin: 0 0 0 20px !important;
	float: left;
}
.parliamentBoxContents .box2nd {
	width: 360px;
	float: right;
}
.parliamentBoxContents ul li.sub {
}
.parliamentBoxContents ul li.sub ul {
	margin: 0 !important;
	padding: 0 0 0 15px !important;
	list-style: circle !important;
}
.parliamentBoxContents ul li.sub ul li {
	background: none !important;
	padding: 0 0 0 0 !important;
}
.parliamentBox h2 {
	margin: 15px 0 8px 0 !important;
}
/*****************************************
			Section List
*****************************************/
.sectionList {
	/*background: #F2F9FF;
	padding: 10px;*/
}
.sectionList dl.special {
	width: 100%;
	margin: 20px 0 10px 0;
	padding: 0;
}
.sectionList dl.special dt {
	display: block;
	background: #102D9D;
	color: #FFF;
	padding: 6px 10px;
	text-align: center;
	margin: 0 0 5px 0;
}
.sectionList dl.special dt a {
	color: #FFF;
	text-decoration: none;
}
.sectionList dl.special dt a:hover {
	color: #FF0;
}
.sectionList dl.special dd {
	margin: 0 0 0 10px;
}
.sectionBoxWrap {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.sectionBox {
	width: 48%;
}
.sectionBoxHalf {
	width: 100%;
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.sectionBoxHalf dl.special {
	width: 48%;
}
.sectionBox dl.special {
     -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
	width: 100%;
}
.sectionBox p.sectionTitle {
	background: #EEE;
	padding: 8px 10px;
	margin: 15px 0 0 0 !important;
	border-left: 4px solid #102D9D;
	font-weight: bold;
}
.sectionBox dl {
	padding: 3px 10px;
	display: flex;
	align-items: center;
}
.sectionBox dl dt {
	background: url("../img/parts/list_point01.png") 0 7px no-repeat;
	min-width: 10em;
	padding: 0 0 0 20px;
	color: #102D9D;
}
.specialBox .cLayoutClm3 {
	justify-content: flex-start;
}
.specialBox .cLayoutClm3 h3 {
	background: url(../img/title/title_bar_white.png) 7px 7px no-repeat !important;
    background-size: auto !important;
	background-size: 4px 24px !important;
	background-color: #0C27A0 !important;
	padding: 8px 10px 8px 20px !important;
	color: #FFF !important;
	font-size: 100% !important;
	font-weight: bold !important;
	line-height: 1.41 !important;
	overflow: hidden !important;
	border-radius: 0 !important;
	margin: 0 0 10px 0 !important;
}
.specialBox .cLayoutClm3 ul {
	margin: 8px 10px !important;
	list-style: none;
	border-bottom: 1px dotted #0C27A0;
}
.specialBox .cLayoutClm3 ul li {
	border-top: 1px dotted #0C27A0;
	background: none !important;
	padding: 0 !important;
}
.specialBox .cLayoutClm3 ul li a {
	background: url(../img/parts/list_point01.png) 5px 11px no-repeat;
	padding: 5px 5px 5px 22px;
	display: block;
	text-decoration: none;
}
.specialBox .cLayoutClm3 ul li a:hover {
	background-color: #EEE;
}
.cLayoutClm3 .clmLeft,
.cLayoutClm3 .clmCenter {
	margin: 0 20px 0 0;
}
.cLayoutClm3 .clmLeft,
.cLayoutClm3 .clmCenter,
.cLayoutClm3 .clmRight {
	border: 2px solid #0C27A0 !important;
}