﻿@import url("stylesheets/font-awesome.min.css");

* {	
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	float: left;
	width: 100%;
	height: 100%;
	background-color: #F0F0F0;
	text-rendering: optimizelegibility;
	-webkit-text-size-adjust: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-font-smoothing: antialiased;
	
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: black;
	font-size: 12px;
	line-height: 1.5em;
}
body.textsize-s { font-size: 12px; }
body.textsize-m { font-size: 14px; }
body.textsize-l { font-size: 16px; }

a {
	color: #3498DB;
	text-decoration: none;
	-webkit-transition: color 200ms linear;
	   -moz-transition: color 200ms linear;
	        transition: color 200ms linear;
}
a:hover { color: #2980B9; }
img {
	display: inline;
	vertical-align: top;
	max-width: 100%;
	height: auto;
}
.article img[align="left"], .a-img-align-left {
	position: relative;
	z-index: 1;
	float: left;
	width: auto;
	margin: 0 10px 10px 0;
}
.article img[align="right"], .a-img-align-right {
	position: relative;
	z-index: 1;
	float: right;
	width: auto;
	margin: 0 0 10px 10px;
}

.article p { margin: 10px 0; }
.article h1, .article h2, .article h3, .article h4, .article h5, .article h6 { margin: 20px 0; } 
.article h1:first-child, .article h2:first-child, .article h3:first-child, .article h4:first-child, .article h5:first-child, .article h6:first-child { margin-top: 0; }
.article ul, .article ol { margin: 10px 0; }
.article ul:last-child, .article ol:last-child { margin-bottom: 0;}
.article ul {
	list-style: disc inside;
}
.article ol {
	list-style: decimal inside;
}
.article ul li, .article ol li { margin: 10px 0 10px 20px; }

table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	/*text-align: center;*/
	margin: 10px 0;
}
table:last-child { margin-bottom: 0; }
table[align="left"] {
	width: 50%;
	margin: 0 20px 20px 0;
}
table[align="center"] {
	width: 50%;
	margin: 0;
}
table[align="right"] {
	width: 50%;
	margin: 0 0 20px 20px;
}
tr { border-bottom: 1px solid #EEEADA;}
th, td {
	overflow:hidden;
	word-break:normal;
	padding: 10px;
	border: 1px solid #EEEADA;
	vertical-align: top;
}
th { background-color: #F7F5ED; }
/*th + td { text-align: left; }*/

pre {
	padding: 10px;
	background-color: #EEEADA;
	overflow: auto;
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}
hr {
	display: inline-block;
	vertical-align: top;
	width: 100%;
	height: 1px;
	background-color: #EEEADA;
	border: none;
	margin: 10px 0;
	padding: 0;
}
dl { margin: 10px 0; }
dl dt { font-weight: bold; }
dl dt, dl dd { padding-left: 20px; }

.main_wrapper {
	float: left;
	position:relative;
	z-index: 1;
	width: 100%;
	padding: 10px 10px 0;
}
.centerdiv {
	max-width: 1120px;
	margin: 0 auto;
}
.wrapper {
	float: left;
	width: 100%;
	min-height:500px;
	padding: 20px;
	background-color: white;
	border: 1px solid #CCC;
	-webkit-box-shadow: 0 0 5px rgba(0,0,0,0.10);
	-moz-box-shadow: 0 0 5px rgba(0,0,0,0.10);
	box-shadow: 0 0 5px rgba(0,0,0,0.10);
}
.backtotop {
	position: fixed;
	z-index: 3;
	bottom: 0; right: 20px;
	width: 50px;
	height: 50px;
	background-color: #4587C0;
	text-align: center;
	padding: 5px;
	-webkit-transition: background-color 200ms linear;
	   -moz-transition: background-color 200ms linear;
	        transition: background-color 200ms linear;
}
.backtotop:hover {  background-color: #5B95C8;}
.backtotop:before {
	content: "";
	position: absolute;
	top: -10px; left: 0;
	width: 0;
	height: 0;
	line-height: 1.5em !important;
	border-style: solid;
	border-width: 0 25px 10px 25px;
	border-color: transparent transparent #4587c0 transparent;
	-webkit-transition: background-color 200ms linear;
	   -moz-transition: background-color 200ms linear;
	        transition: background-color 200ms linear;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.backtotop:hover:before { border-color: transparent transparent #5B95C8 transparent;}
.topicon { margin-bottom: 2px;}
.topicon span{
	display: inline-block;
	vertical-align: top;
	width: 24px;
	height: 24px;
	line-height: 16px !important;
	border: 2px solid white;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	border-radius: 15px;
}
.topicon span .fa {
	color: white;
	font-size: 10px !important;
	line-height: 1.5em !important;
}
.toptext {
	display: inline-block;
	vertical-align: top;
	color: white;
	font-size: 8px !important;
	line-height: 1.5em !important;
	font-weight: bold;
}
/* Top Navigation */
.topnavigation {
	float:left;
	width: 100%;
	margin-bottom: 10px;
}
.topnavigation span {
	float: right;
	display: table;
	height: 26px;
	margin-right: 10px;
}
.topnavigation span a {
	display: table-cell;
	vertical-align: middle;
	position: relative;
	color: black;
}
.topnavigation span a:hover { color: #666; }
/* Text Size */
.text-size-btn {
	float: right;
	text-align: center;
}
.text-size-btn a {
	display: inline-block;
	vertical-align: bottom;
	padding: 5px;
	margin: 0 3px;
	background-color: white;
	border: 1px solid #CCC;
	font-weight: bold;
	line-height: 1;
	color: black;
	-webkit-border-radius: 3px;
	   -moz-border-radius: 3px;
	        border-radius: 3px;
	-webkit-box-shadow: 0 0 5px rgba(0,0,0,0.10);
	-moz-box-shadow: 0 0 5px rgba(0,0,0,0.10);
	box-shadow: 0 0 5px rgba(0,0,0,0.10);
}
.size-s { font-size: 12px !important; }
.size-m { font-size: 14px !important; }
.size-l {
	font-size: 16px !important;
	margin-right: 0 !important;
}
.text-size-btn a.active {
	color: black;
	background-color: transparent !important;
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
	box-shadow: none !important;
}
/* Heading */
h1, h2, h3, h4, h5, h6 {
	line-height: normal;
	margin: 0;
	padding: 0;
	color: black;
}
h1 button { font-size: 12px; }
.textsize-s h1 button, .textsize-s h1 .button, .textsize-s h2 button, .textsize-s h2 .button, .textsize-s h3 button, .textsize-s h3 .button, .textsize-s h4 button, .textsize-s h4 .button, .textsize-s h5 button, .textsize-s h5 .button, .textsize-s h6 button, .textsize-s h6 .button {
	font-size: 12px;
}
.textsize-m h1 button, .textsize-m h1 .button, .textsize-m h2 button, .textsize-m h2 .button, .textsize-m h3 button, .textsize-m h3 .button, .textsize-m h4 button, .textsize-m h4 .button, .textsize-m h5 button, .textsize-m h5 .button, .textsize-m h6 button, .textsize-m h6 .button {
	font-size: 14px;
}
.textsize-l h1 button, .textsize-l h1 .button, .textsize-l h2 button, .textsize-l h2 .button, .textsize-l h3 button, .textsize-l h3 .button, .textsize-l h4 button, .textsize-l h4 .button, .textsize-l h5 button, .textsize-l h5 .button, .textsize-l h6 button, .textsize-l h6 .button {
	font-size: 16px;
}
h1 {
	position: relative;
	padding-bottom: 10px;
	border-bottom: 1px solid #EEEADA;
	font-size: 22px;
}
.textsize-s h1 {font-size: 22px;}
.textsize-m h1 {font-size: 24px;}
.textsize-l h1 {font-size: 26px;}
h1:after {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 25px;
	height: 1px;
	background-color: #FFBB33;
}
h2 {
	padding-bottom: 10px;
	border-bottom: 1px solid #EEEADA;
	font-size: 20px;
}
h3 { font-size: 18px;}
h4 { font-size: 16px;}
h5 { font-size: 14px;}
h6 { font-size: 12px;}
.textsize-s h2 {font-size: 20px;}
.textsize-m h2 {font-size: 22px;}
.textsize-l h2 {font-size: 24px;}
.textsize-s h3 {font-size: 18px;}
.textsize-m h3 {font-size: 20px;}
.textsize-l h3 {font-size: 22px;}
.textsize-s h4 {font-size: 16px;}
.textsize-m h4 {font-size: 18px;}
.textsize-l h4 {font-size: 20px;}
.textsize-s h5 {font-size: 14px;}
.textsize-m h5 {font-size: 16px;}
.textsize-l h5 {font-size: 18px;}
.textsize-s h6 {font-size: 12px;}
.textsize-m h6 {font-size: 14px;}
.textsize-l h6 {font-size: 16px;}
.article h1, .article h2, .article h3, .article h4, .article h5, .article h6 {
	margin-bottom: 15px;
}

/*---- Header ----*/
.header {
	position: relative;
	float: left;
	width: 100%;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.subpage .header { margin-bottom: 0; }
.header:after {
	content: "";
	position:absolute;
	bottom: 0;
	left: 0;
	width:100%;
	height:1px;
	background: #ffbb33;
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmYmIzMyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjMzJSIgc3RvcC1jb2xvcj0iIzk5Y2MwMCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjY2JSIgc3RvcC1jb2xvcj0iIzMzYjVlNSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNhYTY2Y2MiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: -moz-linear-gradient(left,  #ffbb33 0%, #99cc00 33%, #33b5e5 66%, #aa66cc 100%);
	background: -webkit-gradient(linear, left top, right top, color-stop(0%,#ffbb33), color-stop(33%,#99cc00), color-stop(66%,#33b5e5), color-stop(100%,#aa66cc));
	background: -webkit-linear-gradient(left,  #ffbb33 0%,#99cc00 33%,#33b5e5 66%,#aa66cc 100%);
	background: -o-linear-gradient(left,  #ffbb33 0%,#99cc00 33%,#33b5e5 66%,#aa66cc 100%);
	background: -ms-linear-gradient(left,  #ffbb33 0%,#99cc00 33%,#33b5e5 66%,#aa66cc 100%);
	background: linear-gradient(to right,  #ffbb33 0%,#99cc00 33%,#33b5e5 66%,#aa66cc 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffbb33', endColorstr='#aa66cc',GradientType=1 );
}
.subpage .header:after { display: none; }
/* Logo */
.logo {
	float: left;
	width: 500px;
	margin-right: 20px;
}
.subpage .logo { width:400px; }
.subpage .logo img {
	float: left;
	width: 100%;
}
/* Right Menu */
.right_menu { float: right; }
.right_menu a {
	float: left;
	position: relative;
	margin-left: 20px;
}
.right_menu .fa {
	margin-left: 10px;
	color: black;
	font-size: 10px;
}
.textsize-s .right_menu .fa {font-size: 10px;}
.textsize-m .right_menu .fa {font-size: 12px;}
.textsize-l .right_menu .fa {font-size: 14px;}
/* Google Search */
.google_search {
	float: right;
	padding: 10px 0;
}
.google_search label {
	float: left;
	width:140px;
}
.google_search label input { width:100%; }
.google_search button {
	float: right;
	min-width: 60px;
	margin-left: 6px;
}
/* QR */
.qr {
	float: right;
	width: 50px;
	margin-left: 20px;
}

/*---- Navigation ----*/
.navigation {
	float: left;
	width: 100%;
	line-height: 40px;
	background-color: #FFBB33;
	text-align: center;
}
.navigation .fa { margin-right: 5px; }
.left_menu {
	float: left;
	background-color: #C94240;
}
.left_menu a {
	float: left;
	position: relative;
	padding: 0 15px;
	color: white;
	-webkit-transition: background-color 200ms linear;
	   -moz-transition: background-color 200ms linear;
	        transition: background-color 200ms linear;
}
.left_menu a:hover { background-color: #B53633; }
.left_menu a:after{
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 1px;
	height: 20px;
	margin-top: -10px;
	background-color: rgba(0, 0, 0, 0.10);
}
.left_menu a:first-child:after { display:none; }

.center_menu { float: right; }
.center_menu li { float: left; }
.center_menu li a {
	position: relative;
	float: left;
	line-height: 36px;
	color: black;
	font-weight: bold;
	padding: 2px 15px 0;
	border-bottom: 2px solid transparent;
	-webkit-transition: background-color 200ms linear;
	   -moz-transition: background-color 200ms linear;
	        transition: background-color 200ms linear;
}
.center_menu li a:hover { background-color: #FFC551; }
.center_menu li a.current { border-color: #666; }
.center_menu li a:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 1px;
	height: 20px;
	margin-top: -10px;
	background-color: rgba(0, 0, 0, 0.10);
}
.center_menu li:first-child a:after { display:none; }
/* Mobile Navigation */
.mobile_nav {
	display: none;
	float: right;
	position: relative;
	width: 50px;
	height: 40px;
	background-color: #FFBB33;
	cursor: pointer;
	-webkit-transition: all 250ms linear;
	   -moz-transition: all 250ms linear;
	        transition: all 250ms linear;
}
.mobile_nav:hover { background-color: #FFC551; }
.mobile_nav > span{
	position: absolute;
	top: 50%; left: 50%;
	width: 20px;
	height: 3px;
	background-color: #FFFFFF;
	margin-left: -10px;
	-webkit-border-radius: 3px;
	   -moz-border-radius: 3px;
	        border-radius: 3px;
	-webkit-transition: all 250ms linear;
	   -moz-transition: all 250ms linear;
	        transition: all 250ms linear;
}
.mobile_nav .bar01{ margin-top: -6px; }
.mobile_nav .bar02{ margin-top: -1.5px; }
.mobile_nav .bar03{ margin-top: 4px; }

.mobile_nav.open .bar02 { opacity:0; }
.mobile_nav.open .bar01{
	margin-top: -1px;
	-webkit-transform: rotate(45deg);
	   -moz-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.mobile_nav.open .bar03{
	margin-top: -1px;
	-webkit-transform: rotate(-45deg);
	   -moz-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}
/*---- History Menu ----*/
.history_menu {
	float: left;
	width: 100%;
	margin: 10px 0;
	color: black;
}
.history_menu ul {
	float: left;
	width: 100%;
}
.history_menu ul li {
	float: left;
	position: relative;
}
.history_menu ul li:after {
	content: "\f0da";
	position: relative;
	margin: 0 10px;
	
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.history_menu ul li:last-child:after { display: none; }

/*---- Body ----*/
.body {
	float: left;
	width: 100%;
}
/* Main Banner */
.main_banner {
	float: left;
	width: 66.666%;
	padding-right: 3px;
}
/* Large Images Wrapper */
.large_imgs_wrapper {
	float: left;
	position: relative;
	width: 100%;
	margin-bottom: 6px;
	overflow: hidden;
}
.large_imgs_wrapper ul {
	float: left;
	position: relative;
	width: 100%;
	-webkit-transition: -webkit-transform 250ms linear;
	-moz-transition: -moz-transform 250ms linear;
	transition: transform 250ms linear;
}
.large_imgs_wrapper ul li {
	float: left;
	width: 100%;
}

.large_imgs_wrapper ul li:nth-child(1n) { background-color: #FFCC66; }
.large_imgs_wrapper ul li:nth-child(2n) { background-color: #FFF866; }
.large_imgs_wrapper ul li:nth-child(3n) { background-color: #BDDE5C; }
.large_imgs_wrapper ul li:nth-child(4n) { background-color: #66C7EB; }
.large_imgs_wrapper ul li:nth-child(5n) { background-color: #C99DDE; }

.large_imgs_wrapper ul li figure img { width: 100%; }
.large_imgs_wrapper ul li figure figcaption {
	padding: 9px 10px;
	color: black;
	font-weight: bold;
	height:60px;
}
.bullets {
	position: absolute;
	/*top: 10px;*/
	bottom:100px;
	left: 0;
	width: 100%;
	height: 10px;
	text-align: center;
}
.bullets span {
	display: inline-block;
	width: 10px;
	height: 10px;
	border: 3px solid rgba(255,255,255,0.75);
	margin: 0 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	cursor: pointer;
	-webkit-transition: border-color 250ms linear, background-color 250ms linear;
	-moz-transition: border-color 250ms linear, background-color 250ms linear;
	transition: border-color 250ms linear, background-color 250ms linear;
}
.bullets span:hover { border-color: white;}
.bullets span.current {
	background-color: white;
	border-color: white;
}
.left-arrow, .right-arrow {
	position: absolute;
	top: 50%;
	width: 40px;
	height: 40px;
	line-height: 40px;
	margin-top: -38px;
	background-color: rgba(0,0,0,0.25);
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	cursor: pointer;
	text-align: center;
	font-size: 20px;
	-webkit-transition: background-color 250ms linear;
	-moz-transition: background-color 250ms linear;
	transition: background-color 250ms linear;
}
.left-arrow { left: 20px;}
.right-arrow { right: 20px;}
.left-arrow:hover, .right-arrow:hover { background-color: rgba(0,0,0,0.35);}
.left-arrow .fa, .right-arrow .fa {
	color: white;
}
/*---- Aside ----*/
.aside{
	float: right;
	width: 33.333%;
	padding-left: 3px;
}
/* Banner Style 1 */
.banner_style01 .banner_title, .banner_style01 .banner_description, .banner_style02 .banner_title, .banner_style02 .banner_description, .video_banner, .solid_banner {
	-webkit-transition: background-color 200ms linear, border-color 200ms linear;
	   -moz-transition: background-color 200ms linear, border-color 200ms linear;
	        transition: background-color 200ms linear, border-color 200ms linear;
}
.banner_style01 {
	float: left;
	position: relative;
	width: 100%;
	min-height: 78px;
	margin-bottom: 6px;
	padding: 10px 30px 10px 15px;
	border-width: 1px;
	background-color: #F9F9F9;
	border-style: solid;
	border-left-width: 5px;
	-webkit-transition: background-color 250ms linear;
	-moz-transition: background-color 250ms linear;
	transition: background-color 250ms linear;
}
.banner_style01:after {
	content:"";
	position: absolute;
	top: 50%; right: 10px;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	content:"\f054";
	font:normal normal normal 14px/1 FontAwesome;
	color: #CCC;
	font-size: 10px;
	text-rendering:auto;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
}
.banner_style01:hover { background-color: #EAEAEA;}
.banner_style01 .banner_title {
	font-weight: bold;
	color: #1B6596;
	font-weight: bold;
	font-size: 14px;
}
.textsize-s .banner_style01 .banner_title { font-size: 14px; }
.textsize-m .banner_style01 .banner_title { font-size: 16px; }
.textsize-l .banner_style01 .banner_title { font-size: 18px; }
.banner_style01 .banner_description { color: #666; }
.banner_green { border-color: #B5C23A; }
.banner_blue {	border-color: #4587C0; }
.banner_red { border-color: #C94240; }

/* Video Banner */
.small-banners {
	margin: 0 -3px;
}
.small-btn {
	float: left;
	width: 100%;
	margin-bottom: 6px;
}
.small-btn > span {
	float: left;
	width: 25%;
	padding: 3px;
}
.small-btn > span a {
	float: left;
	position: relative;
	width: 100%;
	padding: 10px;
	padding: 10px 30px 10px 10px;
	color: black;
	font-weight: bold;
	-webkit-transition: background-color 250ms linear;
	-moz-transition: background-color 250ms linear;
	transition: background-color 250ms linear;
}
.small-btn > span a:after {
	content:"";
	position: absolute;
	top: 50%; right: 10px;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	content:"\f054";
	font:normal normal normal 14px/1 FontAwesome;
	color: white;
	font-size: 10px;
	text-rendering:auto;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
}

.small-btn > span a:hover { colorblack; }
.small-btn > span a span {
	font-weight: bold;
	margin-right: 10px;
	font-size: 14px;
}
.textsize-s .small-btn > span a span { font-size: 14px; }
.textsize-m .small-btn > span a span { font-size: 16px; }
.textsize-l .small-btn > span a span { font-size: 18px; }

.small-btn > span:nth-child(1n) a { background-color: #FFD98C; }
.small-btn > span:nth-child(1n) a:hover { background-color: #FFCC66; }
.small-btn > span:nth-child(2n) a { background-color: #FFFA8C; }
.small-btn > span:nth-child(2n) a:hover  { background-color: #FFF866; }
.small-btn > span:nth-child(3n) a { background-color: #CEE685; }
.small-btn > span:nth-child(3n) a:hover  { background-color: #BDDE5C; }
.small-btn > span:nth-child(4n) a { background-color: #8CD5F0; }
.small-btn > span:nth-child(4n) a:hover  { background-color: #66C7EB; }
/* Solid Banner */
.solid_banner {
	float: left;
	position:relative;
	width: 100%;
	min-height: 78px;
	border: 1px solid #9336B2;
	border-left-width: 5px;
	background-color: #F9F9F9 !important;
	padding: 10px 30px 10px 15px;
	margin-bottom: 6px;
	font-weight: bold;
	color: #1B6596;
	font-size: 14px;
	-webkit-transition: background-color 250ms linear;
	-moz-transition: background-color 250ms linear;
	transition: background-color 250ms linear;
}
.left_side .solid_banner { min-height: auto !important; }
.solid_banner:after {
	content:"";
	position: absolute;
	top: 50%; right: 10px;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	content:"\f054";
	font:normal normal normal 14px/1 FontAwesome;
	color: #CCC;
	font-size: 10px;
	text-rendering:auto;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
}
.textsize-s .solid_banner { font-size: 14px; }
.textsize-m .solid_banner { font-size: 16px; }
.textsize-l .solid_banner { font-size: 18px; }
.solid_banner:hover {
	background-color: #EAEAEA !important;
	color: #1B6596;
}
.solid_banner.red_btn { border-color: #C94240; }
.solid_banner.darkblue_btn { border-color: #4587C0; }
.solid_banner.deepsea_btn { border-color: #B5C23A; }
/* Banner Wrapper */
.banners_wrapper {
	float: left;
	width: 100%;
}
.banner_style02 {
	float: left;
	width: 33.333%;
}
.banner_style02 div {
	float: left;
	width: 100%;
	padding: 15px 10px;
	min-height:75px;
	-webkit-transition: background-color 250ms linear;
	-moz-transition: background-color 250ms linear;
	transition: background-color 250ms linear;
}
.banner_style02 .banner_title {
	display: block;
	position: relative;
	font-weight: bold;
	color: black;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 14px;
}
.textsize-s .banner_style02 .banner_title { font-size: 14px; }
.textsize-m .banner_style02 .banner_title { font-size: 16px; }
.textsize-l .banner_style02 .banner_title { font-size: 18px; }
.banner_style02 .banner_description {
	display: block;
	border-top: none;
	color: black;
	font-weight: bold;
	padding-top: 5px;
	font-size: 18px;
}
.textsize-s .banner_style02 .banner_description { font-size: 18px; }
.textsize-m .banner_style02 .banner_description { font-size: 20px; }
.textsize-l .banner_style02 .banner_description { font-size: 22px; }
.banners_wrapper a:nth-child(1n) { padding: 0 4px 0 0; }
.banners_wrapper a:nth-child(2n) { padding: 0 2px; }
.banners_wrapper a:nth-child(3n) { padding: 0 0 0 4px; }
.banners_wrapper a:nth-child(1n) div { background-color: #BDDE5C; }
.banners_wrapper a:nth-child(1n) div:hover { background-color: #A3CB29; }
.banners_wrapper a:nth-child(2n) div { background-color: #66C7EB; }
.banners_wrapper a:nth-child(2n) div:hover { background-color: #2DB1E3; }
.banners_wrapper a:nth-child(3n) div { background-color: #C99DDE; }
.banners_wrapper a:nth-child(3n) div:hover { background-color: #AB66CC; }
/* Blocks Wrapper */
.blocks_wrapper {
	float: left;
	position: relative;
	width: 100%;
	margin-top: 17px;
	overflow: hidden; 
}
.blocks_wrapper .blocks-slider {
	margin:0 -3px;
}
.blocks_wrapper .blocks-slider > div {
	float: left;
	position: relative;
	width: 100%;
	-webkit-transition: -webkit-transform 250ms linear;
	-moz-transition: -moz-transform 250ms linear;
	transition: transform 250ms linear;
}
.blocks_wrapper .blocks-slider > div > div {
	float: left;
	width: 100%;
}
.blocks_wrapper .blocks-slider > div > div > div {
	float: left;
	width: 25%;
	padding: 3px;
}
.blocks_wrapper .blocks-slider > div > div > div a{
	float: left;
	position: relative;
	width: 100%;
	min-height: 75px;
	padding: 10px 10px 10px 50px;
	border: 1px solid #FFD98C;
	background-color: #FFD98C;
	border-width:3px !important;
	-webkit-transition: background-color 250ms linear, border-color 250ms linear;
	-moz-transition: background-color 250ms linear, border-color 250ms linear;
	transition: background-color 250ms linear, border-color 250ms linear;
}
.blocks_wrapper .blocks-slider > div > div > div a:hover {
	background-color: #FFCB5E;
}
.blocks_wrapper .blocks-slider > div > div > div a .number {
	position: absolute;
	top: 10px; left: 10px;
	min-width: 30px;
	height: 30px;
	line-height: 30px;
	background-color: white;
	color: black;
	font-size: 12px !important;
	font-weight: bold;
	text-align: center;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.textsize-s .blocks_wrapper .blocks-slider > div > div > div a .number{ font-size: 14px; }
.textsize-m .blocks_wrapper .blocks-slider > div > div > div a .number { font-size: 16px; }
.textsize-l .blocks_wrapper .blocks-slider > div > div > div a .number { font-size: 18px; }
.blocks_wrapper .blocks-slider > div > div > div a .content {
	color: black;
	font-weight: bold;
}
.blocks_wrapper .blocks-slider > div > div a .content .red_text {
	font-weight: normal;
	font-size: 10px;
}
.textsize-s .blocks_wrapper .blocks-slider > div > div > div a .content .red_text { font-size: 10px; }
.textsize-m .blocks_wrapper .blocks-slider > div > div > div a .content .red_text { font-size: 12px; }
.textsize-l .blocks_wrapper .blocks-slider > div > div > div a .content .red_text { font-size: 14px; }
.blocks_wrapper > .button {
	margin-top: 3px;
	min-width: 0 !important;
}

.blocks_wrapper .blocks-slider > div > div:nth-child(odd) > div:nth-child(even) a, .blocks_wrapper .blocks-slider > div > div:nth-child(even) > div:nth-child(odd) a{
	border: 1px solid #FFD98C;
	background-color: white;
}
.blocks_wrapper .blocks-slider > div > div:nth-child(odd) > div:nth-child(even) a:hover, .blocks_wrapper .blocks-slider > div > div:nth-child(even) > div:nth-child(odd) a:hover {
	background-color: #F9F9F9;
}
.blocks_wrapper .blocks-slider > div > div:nth-child(odd) > div:nth-child(even) a .number, .blocks_wrapper .blocks-slider > div > div:nth-child(even) > div:nth-child(odd) a .number {
	background-color: #FFD98C;
}
/* New Wrapper */
.news_wrapper {
	float: left;
	width: 100%;
	margin-top: 20px;
}
.news_wrapper ul {
	float: left;
	width: 100%;
	margin: 20px 0;
	list-style: none;
}
.news_wrapper ul li {
	float: left;
	width: 100%;
	margin: 0;
}
.news_wrapper ul li a{
	float: left;
	width: 100%;
	display: table;
	padding: 6px 10px;
	-webkit-transition: background-color 200ms linear;
	   -moz-transition: background-color 200ms linear;
	        transition: background-color 200ms linear;
}
.news_wrapper ul li a:hover {
	background-color: #D3EFFA;
}
.news_wrapper ul li a div {
	display: table-cell;
	vertical-align: middle;
}
.news_wrapper ul li:nth-child(even) { background-color: #FBFAF7; }
.news_wrapper ul li a .date {
	width: 100px;
	color: black;
	padding-right: 20px;
}
.news_wrapper ul li a .description .red_text {
	margin-left: 10px;
	font-style: italic;
}
/*---- Article ----*/
.article {
	float: right;
	width: 74%;
	padding-left: 20px;
}
.nosidebar .article, .nosidebar.article {
	float: left;
	width: 100%;
	padding: 0;
}

.sitemap li {
	position: relative;
	z-index: 10;
}
.sitemap div > ul { position: relative; }
.sitemap div > ul:before {
	content: "";
	position: absolute;
	top: 8px;
	left: 21px;
	bottom: 9px;
	width: 1px;
	background-color: #EEEADA;
}
.sitemap div > ul li > ul li > ul { position: relative; }
.sitemap div > ul li > ul li > ul:before {
	content: "";
	position: absolute;
	top: -16px;
	left: 1px;
	bottom: 8px;
	width: 1px;
	background-color: #EEEADA;
}

.sitemap div > ul li > ul li { position: relative; }
.sitemap div > ul li > ul li:before {
	content: "";
	position:absolute;
	top: 9px;
	left: -18px;
	width: 18px;
	height: 1px;
	background-color: #EEEADA;
}

.bullet_list { padding-left: 20px; }
.bullet_list p {position: relative; }
.downloads {
	position: relative;
	padding-left: 0 !important;
}
.downloads li {
	position: relative;
	list-style: none;
	margin-left: 30px !important;
	color: #3498db;
}
.downloads ul { margin-top: 0 !important;}
.downloads li:before {
	content:"\f111";
	position: absolute;
	top: 50%; left: -25px;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	font:normal normal normal 14px/1 FontAwesome;
	color: #888;
	font-size: 6px;
	text-rendering:auto;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
}
/*---- Toggle ----*/
a.toggle-btn {
	position: relative;
	margin-left: -45px;
	display: inline-block;
	width: 45px;
	height: 16px;
	line-height: 16px;
	text-align: center;
	cursor: pointer;
	font-size: 14px;
}
span.toggle-btn {
	margin-left: -0 !important;
	width: auto !important;
	height: auto !important;
	text-align: left !important;
	cursor: pointer !important;
}
.toggle-wrap { list-style: none !important;}
.toggle-wrap:before { display: none !important; }

/*---- Map ----*/
.map-navi {
	float: left;
	width: 100%;
	margin-bottom: 50px;
	background-color: #374755;
	border: 1px solid #2D3944;
}
.map-navi ul {
	display: table;
	width: 100%;
	margin: 0;
	list-style: none;
}
.map-navi ul li {
	display: table-cell;
	margin: 0 1px;
	border-right: 1px solid #2D3944;
}
.map-navi ul li:last-child { border-right: none;}
.map-navi ul li a {
	position: relative;
	display: block;
	text-align: center;
	padding: 10px 20px 10px 10px;
	font-weight: bold;
	text-align: center;
	color: white;
	-webkit-transition: background-color 200ms linear;
	   -moz-transition: background-color 200ms linear;
	        transition: background-color 200ms linear;
}
.map-navi ul li a:after {
	content:"";
	position: absolute;
	top: 50%; right: 10px;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	content:"\f054";
	font:normal normal normal 14px/1 FontAwesome;
	color: #4D6377;
	font-size: 10px;
	text-rendering:auto;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	-webkit-transition: color 200ms linear;
	   -moz-transition: color 200ms linear;
	        transition: color 200ms linear;
}
.map-navi ul li a:hover { background-color: #445869; }
.map-navi ul li a:hover:after { color: white; }
.table-wrap {
	position: relative;
	overflow: auto;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.map thead th {
	background-color: #4587C0 !important;
	color: white;
	font-weight: bold;
}
.map th, .map td {
	white-space: nowrap;
}
.map th, .map td {
	white-space: nowrap;
}
.map th:first-child, .map td:first-child, .map th:nth-child(4n), .map td:nth-child(4n) {
	min-width: 148px !important;
	white-space: normal !important;
}
.box_list li {
	margin: 0 0 20px 0 !important;
	list-style: none;
}
.box_list li:last-child { margin-bottom: 0 !important;}
.box_list .box {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 100%;
	border: 1px solid #EEEADA;
	background-color: #FBFAF7;
	padding-bottom: 2px;
}
.box_list .number {
	position:absolute;
	top: 15px;
	left: 10px;
	width: 30px;
	height: 30px;
	line-height: 30px;
	font-weight: bold;
	text-align: center;
	color: white;
	-webkit-border-radius: 30px;
	   -moz-border-radius: 30px;
	        border-radius: 30px;
}
.box_list .description { padding-left: 50px; }
.box_list .description .title {
	border-bottom: 1px solid #EEEADA;
	padding: 5px 10px 5px 0;
	font-weight: bold;
	margin-bottom: 2px;
}
.box_list .description .content {
	display: inline-block;
	vertical-align: top;
	width: 100%;
	padding: 2px 10px 2px 0;
}
.box_list .description .content input {	margin-right: 10px; }

.green_number .number { background-color: #00CC67; }
.orange_number .number { background-color: #FF6501; }
.box_list.single_line li { margin-bottom: 5px !important; }
.box_list.single_line .number { top: 8px; }
.box_list.single_line .description { padding:10px 0 10px 50px; }


.list_wrapper ul { list-style: none; }
.list_wrapper ul li {
	margin: 0;
	border-bottom: 1px dashed #EEEADA;
}
.list_wrapper ul li a{
	width: 100%;
	display: table;
	padding: 6px 10px;
	-webkit-transition: background-color 200ms linear;
	   -moz-transition: background-color 200ms linear;
	        transition: background-color 200ms linear;
}
.list_wrapper ul li a:hover { background-color: #D3EFFA; }
.list_wrapper ul li a div {
	display: table-cell;
	vertical-align: middle;
}
.list_wrapper ul li a .date {
	width: 100px;
	color: black;
}
.list_wrapper ul li a .description .red_text {
	margin-left: 10px;
	font-style: italic;
}

/* caption */
.wp-caption { max-width: 100%; }
.wp-caption.left {
	float: left;
	position: relative;
	z-index: 1;
	margin: 0 10px 10px 0;
}
.wp-caption.right {
	float: right;
	position: relative;
	z-index: 1;
	margin: 0 0 10px 10px;
}
.wp-caption a {
	display: inline-block;
	vertical-align: top;
	width: 100%;
}
.wp-caption img {
	float: none !important;
	max-width: 100% !important;
	margin: 0 !important;
}
.wp-caption-text { color: black; }

/*---- Left Side Bar ----*/
.left_side {
	float: left;
	width: 26%;
}
.left_side .solid_banner:last-child { margin-bottom: 0; }
/* Side Menu */
.side_menu {
	display: block;
	margin-bottom: 20px;
}
.side_menu > li {
	display: block;
	border-bottom: 1px solid #E8E6E0;
}
.side_menu > li:last-child { border-bottom: none; }
.side_menu > li a {
	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 100%;
	padding: 9px 10px 9px 30px;
	background-color: #F6F4EE;
	color: black;
	font-size: 14px;
	-webkit-transition: background-color 200ms linear;
	   -moz-transition: background-color 200ms linear;
	        transition: background-color 200ms linear;
}
.textsize-s .side_menu > li a { font-size: 14px; }
.textsize-m .side_menu > li a { font-size: 16px; }
.textsize-l .side_menu > li a { font-size: 18px; }
.side_menu > li a:hover { background-color: #F7F6F1; }
.side_menu li a.current { border-left: 2px solid #666; }
.side_menu > li > a:before {
	content: "\f0a9";
	position: absolute;
	top: 10px;
	left: 10px;
	color: black;
	
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.side_menu > li > ul > li { border-top: 1px solid #E8E6E0; }
.side_menu > li > ul > li a {
	background-color: #edebe6;
	padding: 9px 10px 9px 50px;
	color: black;
}
.side_menu > li > ul > li a:before {
	content: "";
	position: absolute;
	top: 16px;
	left: 30px;
	width:5px;
	height:5px;
	background-color: #888;
	-webkit-border-radius: 5px;
	   -moz-border-radius: 5px;
	        border-radius: 5px;
}
/*---- Footer ---*/
/* Footer Menu */
.footer_menu {
	float: left;
	width: 100%;
	text-align: center;
	margin-top: 20px;
}
.footer_menu a {
	display: inline-block;
	vertical-align: top;
	height: 30px;
	line-height: 30px;
	background-color: #C94240;
	border-right: 1px solid white;
	padding: 0 10px;
	color: white;
	margin: 0 -2px;
	-webkit-transition: background-color 200ms linear;
	   -moz-transition: background-color 200ms linear;
	        transition: background-color 200ms linear;
}
.footer_menu a:hover { background-color: #B53633; }
.footer_menu a:last-child { border: none; }
.footer_menu a .fa { margin-right: 5px; }
.footer_menu a .fa-arrow-right { margin:0 0 0 5px; }
.footer {
	float: left;
	position: relative;
	z-index: 1;
	width: 100%;
	padding: 20px 0;
	text-align: center;
}
.footer .centerdiv { padding: 0 10px; }
.footer-links, .footer-links ul, .footer .copyrights {
	float: left;
	width: 100%;
}
.footer-links ul {
	margin-bottom: 5px;
}
.footer-links ul li {
	display: inline-block;
	margin:0 5px;
}
.footer-links ul li a {
	display: block;
	color: black;
	font-size: 12px !important;
	line-height: 1.5em !important;
}
.footer-links ul li a:hover { color: #888; }
.footer-links ul li a .fa { color: #a19f95; }
.footer .copyrights {
	color: black;
	line-height: 1.5em !important;
	font-size: 12px !important;
}
/*---- Footer Sitemap ----*/
.footer-sitemap {
	margin-bottom: 20px;
}
.footer-sitemap, .footer-sitemap > div ul, .footer-sitemap > div li, .footer-sitemap > div ul li div {
	float: left;
	width: 100%;
	text-align: left;
}
.footer-sitemap a {
	-webkit-transition: color 200ms linear;
	   -moz-transition: color 200ms linear;
	        transition: color 200ms linear;
}
.footer-sitemap > div > ul > li {
	padding: 3px;
}
.footer-sitemap > div > ul > li > ul > li:first-child { border: none;}
/*.footer-sitemap > div > ul > li > div .link { padding-left: 30px; }*/
/*.footer-sitemap > div > ul > li > div .plus-btn { left: 3px;}*/
.footer-sitemap > div ul li div { position: relative; }
.footer-sitemap > div > ul > li > div {
	border: 1px solid #D5D5D5;
	font-weight: bold;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	-webkit-transition: border-color 200ms linear;
	   -moz-transition: border-color 200ms linear;
	        transition: border-color 200ms linear;
}
.footer-sitemap > div > ul > li > div:hover { border-color: #B5B5B5; }
.footer-sitemap > div > ul > li > div .link { color: black; }
.footer-sitemap > div > ul > li > div .link:hover { color: #888; }
.footer-sitemap > div {
	float: left;
	width: 100%;
}
.footer-sitemap > div > ul > li {
	float: left;
	width: 25%;
	border: none;
}
.footer-sitemap > div > ul ul { padding-left: 20px; }
.footer-sitemap > div li { border-top: 1px dashed #CCC; }
.footer-sitemap > div .link {
	float: left;
	width: 100%;
	padding: 3px 3px 3px 30px;
	color: black;
	font-size: 12px !important;
}
.footer-sitemap > div .link:hover { color: #AAA; }
.plus-btn {
	position: absolute;
	top: 50%; left: 0;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	line-height: 24px;
	font-size: 14px !important;
	text-align: center;
	background-color: #DDD;
	-webkit-transition: background-color 200ms linear, color 200ms linear !important;
	   -moz-transition: background-color 200ms linear, color 200ms linear !important;
	        transition: background-color 200ms linear, color 200ms linear !important;
}
.plus-btn:hover {
	background-color: #B5B5B5;
	color: white;
}
/*---- Form ----*/
.form_row {
	float: left;
	width: 100%;
	margin: 10px 0;
}
.form_row:first-child { margin-top: 0; }
.form_row:last-child { margin-bottom: 0; }
.form_row .label {
	float: left;
	width: 25%;
	padding: 6px 20px 6px 0;
}
.form_row .content {
	float: left;
	width: 75%;
}
.form_row .content .full_width_cell {
	float: left;
	width: 100%;
	margin: 3px 0;
}
.form_row .content .full_width_cell:first-child { margin-top: 0; }
.form_row .content .full_width_cell:last-child { margin-bottom: 0; }
.form_row > div input, .form_row > div textarea, .form_row > div button, .form_row > div .button {
	float: left;
	margin: 0 3px;
	max-width: 100%;
 }
.form_row > div span {
	float: left;
	text-align: center;
	line-height: 30px;
	margin: 0 3px;
}
.confirmation .form_row {
	margin: 0;
	border-bottom: 1px dashed #EEEADA;
}
.confirmation .form_row:last-child { border: none; }
.confirmation .form_row .label {
	min-width: 100px;
	padding: 10px 20px 10px 0;
}
.confirmation .form_row .content {
	width: auto;
	padding: 10px 0;
}
.confirmation .form_row:last-child .content { padding-bottom: 0; }
/* Input */
input[type="text"], textarea {
	display: inline;
	height:30px;
	border: 1px solid #D8D8D8;
	background-color: white;
	padding: 5px 10px;
	margin: 0;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: black;
	font-size: 12px;
	-webkit-border-radius: 2px;
	   -moz-border-radius: 2px;
	        border-radius: 2px;
}
.textsize-s input[type="text"], .textsize-s textarea { font-size: 14px; }
.textsize-m input[type="text"], .textsize-m textarea { font-size: 16px; }
.textsize-l input[type="text"], .textsize-l textarea { font-size: 18px; }
textarea {
	height: 100px;
	resize: vertical;
}
input::-webkit-input-placeholder {
   color: #AAA;
   opacity: 1;
}
input:-moz-placeholder {
   color: #AAA;
   opacity: 1;
}
input::-moz-placeholder {
   color: #AAA;
   opacity: 1;
}
input:-ms-input-placeholder {  
   color: #AAA;
   opacity: 1;
}
input[type="text"].error, textarea.error {
	border-color: #FB8585 !important;
	background-color: #FFF4F4 !important;
}
/* Button */
button, .button {
	display: inline;
	min-width: 90px;
	height: 30px;
	line-height: 18px;
	border: none;
	background-color: #DDD;
	padding: 6px 10px;
	margin: 0;
	cursor: pointer;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: normal;
	color: black;
	text-align: center;
	-webkit-border-radius: 2px;
	   -moz-border-radius: 2px;
	        border-radius: 2px;
	-webkit-transition: background-color 200ms linear;
	   -moz-transition: background-color 200ms linear;
	        transition: background-color 200ms linear;
}
button:hover, .button:hover {
	color: black;
	background-color: #E8E8E8;
}
.orange_btn { background-color: #FFBB33; }
.orange_btn:hover { background-color: #FFC551; }
.blue_btn {
	background-color: #4587C0;
	color: white !important;
}
.blue_btn:hover { background-color: #5B95C8; }
.red_btn { background-color: #FB8585; }
.red_btn:hover { background-color: #FC9797; }
.darkblue_btn { background-color: #7DA2ED; }
.darkblue_btn:hover { background-color: #90B0F0; }
.deepsea_btn { background-color: #3FD8A0; }
.deepsea_btn:hover { background-color: #5CDEAE; }

.clear {
	clear: both;
	display: block;
	visibility: hidden;
	overflow: hidden;
	width: 0;
	height: 0;
}
.red_text { color: #C94240; }
.align_right {
	float: right;
	margin-left: 6px;
}
.align_left {
	float: left;
	margin-right: 6px;
}
.col_half {
	float: left;
	width: 50%;
	padding-right: 20px;
}
.col_half:first-child { padding-right: 10px; }
.col_half:last-child {
	padding-left: 10px;
	padding-right: 0;
}
.counter {
	padding: 4px 8px;
	margin-right: 10px;
	background-color: #FF9933;
	text-align: center;
	font-size: 10px;
	-webkit-border-radius: 20px;
	   -moz-border-radius: 20px;
	        border-radius: 20px;
}
.textsize-s .counter{ font-size: 10px; }
.textsize-m .counter { font-size: 12px; }
.textsize-l .counter { font-size: 14px; }

.white_bordered th, .white_bordered td{ border-color: white; }
.orange_bordered th, .orange_bordered td{ border-color: #FF8000; }
.grey_bordered th, .grey_bordered td{ border-color: #CCC; }
th.blue_bg { background-color: #B0B0FF; }
td.blue_bg { background-color: #E1E1FF; }
th.pink_bg { background-color: #FFB5FF; }
td.pink_bg { background-color: #FFEEFF; }
th.green_bg { background-color: #AAFFAA; }
td.green_bg { background-color: #F4FFF4; }
th.lightorange_bg { background-color: #FFDFBF; }
td.lightorange_bg { background-color: #FFF8F0; }
.orange_bg thead, .orange_bg th{
	background-color: #FF8000;
	color: white;
}
.orange_bg tbody, .orange_bg td { background-color: #FFF5EC; }
.white_bg thead, .white_bg th {
	background-color: #F7F5ED;
	color: black;
}
.white_bg tbody, .white_bg td { background-color: white; }
td.lightgrey_bg { background-color: #F7F5ED; }
.blueviolet_bg th { background-color: #DDDDFF; }
.blueviolet_bg td { background-color: #F6F6F6; }
.green_bg th { background-color: #99CC99; }
.green_bg td { background-color: #F6F6F6; }
.green_bg tbody th {
	background-color: #E6E6E6;
	font-weight: normal;
	text-align: left;
}
td.skyblue_bg { background-color: #BBFFFF; }
td.lightblue_bg { background-color: #E8FFFF; }
td.lightyellow_bg { background-color: #FFFFDF; }
.lightyellow_bg th { background-color: #FFF8DC; }
.lightyellow_bg td { background-color: #FFFFE0; }
td.lightbrown_bg { background-color: #FFEBCD; }
.noborder tr, .noborder th, .noborder td {
	border: none !important;
	vertical-align: top;
	padding: 0 5px;
}
.noborder table { margin: 0 !important;}

.style01_button {
	position: relative;
	display: inline-block;
	width: 600px;
	max-width: 100%;
	background-color: #DDD;
	border-left: 3px solid #555;
	text-align: left;
	padding: 8px 50px 8px 20px;
	color: black;
	font-size: 18px;
	line-height: normal;
	-webkit-transition: background-color 200ms linear;
	   -moz-transition: background-color 200ms linear;
	        transition: background-color 200ms linear;
}
.textsize-s .style01_button { font-size: 18px; }
.textsize-m .style01_button { font-size: 20px; }
.textsize-l .style01_button { font-size: 22px; }
.style01_button:hover { background-color: #E3E3E3;}
.style01_button:before {
	content: "\f061";
	position: absolute;
	top: 50%;
	right: 0;
	width: 20px;
	height: 20px;
	line-height: 20px;
	color: black;
	font-size: 14px;
	text-align: center;
	margin: -10px 15px 0 0;
	
	font-family: FontAwesome;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.textsize-s .style01_button:before  { font-size: 14px; }
.textsize-m .style01_button:before  { font-size: 16px; }
.textsize-l .style01_button:before  { font-size: 18px; }
.full_width img{
	float: left;
	width: 100%;
	text-align: center;
	margin: 3px 0;
}

.thumb_list {
	display: inline-block;
	vertical-align: top;
	width: 100%;
	list-style: none !important;
	margin-top: 3px !important;
}
.thumb_list li{
	float: left;
	width: 50%;
	padding: 3px !important;
	margin: 0 !important;
	overflow: hidden;
}
.thumb_list li img {
	float: left;
	width: 100%;
}
.thumb_list li:nth-child(2n+1){ padding: 3px 3px 3px 0 !important; }
.thumb_list li:nth-child(2n+2){ padding: 3px 0 3px 3px !important; }

/* Box Message */
.messagebox{
	max-width: 650px;
	margin: 0 auto;
	text-align: center;
	padding: 36px;
}
.boxtitle{
	display: inline-block;
	vertical-align: top;
	width: 100%;
	color: black;
	font-size: 18px;
	font-weight: bold;
	border-bottom: 2px solid #EEEADA;
	padding-bottom: 10px;
}
.textsize-s .boxtitle{ font-size: 18px; }
.textsize-m .boxtitle { font-size: 20px; }
.textsize-l .boxtitle { font-size: 22px; }
.boxbody{
	display: inline-block;
	vertical-align: top;
	width: 100%;
	padding: 36px 0;
}
.boxfooter{
	display: inline-block;
	vertical-align: top;
	width: 100%;
}

@media only screen and (max-width: 990px){
	.map-navi ul li a {	padding: 10px;}
	.map-navi ul li a:after { display: none; }
	.blocks_wrapper .blocks-slider > div > div > div a { min-height: 90px; }
}
@media only screen and (max-width: 768px){
	.subpage .logo { width: 300px; }
	.google_search {
		position:relative;
		width: 100%;
		padding: 20px 0 0;
	}
	.google_search label {
		position: absolute;
		top: 20px;
		left: 0;
		right: 66px;
		width: auto;
	}
	.main_banner, .aside {
		width: 100%;
		padding: 0;
	}
	.map-navi ul {
		display: block;
	}
	.map-navi ul li {
		display: block;
		width: 100%;
		border-right: none;
		border-bottom: 1px solid #2D3944;
	}
	.map-navi ul li a {
		text-align: left;
		padding: 10px 20px 10px 10px;
	}
	.map-navi ul li:last-child { border-bottom: none; }
	.map-navi ul li a:after { display: block; }
	.blocks_wrapper .blocks-slider > div > div > div a { min-height: 110px;}
	.footer-sitemap > div ul li { width: 100%; }
}
@media only screen and (max-width: 680px){
	.logo{ width: 400px; }
	.qr { width: 40px; }
	.left_side, .article { width: 100%; }
	.article {
		padding-left: 0;
		margin-bottom: 20px;
	}
	.nosidebar .article { margin-bottom: 0; }
	.blocks_wrapper .blocks-slider { margin: 0;}
	.blocks_wrapper .blocks-slider > div > div > div {
		width: 100%;
		padding: 0 !important;
		margin-bottom: 6px;
	}
	.blocks_wrapper .blocks-slider > div > div > div a {
		height: auto;
		min-height: 70px;
	}
	.blocks_wrapper .blocks-slider > div { margin: 0; }
	.copyrights { margin-bottom: 40px;}
	
	.blocks_wrapper .blocks-slider > div > div:nth-child(even) > div:nth-child(odd) a{
		border-color: #FFD98C;
		background-color: #FFD98C;
	}
	.blocks_wrapper .blocks-slider > div > div:nth-child(even) > div:nth-child(odd) a:hover{
		background-color: #FFCC66;
		border-color: #FFCC66;
	}
	.blocks_wrapper .blocks-slider > div > div:nth-child(even) > div:nth-child(odd) a .number{
		background-color: white;
	}
	.blocks_wrapper .blocks-slider > div > div:nth-child(even) > div:nth-child(even) a{
		border-color: #FFD379;
		background-color: white;
	}
	.blocks_wrapper .blocks-slider > div > div:nth-child(even) > div:nth-child(even) a:hover{
		background-color: #F0F0F0;
	}
	.blocks_wrapper .blocks-slider > div > div:nth-child(even) > div:nth-child(even) a .number{
		background-color: #FFD98C;
	}
}
@media only screen and (max-width: 600px){
	.subpage .header {
		padding-bottom: 0;
		margin-bottom: 0;
	}
	.logo{ width: 300px; }
	.subpage .logo { width: 300px; }
	.qr { width: 30px; }
	.banner_style02 {
		width: 100%;
		padding: 0 !important;
		margin-bottom: 6px;
	}
	.small-btn { margin-bottom: 0; }
	.small-btn > span {
		width: 100%;
		padding: 0 3px;
		margin-bottom: 6px;
	}
	.banner_style01 .banner_description { height: auto;	}
	
	.news_wrapper ul li a div, .list_wrapper ul li a div {
		display: block;
		width: 100% !important;
		padding: 0 !important;
	}
	.navigation { background-color: #C94240; }
	.right_menu {
		width: 100%;
		margin: 10px 0;
	}
	.right_menu a {
		margin-left: 0;
		margin-right: 10px;
	}
	.center_menu {
		float: left;
		width: 100%;
		height: 0;
		background-color: #FFBB33;
		overflow: hidden;
	 }
	.center_menu li {
		float: left;
		width:100%;
		margin: 0;
	}
	.center_menu li a {
		float: left;
		width:100%;
		text-align: left;
		padding: 0 15px;
		border-bottom: 1px solid #E5A82E !important;
	}
	.center_menu li:last-child a{ border-bottom: none !important; }
	.center_menu.toggle { height: auto; }
	.mobile_nav { display: block; }
	.col_half {
		float: none;
		width: 100%;
		padding: 0 !important;
	}
	.sitemap .col_half {
		margin-top: 10px;
		border-top: 1px solid #EEEADA;
	}
	.sitemap .col_half:first-child {
		border: none;
		margin-top: 0;
	}
	table[align="left"], table[align="center"], table[align="right"] {
		width: 100%;
		margin: 0 0 10px 0;
	}
	.table-wrap:after {
		content: "\f061";
		position: absolute;
		top: 50%; right: 10px;
		width: 50px;
		height: 50px;
		font-size: 50px;
		line-height: 50px;
		color: #4587C0;
		-webkit-text-shadow: 0 1px 3px grey;
		-moz-text-shadow: 0 1px 3px grey;
		text-shadow: 0 1px 3px grey;
		
		font-family: FontAwesome;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		transform: translateX(0);
		
		-webkit-animation: sliding 1s linear infinite; 
		-moz-animation: sliding 1s linear infinite; 
		animation: sliding 1s linear infinite; 
	}
	@-webkit-keyframes sliding {
		0% { -webkit-transform: translateX(0); }
		25% { -webkit-transform: translateX(5px); }
		50% { -webkit-transform: translateX(0); }
		75% { -webkit-transform: translateX(-5px); }
		100% { -webkit-transform: translateX(0); }
	}
	@-moz-keyframes sliding {
		0% { -moz-transform: translateX(0); }
		25% { -moz-transform: translateX(5px); }
		50% { -moz-transform: translateX(0); }
		75% { -moz-transform: translateX(-5px); }
		100% { -moz-transform: translateX(0); }
	}
	@keyframes sliding {
		0% { transform: translateX(0); }
		25% { transform: translateX(5px); }
		50% { transform: translateX(0); }
		75% { transform: translateX(-5px); }
		100% { transform: translateX(0); }
	}
	.hideArrow:after {
		display: none;
	}
}
@media only screen and (max-width: 480px){
	.logo{ width: 200px; }
	.subpage .logo { width: 200px; }
	.qr {
		width: 20px;
		margin: 0;
	}
	.topnavigation { padding: 0; }
	.topnavigation ul {
		float: left;
		width: 100%;
		text-align: center;
	}
	.topnavigation ul li {
		float:none;
		display: inline-block;
		vertical-align: top;
		margin: 0 10px;
	}
}


table.min_tableth th{ min-width:140px !important;}