@charset "utf-8";
/*------------------------------------------------------------------------------
[1] 共通設定
[2] レイアウト[ 配置 + 書式設定その他 ]
[3] 詳細デザイン
------------------------------------------------------------------------------*/
/*******************************************************************************
[1] 共通設定
*******************************************************************************/
*{
	margin:0px;
	padding:0px;
}
body{
	color:#222222;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight:normal;
	background:#ffffff;
	text-align:center;
}
select,input,textarea,button{
	position:relative;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	vertical-align:middle;
}
img{
	border:none;
}
strong,em{
	font-weight:bold;
	font-style:normal;
}
hr{
	height:1px;
	color:#CCCCCC;
}
a:link{
	color:#0c328f;
}
.hide{
	display:none;
}
.skip{
	position:absolute;
	left:-9999px;
}
/*　回り込み解除　*/
.box{
	margin-bottom:15px;
	width:100%;
}
.clearfix:after,.box:after{
	content:"";
	display:block;
	clear:both;
}
/*　noscript　*/
.scriptmessage{
	margin-right:auto;
	margin-left:auto;
	padding:15px 0px 15px 0px;
	width:900px;
	font-size:85%;
	text-align:left;
	line-height:1.5;
}
/*　本文へ　*/
#blockskip a{
	padding:10px 20px 15px 20px;
	display:block;
	position:absolute;
	left:-9999px;
	color:#ffffff;
	font-size:100%;
	font-weight:bold;
	background-color:#0033CC;
}
#blockskip .show{
	position:absolute;
	left:0;
}
/*==============================================================================
	訓練用
==============================================================================*/
body.kunren{
	background:#fff7b6 url(images/kunren/kunren_bg.gif) repeat left top;
}
body.kunren #wrap{
	background:transparent;
}
/*******************************************************************************
[2] レイアウト[ 配置 + 書式設定その他 ]
*******************************************************************************/
/*==============================================================================
	配置
==============================================================================*/
#wrap{
	margin:0px auto 0px auto;
	width:100%;
}
#header,#topheader{
	margin-left:auto;
	margin-right:auto;
	padding-top:8px;
	width:960px;
	clear:both;
}
#hbottom{
	padding-top:10px;
	padding-bottom:10px;
	width:492px;
	float:right;
	clear:both;
}
#topgnavibg{
	margin-bottom:20px;
	clear:both;
}
#gnavi,#topgnavi{
	margin:0px auto 0px auto;
	width:960px;
	clear:both;
}
#tpath{
	margin:13px auto 15px auto;
	width:960px;
	clear:both;
}
#pagebody{
	margin:0px auto 0px auto;
	width:960px;
	clear:both;
}
#pagebody:after{
	content:"";
	display:block;
	clear:both;
}
#guide{
	margin:20px auto 0px auto;
	padding:0px;
	width:960px;
	clear:both;
}
#footersub{
	min-width:960px;
	padding:24px 0px 0px 0px;
}
#topfooterbg, #footerbg{
	min-width:960px;
}
#footernavi{
	padding:2px 0px 2px 0px;
	min-height:36px;
}
#footer,#topfooter{
	margin:0px auto 0px auto;
	padding:10px;
	clear:both;
	width:940px;
}
#tlogo{
	margin-top:20px;
	width:323px;
	float:left;
}
#util{
	float:right;
	width:630px
}
#lnavi{
	padding-bottom:10px;/*footerとのすき間*/
	width:205px;
	float:right;
}
#content{
	padding-bottom:10px;/*footerとのすき間*/
	width:715px;
	float:left;
}
#content2{
	margin-left:auto;
	margin-right:auto;
	padding-bottom:10px;/*footerとのすき間*/
	width:960px;
	float:none;
}
#model_change{
	margin:0px auto 0px auto;
	width:auto;
	min-width:960px;
}
/*==============================================================================
	書式設定その他
==============================================================================*/
#wrap{
	font-size:85%;
	background:#FFF;
}
#header{
	background:#ffffff;
}
#tpath{
	font-size:90%;
	background:#ffffff;
	text-align:left;
	line-height:1.5;
}
#topgnavibg,#gnavibg{
	background:#002063;
}
#pagebody{
	background:#ffffff;
	text-align:left;
}
#guide{
	font-size:95%;
	text-align:right;
}
#footersub{
	background:#dfe0e6;
	border-top:3px solid #002063;
}
#footerbg,#topfooterbg{
	background:#002063;
}
#footernavi{
	background:#3e4770;
}
#footer,#topfooter{
	font-size:96%;
	color:#ffffff;
	background:#002063;
	text-align:center;
}
#tlogo{
	text-align:left;
}
#util,#utilbottom{
	font-size:96%;
	text-align:right;
}
#content,#content2{
	line-height:1.8;
}
#lnavi{
	line-height:1.5;
}
#add{
	text-align:center;
	line-height:1.8;
}
/*******************************************************************************
[3] 詳細デザイン
*******************************************************************************/
/*==============================================================================
	ヘッダ
==============================================================================*/
#tlogo img{
	vertical-align:bottom;
}
#util img{
	vertical-align:middle;
}
#util li{
	display:inline;
}
/*------------------------------------------------------------------------------
	util1
------------------------------------------------------------------------------*/
#util1{
	margin-bottom:10px;
}
#util1 ul{
	display:inline;
}
#util1 ul li{
	padding-left:15px;
	display:inline-block;
}
#util1 ul li a{
	color:#333333;
}
#util1 ul li a:hover{
	text-decoration:none;
}
/*------------------------------------------------------------------------------
	util2
------------------------------------------------------------------------------*/
#util2{
	clear:both;
	float:right;
	font-size:95%;
}
#util2 ul{
	display:inline;
}
#util2 ul li{
	margin-left:1px;
	margin-bottom:1px;
	float:left;
	background:#dfe0e6;
}
#util2 ul li a{
	padding:3px 4px 2px 4px;
	display:block;
	font-weight:bold;
	height:20px;
	color:#002063;
	text-decoration:none;
}
/*------------------------------------------------------------------------------
	util3
------------------------------------------------------------------------------*/
#util3{
	float:left;
}
#util3 p.sitemap{
	width:100px;
}
#util3 p a{
	padding:2px 4px 3px 4px;
	display:block;
	font-size:96%;
	color:#002063;
	background:#dfe0e6;
	text-align:center;
	text-decoration:none;
}
/*------------------------------------------------------------------------------
	検索
------------------------------------------------------------------------------*/
#sitesearch{
	margin-left:10px;
	width:382px;
	float:right;
	text-align:center;
	line-height:1.2;
}
#sitesearch form{
	display:inline;
}
#sitesearch input.input_search{
	padding:2px 3px;
	vertical-align:middle;
}
#key{
	padding:2px 4px 1px 4px;
	width:calc(100% - 70px);
	max-width:320px;
	min-height:19px;
	float:left;
	display:block;
	font-size:100%;
	border:1px solid #ccc!important;
}
#sitesearch input.input_search{
	margin:0px;
	padding:3px 4px 3px 4px;
	min-width:60px;
	min-height:25px;
	float:left;
	font-size:103%;
	color:#ffffff;
	background:#002063;
	border:none;
	cursor:pointer;
	-webkit-appearance:none;
}
@media all and (-ms-high-contrast: none){
	#sitesearch input.input_search{
			padding:2px 4px 2px 4px; /* IE10以上 */
	}
}
/*==============================================================================
	グローバルナビ
==============================================================================*/
#gnavi ul,#topgnavi ul{
	background:#002063;
	list-style-type:none;
}
#gnavi ul li,#topgnavi ul li{
	width:225px;
	float:left;
	text-align:center;
}
#gnavi ul li.top,#topgnavi ul li.top{
	width:60px;
}
#gnavi ul li a,#topgnavi ul li a{
	padding:15px 10px 14px 10px;
	display:block;
	color:#ffffff;
	font-size:103%;
	text-decoration:none;
}
#gnavi ul li.top a,#topgnavi ul li.top a{
	padding:33px 8px 2px 8px;
	font-size:73%;
}
@media all and (-ms-high-contrast: none){
	#gnavi ul li.top a,#topgnavi ul li.top a{
		padding:32px 8px 3px 8px; /* IE10以上 */
	}
}
@supports (-ms-ime-align: auto){
	#gnavi ul li.top a,#topgnavi ul li.top a{
		padding:33px 8px 3px 8px; /* Edge */
	}
}
#gnavi ul li a:hover,#topgnavi ul li a:hover,
#gnavi ul li a:active,#topgnavi ul li a:active,
#gnavi ul li.active a,#topgnavi ul li.active a{
	color:#002063;
	background:#ffffff;
	text-decoration:none;
}
#gnavi ul li.top a,#topgnavi ul li.top a{
	background:url(images/gnavi/gntop_ov.png) no-repeat center 8px;
}
#gnavi ul li.top a:hover,#topgnavi ul li.top a:hover,
#gnavi ul li.top a:active,#topgnavi ul li.top a:active,
#gnavi ul li.top.active a,#topgnavi ul li.top.active a{
	background:#ffffff url(images/gnavi/gntop.png) no-repeat center 8px;
}
/*==============================================================================
	左メニュー
==============================================================================*/
#menu{
	margin-bottom:20px;
	border-bottom:1px solid #2f3589;
}
/*------------------------------------------------------------------------------
	見出しh2（リンクあり）
------------------------------------------------------------------------------*/
#menu h2{
	margin-bottom:0px;
	font-size:110%;
	text-align:center;
	background:#08215F;
}
#menu h2 a,#menu h2 span{
	padding:20px 5px 18px 5px;
	display:block;
	color:#ffffff;
}
/*------------------------------------------------------------------------------
	見出しh3 h4 h5 h6（リンクあり）
------------------------------------------------------------------------------*/
#menu h3,#menu h4,#menu h5,#menu h6{
	margin:0px;
	padding-top:1px;
	border-top:1px dotted #666;
	border-left:1px solid #CCCCCC;
	border-right:1px solid #CCCCCC;
}
#menu h3{
	font-size:110%;
	border-top:none;
}
#menu h4{
	font-size:105%;
}
#menu h5{
	font-size:100%;
}
#menu h6{
	font-size:95%;
}
#menu h3 a,#menu h4 a,#menu h5 a,#menu h6 a{
	margin:0px 0px 0px 0px;
	padding:12px 5px 12px 8px;
	display:block;
	font-weight:bold;
	background:#F5F5F7;
	background:-webkit-linear-gradient(top, #ffffff, #EFF0F3);
	background:linear-gradient(to bottom, #ffffff, #EFF0F3);
	border-left:4px solid #DFE0E6;
}
#menu h4 a,#menu h5 a,#menu h6 a{
	padding:9px 5px 9px 10px;
}
#menu h3 a:hover,#menu h4 a:hover,#menu h5 a:hover,#menu h6 a:hover{
	background:#f4efe2;
}
/*------------------------------------------------------------------------------
	見出し（リンクなし　セパレータ）
	※font-sizeは、見出しリンクありから継承
------------------------------------------------------------------------------*/
#menu h3.separator,#menu h4.separator,#menu h5.separator,#menu h6.separator{
	margin:0px;
	padding:10px 5px 8px 6px;
	border-top:1px dotted #CCC;
	border-left:5px solid #DFE0E6;
	border-right:1px solid #CCCCCC;
	font-weight:bold;
	text-align:left;
}
/*------------------------------------------------------------------------------
	詳細メニュー　ul 同じリスト風デザイン
------------------------------------------------------------------------------*/
#menu ul{
	margin:0px;
	font-size:95%;
	background:#FFF;
	list-style-type:none;
	border-left:1px solid #CCCCCC;
	border-right:1px solid #CCCCCC;
}
#menu ul li{
	border-top:1px dotted #CCC;
}
#menu h2 + ul li:first-child{
	border-top:1px solid #ddd;
}
#menu ul li a,#menu ul li.choice{
	margin:1px;
	padding:8px 5px 8px 22px;
	display:block;
	zoom:1;
	background:url(images/content/mark_ul.gif) no-repeat 10px 15px;
}
#menu ul li.choice{
	padding:9px 5px 8px 22px;
	background:#eaebf1 url(images/content/mark_ul.gif) no-repeat 10px 15px;
}
#menu ul li a:hover{
	background:#f4efe2 url(images/content/mark_ul.gif) no-repeat 10px 15px;
}
#menu ul li.choice a{
	background:#f4efe2 url(images/content/mark_ul.gif) no-repeat 10px 15px;
}
/*------------------------------------------------------------------------------
	入れ子リスト
------------------------------------------------------------------------------*/
#menu ul.lmenu{
	font-size:90%;
	background:#FFF;
	border-top:none;
	list-style-type:none;
}
#menu ul.lmenu li{
	margin-left:8px;
	border-top:1px dotted #CCC;
}
#menu ul.lmenu li a,#menu ul.lmenu li.choice{
	margin:1px 1px 1px 0px;
	padding-left:18px;
	display:block;
	background:url(images/content/mark_ul.gif) no-repeat 6px 14px;
	border-bottom:none;
}
#menu ul.lmenu li.choice{
	background:#eaebf1 url(images/content/mark_ul.gif) no-repeat 6px 14px;
}
#menu ul.lmenu li.choice{
	margin-left:8px;
}
#menu ul.lmenu li a:hover{
	background:#f4efe2 url(images/content/mark_ul.gif) no-repeat 6px 14px;
}
#menu ul.lmenu li.choice a{
	background:#f4efe2 url(images/content/mark_ul.gif) no-repeat 6px 14px;
}
/*------------------------------------------------------------------------------
	左ナビバナー
------------------------------------------------------------------------------*/
#lnavi p{
	margin-bottom:10px;
}
/*==============================================================================
	ページ遷移
==============================================================================*/
#guide ul,#guide ul li{
	display:inline;
}
/*------------------------------------------------------------------------------
	このページのトップへ
------------------------------------------------------------------------------*/
#guide .pagetop{
	margin-bottom:0px;
}
#guide .pagetop a{
	padding:11px 4px 9px 4px;
	width:152px;
	display:inline-block;
	color:#ffffff;
	background:#002063;
	text-align:center;
	text-decoration:none;
}
#guide .pagetop a:hover{
	background:rgba(0, 32, 99, 0.7);
}
/*==============================================================================
	バナー
==============================================================================*/
#footersub ul{
	margin:0px auto 0px auto;
	width:960px;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	list-style:none;
}
#footersub ul.footertopics{
	margin-bottom:20px;
}
#footersub ul.footertopics li{
	margin:0px 4px 4px 0px;
	width:237px;
	min-height:40px;
	display:-ms-flexbox;
	display:flex;
}
#footersub ul.footertopics li:last-child,#footersub ul.footertopics li:nth-child(4n){
	margin:0px 0px 4px 0px;
}
#footersub ul.footertopics li:nth-child(4n+1){
	clear:both;
}
#footersub ul.footertopics li a{
	padding:10px 8px 6px 8px;
	width:100%;
	font-size:103%;
	color:#002063;
	background:#ffffff;
	text-decoration:none;
	line-height:1.4;
}
#footersub ul.footertopics li a:hover,#footersub ul.footertopics li a:active{
	color:#ffffff;
	background:#002063;
}
#footersub ul.footersocial{
	-ms-flex-pack:center;
  justify-content:center;
}
#footersub ul.footersocial li{
	margin:0px 20px 20px 0px;
	width:225px;
	display:-ms-flexbox;
  display:flex;
}
#footersub ul.footersocial li:last-child,#footersub ul.footersocial li:nth-child(4n){
	margin:0px 0px 20px 0px;
}
#footersub ul.footersocial li:nth-child(4n+1){
	clear:both;
}
/*==============================================================================
	フッタ
==============================================================================*/
#footernavi ul{
	margin:0px auto 0px auto;
	width:960px;
	background:#3e4770;
	list-style:none;
}
#footernavi ul li{
	padding:6px 0 6px 0;
	display:inline-block;
	color:#ffffff;
}
#footernavi ul li a{
	font-size:96%;
	color:#ffffff;
}
#footernavi ul li a:hover,#footernavi ul li a:focus{
	text-decoration:none;
}
#footernavi ul li::after,#footernavi ul li:first-child:before{
	margin:0 15px 0 15px;
	padding:0;
	width:1px;
	height:20px;
	display:inline-block;
	content:"";
	background:#999999;
	vertical-align:middle;
}
address{
	margin-bottom:4px;
	font-style:normal;
}
/*==============================================================================
	PCサイト・スマホサイトの表示切り替え
==============================================================================*/
#model_change ul{
	width:100%;
	clear:both;
	display:-ms-flexbox;
	display:flex;
	list-style:none;
}
#model_change ul li{
	width:100%;
	font-size:125%;
	font-weight:bold;
}
#model_change li a{
	box-sizing:border-box;
	padding:16px 10px 16px 10px;
	width:100%;
	display:-ms-flexbox;
	display:flex;
	color:#002063;
	background:#dfe0e6;
	text-align:center;
	text-decoration:none;
}
#model_change li a span{
	display:block;
	width:100%;
}
#model_change li a:hover{
	background:rgba(0, 32, 99, 0.6);
}
#model_change #switch_pc_style{
	display:none;
}
/*==============================================================================
	Google検索結果表示
==============================================================================*/
#content2 #googlecontent{
	line-height:normal;
}
#content2 #googlecontent table{
	margin:0px 0px 0px 8px;
	padding:0;
	border:none;
	border-collapse:collapse;
	empty-cells:inherit;
}
#content2 #googlecontent th{
	margin:0;
	padding:0;
	background:none;
	border:none;
}
#content2 #googlecontent td{
	margin:0;
	padding:0;
	border:none;
}
.gsc-input-box{
	padding:3px 5px 3px 5px;
	height:35px;
}
/*==============================================================================
	CMS用
==============================================================================*/
.cmspwrap .viewmode #viewmode_pc{
	border-right:1px solid #CCC;
	background: -moz-linear-gradient(top,#EEEEEE,#FFFFFF);
	background: -webkit-gradient(linear,left top,left bottom,from(#EEEEEE),to(#FFFFFF));
	background: linear-gradient(to bottom, #EEEEEE,#FFFFFF);
}
.cmspwrap .viewmode #viewmode_smp{
	border: none;
	background: -moz-linear-gradient(top,#FFFFFF,#EEEEEE);
	background: -webkit-gradient(linear,left top,left bottom,from(#FFFFFF),to(#EEEEEE));
	background: linear-gradient(to bottom, #FFFFFF,#EEEEEE);
}
/*==============================================================================
	印刷用
==============================================================================*/
@media print{
.cmspwrap{
	display:none;
}
}
