@charset "utf-8";

/* スニペット */

/*
***********************************************************************************************
ローディング画面
***********************************************************************************************
*/

#loader-bg {
	background-color: #fff;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	z-index: 999;
}

	/* ローディングスピナー */
	#loading {
		/*
		background-image: url(../img/loading.png);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
		*/
		position: absolute;
		left: 50%;
		top: 50%;
		margin-left: -25px;
		margin-top: -25px;
		height: 50px;
		width: 50px;

		/*
		transform: scale( 0.7 );
		*/
	}

		.viewmode-mobile #loading {
			transform: scale( 0.8 );
		}

/*
***********************************************************************************************
float関連
***********************************************************************************************
*/

/* new clearfix */
.clearfix::after {
	clear: both;
	content: " ";
	display: block;
	font-size: 0;
	height: 0;
	visibility: hidden;
}


/*
***********************************************************************************************
アイコン
***********************************************************************************************
*/

/* 外部リンク */
.icon_external {
	color: #4163bc;
	font-size: 80%;
	position: relative;
	margin-left: 5px;
	top: 0px;
	vertical-align: middle;
}

/* PDF */
.icon_pdf {
	margin-right: 6px;
	vertical-align: middle;
}

/* Word */
.icon_doc {
	margin-right: 4px;
	vertical-align: middle;
}

/* Excel */
.icon_xls {
	margin-right: 4px;
	vertical-align: middle;
}


/*
***********************************************************************************************
メールフォーム
***********************************************************************************************
*/

form .table_form {
	background-color: #fff;
	box-sizing: border-box;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
	width: 100%;
}

	form .table_form th,
	form .table_form td {
		border-right: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
		display: block;
		color: #333;

		text-align: left;
		width: 100%;
		vertical-align: middle;
	}

	form .table_form th {
		background-color: #e3ebee;
		padding: 0.3em 0.5em;
	}

		@media (min-width: 768px) {
			form .table_form th {
				display: table-cell;
				/*
				font-size: 0.9em;
				*/
				padding: 0.5em 0.5em 0.5em 1em;
				width: 230px;
			}
		}

	form .table_form td {
		background-color: #fff;
		padding: 0.5em 0.5em;
	}

		@media (min-width: 768px) {
			form .table_form td {
				display: table-cell;
				padding: 0.6em 0.8em;
				width: auto;
			}
		}

		@media (min-width: 992px) {
			form .table_form td {
				background-color: transparent;
			}
		}

		.viewmode-mobile form .table_form td {
			min-height: 40px;
		}

		form .table_form td input[type=text],
		form .table_form td select,
		form .table_form td textarea {
			background-color: #fff;
			width: 100%;
		}

		form .table_form td textarea {
			display: block;
			line-height: 1.8;
		}

			form .table_form td input[type=text],
			form .table_form td input[type=email],
			form .table_form td select,
			form .table_form td textarea {
				border: 1px solid #ccc;
				font-family: inherit !important;
				padding: 0.5em 0.5em;
				width: 100%;

				border-radius: 3px;
			}

				/* フォーカス時 */
				form .table_form td input[type=text]:focus,
				form .table_form td input[type=email]:focus,
				form .table_form td select:focus,
				form .table_form td textarea:focus {
					border-color: rgba(53,138,189, 0.8);
					box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(53,138,189, 0.6);
					outline: 0 none;
				}

			form .table_form td input[type=radio] {
				margin-right: 0.25em;
			}


/* 必須項目&任意項目 */
form .required,
form .optional {
	color: #fff;
	background-color: #ed6d01;
	font-family: "ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace;
	font-size: 80%;
	font-weight: normal;
	float: right;
	line-height: 1.2;
	/*
	width:32px;
	height: 20px;
	*/
	margin: 3px 0 0 5px;
	overflow: hidden;
	padding: 5px 6px;
	white-space: nowrap;
}

	@media (min-width: 768px) {
		form .required,
		form .optional {
			margin: 3px 0 0 5px;
		}
	}

/* 任意項目 */
form .optional {
	background-color: #999;
}

	/* 記入例 */
	form .watermark {
		color: #666;
		font-size: 13px;
		line-height: 1.5;
		margin: 5px 0 0 0px;
	}

		/* 確認画面＆送信中画面 */
		form.form-confirm .watermark,
		form.form-send .watermark {
			display: none;
		}

		form .watermark::before {
			content: "※";
			color: #666;
			font-size: 12px;
			margin: 0 0 0 0px;
		}

		form .watermark.red {
			color: #e00;
		}

		form .watermark.red::before {
			content: "※";
			color: #e00 !important;
			font-size: 12px;
			margin: 0 0 0 0px;
		}

	/* 補足文 */
	form .supplement {
		font-size: 13px;
		line-height: 1.5;
		margin: 5px 0 0 0px;
	}

		/* 確認画面＆送信中画面 */
		form.form-confirm .supplement,
		form.form-send .supplement {
			display: none;
		}

/* 郵便番号 */
form input#zip {
	ime-mode: disabled;
	width: auto;
}

/* メールアドレス */
form input#email {
	ime-mode: disabled;
}

/* 都道府県 */
form select#prefecture {
	width: auto;
}

/* 電話番号 */
form input#tel {
	ime-mode: disabled;
}

/* FAX */
form input#fax {
	ime-mode: disabled;
}

/* カテゴリー */
form select#inquiry_type {
	width: auto;
}

/* お問い合わせ内容 */
form textarea#message {
	height: 10em;
}

/* ご連絡希望時間 */
form input#contact_time {
	width: 13em;
}


/* 送信ボタン */
form input[type=submit] {
	background-color: #E51373;
	border: 0px solid #fff;
	color: #fff;
	display: block;
	font-size: 110%;
	font-weight: bold;
	margin: 15px auto 0 auto;
	padding: 5px 15px;

	border-radius: 5px;
}


/*
***********************************************************************************************
jquery.validationEngine.jsのスタイルを上書き
***********************************************************************************************
*/

.formError {
	z-index: 1;
}

	.formError.inline {
		display: block;
	}

.formError .formErrorContent {
	background-color: transparent;
	color: #ee0000;
	font-size: 14px;
	padding-left: 0px;
	padding-right: 0px;
}

.formErrorContent br {
	display: none;
}


/*
***********************************************************************************************
jquery.validationEngine.nonreload.jsのスタイルを上書き
***********************************************************************************************
*/

/* 「送信内容の確認」ボタン  */
#MyMailForm_button {
	margin-top: 15px;
	padding: 10px 0px !important;
	text-align: center;
}

	#MyMailForm_button button {
		background-color: #4163bc;
		border: 0px solid #fff;
		box-sizing: border-box;
		color: #fff;
		display: inline-block;
		font-size: 17px;
		font-weight: bold;
		line-height: 1.3;
		min-width: 180px;
		padding: 12px 20px;
		position: relative;
		text-align: center;
		text-decoration: none;
		vertical-align: top;

		transition: all .2s ease;
		/*
		background: -webkit-linear-gradient(top, #006DBE 0%,#0060A7 60%);
		background: linear-gradient(to bottom, #006DBE 0%,#0060A7 60%);
		*/
		border-radius: 7px;
		box-shadow: -3px -3px 0 rgba(0,0,0,0.1) inset,
					5px 5px 0 rgba(0,0,0,0.1);
	}

		#MyMailForm_button .MyMailForm_btn + .MyMailForm_btn {
			margin-left: 15px;
		}

		.viewmode-mobile #MyMailForm_button button {
			font-size: 16px;
			min-width: 130px;
			padding: 10px 15px;
		}

		#MyMailForm_button button:hover {
			/*
			background: #006DBE;
			border: 2px solid #ed6d01;
			color: #ed6d01;
			*/
			cursor: pointer;
			opacity: 0.7;

			/*
			background:-webkit-linear-gradient(top, #4C99D1 0%,#4C8FC1 60%);
			background:linear-gradient(to bottom, #4C99D1 0%, #4C8FC1 60%);
			*/
		}

		#MyMailForm_button button:active {
			right: -3px;
			bottom: -3px;

			box-shadow: none;
		}

		/* 訂正 */
		#MyMailForm_button #back {
		}

		/* 送信 */
		#MyMailForm_button #send {

		}

		/* 送信中画面のボタン */
		form.form-send #MyMailForm_button button {
			display: none;
		}

		/* 送信中画面のローダー */
		form.form-send #MyMailForm_button::before {
			content: url(../img/loading.gif);
			display: block;
		}


/* 確認画面の各入力内容 */
.MyMailForm_value {
	box-sizing: border-box;
	/*
	border: 1px solid #fff;
	*/
	color: #0055cc;
	display: block;
	/*
	font-size: 15px;
	*/
	line-height: 1.6;
	min-height: 2.2em;
	padding: 0.3em 0.5em;
}

	.MyMailForm_value:empty {
		display: none;
	}

/* メールを送信しました */
.text-success {
	border: 1px solid #0000ee;
	color: #0000ee;
	padding: 15px;
	text-align: center;
}

/* エラーが発生しました */
.text-danger {
	border: 1px solid #ee0000;
	color: #ee0000;
	padding: 15px;
	text-align: center;
}


/*
***********************************************************************************************
PCモバイル切り替え表示
***********************************************************************************************
*/

.renderSwitcher {
	/*
	background-color: #111;
	*/
	display: none;
	/*
	width: 100%;
	*/
}

	.mobile .viewmode-pc .renderSwitcher {
		display: block;	/* モバイル端末のPC表示モードでは表示 */
		/*
		display: none;
		*/
	}

		.viewmode-mobile #drawer .renderSwitcher {
			display: block;	/* モバイル端末ではドロワー内で表示 */
			/*
			display: none;
			*/
			margin-top :15px;

			border-radius: 3px;
		}

	.renderSwitcher ul {
		text-align: center;
		margin: 0;
		padding: 5px;
	}

		#drawer .renderSwitcher ul {
			text-align: left;
			padding: 0px;
		}

		.viewmode-pc .renderSwitcher ul {
			text-align: center;
			font-size: 300%;
			padding: 0px;
		}

		.renderSwitcher ul li {
			display: block;
			line-height: 1.5;
			margin: 0;
		}

			.renderSwitcher ul li a {
				background-color: #222;
				color: #fff;
				display: block;
				padding: 15px 15px 15px 15px;
				text-decoration: none;
			}

			.viewmode-mobile .renderSwitcher ul li a {
				background-color: #4163bc;
				padding: 7px 15px 7px 15px;
				position: relative;
				border-radius: 20px;
			}


		/* PC版を表示 */
		.renderSwitcher ul li.pc {
			/*
			padding-right: 10px;
			margin-right: 10px;
			border-right: 1px solid #fff;
			*/
		}

			.viewmode-pc .renderSwitcher ul li.pc {
				display: none;	/* PC表示モードでは表示しない */
			}

				.viewmode-pc .renderSwitcher ul li.pc a {
					color: #fff;
				}

				.viewmode-mobile .renderSwitcher ul li.pc a {
					font-size: 14px;
				}

			.renderSwitcher ul li.pc a::before {
				color: #fff;
				content: "\f108"; /* fa-desktop */
				display: inline-block;
				font-family: 'Font Awesome 5 Free';
				font-size: 16px;
				font-weight: 900;
				line-height: 1.0;
				margin-right: 10px;
				vertical-align: middle;
			}

				.viewmode-mobile .renderSwitcher ul li.pc a::before {
					content: none;
				}

				/* デスクトップアイコン */
				.viewmode-mobile .renderSwitcher ul li.pc a::after {
					color: #fff;
					content: "\f108"; /* fa-desktop */
					display: inline-block;
					font-family: 'Font Awesome 5 Free';
					font-size: 16px;
					font-weight: 900;
					line-height: 1.0;
					position: absolute;
					top: 10px;
					right: 10px;
					vertical-align: middle;
				}

			/* モバイル版を表示 */
			.renderSwitcher ul li.mobile a::before {
				color: #fff;
				content: "\f3cd"; /* mobile-alt  */
				display: inline-block;
				font-family: 'Font Awesome 5 Free';
				font-size: 170%;
				font-weight: 900;
				line-height: 1.0;
				margin-right: 15px;
				vertical-align: middle;
			}

			.viewmode-mobile .renderSwitcher ul li.mobile {
				display: none;
			}

				.viewmode-mobile .renderSwitcher ul li.mobile a {
					color: #fff;
				}


/*
***********************************************************************************************
photoswipe.jsのスタイルを上書き
***********************************************************************************************
*/

div.pswp__caption__center {
	font-size: 100%;
	text-align: center;
	padding: 15px 10px;
}

/* 前へ＆次へ */
button.pswp__button--arrow--left::before,
button.pswp__button--arrow--right::before {
	background-color: transparent;
	background-image: none;
	color: #fff;
	display: block;
	font-family: 'Font Awesome 5 Free';
	font-size: 25px;
	font-weight: bold;
	line-height: 35px;
}

/* 前へ */
button.pswp__button, button.pswp__button--arrow--left::before {
	content: "\f053";	/* fa-chevron-left */
}

/* 次へ */
button.pswp__button, button.pswp__button--arrow--right::before {
	content: "\f054";	/* fa-chevron-right */
}


/*
***********************************************************************************************
photoswipeを適用したリンク
***********************************************************************************************
*/

/* 検索アイコンのみ */
a.pswp--item {
	display: inline-block;
	position: relative;
	vertical-align: top;
}

	a.pswp--item::after {
		background-color: rgba(0,0,0,0.3);
		bottom: 0;
		color: #fff;
		content: "\f002";	/* fa-search */
		display: block;
		font-family: 'Font Awesome 5 Free';
		font-size: 18px;
		line-height: 1;
		font-weight: bold;
		padding: 10px 10px 10px 10px;
		position: absolute;
		right: 0;

		transition: all 0.2s ease;
	}

		.viewmode-mobile a.pswp--item::after {
			transform: scale(0.8);
			transform-origin: right bottom;
		}

	a.pswp--item:hover::after {
		font-size: 23px;
	}

	a.pswp--item-text::after {
		content: none;
	}

/* 検索アイコン＆テキスト（未使用） */
/*
a.pswp--item {
	display: inline-block;
	position: relative;
	vertical-align: top;
}

	a.pswp--item::before {
		bottom: 0.5em;
		color: #fff;
		content: "\f002";	/＊ fa-search ＊/
		display: block;
		font-family: 'Font Awesome 5 Free';
		font-size: 18px;
		font-weight: bold;
		line-height: 1;
		position: absolute;
		right: 75px;
		z-index: 1;
	}

	a.pswp--item::after {
		background-color: rgba(0,0,0,0.5);
		bottom: 0;
		color: #fff;
		content: "拡大表示";
		display: block;
		font-size: 14px;
		line-height: 1;
		padding: 10px 10px 10px 35px;
		position: absolute;
		right: 0;
	}
*/


/*
***********************************************************************************************
画面幅より大きな表をスクロール式にする
***********************************************************************************************
*/

.table_wrapper {
	overflow: auto;

	-webkit-overflow-scrolling: touch;
}

	.scroll: : -webkit-scrollbar {
		height: 5px;
	}

	.scroll: : -webkit-scrollbar-track {
		background: #F1F1F1;

		border-radius: 5px;
	}

	.scroll: : -webkit-scrollbar-thumb {
		background: #BCBCBC;
	}

/*
***********************************************************************************************
Slideout.jsの基本設定
***********************************************************************************************
*/

/* ドロワー展開時のオーバーレイ（未使用） */
/*
.slideout-open #wrapper::after {
	background-color: rgba(0,0,0,0.3);
	content: "";
	width: 100%;
	height: 120vh;
	left: 0;
	position: absolute;
	top: 0;
	z-index: 300;

	transition:all .2s ease;
	box-shadow: 5px 0px 10px 0px rgba(0,0,0,0.2) inset;
}
*/

.toggle-button {
}

.toggle-button2 {
	float: right;
}

.slideout-menu {
	position: fixed;
	top: 0;
	bottom: 0;
	width: 235px;
	overflow-y: scroll;
	-ms-overflow-style: none;
	min-height: 100vh;

	-webkit-overflow-scrolling: touch;
	z-index: 101;
	display: none;

	/*
	touch-action:none;
	*/
}

	.slideout-menu::-webkit-scrollbar {
		display: none;
	}

	.mobile .slideout-menu {
	}

.slideout-menu-left {
	left: 0;
}

.slideout-menu-right {
	right: 0;
}

.slideout-panel {
	background-color: #fff;	/* 背景色は必須 */
	/*
	background-image: url(../img/containerBg.jpg);
	*/
	background-position: 0 -70px;
	background-repeat: repeat-x;
	min-height: 100vh;
	/*
	padding: 10px;
	*/
	position: relative;
	z-index: 1;
	/*
	will-change: transform;
	*/

}

.slideout-open,
.slideout-open body,
.slideout-open .slideout-panel {
	overflow: hidden;
}

.slideout-open .slideout-menu {
	display: block;
}


/*
***********************************************************************************************
ドロワー
***********************************************************************************************
*/

#gNavi_sp {
	display: block;
	margin-top: 20px;
	margin-left: -10px;
	margin-right: -10px;
	padding: 0px;
	position: static;
}

	#gNavi_sp > ul {
		display: block;
		margin-top: 15px;
		padding: 0px 0px 0px 0px;
	}

		#gNavi_sp > ul > li {
			/*
			border-top: 1px solid #ccc;
			letter-spacing: 0.05em;
			list-style-type: none;
			line-height: 1.5;
			margin: 0;
			padding: 0px 0 0px 0;
			position: relative;
			*/
		}

			/* カレント表示 */
			#gNavi_sp > ul > li.current {
				/*
				background-color: rgba(0,0,0,0.1);
				*/
			}

			#gNavi_sp li a {
				color: #000;
				text-decoration: none;
			}

				#gNavi_sp > ul > li > a {
					/*
					background-color: #fcb612;
					color: #000;
					display: block;
					padding: 5px 5px 5px 15px;
					*/
				}

					/* 矢印の飾り（未使用） */
					/*
					#gNavi_sp > ul > li > a::before {
						color: #000;
						content: "\f054";
						display: block;
						font-family: 'Font Awesome 5 Free';
						font-size: 12px;
						font-weight: 900;
						line-height:1.5;
						top: 10px;
						left: 10px;
						position: absolute;
					}
					*/

				#gNavi_sp .sub-menu {
					/*
					list-style-type: none;
					margin: 5px 0 0 0px;
					padding: 0 0 0 30px;
					*/
				}

					#gNavi_sp .sub-menu > li {
						/*
						margin: 0px;
						*/
					}

						#gNavi_sp .sub-menu > li > a {
							/*
							display: block;
							font-size: 13px;
							overflow: visible;
							padding: 3px 0px 3px 0px;
							position: relative;
							*/
						}

							.viewmode-mobile #gNavi_sp .sub-menu > li > a {
								/*
								font-size: 12px;
								*/
							}

							#gNavi_sp .sub-menu > li > a.current {

							}


/* フッターメニュー（スマホ用） */
#menu-footer-sp {
	border-top: 1px solid #000;
	margin-top: 25px;
	padding-top: 25px;
}

	/* サイト内検索 */
	.viewmode-mobile #menu-item-search {
		display: none;
	}

/* 各カテゴリートップ */

.viewmode-mobile #menu-item-business::before,
.viewmode-mobile #menu-item-results::before,
.viewmode-mobile #menu-item-company::before,
.viewmode-mobile #menu-item-contact::before {
	background-image: url(../../business/shared/img/eyecatch_business.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	display: block;
	height: 50px;
	opacity: 0.8;
	margin-bottom: 10px;
}

/* 事業実績 */
.viewmode-mobile #menu-item-results::before {
	background-image: url(../../results/shared/img/eyecatch_results.jpg);
}

/* 企業情報 */
.viewmode-mobile #menu-item-company::before {
	background-image: url(../../company/shared/img/eyecatch_company.jpg);
}

/* お問い合わせ */
.viewmode-mobile #menu-item-contact::before {
	background-image: url(../../contact/shared/img/eyecatch_contact.jpg);
	background-position: center bottom;
}

/* カレント表示 */
#gNavi_sp > ul > li.current::before {

}


/*
***********************************************************************************************
ローカルナビゲーション
***********************************************************************************************
*/

#loNavi {
	background-color: #e3ebee;
	/*
	border-top: 1px solid #a0adb8;
	border-left: 1px solid #a0adb8;
	border-right: 1px solid #a0adb8;
	border-bottom: 1px solid #a0adb8;
	*/
	clear: both;
	margin: 0px 0 0px 0px;
	padding: 25px 10px;
}

	/*
	.header_fixed #loNavi {
		margin-top: 60px;
	}
	*/

	#loNavi h2 {
		border-left: 5px solid #4163bc;
		border-bottom: none;
		font-size: 120%;
		/*
		font-weight: normal;
		*/
		padding: 2px 0px 2px 10px;
	}

		#loNavi h2::after {
			content: none;
		}

#loNavi > ul {
	list-style-type: none;
	padding: 0;
}

	#loNavi > ul > li {
		display: none;
		/*
		font-size: 13px;
		*/
		letter-spacing: normal; /* 文字間を通常に戻す */
		line-height: 1.3;
		list-style-type: none;
		margin: 0px 0px 0px 0px;
		padding: 0px;
		vertical-align: top;
	}

	#loNavi .sub-menu {
		list-style-type: none;
		padding: 0px 0px 0px 0px;
		margin: 0px;
		line-height: 1.3;
	}

		#loNavi .sub-menu > li {
			border: 1px solid #a0adb8;
			margin: 0;
		}

			#loNavi .sub-menu > li + li {
				margin-top: -1px;
			}

			#loNavi .sub-menu > li:first-child {
				margin: 0px 0px 0px 0px;
			}

				#loNavi .sub-menu > li > a {
					background-color: #fff;
					background-repeat: no-repeat;
					background-position: 0px 0px;
					color: #333;
					display: block;
					font-weight: normal;
					margin: 0px 0px 0px 0px;
					padding: 14px 10px 14px 30px;
					position: relative;
					text-decoration: none;

					transition: all 0.2s ease;
				}

					#loNavi .sub-menu > li:first-child > a {
						/*
						border-top: none;
						*/
					}

					/* 矢印の飾り */
					#loNavi .sub-menu > li > a::before {
						color: #4163bc;
						content: "\f054";	/* fa-chevron-right */
						display: block;
						font-family: 'Font Awesome 5 Free';
						font-size: 1em;
						font-weight: bold;
						left: 0.7em;
						line-height: 1.0;
						top: 1em;
						position: absolute;
					}

						.viewmode-mobile #loNavi .sub-menu > li > a::before {
							left: 1em;
							top: 1.1em;
						}

					#loNavi .sub-menu > li > a:hover {
						background-color: #4163bc;
						color: #fff;
					}

						#loNavi .sub-menu > li > a:hover::before {
							color: #fff;
						}

					/* カレント表示 */
					#loNavi .sub-menu > li > a.current,
					#loNavi .sub-menu > li > a.parentsLink {
						background-color: #4163bc !important;
						/*
						background-image:url(../img/bullet_menu-category.gif);
						background-position:6px 11px;
						*/
						color: #fff;
					}

						#loNavi .sub-menu > li > a.current::before {
							color: #fff;
						}

						.ie #loNavi .sub-menu > li > a.current {
						}

					/* 外部リンクアイコン */
					#loNavi .sub-menu li a.externalLink::after {
						color: #4163bc;
						content: "\f2d2";	/* fa-chevron-right */
						display: inline-block;
						font-family: 'Font Awesome 5 Free';
						/*
						font-size: 0.9em;
						*/
						line-height: 1.4;
						top: -.1em;
						left: 0px;
						margin-left: .25em;
						position: relative;
						vertical-align: middle;
					}


/*---- ローカルナビゲーションのサブメニュー項目 ----*/

#loNavi .sub-menu > li > ul {
	background-color: #fff;
	display: none;
	padding: 0 0 15px 0;
}

	#loNavi .sub-menu > li > a.current + ul,
	#loNavi .sub-menu > li > a.parentsLink + ul {
		display: block;
	}

	#loNavi .sub-menu > li > ul li {
		list-style-type: none;
		margin: 0px;
	}

		#loNavi .sub-menu > li > ul a {
			display: block;
			color: #000;
			font-size: 90%;
			line-height: 1.7;
			padding: 7px 7px 7px 32px;
			position: relative;
			text-decoration: none;
		}

			#loNavi .sub-menu > li > ul a:hover {
				background-color: #e3ebee;
			}

			/* 矢印のアイコン */
			#loNavi .sub-menu > li > ul a::before {
				color: #999;
				content: "\f0da";	/* caret-right */
				display: block;
				font-family: 'Font Awesome 5 Free';
				font-size: 1.1em;
				font-weight: 900;
				line-height: 1.5;
				top: 6px;
				left: 5px;
				margin: 0px 0px 0px 0px;
				padding: 0 0 0 8px;
				position: absolute;
			}

/* 最後の子要素 */
#loNavi .sub-menu > li > ul > li.lastChild a {

}

/* カレント表示 */
#loNavi .sub-menu > li > ul > li a.current {
	background-color: #ebeef1;
}

/* 外部リンク */
#loNavi .icon_external {
	display: none;
}

/* ローカルメニューイメージ画像（未使用）------------------------------ */

/* カテゴリ1 */
/*
#loNavi #loNavi-corporate {
	background: url(../img/bg_loNavi_corporate.jpg) no-repeat 0px 0px !important;
}
*/

/* カテゴリ2 */
/*
#loNavi #loNavi-ir {
	background: url(../img/bg_loNavi_ir.jpg) no-repeat 0px 0px !important;
}
*/

/* カテゴリ3 */
/*
#loNavi #loNavi-csr {
	background: url(../img/bg_loNavi_csr.jpg) no-repeat 0px 0px !important;
}
*/


/* ローカルメニュー下部リンクバナー（未使用） */
#category_link_banner {
	margin-top: 20px;
}

/* バナー（未使用） */
#category_link_banner1 {
	list-style-type:none;
	padding:0px;
	margin:0px;
}

	#category_link_banner1 li {
		text-align:center;
		margin-bottom:10px;
	}

	#category_link_banner1 li a img {
		transition:all 0.2s ease;
	}

		#category_link_banner1 li a:hover img {
			opacity:0.7;
		}


/* 「●●」へ戻る（未使用） */
.to_category_top {
	display: none;
	font-size: 80%;
	margin: 10px 0px 0px 0px;
	padding: 0 0 0 25px;
	position: relative;
}

	.viewmode-mobile .to_category_top {
		font-size: 95%;
	}

	/* 戻るアイコン */
	.to_category_top::before {
		color: #0055cc;
		content: "\f3e5";	/* reply */
		display: block;
		font-family: 'Font Awesome 5 Free';
		font-size: 1.2em;
		font-weight: 900;
		line-height: 1.5;
		top: 0;
		left: 0;
		margin: 0px 0px 0px 0px;
		position: absolute;
		padding: 0 0 0 8px;
	}

	.to_category_top a {
		color: #000;
		text-decoration: none;
	}

		.to_category_top a:hover {
			text-decoration: underline;
		}


/*
***********************************************************************************************
「続きをみる」（readmore.js版）
***********************************************************************************************
*/

.readmore_ui {
	display: block;
	font-size: 14px;
	font-weight: bold;
	text-align: right;
}

	.readmore {
		overflow: hidden;
	}

		/* floatによって「続きをみる」が表示されない不具合を解消 */
		/*
		.readmore::after {
			font-size: 0;
			clear: both;
			content: " ";
			display: block;
			height: 0;
			visibility: hidden;
		}
		*/

		/* 「続きをみる」で追加されるリンク */
		.readmore_ui a {
			/*
			text-decoration: none;
			*/
		}
			.readmore_ui a:hover {
				text-decoration: none;
			}

			/* 続きをみる */
			.readmore_ui a::before {
				content: "\f078";	/* fa-chevron-down */
				display: inline-block;
				font-family: 'Font Awesome 5 Free';
				font-size: 13px;
				font-weight: bold;
				margin: -2px 3px 0 0;
				vertical-align: middle;
			}

				body.mobile .readmore_ui a::before,
				body.tablet .readmore_ui a::before {
					margin-top: -4px;
				}

				/* 閉じる */
				.readmore[aria-expanded=true] + .readmore_ui a::before {
					content: "\f077";	/* fa-chevron-up */
				}

			.readmore {
				max-height: 1000px;
			}

				.viewmode-mobile .readmore {
					max-height: 5.9em;
				}


/*
***********************************************************************************************
リンクバナー
***********************************************************************************************
*/

#link_banner1{
	background-color:transparent;
	padding:10px 0px 0px 0px;
	margin:0px 0px 0px 0px;
	list-style-type:none;
}

	#link_banner1 li{
		list-style-type:none;
		margin-bottom:10px;
		padding:0px 10px;
		text-align:center;
	}

		#link_banner1 a{
			display:block;
		}

		#link_banner1 a img{
			max-width:100%;

			transition:all 0.2s ease;
		}

			#link_banner1 a:hover img{
				opacity:0.7;
			}


/*
***********************************************************************************************
各カテゴリトップの共通要素
***********************************************************************************************
*/

/* サムネイル付きメニュー */
.menu-category {
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
	margin: 0px 0px 0px 0px;
	padding: 0px;
}

	.menu-category li {
		letter-spacing: normal; /* 文字間を通常に戻す */
		list-style-type: none;
		display: inline-block;
		margin: 0px 20px 20px 0;
		max-width: 240px;
		vertical-align: top;
	}

		.menu-category li img {
			display:block;

			transition:all 0.2s ease;
			backface-visibility:hidden;
			-webkit-backface-visibility:hidden;
		}

			.menu-category li a:hover img{
				opacity:0.7;
			}

		.menu-category li h2 {
			color: #333;
			display: block;
			font-size: 15px;
			line-height: 1.6;
			margin: 0px 0px;

			text-align: left;
		}

		.menu-category li a {
			background-position: 10px 9px;
			background-repeat: no-repeat;
			background-color: #ebeef1;
			color: #333;
			display: block;
			line-height: 1.6;
			margin: 0px 0px;
			padding: 0px 0px 0px 0px;
			text-align: left;
		}

	.menu-category li a:link {
		color:#333;
		text-decoration:none;
	}

	.menu-category li a:visited {
		color:#999;
	}


/*
***********************************************************************************************
公式ツイッター（未使用）
***********************************************************************************************
*/

.twitter-widget {
	/*
	border: 2px solid #1DA1F2;
	*/
	margin: 25px auto 0px auto;
	max-width: 600px;
	position: relative;
	z-index: 1;
}

	.twitter-widget h2 {
		background-color: #1DA1F2;
		color: #fff;
		font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック", "MS P Gothic","Osaka",Verdana,Arial, Helvetica, sans-serif;
		line-height: 1.5;
		padding: 3px 10px 4px 10px;
	}

	/* タイムラインが表示できなかった場合のエラー表示 */
	.twitter-timeline-error {
		background-color: #fff;
		color: #fff;
		display: block;
		padding: 10px;

		text-align: center;

		border-radius: 5px;
	}


/*
***********************************************************************************************
ページメニュー
***********************************************************************************************
*/

.page_menu {
	/*
	background-color: #FDFAF3;
	*/
	border: 4px solid #33cccc;
	padding: 20px 20px 15px 20px;

	/*
	border-radius: 7px;
	*/
}

	.page_menu li {
		background-image: url("../img/bullet_common5.png");
		background-repeat: no-repeat;
		background-position: 0px 6px;
		list-style-type: none;
		padding-left: 20px;
		margin-bottom: 5px;
		text-align: left;
	}

	.page_menu li a {
		color: #111;
	}

/*
***********************************************************************************************
iscroll.jsのCSSを上書き
***********************************************************************************************
*/

.iScrollVerticalScrollbar {
	overflow: hidden;
	position: absolute;
	z-index: 9999;
}

.iScrollVerticalScrollbar .iScrollIndicator {
	width: 100%;
}

/* styled scrollbars */
.iScrollVerticalScrollbar {
	background-color: #e3ebee;
	top: 2px;
	right: 2px;
	bottom: 2px;
	width: 7px;
}

.iScrollIndicator {
	background-color: #4163bc;
	box-sizing: border-box;
	position: absolute;

	border-radius: 0px;
}


/*
***********************************************************************************************
お知らせ
***********************************************************************************************
*/

.block-news {
	/*
	background-color: #fff;
	border: 1px solid #a2b7cc;
	*/
	box-sizing: border-box;
	margin-top: 0px;
	padding: 0px 0px 0px 0px;
	position: relative;
	z-index: 1;
}

	.viewmode-mobile .block-news {
		padding: 0px 10px 0px 10px;
	}

	.block-news-inner {
		margin: 0 auto 0 auto;
		/*
		max-width: 950px;
		*/
		padding: 0px 0px 0px 0px;
		position: relative;
	}

		.viewmode-mobile .block-news-inner {
			padding-left: 0px;
		}

	/* お知らせ */
	.block-news h2 {
		background-image: none;
		border: 0px solid #fff;
		color: #fff;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 21px;
		font-weight: 600;
		height: 170px;
		left: 0px;
		letter-spacing: 0.1em;
		/*
		line-height: 150px;
		*/
		margin: -10px 0px -10px 0;
		padding: 15px 15px 15px 15px;
		position: absolute;
		top: -10px;
		/*
		text-align: center;
		*/
		width: 189px;

		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#0083d0+0,14c4d1+100 */
		background: #0083d0; /* Old browsers */
		background: -moz-linear-gradient(-45deg,  #0083d0 0%, #14c4d1 100%); /* FF3.6-15 */
		background: -webkit-linear-gradient(-45deg,  #0083d0 0%,#14c4d1 100%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(135deg,  #0083d0 0%,#14c4d1 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0083d0', endColorstr='#14c4d1',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
	}

		/* 罫線の飾り */
		.block-news h2::after {
			content: none;
		}

			.viewmode-mobile .block-news h2 {
				font-size: 17px;
				left: -10px;
				line-height: 1.6;
				height: auto;
				top: -57px;
				padding: 5px 10px 5px 10px;

				width: auto;
			}

		/* 最新のお知らせ */
		.block-news h2 span {
			color: #666;
			display: inline-block;
			font-family: 'Noto Sans JP', sans-serif;
			font-size: 75%;
			font-weight: 400;
			margin-left: 1em;
		}

			.viewmode-mobile .block-news h2 span{
				display: none;
			}

			.block-news h2 a{
				font-weight: normal;
				text-decoration: none;
			}
				.block-news h2 a:hover{
					text-decoration: underline;
				}


	/* お知らせ記事のリスト */
	.block-news .news_content {
		overflow: hidden;
		/*
		overflow: scroll;
		overflow-x: hidden;
		*/
		height: 220px;
		padding-right: 20px;
		position: relative;
		margin: 0 auto;
		/*
		max-width: 960px;
		*/
		text-align: left;
		z-index: 1;

		-webkit-overflow-scrolling: touch;
	}

		.viewmode-mobile .block-news .news_content {
			clear: both;
			height: 300px;
		}

	.block-news dl {
		margin: 0 0px 0px 0px;
		padding: 0px;
		text-align: left;
	}

		.viewmode-mobile .block-news dl {
			line-height: 1.6;
		}

		.block-news dl::after {
			content: "";
			clear: both;
			display: block;
		}

		.block-news dl:first-child {
		}

	/* お知らせ記事の日付 */
	.block-news dl dt.date {
		border-top: 1px solid #d0dbe5;
		clear: both;
		/*
		color: #666;
		font-family: 'Roboto', sans-serif;
		font-size: 15px;
		*/
		float: left;
		line-height: 1.6;
		margin: 0px 0px 0px 0px;
		padding: 15px 0px 0px 0px;
		position: relative;
		width: 10.5em;
	}

		.block-news dl dt.date:first-child {
			border-top: none;
			padding-top: 5px;
		}

		.viewmode-mobile .block-news dl dt.date {
			float: none;
			font-size: 13px;
			margin: 0 0 5px 0;
			padding: 0px 0px 0px 0px;
		}

		/* NEWアイコン */
		.block-news dl dt.date img {
			margin: 0 0px 2px 10px;
			vertical-align: middle;
		}

		/* アイキャッチ画像（未使用） */
		/*
		.block-news dl dt.date .thumb{
			float: left;
			margin: 0px 0px 30px -130px;
			width: 100px;
			height: 100px;
		}

			.viewmode-mobile .block-news dl dt.date .thumb {
				display: none;
				width: auto;
			}

			.block-news dl dt.date .thumb img {
				height: 100% !important;
				margin: 0 0px 0px 0px;
				width: auto !important;
			}

		.block-news dl dt.date .thumb .nailthumb-title {
			display: none;
		}
		*/

	/* お知らせ記事のタイトル*/
	.block-news dl dd.title {
		border-top: 1px solid #d0dbe5;
		font-size: 95%;
		line-height: 1.6;
		margin: 0px 0px 0px 10.5em;
		padding: 15px 0px 15px 0px;
	}

		.block-news dl dt.date:first-child + dd.title {
			border-top: none;
			padding-top: 5px;
		}

		.viewmode-mobile .block-news dl dd.title {
			font-size: 13px;
			margin: 0px 0px 15px 0px;
			padding: 0px 0px 0px 0px;
		}

		.block-news dl dd.title a {
			/*
			text-decoration: none;
			*/
		}

			.block-news dl dd.title a:hover {
				/*
				text-decoration: underline;
				*/
			}

		.block-news dl dd.title ul {
			list-style-type: none;
			margin: 0px 0 0 0;
			padding: 0px;
		}

			.block-news dl dd.title ul li {
				padding-left: 0.9em;
				position: relative;
			}

				/* 矢印の飾り */
				.block-news dl dd.title ul li::before {
					color: #4163bc;
					content:"\f054";	/* fa-chevron-right */
					display: block;
					font-family: 'Font Awesome 5 Free';
					font-size: 0.9em;
					font-weight: 900;
					line-height: 1.5;
					text-decoration: none;
					top: 0em;
					left: 0px;
					position: absolute;
				}


	/* 過去のお知らせ */
	.block-news .news_archive {
		bottom: -5px;
		display: block;
		margin: 0px auto 0 auto;
		position: absolute;
		left: 45px;
		z-index: 1;
	}

		.viewmode-mobile .block-news .news_archive {
			bottom: -21px;
			right: -10px;
		}

		.block-news .news_archive a {
			color: #fff;
			display: inline-block;
			font-family: 'Noto Sans JP', sans-serif;
			font-size: 14px;
			font-weight: 600;
			letter-spacing: 0.1em;
			line-height: 1;
			position: relative;
			padding: 10px 30px 10px 10px;
			text-decoration: none;
			vertical-align: top;

			transition: all 0.2s ease;
		}

			.block-news .news_archive a:hover {
				text-decoration: none;
				opacity: 0.7;
			}

			/* 矢印の飾り */
			.block-news .news_archive a::after {
				color: #fff;
				content: "\f054";	/* fa-chevron-right */
				display: inline-block;
				font-family: 'Font Awesome 5 Free';
				font-size: 14px;
				font-weight: 900;
				line-height: 1.0;
				position: absolute;
				text-decoration: none;
				right: 10px;
			}

			.block-news .news_archive a:hover {
			}

				.block-news .news_archive a:hover::before {

				}

	#newsList {
	}

		#newsList > table tr {
			background-color: transparent;
		}

			#newsList > table tr:first-child {
				display: none;
			}

		#newsList > table td {
			text-align: left;
		}

			.viewmode-mobile #newsList > table td {
				display: block;
				line-height: 1.6;
				width: auto;
			}

				.viewmode-mobile #newsList > table td + td {
					margin-bottom: 1em;
				}


/*
***********************************************************************************************
重要なお知らせ
***********************************************************************************************
*/

.block-news.important {
	border: 1px solid #a2b7cc;
	overflow: hidden;
}

.block-news.important .block-news-inner {
	padding-left: 205px;
}

.block-news.important h2 {
	font-size: 17px;

	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ff6600+0,f2b452+100 */
	background: #ff6600; /* Old browsers */
	background: -moz-linear-gradient(-45deg,  #ff6600 0%, #f2b452 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg,  #ff6600 0%,#f2b452 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg,  #ff6600 0%,#f2b452 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff6600', endColorstr='#f2b452',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

.block-news.important dl {
	/*
	padding-bottom: 5px;
	*/
}

	.block-news.important dl dd.title {
		padding-bottom: 5px;
	}


/*
***********************************************************************************************
新着情報プログラム
***********************************************************************************************
*/

ul#newsList {
	margin: 0 0;
	padding: 0;
}

	ul#newsList li {
		/*
		font-size: 14px;
		*/
		margin: 0;
		padding: 7px 0;
		list-style-type: none;
	}

		ul#newsList li + li {
			/*
			border-top: 1px solid #ccc;
			*/
		}

/* 日付 */
.up_ymd {
	display: inline-block;
	line-height: 1.3;
	margin: 0 0px 0 0px;
	min-width: 110px;
	position: relative;
	text-align: left;
	top: 4px;
	vertical-align: top;
}

/* カテゴリ名 */
.catName {
	border: 1px solid #ccc;
	display: inline-block;
	line-height: 1.3;
	margin: 0 15px 0 0px;
	min-width: 150px;
	padding: 4px 5px;
	position: relative;
	text-align: center;
	top: 0px;
	vertical-align: top;
	/*
	border-radius: 6px;
	*/
}

	.viewmode-mobile .catName {
		float: right;
		font-size: 12px;
		margin: 0px;
	}

/* 記事のタイトル */
.title {
	clear: both;
	display: inline-block;
	/*
	font-size: 90%;
	*/
	width: 510px;
	vertical-align: top;
}

	.title a:link {
		text-decoration: underline;
	}

	.title a:hover {
		text-decoration: none;
	}

	.viewmode-mobile .title {
		display: block;
		font-size: 100%;
		width: auto;
	}

/* NEWマーク */
.newMark {
	background-color: #ff6600;
	color: #fff;
	display: inline-block;
	font-size: 11px;
	line-height: 1.2;
	margin-left: 8px;
	padding: 1px 3px;
	position: relative;
	top: -1px;
	vertical-align: middle;
}

/* 本文 */
.comment {
	float: left;
	display: block;
	overflow: hidden;
	padding: 3px 0;
	width: 500px;/* 本文部分の幅。ここは特に設置ページ合わせて変更下さい */
}

/* サムネイル */
.thumbNailWrap {
	display:block;
	width:110px;
	float:left;
	height:80px;
	overflow:hidden;
}

/* ページャー */
.pager {
	clear: both;
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
	padding: 15px 0;
	text-align: center;
}

	.viewmode-mobile .pager {
	}

	.pager a {
		border: 1px solid #999;
		color: #333;
		display: inline-block;
		letter-spacing: .05em; /* 文字間を通常に戻す */
		line-height: 1.6;
		margin: 0px 5px;
		padding: 3px 7px 2px;
		text-decoration: none;
		vertical-align: top;

		border-radius: 5px 5px 5px 5px;
	}

		.viewmode-mobile .pager a {
			font-size: 12px;
		}

		.pager a:hover {
			background-color: #999;
			color: #fff;
		}

		/* 現在のページのボタン */
		.pager a.current {
			background-color: #999;
			color: #fff;
		}

.overPagerPattern {
	padding:0 2px ;
}


/*
***********************************************************************************************
yuga.jsのタブ
***********************************************************************************************
*/

.tabNav {
	border-bottom: 1px solid #8f9eab;
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
	line-height: 1.3;
	list-style-type: none;
	margin: 0 0 25px 0;
	padding: 0 0 0 0px;
}

	.viewmode-mobile .tabNav {
		margin: 0 0 15px 0;
	}

	.tabNav li {
		border: 1px solid #8f9eab;
		border-bottom: none;
		letter-spacing: normal; /* 文字間を通常に戻す */
		display: inline-block;
		margin: 5px 5px -1px 0px;
		padding: 0;
		white-space: nowrap;
		vertical-align: top;
	}

		.tabNav li a {
			background-color: #8f9eab;
			color: #fff;
			display: block;
			margin: 0;
			padding: 5px 10px;
			white-space: nowrap;
		}

			.tabNav li a:hover {
				color: #333;
				background: #fff;
				text-decoration: none;
			}

			.tabNav li a.active {
				background: #fff;
				color: #333 !important;
				overflow: visible;
			}

/*
***********************************************************************************************
リンクの矢印
***********************************************************************************************
*/

.link_common {
	margin-top: 5px;
	text-align: right;
	font-size: 95%;
}

	.link_common a {
		background-image: url(../img/bullet_footerNavi2.gif);
		background-repeat: no-repeat;
		background-position: 0px 3px;
		padding-left: 12px;
	}

/*
***********************************************************************************************
プラグイン関係
***********************************************************************************************
*/

/* Adobe Readerのダウンロード */

.getacro {
	background-color: #e3ebee;
	clear: both;
	font-size: 90%;
	line-height: 1.6;
	margin: 25px 0 0 0;
	padding: 15px 15px 15px 15px;
	text-align: left;
}

	.getacro::after {
		clear: both;
		content: " ";
		display: block;
		font-size: 0;
		height: 0;
		visibility: hidden;
	}

	.viewmode-mobile .getacro {
		display: none;
	}

	.getacro img {
		float: left;
		margin: 0px 15px 0px 0;
	}


/*
***********************************************************************************************
アコーディオンメニュー（水平）
***********************************************************************************************
*/

.accordion {
	height: 350px;
	overflow: hidden;
	max-width: 1080px;
	width: 100%;
}

	.accordion ul {
		display: table;
		table-layout: fixed;
		margin: 0;
		padding: 0;
		width: 100%;
	}

		.accordion ul li a {
			background: rgba(0, 0, 0, 0);
		}

			.accordion ul:hover li a {
				background: rgba(0, 0, 0, 0.5);
			}

		.accordion ul:hover li {
			width: 20%;	/* hover状態のli要素の幅を引いた残りをli要素で等分 */
		}

			.accordion ul:hover li:hover {
				width: 60%;
			}

				.accordion ul:hover li:hover a {
					background: rgba(0, 0, 0, 0);
				}

					.accordion ul:hover li:hover a * {
						opacity: 1;
						-webkit-transform: translateX(0);
						transform: translateX(0);
					}

		.accordion ul li {
			background-repeat: no-repeat;
			background-position: center center;
			background-size: cover;
			display: table-cell;
			vertical-align: bottom;
			position: relative;
			height: 350px;
			width: 25%;	/* li要素で等分 */

			transition: all 500ms ease;
		}

			.accordion ul li div {
				display: block;
				overflow: hidden;
				width: 100%;
			}
