@charset "utf-8";

@media screen and (max-width:480px) {
body {
	font-size: 1.2rem; min-width: 0; }

dd, li, caption, th, td, col, p, address {
	font-size: 1.2rem; }

th,td {
	padding: 8px 8px; border: 1px solid #333; vertical-align: top; }

#contents {
	width: 100%;}
main, #siteTop main {
	width: 100%; padding: 0 10px; box-sizing: border-box; float: none; }
main.singleColumn {
	width: 100%; padding: 0 10px; box-sizing: border-box; }
aside, #siteTop aside {
	width: 100%; margin: 0 0 60px 0; padding: 0 10px; box-sizing: border-box; float: none; }
aside section {
	padding: 0;}

h1 {
	font-size: 2.0rem; margin: 0 0 24px 0; padding: 0 0 0 11px; }
h2 {
	font-size: 1.8rem; margin: 0 0 16px 0; padding: 0 0 2px 13px; }
h3 {
	font-size: 1.6rem; margin: 0 0 16px 0; padding: 0 0 0 24px; }
h4 {
	font-size: 1.4rem; margin: 0 0 8px 0; padding: 0 0 0 24px; }
h4:after {
	width: 9px; height: 9px; display: block; content:""; background: #a5d8fb; position: absolute; left: 2px; top: 0.5em; }
h5 {
	font-size: 1.2rem; margin: 0 0 8px 0; }

.resFl { float: none !important; }
.resFr { float: none !important; }

.resColumns.column2 li, .resColumns.column2 li:nth-child(2n), .resColumns.column3 li, .resColumns.column3 li:nth-child(3n), .resColumns.column4 li, .resColumns.column4 li:nth-child(4n), .resColumns.column5 li, .resColumns.column5 li:nth-child(5n) {
	width: 100%; float: none; margin: 0 0 16px 0; }
.resColumns .linkList li:last-child {
	margin: 0 0 40px 0;}

.resTable tr {
	margin: 0 0 -1px 0; display: block; }
.resTable tr:last-child {
	margin: 0;}
.resTable th {
	margin: 0 0 -1px 0;}
.resTable th, table.resTable td {
	width: 100%; display: list-item; list-style-type: none; box-sizing: border-box; }

img.resFl, figure.resFl, img.resFr, figure.resFr {
	margin: 0 auto 16px auto; display: block;}
.resImgW210, .resImgW320 {
	width: auto;}
figure {
	display: table !important;}
figcaption {
	 font-size: 1rem; }

.disOnlyPC {
	display: none;}
.disOnlySP {
	display: block;}

header {
	margin: 0 0 28px 0; background: url(/common/img/nav_bg.gif); }
.headerInner {
	width: 100%; }

.headerTop {
	width: 100%; height: auto; padding: 0; border: none;}
.headerTop h1 {
	width: 100%; height: auto; margin: 0; padding: 7px 0 5px 15px; border-bottom: 2px solid #75bee9; background: #fff; box-sizing: border-box; }
.headerTop h1 img {
	width: 285px; }

.spMenuBox {
	padding: 12px 10px;}
.spMenuBox2 {
	padding: 12px 10px;}

#headerLink {
	width: 100%; padding: 0; margin: 0 0 10px 0; position: static; }
#headerLink ul {
	width: 100%; text-align: left; margin: 0 0 10px 0;}
#headerLink ul li {
	width: 32%; height: 24px; margin: 0 2% 0 0; padding: 0 4px; display: inline-block; font-size: 1.1rem; letter-spacing: normal; vertical-align: middle; background: #fff; box-sizing: border-box; }
#headerLink ul li:first-child {
	display: none; }
#headerLink ul li:last-child {
	margin: 0;}
#headerLink ul li a {
	padding: 0 0 0 8px; display: block; line-height: 24px; text-align: right; color: #231f20; text-decoration: none; background: url(/common/img/bullet01.svg) no-repeat left center; }
#headerLink ul li:first-child a {
	padding: 0 0 0 22px; background: url(/common/img/bullet02.svg) no-repeat left center;}
#headerLink ul li a:hover {
	text-decoration: none; }

#searchBox {
	width: 100%; height: 24px; float: none;}
#cse-search-box input[type="text"] {
	width : 230px ;
	width : -webkit-calc(100% - 70px) ;
	width : calc(100% - 70px) ;
	height: 24px; margin: 0 10px 0 0; box-sizing: border-box; }

.spMenuToggle {
	width: 100%; height: 42px; display: block; background: url(/common/img/menu_toggle_bg.jpg); -webkit-background-size: 8px 8px; background-size: 8px 8px; }

.spMenuToggle a {
	width: 100%; height: 42px; display: block; text-align: center; color: #0f56a6; text-decoration: none; font-size: 1.8rem; line-height: 42px;}
.spMenuToggle a span {
	padding: 0 0 0 40px; height: 42px; display: inline-block; background: url(/common/img/menu_toggle_btn.png) no-repeat left center; -webkit-background-size: 30px 30px; background-size: 30px 30px; }

.spMenuToggle2 {
	width: 100%; height: 42px; display: block; background: url(/common/img/menu_toggle_bg.jpg); -webkit-background-size: 8px 8px; background-size: 8px 8px; }

.spMenuToggle2 a {
	width: 100%; height: 42px; display: block; text-align: center; color: #0f56a6; text-decoration: none; font-size: 1.8rem; line-height: 42px;}
.spMenuToggle2 a span {
	padding: 0 0 0 40px; height: 42px; display: inline-block; background: url(/common/img/menu_toggle_btn.png) no-repeat left center; -webkit-background-size: 30px 30px; background-size: 30px 30px; }




nav {
	width: 100%; padding: 0; background: none; }
nav ul {
	margin: 0; letter-spacing: -0.6em; line-height: 0;}
nav ul::after {
	content: ""; display: table; clear: both; }
nav ul li {
	width: 48%; height: auto; margin: 0 4% 2% 0; display: inline-block; letter-spacing: normal; }
#siteTop nav ul li {
	height: auto; }
nav ul li:last-child {
	margin: 0 4% 2% 0; }
nav ul li:nth-child(even) {
	margin: 0 0 2% 0;}
nav ul li a {
	width: 100%; height: 0px; padding-top: 34.48%; display: block; text-indent: 100%; white-space: nowrap; overflow:hidden; }
#siteTop nav ul li a {
	height: 0px; }
#siteTop nav ul li a.nav01, nav ul li a.nav01 {
	background: url(/common/img/nav_sp_01.jpg) no-repeat #fff; webkit-background-size: 100% auto; background-size: 100% auto; }
#siteTop nav ul li a.nav02, nav ul li a.nav02 {
	background: url(/common/img/nav_sp_02.jpg) no-repeat #fff; webkit-background-size: 100% auto; background-size: 100% auto; }
#siteTop nav ul li a.nav03, nav ul li a.nav03 {
	background: url(/common/img/nav_sp_03.jpg) no-repeat #fff; webkit-background-size: 100% auto; background-size: 100% auto; }
#siteTop nav ul li a.nav04, nav ul li a.nav04 {
	background: url(/common/img/nav_sp_04.jpg) no-repeat #fff; webkit-background-size: 100% auto; background-size: 100% auto; }
#siteTop nav ul li a.nav05, nav ul li a.nav05 {
	background: url(/common/img/nav_sp_05.jpg) no-repeat #fff; webkit-background-size: 100% auto; background-size: 100% auto; }
.cate01 nav ul li a.nav01 {
	background: url(/common/img/nav_sp_01_on.jpg) no-repeat #fff; webkit-background-size: 100% auto; background-size: 100% auto; }
.cate02 nav ul li a.nav02 {
	background: url(/common/img/nav_sp_02_on.jpg) no-repeat #fff; webkit-background-size: 100% auto; background-size: 100% auto; }
.cate03 nav ul li a.nav03 {
	background: url(/common/img/nav_sp_03_on.jpg) no-repeat #fff; webkit-background-size: 100% auto; background-size: 100% auto; }
.cate04 nav ul li a.nav04 {
	background: url(/common/img/nav_sp_04_on.jpg) no-repeat #fff; webkit-background-size: 100% auto; background-size: 100% auto; }
.cate05 nav ul li a.nav05 {
	background: url(/common/img/nav_sp_05_on.jpg) no-repeat #fff; webkit-background-size: 100% auto; background-size: 100% auto; }
#siteTop nav {
	margin: 0 0 0 0;}
.siteTopImg {
	width: 100%; margin: 0; position: inherit;}

#crumbs {
	width: 100%;}
#crumbs ol {
	width: 100%; margin: 0 auto 18px auto; padding: 0 10px; box-sizing: border-box; list-style: none; }
#crumbs ol:after {
	content: ""; display: table; clear: both; }
#crumbs ol li {
	margin: 0 0.5em 6px 0; padding: 0; float: left;}
#crumbs ol li:before {
	content:"> "}
#crumbs ol li.home:before {
	content:"";}

footer {
	width: 100%; margin: 20px 0 0 0; border-top: 5px solid #75bee9; padding: 20px 0 40px 0; background: #fff;}
.footerInner {
	width: 100%; padding: 0 10px; box-sizing: border-box; }
footer h2 {
	width: 110px; height: auto; margin: 0 0 20px 0; padding: 0; border: none;}

.pageTopBtn {
	width: 40px; height: 40px; position: fixed; right: 10px; bottom: 10px; }
.pageTopBtn a {
	width: 40px; height: 40px; background: url(/common/img/page_top_btn.png) no-repeat; -webkit-background-size: 100% 100%;	background-size: 100% 100%; }
footer ul {
	width: 100%; margin: 0 0 20px 0; position: static; letter-spacing: -0.4em; text-align: left;}
footer ul li {
	margin: 0; display: block; letter-spacing: normal; }
footer ul li:last-child {
	margin: 0;}
footer ul li a {
	padding: 0 0 0 12px; color: #231f20; text-decoration: underline; background: url(/common/img/bullet01.svg) no-repeat left center; }
footer ul li a:hover {
	text-decoration: none; color: #231f20; }

small {
	display: block; text-align: center; font-size: 1.0rem; }

#siteTop #contents h2 {
	font-size: 1.8rem; margin: 0 0 20px 0; padding: 4px 0 0 18px; box-sizing: border-box; background: url(/common/img/top/h2_bg01.gif) no-repeat left top; -webkit-background-size: 18px auto; background-size: 18px auto; }
#siteTop #contents h2 span {
	display: block; padding: 4px 36px 9px 10px;
	background: url(/common/img/top/h2_bg02_sp.gif) no-repeat right bottom , url(/common/img/top/h2_bg03_sp.gif) repeat-x left bottom;
	-webkit-background-size: 51px auto, auto 5px; background-size: 51px auto, auto 5px; }

.newsList dt {
	font-weight: bold; margin: 0 0 4px 0; }
.newsList dd {
	margin: 0 0 20px 0; padding: 0 0 14px 0; background: url(/common/img/top/news_list_border.gif) repeat-x left bottom;}

.cate06 .newsList {
	background: none; }
.cate06 .newsList dt {
	width: 100%; margin: 0 0 4px 0 !important; padding: 0; float: none; background: none; }
.cate06 .newsList dd {
	width: 100%; margin: 0 0 20px 0 !important; padding: 0 0 14px 0 !important; float: none; background: url(/common/img/top/news_list_border.gif) repeat-x left bottom !important; }

.siteTopCont01 li {
	margin: 0 0 30px 0 !important;}
.siteTopCont02 li {
	margin: 0 0 20px 0 !important;}
}