@charset "UTF-8";

/* googleのWEBフォントインポート */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');


/*========= ナビゲーションドロップダウンのためのCSS ===============*/

.menuAreaCover{
	width: 100%;
	-webkit-transition: all 0.3s ease-out;  /* Saf3.2+, Chrome */
	-moz-transition: all 0.3s ease-out;  /* FF4+ */
	-ms-transition: all 0.3s ease-out;  /* IE10? */
	-o-transition: all 0.3s ease-out;  /* Opera 10.5+ */
	transition: all 0.3s ease-out;
}

.nav {
	display: block;
	position: relative;
	width: 100%;
	background: #48BB7D;
	font-size: 115.8823529411765%;
	margin: 0.3em auto 0 auto;
}

#headerMiddle{
	margin: 0.3em auto -0.3em auto;
}

.nav a {
	cursor: pointer;
	display: inline-block;
	line-height: 1.2em;
	color: #000;	/* サブメニューの色はここを参照している */
	font-weight:normal;
	text-align: center;
	text-decoration: none;
	margin: 0;

	padding: 0.7em 0 0.6em;	/* 反映される場所があるかは不明 */
}

/* サブメニューありの3つ（「outpatient」「department」「about」）のコンテナ */
.nav__groups {
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content:center;
	max-width: 1475px;
	width: 95%;

	margin: 0 auto;
	padding: 0;
}

/* 3つ（「outpatient」「department」「about」）個々のコンテナ */
.nav__group {
	margin: 0;
	padding: 0;
	border-left: 1px solid #FFFFFF;
	width: 18%;
	z-index: 2;
	z-index: 250;
}

/* ★変更 */
#smBtn00 {
	width: 8%;
}
#smBtn01 {
	width: 20%;
}

.navLast {
	border-right: 1px solid #FFFFFF;
}
.nav__group > a {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	gap: 0 0.55em;
	color: #FFFFFF;
	line-height: 1.5em;
	font-weight: 500;
	padding: 0.4em 1em 0.4em;
}
.nav__group > a img {
	width: 2.15em;
	height: auto;
}
/* メインメニューの色 */
.nav__group > a:link{
	color:#FFFFFF;
	text-decoration: none;
}
.nav__group > a:visited{
	color:#FFFFFF;
	text-decoration: none;
}
.nav__group > a:hover{
	color:#FFFFFF;
	background: #a3ddbe;
	text-decoration: none;
}
.nav__group > a:hover img{
	opacity: 1.0;
}

/* サブメニューのコンテナ */
.nav__group__dropdown {
	position: absolute;
	top: 100%;
	min-width: 450px;
	left: 0;
	left: 50%;
	-webkit-transform : translateX(-50%);
	transform : translateX(-50%);
	background: #fff;
	text-align: left;
	width: 100%;
	max-width: 1475px;
	width: 95%;
	max-height: 0;
	padding: 0 0 0 1.5em;
	overflow: hidden;
	transition: 0.5s ease 0s;
}

/* サブメニューのカテゴリごとのリスト */
.product-list {
	flex: 1;
	min-width: 1em;
	padding: 0 0.5em 1.5em 0;
}
.multi-column ul.product-list{
	list-style-type: circle;
	padding-left: 0.5em;
	padding-left: 1.5em;
}

.product-list a {
	display: block;
	width: 100%;
	text-align: left;
	padding: 0.5rem 0;
	transition: 0.2s ease;
	position: relative;
	z-index: 2;
	transition: color 0.5s ease;
}
/* ロールオーバー時用の処理 */
.product-list a:before {
	content: "";
	left: 0;
	top: 90%;
	width: 0;
	transition: width 0.3s ease;
	height: 3px;
	position: absolute;
	/* background: #292f36;	サブメニューの線（hover時に線を引くときはコメントアウトを解除する） */
}
.product-list a:hover {
	color: #9a1117;
}
.product-list a:hover:before {
	width: 100%;
}
/* リストの各項目 */
.product-list__link {
	padding: 0 1em 0 0;
	margin: 0 0 0.5em 0;
	line-height: 1.5em;
	color: #000000;
	text-align: left;
}
.product-list__title {	/* リストのタイトル用 */
	width: 100%;
}
.product-list.multi {
	display: flex;
	flex-wrap: wrap;
}
.product-list.multi .product-list__link {
	flex: 1 1 50%;
}

.title {	/* リストのタイトルの見た目 */
	font-size: 120%;
	margin: 0 0 0.8em;
	line-height: 1.2em;
	color: #000000;
}

/* リスト段組み用？ */
.multi-column {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	align-items: flex-start;
	min-height: 220px;
	min-height: calc(280em / 18);	/* 325px / 18px */
	min-height: calc(180em / 18);	/* 180px / 18px */
}

/* 段組み横長のもの用 */
.article-list {
	width: 100%;
	padding: 0 30% 0 0;
	display: flex;
	flex-wrap: wrap;
	margin-top: 1.3em;
}
.article-list__title {
	width: 100%;
}
.article-list__link {
	flex: 1;
	margin-right: 2em;
	position: relative;
	transition: transform 0.3s ease;
	line-height: 1.5em;
	margin-bottom: 0.5em;
}
.article-list__link:before {
	content: "";
	width: 3.5px;
	height: 0;
	background: #292f36;
	transition: height 0.3s ease;
	position: absolute;
	left: -0.9em;
}
.article-list__link:hover {
  transform: translateX(10px);
}
.article-list__link:hover a {
	color: #292f36;
}
.article-list__link:hover:before {
	height: 100%;
}
.article-list a {
	padding: 0.4em 0;
}

/* サブメニューの表示 */
.nav__group a:hover + .nav__group__dropdown,
.nav__group .nav__group__dropdown:hover,
.nav__group li:hover > .nav__group__dropdown {
	max-height: 100vh;
	padding: 1.5em 0 0 1.5em;
	-moz-box-shadow: 0 6px 4px rgba(0,0,0,0.4);
	-webkit-box-shadow: 0 6px 4px rgba(0,0,0,0.4);
	box-shadow: 0 6px 4px rgba(0,0,0,0.4);
}

/* サブメニュー　カテゴリに合わせた画像差し替え */
.product-image {
	position: absolute;
	max-width: 36%;
	min-height: 220px;
	min-height: 325px;
	min-height: calc(325em / 18);	/* 325px / 18px */
	object-fit: contain;
	object-position: bottom right;
	bottom: 0;
	right: 0;
	transition: 1.3s ease;
	opacity: 0;
	z-index: 1;
}
.product-image2 {
	max-width: 35%;
	max-width: 36%;
}
.product-image3 {
	max-width: 36%;
}
.product-image6 {
	max-width: 36%;
}
.product-image[data-match="agri"], .product-image[data-match="bank"], .product-image[data-match="life"], .product-image[data-match="about"] {
	opacity: 1;
}

.nav__group > a.smOnly{
	display: none;
}

li.smBox {
	display: none;	
}

/* commonだけでは効かないので追加 */

.nav__group > a.smOnly2 {
	display: none;
}

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

	.nav__group > a.smOnly2 {
		display: flex;
	}

	.menuAreaCover{
		position: fixed;
		top: 0;
		left: 0;
		height: 100%;
		background: #48BB7D;
		z-index: -999;
		opacity: 0;
	}
	.menuAreaCover.active{
		z-index: 999;
		opacity: 1.0;
	}

	.nav__group > a.smOnly{
		display: block;
	}
	.nav__group > a.pcOnly{
		display: none;
	}

	.nav {
		width: 100%;
		padding: 0;
		font-size: 100%;	/* 24px /24px */
	}
	.nav__groups {
		display: block;
		margin-top: 130px;
		width: 100%;
	}
	.nav__group > a {
	}
	.nav__group {
		border: none;
		width: 100%;
		margin: 0;
	}
	.navLast{
		border: none;
	}

	#smBtn00 {
		width: 100%;
	}
	#smBtn01 {
		width: 100%;
	}

	/*ナビゲーションのリンク設定*/
	.nav__group > a{
		padding: 0.8em 0;
		border-bottom:1px solid #FFF;
	}
	.nav__group:first-child > a{
		border-top:1px solid #FFF;
	}

	.menuAreaCover .nav__group__dropdown {
		display: none;
		position: static;
	}
	.menuAreaCover .multi-column {
		display: block;
		/*padding-bottom: 260px;*/
		min-height:auto;
	}
	.multi-column3 {
		padding-top: 0;
	}
	.menuAreaCover .product-list.multi {
	  display: block;
	}
	.menuAreaCover .article-list {
	  display: block;
	}
	.menuAreaCover .product-image {
		display: none;
/*		height: 250px;
		width: auto;
		max-width: 100%;*/
	}
	.nav__group__dropdown {
		left: 0;
		-webkit-transform : translateX(0);
		transform : translateX(0);
		width: 100%;
		max-height: none;
		padding: 1.5em;
		transition: none;
	}
	.nav__group a:hover + .nav__group__dropdown,
	.nav__group .nav__group__dropdown:hover,
	.nav__group li:hover > .nav__group__dropdown {
		max-height: none;
		padding: 1.5em;
	}
	.product-list {
		padding: 0 0 0 0;
	}
	.product-list__link {
		padding: 0 0 0 0;
	}
	.article-list {
		padding:0 0 0 0;
	}
	.article-list__link {
		margin-right: 0;
	}

	/* スマホ時のみ表示する、ツール関連の箱 */
	li.smBox {
		display: block;
		padding: 0.8em 0;
		border-bottom: 1px solid #FFF;
	}
	li.smBox:first-child {
		border-top: 1px solid #FFF;
	}

}

@media print {

}