@charset "UTF-8";

@font-face {
	font-family: 'NotoSansCJK Sub';
	font-style: normal;
	font-weight: 500;
	src: local('Noto Sans CJK JP'),
		local('NotoSansCJKjp-Medium'),
		local('NotoSansJP-Medium'),
		url('../fonts/NotoSansCJK-M.woff2') format('woff2'),
		url('../fonts/NotoSansCJK-M.woff') format('woff'),
		url('../fonts/NotoSansCJK-M.otf') format('opentype');
}

/* ==================== 全ページ共通設定 ==================== */
html {
	font-size: 62.5%;
}

body {
	font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-feature-setting : "pkna";
	color: #333;
	position: relative;
}

a {
	text-decoration: none;
	outline: none;
	color: #003399;
}
a:hover {
	text-decoration: underline;
	outline: none;
	color: #003399;
}
a:visited {
	text-decoration: none;
	color: #003399;
}

h2,h3,h4 {
	font-weight: 500;
}

li {
	list-style: none;
}


/*clearfix	IE8以上*/
.clearfix:before,
.clearfix:after {
	display: table;
	content: " ";
}
.clearfix:after {
	clear: both;
}


/* ******ヘッダ****** */
header {
	position: fixed;
	top: 0;
	width: 100%;
	height: 50px;
	border-bottom: 1px solid #aaa;
	background-color: #fff;
	z-index: 10;
}
header h1 {
	position: absolute;
	top: 0;
	left: 5px;
	width: 70%;
	height: auto;
	font-size: 0;
	background: url(../images/header_logo.png) left no-repeat;
	background-size: contain;
}

@media screen and (-webkit-min-device-pixel-ratio:2),(min-resolution: 2dppx){
header h1 {
	position: absolute;
	top: 0;
	left: 5px;
	margin: 0 auto;
	width: 70%;
	height: auto;
	font-size: 0;
	background: url(../images/header_logo@2x.png) left no-repeat;
	background-size: contain;
}
}

header h1 a {
	display: block;
	width: auto;
	height: 50px;
}

/* フッタ */
div#foot_container {
	width: 100%;
	background-color: #003399;
	border-top: 1px solid #aaa;
}

div#foot_container div#footer_menu {
	width: 100%;
	background-color: #c6c6c6;
}

div#foot_container div#footer_menu ul {
	-js-display: flex;
	display: -webkit-box;/*--- Androidブラウザ用 ---*/
	display: -ms-flexbox;/*--- IE10 ---*/
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	width: 100%;
	height: auto;
	font-size: 1.2rem;
}

div#foot_container div#footer_menu li {
	display: block;
	margin: 3px;
	padding: 3px;
	width: 44%;
	border: 1px solid #aaa;
	text-align: center;
	background-color: #dedede;
}

div#foot_container div#footer_menu li a {
	display: block;
	color: #333;
	text-align: center;
}

div#foot_container div#footer_menu li a:hover {
	color: #333;
	text-decoration: none;
}

div#foot_container div#footer {
	position: relative;
	width: 100%;
	height: 40px;
	margin: 0 auto;
	font-size: 1rem;
	color: #fff;
}

div#foot_container div#footer p.copyrights {
	line-height: 40px;
	text-align: center;
}


/* 上に戻るボタン */
.totop {
	position: fixed;
	bottom: 10px;
	right: 5px;
	width: 70px;
	height: 70px;
	z-index: 2;
}
.totop a {
	display: block;
	position: fixed;
	bottom: 10px;
	right: 5px;
	width: 70px;
	height: 70px;
	opacity: 0.6;
}

.totop a:hover {
	display: block;
	position: fixed;
	bottom: 11px;
	right: 5px;
	width: 70px;
	height: 70px;
	opacity: 0.8;
}



/* ====================Drupalコンテンツエリアの設定==================== */
/* 本文コンテンツ */
div#main_container {
	position: relative;
	margin: 50px auto 0;
	width: 100%;
	font-size: 1.2rem;
}

/*トップページ専用 スライダ画像サイズ設定*/
div#main_container #slider-main img {
	width: 100%;
	height: auto;
}

div#main_container #sub_image img {
	display:none;

/*
	width: 100%;
	height: auto;
	margin-bottom: 15px;
*/
}

/* PC用ナビゲーション非表示 */
div#global_navi { display: none; }


/*SP用ドロワーメニュー 追加設定*/
button.drawer-toggle,
nav.drawer-nav {
	font-family: 'NotoSansCJK Sub';
	font-size: 14px;
	font-weight: 500;
	font-feature-settings : "palt" 1;
}
nav.drawer-nav a:hover {
	text-decoration: none;
	outline: none;
	color: #fff;
}
nav.drawer-nav a:visited {
	text-decoration: none;
	color: #fff;
}

/*本文設定*/
div#main_container div#content_box {
	margin: 0 auto;
	padding: 0;
	width: 100%;
}


div#main_container div#content_box h2 {
	font-family: 'NotoSansCJK Sub';
	margin: 0 auto 15px;
	width: 98%;
	font-size: 1.4rem;
	line-height: 1.4rem;
	padding-left: 0.5rem;
	padding-bottom: 8px;
	border-bottom: 2px solid #003399;
}

/* テーブルスタイル */
/*枠線付きのテーブル*/
div#main_container div#content_box table {
	border-collapse: collapse;
	margin: 0 auto;
	font-size: 1.2rem;
	border: 1px solid #ccc;
}

div#main_container div#content_box table th,
div#main_container div#content_box table tr,
div#main_container div#content_box table td {
	padding: 10px;
	border: 1px solid #ccc;
}


/*枠線なしのテーブル*/
div#main_container div#content_box table.layout {
	margin: 0 auto;
	font-size: 1.2rem;
	border: none;
}

div#main_container div#content_box table.layout th,
div#main_container div#content_box table.layout tr,
div#main_container div#content_box table.layout td {
	padding: 10px;
	border: none;
	color: #333;
	background-color: #fff;
}


/*トップページ専用 バナーボックス */
div#main_container div.banner_box {
	margin: 20px auto 10px;
	width: 98%;
	border: 1px solid #aaa;
	text-align: center;
/*	background-color: rgba(51,51,102,0.2);*/
}
div#main_container div.banner_box ul {
	-js-display: flex;
	display: -webkit-box;/*--- Androidブラウザ用 ---*/
	display: -ms-flexbox;/*--- IE10 ---*/
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	padding: 6px;
}
div#main_container div.banner_box ul li {
	display: block;
	width: 117px;
	height: 30px;
	margin: 4px;
}

div#main_container div.banner_box ul li a:hover{
	opacity: 0.7;
	-webkit-transition: all 0.2s ease;
	transition: all  0.2s ease;
}



