@charset "utf-8";

/* ==========================================================================
HTML5 Boilerplate styles - h5bp.com (generated via initializr.com)
========================================================================== */
/* Copyright (c) HTML5 Boilerplate */

html,
button,
input,
select,
textarea {
	color: #222;
}

body {
	line-height: 1.5em;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #333333;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

img {
	vertical-align: bottom;
	border: none;
}

ruby {
	display: inline-table;
	border-collapse: collapse;
	margin: 0;
	padding: 0;
	border: none;
	white-space: nowrap;
	text-indent: 0;
	vertical-align: 0.9em;
	text-decoration: inherit;
	text-align: center;
	line-height: 1em;
}

/* 上ルビ */
ruby > rtc {
	display: table-header-group;
	height: 25%;
	margin: 0;
	padding: 0;
	border: none;
	font: inherit;
	font-size: 50%;
	line-height: 1em;
}

/* 下ルビ(括弧類がある場合とない場合でセレクタが異なる) */
ruby > rtc + rtc,
ruby > rtc + rp + rtc {
	display: table-footer-group;
	height: 25%;
	margin: 0;
	padding: 0;
	border: none;
	font: inherit;
	font-size: 50%;
	text-decoration: none;
	line-height: 1em;
}

/* 各文字に対応するルビ */
ruby > rtc > rt {
	margin: 0;
	padding: 0 0.125em;
	border: none;
	display: table-cell;
	font-size: 100%;
	text-align: center;
	line-height: 1em;
}

/* ルビ対象テキスト */
ruby > rb {
	display: table-cell;
	max-height: 75%;
	margin: 0;
	padding: 0 0.125em;
	border: none;
	font: inherit;
	text-decoration: none;
	text-align: center;
	line-height: 1em;
	vertical-align: top;
}

/* 非対応環境向け括弧類 */
ruby > rp {
	display: none;
}

/* 単純な<ruby>要素での<rt>要素 */
ruby > rt {
	display: table-header-group;
	height: 25%;
	margin: 0;
	padding: 0 0.125em;
	border: none;
	font: inherit;
	font-size: 50%;
	line-height: 1em;
}

/* ==========================================================================
Helper classes
========================================================================== */

.hidden {
	display: none !important;
	visibility: hidden;
}

.hide {
	display: none;
}

.clearfix:before,
.clearfix:after {
	/*content: " ";*/
	/*display: table;*/
}

.clearfix:after {
	clear: both;
}

.clearfix {
	*zoom: 1;
}


/***追加CSS***/

/**ライブラリ**/

/*ロールオーバー*/
a.roll {
	display: block;
}

a.roll:hover img {
	opacity: 0;
	/*0~1*/
	filter: alpha(opacity=0);
	/*0~100*/
	-ms-filter: "alpha( opacity=0)";
	/*0~100*/
}

a.roll img {
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

a.fade:hover img {
	opacity: 0.5;
	/*0~1*/
	filter: alpha(opacity=50);
	/*0~100*/
	-ms-filter: "alpha( opacity=50)";
	/*0~100*/
}

a.fade img {
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

/**全ページ共通**/

/*Webフォント*/
@font-face {
	font-family: "ipaexm";
	src: url('../fonts/ipaexm-s.eot?') format('eot'),
		url('../fonts/ipaexm-s.woff') format('woff'),
		url('../fonts/ipaexm-s.ttf') format('truetype');
}

@font-face {
	font-family: "ipaexg";
	src: url('../fonts/ipaexg-s.eot?') format('eot'),
		url('../fonts/ipaexg-s.woff') format('woff'),
		url('../fonts/ipaexg-s.ttf') format('truetype');
}

@font-face {
	font-family: "Aozora-M";
	src: url('../fonts/AozoraMinchoMedium-s.eot?') format('eot'),
		url('../fonts/AozoraMinchoMedium-s.woff') format('woff'),
		url('../fonts/AozoraMinchoMedium-s.ttf') format('truetype');
}

/*タグ再定義*/
html {
	/* overflow: scroll; */
/*	overflow: -moz-scrollbars-vertical;*/
	/* overflow-x: scroll; */
}

body {
	padding: 0 15px;
	line-height: 1.4em;
}

h1,
h2,
h3,
h4,
h5 {
	clear: both;
	font-weight: normal;
}

h1 {
	font-family: "メイリオ", Meiryo, "ipaexg";
	font-weight: normal;
	color: #595757;
	/*text-shadow: 0 0 1px #aaa, 0 0 2px #ccc, 0 0 3px #eee;*/
	font-weight: normal;
	padding-top: 0.5em;
}

h2 {
	font-family: "メイリオ", Meiryo, "ipaexg";
	line-height: 1.2em;
}

h3,
h4,
h5 {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.2em;
}

.article p,
.article dd,
.article li {
	font-size: 15px;
}

.article p {
	line-height: 1.5em;
	padding-top: 0.2em;
}

a {
	color: #003399;
	text-decoration: none;
}

a:hover {
	color: #990033;
	text-decoration: underline;
}

a:visited {
	color: #006699;
}


#wrap {
	max-width: 1200px;
	padding: 15px 0 15px;
	margin: 0 auto;
	position: relative;
	height: 100%;
	zoom: 1;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: start;
}

/*サイドナビゲーション*/
.header-container {
	/*position: fixed;*/
	background-color: #fff;
	z-index: 10000;
	width: 30%;
	position: sticky;
	top: 15px;
}

header.wrapper {
	width: 100%;
}

/*IE7は左固定*/
.lt-ie8 .header-container {
	top: 15px;
	left: 15px;
}

.lt-ie8 .main-container {
	margin-left: 240px;
}

.lt-ie7 .main-container {
	margin-left: 128px;
	margin-top: -450px !important;
}

.lt-ie7 .home_navi {
	display: none;
}

.lt-ie7 .home-only {
	border-bottom: none !important;
	margin-bottom: 0 !important;
}

.lt-ie7 #headline {
	display: none !important;
}

.lt-ie7 #return_top {
	display: none !important;
}

.lt-ie7 .p-home #sub_menu,
.lt-ie7 .p-whatsnew #sub_menu {
	padding-right: 30px;
}

.lt-ie7 .p-home #sub_menu,
.lt-ie7 .p-whatsnew #sub_menu {
	padding-right: 30px;
}

.lt-ie8 #sub_menu ul {
	height: 1.2em;
}

.lt-ie7 #sub_menu ul {
	height: 0.8em;
}

.lt-ie7 #sub_menu ul {
	border-left: 1px solid #999999;
}

nav {
	/* width: 224px; */
	margin: 0px;
	padding: 0px;
	max-width: 85%;
}

h1.title {
	margin: 0 0 36px 0;
	padding: 0 24px 0 0 !important;
	height: 48px;
	width: 200px;
	text-align: right;
}

h1.title img {
	width: 100%;
	height: auto;
}

nav ul {
	margin: 0px;
	padding: 0px;
	border-top-width: 1px;
	border-top-style: dotted;
	border-top-color: #adacac;
}

nav ul li {
	width: 100%;
	margin: 0px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #adacac;
	line-height: 0;
	vertical-align: bottom;
}

nav ul li a {
	display: block;
	padding-top: 0.8em;
	padding-right: 0px;
	padding-bottom: 0.8em;
	padding-left: 1.5em;
	line-height: 1em;
	font-size: 15px;
	color: #3b3939 !important;
	text-decoration: none;
	border-left-width: 6px;
	border-left-style: solid;
	border-left-color: #FFFFFF;
	/*line-height: normal;; スマホ表示時の崩れ防止のため*/
	font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
	/*font-family: "Aozora-M";*/
}

/*
.ms nav ul li a {
text-indent: -9999px;
overflow: hidden;
background-position: left center;
background-repeat: repeat-y;
height: 40px !important;
padding: 0 !important;
line-height: 40px;
}
*/
nav ul li a:hover {
	color: #FFFFFF !important;
	background-color: #999;
	border-left-color: #565555;
	text-decoration: none;
}

/*
.ms nav ul li:hover a ,
.ms nav ul li a:hover {
background-position: -250px center;
border-left: solid 6px #565555;
}

*/
/*ナビ画像
.ms nav ul li.nav_home a {
background-image: url(../images/nav/nav_01.gif);
}
.ms nav ul li.nav_whatsnew a {
background-image: url(../images/nav/nav_02.gif);
}
.ms nav ul li.nav_consult a {
background-image: url(../images/nav/nav_03.gif);
}
.ms nav ul li.nav_aboutus a {
background-image: url(../images/nav/nav_04.gif);
}
.ms nav ul li.nav_introduce a {
background-image: url(../images/nav/nav_05.gif);
}
.ms nav ul li.nav_search a {
background-image: url(../images/nav/nav_06.gif);
}
.ms nav ul li.nav_recruit a {
background-image: url(../images/nav/nav_07.gif);
}
.ms nav ul li.nav_matter a {
background-image: url(../images/nav/nav_08.gif);
}
.ms nav ul li.nav_access a {
background-image: url(../images/nav/nav_09.gif);
}
*/

/*サブメニュー*/
/*
nav ul li ul {
position: absolute;
z-index: 999;
display: none;
margin-top: -20px;
margin-left: 180px;
width: 360px;
background-color: #39C;
-webkit-box-shadow:rgba(0, 0, 0, 0.278431) 3px 3px 4px 0px;
-moz-box-shadow:rgba(0, 0, 0, 0.278431) 3px 3px 4px 0px;
box-shadow:rgba(0, 0, 0, 0.278431) 3px 3px 4px 0px;
}
nav ul li:hover ul {
display: block;
}
#wrap nav ul#header-navi li ul li a {
background-image: none !important;
background-color: #fff !important;
color: #666 !important;
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
border-left-width: 6px;
border-left-style: solid;
border-left-color: #807f7f;
text-indent: 1em !important;
}
#wrap nav ul#header-navi li ul li a:hover {
background-color: #ccc !important;
}
*/

/*ナビ カレント表示*/
.p-home nav ul li.nav_home a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-home nav ul li.nav_home a {
	background-position: -500px center;
}

.p-whatsnew nav ul li.nav_whatsnew a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-whatsnew nav ul li.nav_whatsnew a {
	background-position: -500px center;
}

.p-event nav ul li.nav_whatsnew a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-event nav ul li.nav_whatsnew a {
	background-position: -500px center;
}

.p-aboutus nav ul li.nav_aboutus a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-aboutus nav ul li.nav_aboutus a {
	background-position: -500px center;
}

.p-introduce nav ul li.nav_introduce a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-introduce nav ul li.nav_introduce a {
	background-position: -500px center;
}

.p-introduce-iken nav ul li.nav_introduce a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-introduce-iken nav ul li.nav_introduce a {
	background-position: -500px center;
}

.p-inhouse nav ul li.nav_search a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-inhouse nav ul li.nav_search a {
	background-position: -500px center;
}

.p-consult nav ul li.nav_consult a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-consult nav ul li.nav_consult a {
	background-position: -500px center;
}

.p-search nav ul li.nav_search a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-search nav ul li.nav_search a {
	background-position: -500px center;
}

.p-matter nav ul li.nav_matter a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-matter nav ul li.nav_matter a {
	background-position: -500px center;
}

.p-recruit nav ul li.nav_recruit a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-recruit nav ul li.nav_recruit a {
	background-position: -500px center;
}

.p-access nav ul li.nav_access a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.p-access nav ul li.nav_access a {
	background-position: -500px center;
}

.p-publish nav ul li.nav_publish a {
	color: #FFFFFF !important;
	background-color: #807f7f;
	border-left-color: #565555;
	text-decoration: none;
}

.ms.publish nav ul li.nav_publish a {
	background-position: -500px center;
}

/*サブメニュー*/
nav ul li ul {
	position: absolute;
	z-index: 999;
	display: none;
	margin-top: -20px;
	margin-left: 180px;
	width: 360px;
	background-color: #39C;
	-webkit-box-shadow: rgba(0, 0, 0, 0.278431) 3px 3px 4px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.278431) 3px 3px 4px 0px;
	box-shadow: rgba(0, 0, 0, 0.278431) 3px 3px 4px 0px;
}

nav > ul > li:hover > ul {
	display: block;
}

#wrap nav ul li ul li a {
	background-image: none !important;
	background-color: #fff !important;
	color: #666 !important;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	border-left-width: 6px;
	border-left-style: solid;
	border-left-color: #807f7f;
	text-indent: 15px !important;
}

#wrap nav ul li ul li a:hover {
	background-color: #ccc !important;
}

/*サブメニュー追加*/
nav ul li ul li ul {
	position: absolute;
	z-index: 999;
	display: none;
	margin-top: -20px;
	margin-left: 240px;
	width: 360px;
	background-color: #39C;
	-webkit-box-shadow: rgba(0, 0, 0, 0.278431) 3px 3px 4px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.278431) 3px 3px 4px 0px;
	box-shadow: rgba(0, 0, 0, 0.278431) 3px 3px 4px 0px;
}

nav > ul > li:hover > ul > li:hover > ul {
	display: block;
}

#wrap nav ul li ul li ul li a {
	background-image: none !important;
	background-color: #fff !important;
	color: #666 !important;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	border-left-width: 6px;
	border-left-style: solid;
	border-left-color: #807f7f;
	text-indent: 15px !important;
}

#wrap nav ul li ul li ul li a:hover {
	background-color: #ccc !important;
}

/*フッター*/
.footer-container {
	clear: both;
	padding-top: 3em;
	width: 100%;
	/* float: left; */
	margin-left: 30%;
	background-color: #fff;
	/*position: relative;*/
	z-index: 1999;
}

.lt-ie8 .footer-container {
	margin-left: 240px;
}

.lt-ie7 .footer-container {
	margin-left: 128px;
}

.footer_list {
	padding: 0.5em 2px;
	border-bottom: dotted 1px #CCCCCC;
	overflow: hidden;
}

.lt-ie7 .footer_list {
	height: 1em;
}

.footer_list ul {
	margin: 0px;
	padding: 0px;
}

.footer_list li {
	list-style-type: none;
	float: left;
	line-height: 1.4em;
	padding-top: 0px;
	padding-right: 0.5em;
	padding-bottom: 0px;
	padding-left: 0.5em;
	font-size: 12px;
	margin: 0 0 0.5em -1px;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #999999;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #999999;
}

.footer-container h5,
.footer-container h6 {
	font-weight: normal;
	line-height: 1.5em;
	margin: 0.5em 0;
}

.footer-container h5 span {
	white-space: nowrap;
}

.footer-container h5 strong,
.footer-container h5 span span {
	font-size: larger;
	font-weight: normal;
}

/*サブメニュー*/
#sub_menu {
	padding: 0;
	margin: 0;
	overflow: hidden;
}

#sub_menu > ul {
	margin: 0px;
	padding: 0px;
	float: right;
}

@media screen and (max-width: 580px) {
	#sub_menu > ul {
		padding-top: 25px;
	}
	}

#sub_menu > ul > li {
	list-style-type: none;
	float: left;
	line-height: 1.3em;
	padding-top: 0px;
	padding-right: 0.5em;
	padding-bottom: 0px;
	padding-left: 0.5em;
	font-size: 12px;
	margin: 0 0 0.5em -1px;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #999999;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #999999;
}

/*ヘッダー追加部分*/
#header-hover {
	z-index: 100000000000;
	display: block;
}

#header-hover > ul {
	display: none;
}

#header-hover:hover ul {
	display: block;
	margin: 0px;
	padding: 10px 8px;
	float: right;
	position: absolute;
	background: #fff;
	border: dotted 1px #adacac;
	filter: drop-shadow(2px 4px 2px rgba(0, 0, 0, .3));
	right: 0;
	width: 13.5%;
	z-index: 1;
}

@media screen and (max-width: 580px) {
	#header-hover:hover ul {
		display: block;
		margin: 0px;
		padding: 10px 8px;
		float: right;
		position: absolute;
		background: #fff;
		border: dotted 1px #adacac;
		filter: drop-shadow(2px 4px 2px rgba(0, 0, 0, .3));
		right: 0;
		width: 46%;
		z-index: 1;
	}
}

#header-hover:hover ul > li {
	list-style-type: none;
	float: left;
	line-height: 1.3em;
	font-size: 12px;
	margin: 0 0 5px 0px;
	padding: 0 0 5px 0;
	width: 100%;
	border-bottom: dotted 1px #adacac;
}

#header-hover:hover ul > li:last-child {
	margin: 0 0 0px 0px;
	padding: 0 0 0px 0;
	border-bottom: none;
}

.twitter_area {}

.pc {
	display: block;
}

.sp {
	display: none;
}

@media screen and (max-width: 580px) {
	.pc {
		display: none;
	}

	.sp {
		display: block;
	}
}

.twitter_area h3 {
	background: #01aef0;
	color: #fff;
	padding: 4px 8px;
	font-size: 14px;
	text-align: center;
	border-radius: 4px;
	margin: 40px 0 0;
}

/*パンくずリスト*/
ul.breadcrumbs {
	clear: both;
	padding: 0.5em 0px;
	overflow: hidden;
	margin: 0;
}

ul.breadcrumbs li {
	font-size: 12px;
	margin: 0;
	padding: 0 0.5em 0 0;
	float: left;
	list-style-type: none;
}

ul.breadcrumbs li + li:before {
	content: "> ";
}

.lt-ie8 ul.breadcrumbs li {
	padding-right: 13px;
	padding-left: 5px;
	background-image: url(../images/text_arrow.gif);
	background-repeat: no-repeat;
	background-position: right center;
}

/*コンテンツナビ*/
ul.contents_navi {
	padding: 0px;
	overflow: hidden;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 20px;
	margin-left: 0px;
}

ul.contents_navi li {
	font-size: 14px;
	float: left;
	list-style-type: none;
	background-image: url(../images/page_navi_arrow_r.gif);
	background-position: left center;
	background-repeat: no-repeat;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 15px;
	margin: 0.3em 0.5em;
}

ul.contents_navi li.current {
	background-image: url(../images/page_navi_arrow.gif);
}

/*トップへ戻る*/
#return_top {
	position: fixed;
	z-index: 2999;
	bottom: 85px;
	right: -5px;
	background-color: #FFFFFF;
	font-size: 12px;
	border-top-width: 1px;
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-right-style: none;
	border-bottom-style: solid;
	border-left-style: solid;
	border-top-color: #999999;
	border-bottom-color: #999999;
	border-left-color: #999999;
	margin: 0px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	padding-top: 5px;
	padding-right: 20px;
	padding-bottom: 5px;
	padding-left: 5px;
}

#return_top a {
	display: block;
	width: 14px !important;
	white-space: inherit;
	text-align: left;
	line-height: 1em;
}

/*コンテンツエリア*/
.main-container {
	float: left;
	/* margin-left: 256px; */
	width: 70%;
	/*position: relative;*/
	min-height: 27em;
}

.main-container h1 {
	line-height: 1em;
	margin: 0px;
	margin-bottom: 15px;
}

.main-container h2 {
	color: #595757;
}

.main-container h2,
.main-container h3,
.main-container h4 {
	padding: 0.4em 0.5em 0.3em 0.5em;
	line-height: 1.3em;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #1c84cc;
	border-left-width: 6px;
	border-left-style: solid;
	border-left-color: #1c84cc;
	border-top-width: 1px;
	border-right-width: 1px;
	border-top-style: solid;
	border-top-color: #1c84cc;
	border-right-style: solid;
	border-right-color: #1c84cc;
}

.main-container h3 {
	border-left-width: 5px;
	font-weight: normal;
	margin-left: 5px;
}

.main-container h4 {
	border-left-width: 4px;
	padding-left: 0.8em;
	margin-left: 9px;
}

.main-container h5 {
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #6695cc;
	font-size: medium;
	color: #4D82C4;
}

.main-container h2 a,
.main-container h3 a,
.main-container h4 a,
.main-container h5 a,
.main-container .include_menu h3 span {
	color: #595757;
	padding-left: 25px;
	background-image: url(../images/hx_arrow.png);
	background-repeat: no-repeat;
	background-position: left center;
	display: block;
}

.main-container h2 a.pop,
.main-container h3 a.pop,
.main-container h4 a.pop {
	background-image: url(../images/hx_pop_arrow.png);
}

.main-container h2 a.out,
.main-container h3 a.out,
.main-container h4 a.out {
	padding-left: 28px;
	background-image: url(../images/hx_out_arrow.png);
}

.main-container p {
	padding-left: 0.5em;
}

.main-container li {
	margin-bottom: 0.5em;
}

.include_menu li {
	width: 32.5%;
	margin-right: auto;
	border: solid 1px #ddd;
	box-sizing: border-box;
	padding: 0;
	list-style: none;
	background: #eee;
	margin-bottom: 10px;
	font-size: 14px;
}
.tooltip1 {	
	position: relative;
	cursor: pointer;
	display: inline-block;
	width: 100%;
	height: 100%;
	padding: 5px;
	box-sizing: border-box;
}
.tooltip1 p {
	margin: 0;
	padding: 0;
	font-size: 14px;
}
.description1 {
	display: none;
	position: absolute;
	padding: 10px;
	font-size: 12px;
	line-height: 1.6em;
	color: #fff;
	border-radius: 5px;
	background: #333;
	width: 200px;
	text-align: justify;
	word-break: break-all;
}
.description1:before {
	content: "";
	position: absolute;
	top: -24px;
	left: 15%;
	border: 15px solid transparent;
	border-top: 15px solid #333;
	margin-left: -15px;
	transform: rotateZ(180deg);
}
.tooltip1:hover .description1 {
	display: inline-block;
	top: 30px;
	left: 30px;
	z-index: 1;
}
.include_menu li:nth-of-type(3n) {
	margin-right: 0%;
}

.main-container dd {
	margin-left: 1em;
}

table.box {
	margin: 0 auto 1em auto;
	border-collapse: collapse;
	width: 100%;
}

table.box th,
table.box td {
	text-align: left;
	vertical-align: top;
	padding: 0.5em;
	border: solid 1px #999;
	word-break: break-word;
}

table.box td p {
	margin-top: 0;
	margin-left: 0;
	margin-right: 0;
	padding: 0;
}

/**HOME**/
/*ヘッドライン*/
#headline {
	padding-left: 80px;
	background-image: url(../images/headline_bg.gif);
	background-repeat: repeat-y;
	background-position: left center;
}

#headline h3 {
	display: none !important;
}

#headline #slider {
	margin: 0px;
	padding-bottom: 0.5em;
	height: 1.5em !important;
	border: 1px solid #999999;
	overflow: hidden;
	font-size: 12px;
}

#headline ul {
	margin: 0px;
	padding: 1px;
	overflow: hidden;
}

#headline ul li {
	list-style-type: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	color: #333333;
}

#headline ul li a {
	color: #3b3939;
	padding-left: 0.6em;
	margin: 0;
	height: 1em;
}

/*メインロゴ*/
#main_logo {
	height: 320px;
	width: 100%;
	padding: 0;
	margin: 80px 0 75px 0;
	background-image: url(../images/home/visual_logo.gif);
	background-repeat: no-repeat;
	background-position: center 0px;
}

/*IE9以前の調整*/
.lt-ie10 #main_logo {
	background-position: center 2px;
}

/*タブレット調整*/
.ios #main_logo,
.android #main_logo {
	background-position: center 0px;
}

#main_slide {
	width: 400px;
	padding: 0;
	height: 320px;
	overflow: hidden;
	font-size: 28px;
	text-align: center;
	white-space: pre;
	background-color: #FFFFFF;
	border: none;
	margin: 0 auto;
	line-height: 1.4em;
	font-family: "ＭＳ 明朝", "MS Mincho", "ipaexm";
}

#main_slide span {
	line-height: 29px;
	vertical-align: bottom;
	display: inline-block;
	text-align: center;
}

/*IE7以前はムービー無し*/
.lt-ie8 #main_slide {
	display: none;
}

#wrap .home-only {
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #999999;
	margin-bottom: 110px;
}

#info_area {
	padding-top: 10px;
}

ul.home_navi {
	overflow: hidden;
	width: 560px;
	margin: 0 auto;
	padding: 0;
	padding-bottom: 50px;
}

ul.home_navi li {
	padding: 0px;
	float: left;
	list-style-type: none;
	margin-top: 0px;
	margin-right: 20px;
	margin-bottom: 0px;
	margin-left: 0px;
}

/*info area*/
ul#wn_navi {
	margin: 0;
	padding: 0 0.5em;
	border-bottom: solid 1px #999999;
	width: 100%;
	display: flex;
	box-sizing: border-box;
}

#wn_navi li {
	padding: 0.3em 1em;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: -1px;
	margin-left: 1em;
	list-style-type: none;
	border: 1px solid #999999;
	float: left;
	font-size: 14px;
	background-color: #fff;
	cursor: pointer;

	font-family: "Aozora-M";
}

.ms #wn_navi li {
	text-indent: -9999px;
}

.ms #wn_navi li#wn_01 {
	background-image: url(../images/tab/tab_01.gif);
	background-repeat: no-repeat;
	width: 62px;
}

.ms #wn_navi li#wn_02 {
	background-image: url(../images/tab/tab_02.gif);
	background-repeat: no-repeat;
	width: 50px;
}

.ms #wn_navi li#wn_03 {
	background-image: url(../images/tab/tab_03.gif);
	background-repeat: no-repeat;
	width: 50px;
}

.ms #wn_navi li#wn_04 {
	background-image: url(../images/tab/tab_04.gif);
	background-repeat: no-repeat;
	width: 80px;
}

.ms #wn_navi li#wn_05 {
	background-image: url(../images/tab/tab_05.gif);
	background-repeat: no-repeat;
	width: 50px;
}

.ms #wn_navi li#wn_06 {
	background-image: url(../images/tab/tab_06.gif);
	background-repeat: no-repeat;
	width: 50px;
}

#wn_navi li:hover {
	text-decoration: underline;
}

.ms #wn_navi li:hover {
	background-position: 0px -31px;
}

#wn_navi li.select {
	border-bottom: solid 1px #fff;
}

.lt-ie7 .ms #wn_navi li.select {
	background-position: 0px -31px;
}

#wn_group {
	border: 1px solid #999999;
	border-top: none;
	height: 300px;
	width: 100%;
	overflow: auto;
	padding: 0.5em;
	clear: both;
	box-sizing: border-box;
}

#wn_group h3 {
	visibility: hidden;
	height: 0px;
	overflow: hidden;
	width: 1px;
	font-size: 0px;
	float: left;
	padding: 0;
	margin: 0;
	margin-top: -60px;
	padding-top: 60px;
	font-family: "Aozora-M";
}

.ms #wn_group h3 {
	margin-left: -100px;
}

.ms #wn_group h3 {
	text-indent: -9999px;
}

.ms #wn_group h3#wn_head {
	background-image: url(../images/tab/tab_01.gif);
	background-repeat: no-repeat;
	width: 62px;
}

.ms #wn_group h3#wn_event {
	background-image: url(../images/tab/tab_02.gif);
	background-repeat: no-repeat;
	width: 50px;
}

.ms #wn_group h3#wn_info {
	background-image: url(../images/tab/tab_03.gif);
	background-repeat: no-repeat;
	width: 50px;
}

.ms #wn_group h3#wn_speak {
	background-image: url(../images/tab/tab_04.gif);
	background-repeat: no-repeat;
	width: 80px;
}

.ms #wn_group h3#wn_newsletter {
	background-image: url(../images/tab/tab_05.gif);
	background-repeat: no-repeat;
	width: 50px;
}

.ms #wn_group h3#wn_matter {
	background-image: url(../images/tab/tab_06.gif);
	background-repeat: no-repeat;
	width: 50px;
}

#wn_group ul {
	margin: 0px;
	padding: 0px;
}

#wn_group li {
	margin: 0 0 0.5em 0;
	padding: 0;
	list-style-type: none;
	font-size: 14px;
	line-height: 1.5em;
}

#wn_group li a {
	display: block;
	margin-left: 12em;
	margin-top: -1.5em;
}

#wn_group li span {
	display: block;
	margin-left: 8em;
	margin-top: -1.5em;
}

#wn_group li a.pdf,
#wn_group li a.out {
	padding-left: 20px;
	padding-right: 0;
	background-position: 0px 3px;
}

.p-home #wn_group li a,
.p-whatsnew #wn_group li a {
	margin-left: 9.5em;
}

#wn_group li span a {
	margin-top: 0;
	display: block;
	text-align: left;
}

#wn_group li.more a {
	margin-top: 0em;
}

.more a {
	margin-left: 0em;
	padding-left: 15px;
	background-image: url(../images/arrow.gif);
	background-repeat: no-repeat;
	background-position: left center;
	float: right;
}

.wn_tab li {
	margin-left: 0.5em !important;
}

.wn_tab {
	padding-bottom: 1em !important;
}

.wn_tab:before,
.wn_tab:after {
	content: " ";
	display: table;
}

.wn_tab:after {
	clear: both;
}

.wn_tab {
	width: 94.5%;
	*zoom: 1;
}

/*バナー*/
#home-banner {
	padding-top: 30px;
	/* overflow: hidden; */
	/* margin-left: -5px; */
}

#home-banner ul li {
	font-size: 12px;
	float: left;
}

#home-banner ul.images {
	margin: 0px;
	padding: 0px;
	display: flex;
	flex-wrap: wrap;
	gap: 1px 1%;
	width: 100%;
}

#home-banner ul.images img {
	border: solid 1px #999;
	/* object-fit: contain; */
	width: 100%;
	height: auto;
	/* padding: 2px; */
	box-sizing: border-box;
}

#home-banner ul.images li {
	/* float: left; */
	list-style-type: none;
	padding: 0px;
	/* margin: 0 0 10px 0; */
	/* margin-left: 5px; */
	width: calc((100% - 3%) / 4);
}

/*リンク集*/
ul.home-links {
	overflow: hidden;
	width: 95%;
	margin-left: 0;
	padding-left: 1em;
	padding: 0;
}

.home-links li {
	font-size: 12px;
	margin-bottom: 0.5em;
	margin-left: 3em;
	float: left;
	white-space: nowrap;
	list-style-type: disc;
}

.lt-ie8 .home-links li {
	padding-left: 15px;
	background-image: url(../images/nakaguro.gif);
	background-repeat: no-repeat;
	background-position: left center;
}


/**共通**/
.main-container {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCCCCC;
	padding-bottom: 1em;
}

.main-container th {
	white-space: nowrap;
	text-align: left;
}

.main-container dl {
	margin: 1em 0 1em 0.5em;
	padding: 0;
}

.main-container dt {
	margin: 1em 0;
	padding: 0;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #999999;
	clear: both;
	font-weight: bold;
	color: #595757;
}

.main-container .photoframe {
	clear: both;
	margin: 1em 0;
}

.main-container .photoframe.album {
	margin: -10px 0 0 -10px;
}

.main-container .photoframe strong {
	font-size: 18px;
	font-weight: bold;
	line-height: 2em;
	color: #3781c1;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #3781c1;
	margin-bottom: 1em;
	display: block;
}

.main-container .photoframe + p {
	clear: both;
}

.main-container .photoframe h3 {
	color: #595757;
	margin-top: 0em;
	border-bottom-style: none;
	border-top-style: none;
	border-right-style: none;
	border-left-color: #3781c1;
}

.main-container .photoframe div {
	float: left;
}

.main-container .photoframe img {
	padding: 5px;
	border: 1px solid #CCCCCC;
	margin-right: 1em;
	margin-bottom: 1em;
	float: left;
}

.main-container .photoframe.album img {
	margin-right: 0;
	margin-left: 10px;
	max-width: 347px;
	width: 92.8%;
	height: auto;
}

/*-------------------------------------------------*/

.main-container .photoframe_new {
	display: flex;
	padding: 0;
	margin: 30px 0 40px;
	width: 100%;
	justify-content: space-around;
}

.main-container .photoframe_new li {
	list-style: none;
	width: 35%;
}

.main-container .photoframe_new li.full {
	list-style: none;
	width: 100%;
}

.main-container .photoframe_new li figure {
}

.main-container .photoframe_new li figure figcaption {
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	margin-bottom: 10px;
}

.main-container .photoframe_new li figure a {
	margin-top: 16px;
	display: block;
	text-align: center;
	margin-top: 10px;
}

.main-container .photoframe_new li figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	backface-visibility: hidden;
}

.sticker {
	margin-top: 40px;
	margin-bottom: 20px;
}

.sticker-title {
	border-left-width: 5px;
	font-weight: normal;
	margin-left: 5px;
	padding: 0.4em 0.5em 0.3em 0.5em;
	line-height: 1.3em;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #1c84cc;
	border-left-width: 6px;
	border-left-style: solid;
	border-left-color: #1c84cc;
	border-top-width: 1px;
	border-right-width: 1px;
	border-top-style: solid;
	border-top-color: #1c84cc;
	border-right-style: solid;
	border-right-color: #1c84cc;
	display: list-item;
	font-size: 18px;
}

.main-container h3.sticker-title {
	margin-top: 40px;
	margin-bottom: 20px;
}

.sticker-title::marker {

}

.sticker-block {
	padding-left: 5px;
}

.sticker-block h5 {
	margin-top: 20px;
	margin-bottom: 0;
	/* padding-left: 5px; */
	color: #333;
	border: none;
	font-size: 16px;
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.5;
}

.sticker-block p {
	margin: 0;
	padding: 0;
	font-size: 16px;
	line-height: 1.5;
	padding-left: 1em;
}

.main-container p.sticker-text {
	margin-top: 20px;
	margin-bottom: 0;
	/* padding-left: 5px; */
	color: #333;
	border: none;
	font-size: 16px;
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.5;
}

/*-------------------------------------------------*/

.main-container a.pdf {
	background-image: url(../images/icon/icon_pdf.gif);
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 25px;
}

.main-container a.pdf:after {
	content: "(PDF書類)";
}

.main-container a.pdf.en:after {
	content: "(PDF)";
}

.main-container a.doc {
	background-image: url(../images/icon/icon_doc.gif);
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 25px;
}

.main-container a.doc:after {
	content: "(WORD書類)";
}

.main-container a.xls {
	background-image: url(../images/icon/icon_xls.gif);
	background-repeat: no-repeat;
	background-position: right center;
	padding-right: 25px;
}

.main-container a.xls:after {
	content: "(EXCEL書類)";
}

.wide_img {
	text-align: center;
}

.wide_img img {
	width: 100%;
	height: auto;
}

.main-container a.arrow {
	background-image: url(../images/arrow.gif);
	margin-left: 0em;
	padding-left: 18px;
	background-repeat: no-repeat;
	background-position: left center;
}

.main-container a.arrow.pop {
	margin-left: 0em;
	padding-left: 18px;
	background-repeat: no-repeat;
	background-position: left center;
	background-image: url(../images/pop_arrow.png);
}

.main-container a.out {
	margin-left: 0em;
	padding-left: 18px;
	background-repeat: no-repeat;
	background-position: left center;
	background-image: url(../images/out_arrow.png);
}

.main-container a.out02 {
	margin-left: 0em;
	padding-left: 18px;
	background-repeat: no-repeat;
	background-position: right bottom;
	background-image: url(../images/out_arrow.png);
}


#map_canvas {
	width: 100%;
	height: 500px;
	margin: 0 auto;
	border: #666666 solid 1px;
}

.boxline2 {
	border: double 3px #ccc;
	padding-top: 0;
	padding-right: 0.5em;
	padding-bottom: 0;
	padding-left: 0.5em;
}

ol.boxline2,
ul.boxline2 {
	padding-top: 1em;
	padding-left: 2.5em;
	padding-right: 1em;
}

#google_search {
	padding-top: 0.5em;
	display: none;
	width: 100%;
}

#google_search #gsc-iw-id1 {
	overflow: hidden !important;
}

.videoframe {
	text-align: center;
}

.videoframe video {
	border: solid 3px #333;
}

/* ==========================================================================
Media Queries
========================================================================== */
@media print {
	#return_top {
		display: none !important;
	}
}

@media screen and (max-width: 1024px) {

	/*h1.title:after {
	content: "1024";
}*/
	#wrap {
		width: 100%;
	}

	nav {
		width: 100%;
	}

	h1.title {
		padding: 0 !important;
	}

	.main-container,
	.footer-container {
		width: 70%;
		margin-right: 0;
		/* margin-left: 252px; */
	}

	#home-banner ul.images {
		margin-left: -55px;
	}

	#home-banner ul.images li {
		margin-left: 60px;
	}
}

@media screen and (max-width: 960px) {

	/*h1.title:after {
	content: "960";
}*/
	nav {
		width: 200px;
	}

	.main-container,
	.footer-container {
		width: 70%;
		/* margin-left: 228px; */
	}

	#home-banner ul.images {
		margin-left: -20px;
	}

	#home-banner ul.images li {
		margin-left: 25px;
	}
}

@media screen and (max-width: 880px) {

	/*What'sNew*/
	ul#wn_navi {
		display: none !important;
	}

	#wn_group {
		border: none;
		height: auto;
		width: 100%;
		padding: 0;
	}

	#wn_group h3 {
		/*position: relative;*/
		display: block;
		height: auto;
		width: auto;

		background-color: #fff;
		color: #333 !important;
		line-height: 1em;

		visibility: visible;
		border-left-width: 1px;
		border-left-style: solid;
		border-top-width: 1px;
		border-right-width: 1px;
		border-top-style: solid;
		border-right-style: solid;
		border-bottom-style: solid;
		border-top-color: #999999;
		border-right-color: #999;
		border-bottom-color: #FFF;
		border-left-color: #999;
		border-bottom-width: 1px;
		padding: 0.5em 1em 0.6em 1em;
		float: left;
		margin-top: 1em;
		margin-right: 0;
		margin-bottom: 0;
		margin-left: 1em !important;
		font-size: 14px;
		z-index: 99;
	}

	#wn_group ul {
		/*position: relative;*/
		float: left;
		clear: both;
		z-index: 55;
		display: block !important;
		visibility: visible !important;
		padding: 0.5em;
		border-top-width: 1px;
		border-bottom-width: 1px;
		border-top-style: solid;
		border-right-style: none;
		border-bottom-style: solid;
		border-left-style: none;
		border-top-color: #999999;
		border-bottom-color: #CCCCCC;
		margin-top: -1px;
	}

	#wn_group li a,
	#wn_group li span {
		margin-left: 0em !important;
		margin-top: 0em;
	}

	#wn_group li.over {
		display: none;
	}

	/*
	#wn_head {
	display: none !important;
}
	#wn_group ul.whatsnew {
	display: none !important;
}
	*/
}

@media screen and (max-width: 854px) {

	/*h1.title:after {
	content: "854";
}*/
	ul.home_navi {
		width: 420px;
	}

	ul.home_navi li {
		margin-right: 15px;
	}

	ul.home_navi li img {
		width: 90px;
		height: auto;
	}

	.main-container,
	.footer-container {
		width: 70%;
		margin-left: auto;
	}

	#home-banner ul.images {
		margin-left: 0px;
	}

	#home-banner ul.images li {
		margin-left: 5px;
	}
}

@media screen and (max-width: 800px) {

	/*h1.title:after {
	content: "800";
}*/
	.main-container,
	.footer-container {
		width: 70%;
	}

	#home-banner {
		width: 388px;
		margin: 0 auto !important;
	}

	#home-banner ul.images {
		margin-left: -40px;
	}

	#home-banner ul.images li {
		margin-left: 40px;
	}

	nav ul li:hover ul {
		display: none !important;
	}
}

@media screen and (max-width: 768px) {

	/*h1.title:after {
	content: "768";
}*/
	.main-container,
	.footer-container {
		width: 68%;
	}

	.lt-ie8 .wn_tab {
		width: 95%;
	}
}

@media screen and (max-width: 720px) {

	/*h1.title:after {
	content: "720";
}*/
	nav {
		width: 170px;
	}

	h1.title {
		width: 170px !important;
	}

	.main-container,
	.footer-container {
		margin-left: 0;
	}

	ul.home_navi {
		width: 400px;
	}

	ul.home_navi li {
		margin-right: 10px;
	}
}

@media screen and (max-width: 640px) {

	/*h1.title:after {
	content: "640";
}*/
	.main-container {
		/* margin-left: 190px; */
		width: 65.5%;
	}

	ul#header-navi,
	ul#sub-navi {
		display: block;
	}

	.footer-container {
		margin-left: 0 !important;
		width: 100%;
		float: none;
	}

	#main_slide {
		width: 100%;
	}

	ul.home_navi {
		width: 360px;
	}

	ul.home_navi li {
		margin-right: 10px;
	}

	ul.home_navi li img {
		width: 80px;
	}

	#home-banner {
		width: 358px;
	}

	#home-banner ul.images {
		margin-left: -10px;
	}

	#home-banner ul.images li {
		margin-left: 10px;
	}

	.main-container .photoframe div {
		clear: both;
	}
}

@media screen and (max-width: 580px) {

	/*h1.title:after {
	content: "";
}*/
	.home-only {
		display: none !important;
		visibility: hidden !important;
	}

	.header-container {
		width: 100%;
		position: relative;
	}

	header.wrapper {
		position: relative;
		top: 0px;
	}

	.breadcrumbs {
		padding-top: 1em !important;
	}

	.main-container {
		clear: both;
		width: 100%;
		margin-left: 0 !important;
		min-height: 1em;
	}

	nav {
		width: 100%;
		max-width: 100%;
	}

	#sub_menu {
		margin-top: 1.5em;
		border-bottom: dotted 1px #999;
	}

	#sub_menu li {
		font-size: x-small;
	}

	.top_bnr_new {
		width: 75%!important;
		margin: 1em auto 0;
		padding: 0;
	}

	h1.title {
		margin: 0;
		padding: 0 !important;
		width: 100% !important;
		text-align: center;
		margin-bottom: 0.5em;
	}

	h1.title img {
		width: 200px;
	}

	nav ul {
		width: 100%;
	}

	nav ul li {
		width: 50%;
		float: left;
		background-image: url(../images/arrow.gif);
		background-repeat: no-repeat;
		background-position: left center;
	}

	nav ul li a {
		padding-left: 10px;
	}

	.nav_whatsnew {
		display: none !important;
	}

	.bnr_kashika,
	.bnr_himawari_recruit,
	.bnr_nichiben_recruit {
		display: none !important;
	}

	ul.contents_navi li {
		font-size: small;
	}

	.footer_list li {
		padding: 0 0.4em !important;
	}

	.footer-container {
		padding-top: 1em;
	}

	.footer-container h5 strong {
		font-size: normal;
	}

	#home-banner {
		width: 95%;
	}

	#home-banner ul.images {
		margin-left: -5px;
	}

	#home-banner ul.images li {
		margin-left: 5px;
		/* width: 128px; */
		width: 48%;
	}

	#home-banner ul.images li img {
		width: 100%;
		height: auto;
	}

	#map_canvas {
		height: 300px;
	}

	ul#header-navi,
	ul#sub-navi {
		display: none;
	}

	.main-container .photoframe img {
		max-width: 300px;
		width: 94%;
		height: auto;
		padding: 5px;
		border: 1px solid #CCCCCC;
		margin-right: 1em;
		margin-bottom: 1em;
		float: left;
	}

	.main-container .photoframe.album img {
		margin-right: 0;
		margin-left: 10px;
		max-width: 347px;
		width: 92.8%;
		height: auto;
	}
}

@media screen and (max-width: 580px) and (-webkit-min-device-pixel-ratio: 2) {
	nav ul li {
		background: url(../images/arrow-2x.gif);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 15px;
	}
}

@media screen and (-webkit-min-device-pixel-ratio: 2) {
	ul.contents_navi li {
		background-image: url(../images/page_navi_arrow_r-2x.gif);
		background-position: left center;
		background-repeat: no-repeat;
		background-size: 11px;
	}

	ul.contents_navi li.current {
		background-image: url(../images/page_navi_arrow-2x.gif);
		background-size: 11px;
	}

	#headline {
		background-image: url(../images/headline_bg-2x.gif);
		background-repeat: repeat-y;
		background-position: left center;
		background-size: 80px;
	}

	#main_logo {
		background-image: url(../images/home/visual_logo-2x.gif);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 320px;
	}

	#wn_group li.more a {
		background-image: url(../images/arrow-2x.gif);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 15px;
	}

	.main-container a.pdf {
		background-image: url(../images/icon/icon_pdf-2x.png);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 24px;
	}

	.main-container a.arrow {
		background-image: url(../images/arrow-2x.gif);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 15px;
	}

	.main-container a.arrow.pop {
		background-image: url(../images/pop_arrow-2x.png);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 15px;
	}

	.main-container a.out {
		background-image: url(../images/out_arrow-2x.png);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 15px;
	}

	.main-container a.out02 {
		background-image: url(../images/out_arrow-2x.png);
		background-repeat: no-repeat;
		background-position: right bottom;
		background-size: 15px;
	}

	.main-container h2 a,
	.main-container h3 a,
	.main-container h4 a {
		background-image: url(../images/hx_arrow-2x.png);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 18px;
	}

	.main-container h2 a.pop,
	.main-container h3 a.pop,
	.main-container h4 a.pop {
		background-image: url(../images/hx_pop_arrow-2x.png);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 18px;
	}

	.main-container h2 a.out,
	.main-container h3 a.out,
	.main-container h4 a.out {
		background-image: url(../images/hx_out_arrow-2x.png);
		background-repeat: no-repeat;
		background-position: left center;
		background-size: 18px;
	}
}


.main-container ul.sitemap_tree ul {
	padding: 0 0 0 1em;
}

.main-container ul.sitemap_tree ul li {
	list-style-type: none;
	border-left-width: 1px;
	border-left-style: dotted;
	border-left-color: #0099FF;
	padding-left: 0.2em;
	padding-top: 0.3em;
	padding-bottom: 0.3em;
	margin: 0;
}

/*SNS*/
.sns {
	padding: 5px 10px;
	border-top: dashed 1px #ccc;
	overflow: hidden;
	position: relative;
}

.sns div.twt {
	position: absolute;
	top: 7px;
	left: 130px;
}

body.p-global .main-container .article {
	font-family: Georgia, "Times New Roman", Times, serif !important;
}

body.p-global .main-container .article h1,
body.p-global .main-container .article h2,
body.p-global .main-container .article h3 {
	font-family: "Times New Roman", Times, serif;
}

body.p-global .main-container .article h4,
body.p-global .main-container .article h5,
body.p-global .main-container .article h6 {
	font-family: "Times New Roman", Times, serif;
}

li.bnr_kashika {
	display: none;
}

body.p-kashika li.bnr_kashika {
	display: block;
	border: none;
}

body.p-kashika nav ul li.bnr_kashika a {
	margin-top: 15px;
	display: block;
	text-indent: 0;
	height: auto !important;
	border: none;
}

body.p-kashika nav ul li.bnr_kashika a:hover {
	background-color: #fff;
}

/*就職情報*/
li.bnr_himawari_recruit,
li.bnr_nichiben_recruit {
	display: none;
}

body.p-recruit li.bnr_himawari_recruit,
body.p-recruit li.bnr_nichiben_recruit {
	display: block;
	border: none;
}

body.p-recruit li.bnr_himawari_recruit {
	padding-top: 1em;
}

body.p-recruit nav ul li.bnr_himawari_recruit a,
body.p-recruit nav ul li.bnr_nichiben_recruit a {
	margin-top: 15px;
	display: block;
	text-indent: 0;
	height: auto !important;
	border: none;
}

body.p-recruit nav ul li.bnr_himawari_recruit a:hover,
body.p-recruit nav ul li.bnr_nichiben_recruit a:hover {
	background-color: #fff;
}

.p-introduce #wn_group li span {
	display: block;
	margin-left: 12em;
	margin-top: -1.5em;
}

.p-introduce #wn_group li span a {
	margin-top: 0;
	display: block;
	text-align: left;
}

.include_menu ul {
	display: flex;
	flex-wrap: wrap;
	margin-left: 5px;
	padding: 0;
}

.include_menu ul {
	display: flex !important;
	padding: 0 10px;
}

.include_menu li.empty {
	border: none;
	background: none;
}

/*2021/10/5追記*/

#wn_group li {
	margin-bottom: 1.5em !important;
}

/*--- 20211008 ---*/

#image-bloc {
	margin-bottom: 10px;
}

#image-bloc .bx-wrapper {
	position: relative;
	margin: 0 auto;
	padding: 0;
	*zoom: 1;
	/*	height: 400px;*/
}

#image-bloc .bx-viewport {
	/*	height: 400px;*/
}

#image-bloc .slider {
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
	/*	height: 400px;*/
	overflow: hidden;
}

#image-bloc .slider li {
	height: 100%;
}

#image-bloc .bx-wrapper img {
	height: 100%;
	aspect-ratio: 806 / 384;
	backface-visibility: hidden;
}

.main-container p a img {
	/* height: 100px!important; */
	object-fit: initial!important;
}