﻿body {
}

/* submenu
------------------------------------------*/
.list-group-item > a {
	color: #0056b3;
}

.list-group-item.active {
	background-image: linear-gradient(#04519b, #033c73 60%, #02325f);
	background-repeat: no-repeat;
}

	.list-group-item.active > a {
		color: #fff !important;
	}

/* パンクズ
------------------------------------------*/
.breadcrumb {
	padding: 1.5rem 1rem;
}

.breadcrumb-item,
.breadcrumb-item > a {
	color: #0056b3;
}

.header_height {
	height: 110px;
}

/* ページHeader画像(ダーク系)
------------------------------------------*/
.head_img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	/*opacity:0.6;*/
	background-color: #033c73;
	/*background-color: #fff;*/
	display: inline-block;
}

	.head_img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		opacity: 0.4;
	}

.flex {
	height: 540px;
	overflow: hidden;
	position: relative;
	z-index: 0;
}

.header_title {
	font-size: 4rem;
	color: white;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
	margin-left: 30px;
	/*padding-left:2rem;*/
}

@media screen and (max-width: 768px) {
	.head_img {
		top: 0;
		left: 0;
		transform: translate(0, 0);
	}

	.flex {
		max-width: 100%;
		height: 450px;
	}

	.header_title {
		/*left: 30%;*/
	}
}

@media screen and (max-width:600px) {
	/*ヘッダーブロック*/
	.header_title {
		margin-left: 10px; /*headerの外側にとるスペース*/
		font-size: 3rem;
	}
}

/* ページHeader画像(White系)
------------------------------------------*/
.head_img_w {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	/*opacity:0.6;*/
	/*background-color: #033c73;*/
	background-color: #fff;
	display: inline-block;
}

	.head_img_w img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		opacity: 0.3;
	}

/*.flex_w {
	height: 540px;
	overflow: hidden;
	position: relative;
	z-index: 0;
}*/

.header_title_w {
	font-size: 4rem;
	color: #033c73;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
	margin-left: 30px;
	/*padding-left:2rem;*/
}

.header_title_w1 {
	font-size: 2rem;
	color: #033c73;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
	margin-left: 30px;
	/*padding-left:2rem;*/
}

@media screen and (max-width: 768px) {
	.head_img_w {
		top: 0;
		left: 0;
		transform: translate(0, 0);
	}

	/*.flex_w {
		max-width: 100%;
		height: 450px;
	}*/

	.header_title_w {
		/*left: 30%;*/
	}
}

@media screen and (max-width:600px) {
	/*ヘッダーブロック*/
	.header_title_w {
		margin-left: 10px; /*headerの外側にとるスペース*/
		font-size: 3rem;
	}
}

/*
---------------------------------------------*/
.subtitle_line {
	border-bottom: 1px solid #97c8ed;
	/*padding-top: 1rem;*/
}

/* 写真・注釈
--------------------------------------------*/
.img_figure {
	/*padding-bottom: 1em;*/
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
.img_figure > figcaption {
	padding-top: 0.6rem;
}

/* SubMenu(横並びメニュー)
--------------------------------------------------*/

.ul_list,
.ul_list_category,
.ul_list1 {
	/*display: inline-grid;
	column-gap: 2em;
	grid-template-columns: repeat(4, auto);*/

	display: grid;
	/* 4列表示 */
	grid-template-columns: repeat(4, 1fr);
	grid-auto-rows: 1fr;
	/*grid-row-gap: 6px;
	grid-column-gap: 6px;*/
	padding: 0;
	/*margin: 0;*/
	/*margin: 2em;*/
	margin: 1.5rem 0;
	list-style-type: none;
}
.ul_list1 {
	/*margin-top: 0;*/
}

	.ul_list > li,
	.ul_list_category > li,
	.ul_list1 > li {
		margin: 0 -1px -1px 0;
	}

/* リストのスタイル */
/*ul.ul_list,
ul.ul_list1 {
	margin-bottom: 2em;
	line-height: 1.7;
}*/

	.ul_list .list-group-item + .list-group-item,
	.ul_list_category .list-group-item + .list-group-item,
	.ul_list1 .list-group-item + .list-group-item {
		border-top-width: 1px;
	}
/*ul.ul_list > li {

  &:nth-child(2n) {
    color: tomato;
  }
}
*/

@media screen and (max-width: 991px) {
	.ul_list,
	.ul_list1 {
		/* 3列表示 */
		grid-template-columns: repeat(3, 1fr);
		margin-left: 0;
		margin-right: 0;
	}
}

@media screen and (max-width: 768px) {
	.ul_list,
	.ul_list_category,
	.ul_list1 {
		/* 2列表示 */
		grid-template-columns: repeat(2, 1fr);
		margin-left: 0;
		margin-right: 0;
	}
}

@media screen and (max-width: 480px) {
	/*.ul_list {*/
		/* 1列表示 */
		/*grid-template-columns: repeat(1, 1fr);
		margin-left: 0;
		margin-right: 0;
	}*/
	/*.ul_list1 {
		grid-template-columns: repeat(2, 1fr);
		margin-left: 0;
		margin-right: 0;
	}*/
}

/* サイドメニュー
-------------------------------------------------------------*/
/* 親トグル（行全体クリック + 右端マーカー） */
#menu-root .menu-toggle {
	position: relative;
	display: block; /* 行全体をクリック可 */
	/*padding: .5rem .75rem;*/
	padding-right: 1.6rem; /* 右マーカー分の余白 */
	/*text-decoration: none;*/
	/*color: inherit;*/
}
	/* 右端マーカー（閉：▶） */
	#menu-root .menu-toggle::after {
		font-family: "Font Awesome 5 Free";
		font-weight: 900; /* Solid アイコン */
		content: "\f054"; /* chevron-right */
		position: absolute;
		right: .625rem; /* = 10px 付近 */
		top: 50%;
		transform: translateY(-50%);
		color: #6c757d;
		transition: transform .15s ease-in-out;
		pointer-events: none; /* クリックを邪魔しない */
		/* content: "▶";
		position: absolute;
		right: .5rem;
		top: 50%;
		transform: translateY(-50%);
		color: #6c757d;
		transition: transform .2s;*/
	}
	/* 開：▼（aria-expanded を Bootstrap が自動更新） */
	#menu-root .menu-toggle[aria-expanded="true"]::after {
		/*content: "▼";*/
		content: "\f078"; /* chevron-down */
	}

/* 子メニューの階層を視覚化（任意） */
/*.child-indent {
	margin-left: 1rem;
	border-left: 2px solid #dee2e6;*/  /*v4は左線 */
/*}*/
/* 1) collapse 内の “最初の子” は上線を消す（親の下線と重ならないように） */
#menu-root .collapse .list-group-item:first-child {
	border-top: 0;
}

/* 2) collapse 内の “最後の子” は下線を消す（次の親の上線と重ならないように） */
#menu-root .collapse .list-group-item:last-child {
	border-bottom: 0;
}

/* 3) 子アイテムの左線は child-indent の線だけにする（本体の左線を消す） */
#menu-root .collapse .list-group-item.child-indent {
	border-left: 0; /* list-group-item 本体の左線をオフ */
	/* 必要なら右線も消す場合は以下を有効化
  border-right: 0;
  */
}

/* （任意）4) 親の直下に“薄い区切り線”を統一的に入れたい場合
   collapse の開始部に細線を引く（お好みで） */
/* ===== collapse アニメーション調整（追加） ===== */
/*#menu-root .collapse {
	transition: height 0.5s ease, opacity 0.5s ease;
	opacity: 0;
}

	#menu-root .collapse.show {
		opacity: 1;
	}*/

	/*#menu-root .collapse .list-group-item {
		padding-left: 2rem;
	}*/
#menu-root .child-menu {
	padding-left: 2rem;
}

/* ===== collapse アニメーション調整（追加） ===== */
#menu-root .collapsing {
	transition: height 0.5s ease;
}


/* =======================================================
   list-group + collapse 枠線調整【最終回答】
   ======================================================= */

/* ① 親 → collapse → 次に通常メニューがある場合のみ
      次メニューの上線を消す（二重線防止） */
#menu-root .menu-toggle + .collapse + .list-group-item {
	border-top: 0;
}

/* ② 子メニュー最初：親の下線と重なるため上線を消す */
#menu-root .collapse .list-group-item:first-child {
	border-top: 0;
}

/* ③ 子メニュー最後の下線は【消さない】
      → デフォルトの list-group の挙動に戻す */
#menu-root .collapse .list-group-item:last-child {
	border-bottom: 1px solid #dee2e6; /* Bootstrap標準 */
}



/* ===== collapse スライド＋フェード ===== */
/*#menu-root .collapsing {
	transition: height 0.4s ease, opacity 0.4s ease;
	opacity: 0;
}

#menu-root .collapse.show {
	opacity: 1;
}*/
/* index
-------------------------------------------*/

/*-----------------------------------------*/
/* 施設・設備 (facility.aspx)
-------------------------------------------*/
/*span.h4 {
	background: linear-gradient(transparent 60%, #97c8ed 60%);*/
	/*border-radius: 80% 50% 60% 5%/80% 75% 15% 75%;*/
/*}*/

.facility_box {
	border: 1px solid #97c8ed;
	border-radius: 10px;
}

.facility_img {
	border-radius: 10px;
}

.facility_name {
	margin-bottom: .5rem;
}

	.facility_name > div.e_name {
		font-size: 0.8rem;
	}

/*-----------------------------------------*/
/* Floor (floor.aspx)
-------------------------------------------*/
.floor dl {
	margin: 0px;
	clear: both;
	padding: 5px 10px;
}

	.floor dl dt {
		clear: left;
		float: left;
		font-size: 1.5rem;
		margin-right: 10px;
		/*margin-top: 2px;*/
	}

	.floor dl dd {
		margin-bottom: 10px;
		padding: 3px;
		overflow: hidden;
	}

.floor span:after {
	content: "\A";
	white-space: pre !important;
}

.floor > div > dl > dd > div > span {
	font-size: 0.7rem;
	line-height: 0.7rem !important;
	display: block;
}

@media screen and (max-width: 767px) {
	.floor_panel {
		margin-left: 0.5rem;
		margin-right: 0.5rem;
	}
}

/*-----------------------------------------*/
/* 動物看護師・職員 (staff.aspx)
-------------------------------------------*/
.staff_detail_frame {
	border: 1px solid #97c8ed;
	border-radius: 10px;
}

	.staff_detail_frame .title {
		font-size: 14px;
	}

	.staff_detail_frame .name {
		font-size: 20px;
	}

	.staff_detail_frame .other {
		font-size: 12px;
	}

	.staff_detail_frame .img_figure img {
		border-radius: 10px;
	}

span.staff.h4 {
	background: linear-gradient(transparent 60%, #eed3d7 60%);
	/*border-radius: 80% 50% 60% 5%/80% 75% 15% 75%;*/
}

/*-----------------------------------------*/
/* 獣医師 (veterinarian.aspx)
-------------------------------------------*/
.vet_category_title {
}

.vet_detail_frame {
	border: 1px solid #97c8ed;
	border-radius: 10px;
}

	.vet_detail_frame .title {
		font-size: 16px;
	}

	.vet_detail_frame .name {
		font-size: 20px;
	}

	.vet_detail_frame .other {
		font-size: 12px;
	}

	.vet_detail_frame .img_figure img {
		border-radius: 10px;
	}

.career {
	overflow: hidden;
	font-size: 0.85rem;
	background-color: rgba(9, 74, 139, 0.1);
	padding: 1em;
	border-radius: 5px;
}

	.career dt {
		font-weight: normal;
	}

	.career dd {
		margin-bottom: 0;
		margin-left: 1em;
	}

span.vet.h4 {
	background: linear-gradient(transparent 60%, #97c8ed 60%);
	/*border-radius: 80% 50% 60% 5%/80% 75% 15% 75%;*/
}

/*-----------------------------------------*/
/* 先端機器医療詳細 (device/detail.aspx)
-------------------------------------------*/
.device_detail .lineb {
	/* border-top: 1px solid #ee7800; */
	border-bottom: 1px solid #97c8ed;
	padding-bottom: .5rem;
}

.device_detail .dept {
	color: #036ea5;
}

.device_detail div.sub {
	color: #1B813E;
	font-size: 1.2rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.device_detail p.comment {
	line-height: 1.6rem;
}

.device_detail .btn11 {
	/*padding: 12px 32px;
			border: 2px solid #333;*/
	background: linear-gradient(#333 0 0) center / 0% 100% no-repeat;
	transition: background-size 0.4s ease, color 0.4s ease;
	/*color: #333;*/
}

	.device_detail .btn11:hover,
	.device_detail .btn11:focus-visible {
		background-size: 100% 100%;
		color: #fff !important;
	}

.device_detail .img_box {
	/*border: 1px solid #eee;*/
	border-radius: 10px;
}

.device_detail .gallery_img {
	border-radius: 10px;
}

@media (min-width: 768px) {
	.device_detail .detail_img div {
		width: 66.666%;
	}
}

/*-----------------------------------------*/
/* 先端機器医療詳細 (device/index.aspx)
-------------------------------------------*/
.device_list .dept {
	color: #036ea5;
}

.device_list .list-group-item.active1 {
	background-image: linear-gradient(#04519b, #033c73 60%, #02325f);
	background-repeat: no-repeat;
}

.device_box {
	border: 1px solid #97c8ed;
	border-radius: 10px;
}
/*        .device_box img {
            border-radius: 10px;
        }
        .facility_name {
            margin-bottom: .5rem;
        }
        .facility_name > div.e_name {
            font-size: 0.8rem;
        }*/

.device_list .btn-hover-center {
	position: relative;
	overflow: hidden;
	color: #033c73;
	background-color: transparent; /* ← 念のため */
	transition: color 0.3s ease;
	z-index: 1;
}

	/* 中央から左右に広がるレイヤー */
	.device_list .btn-hover-center::before {
		content: "";
		position: absolute;
		inset: 0;
		background-color: #033c73;
		transform: scaleX(0); /* 初期：閉じている */
		transform-origin: center;
		transition: transform 0.4s ease;
		z-index: -1;
	}

	/* ✅ hover / focus 時：Bootstrapの背景色を無効化 */
	.device_list .btn-hover-center:hover,
	.device_list .btn-hover-center:focus,
	.device_list .btn-hover-center:focus-visible {
		color: #fff;
		background-color: transparent !important; /* ★ここが最重要 */
	}

		/* ✅ 中央 → 左右 */
		.device_list .btn-hover-center:hover::before,
		.device_list .btn-hover-center:focus::before,
		.device_list .btn-hover-center:focus-visible::before {
			transform: scaleX(1);
		}

	/* フォーカス枠を消したい場合 */
	.device_list .btn-hover-center:focus {
		box-shadow: none;
	}


.device_list .btn-outline-info {
	color: #033c73;
	border-color: #033c73;
}

	.device_list .btn-outline-info:hover {
		color: #fff;
		background-color: #033c73;
		border-color: #033c73;
	}
/*
.btn-outline-info:focus,
.btn-outline-info.focus {
  box-shadow: 0 0 0 0 rgba(23, 162, 184, 0.5);
}

.btn-outline-info.disabled,
.btn-outline-info:disabled {
  color: #033c73;
  background-color: transparent;
}

.btn-outline-info:not(:disabled):not(.disabled):active,
.btn-outline-info:not(:disabled):not(.disabled).active,
.show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #033c73;
  border-color: #033c73;
}

.btn-outline-info:not(:disabled):not(.disabled):active:focus,
.btn-outline-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0 rgba(23, 162, 184, 0.5);
}
*/

/*-----------------------------------------*/
/* 診療科 週間担当獣医師 (medical/index.aspx)
-------------------------------------------*/
.medical_table .dept_list {
	width: 100%;
	border-spacing: 0;
	/*border-left: 1px solid #02509b;
	border-top: 1px solid #02509b;*/
	border-left: 1px solid rgba(204, 204, 204, 1);
	border-top: 1px solid rgba(204, 204, 204, 1);
	/*border-left: 0.5px solid rgba(204, 204, 204, 1);
	border-top: 0.5px solid rgba(204, 204, 204, 1);*/
	margin-bottom: 0;
	line-height: 1.5;
	border-collapse: collapse;
}

	.medical_table .dept_list thead {
		background-color: #f0f0f0;
	}

	.medical_table .dept_list tbody th {
		background-color: #f0f0f0;
	}

	.medical_table .dept_list tbody td {
		background: #fff;
	}

	.medical_table .dept_list th,
	.medical_table .dept_list td {
		padding: 5px;
		/*border-bottom: 1px solid #02509b !important;
		border-right: 1px solid #02509b !important;*/
		border-bottom: 1px solid rgba(204, 204, 204, 1) !important;
		border-right: 1px solid rgba(204, 204, 204, 1) !important;
		/*border-bottom: 0.5px solid rgba(204, 204, 204, 1) !important;
		border-right: 0.5px solid rgba(204, 204, 204, 1) !important;*/
		font-weight: normal;
		text-align: center;
	}

	.medical_table .dept_list .week6 {
		background: #F5FBFE;
	}

	.medical_table .dept_list .week0 {
		background: #FCF3F3;
	}

	.medical_table .dept_list .ope {
		background-color: #fafafa;
	}

@media screen and (max-width: 600px) {
	.medical_table .dept_list {
		font-size: 50%;
	}
}

/*-----------------------------------------*/
/* 診療科 詳細 (medical/service.aspx)
-------------------------------------------*/
.service_detail .lineb {
	/* border-top: 1px solid #ee7800; */
	border-bottom: 1px solid #97c8ed;
	padding-bottom: .5rem;
}

.service_detail .dept {
	color: #036ea5;
}

.service_detail div.sub {
	color: #1B813E;
	font-size: 1.2rem;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

.service_detail p.comment {
	line-height: 1.6rem;
}

.service_detail .btn11 {
	/*padding: 12px 32px;
	border: 2px solid #333;*/
	background: linear-gradient(#333 0 0) center / 0% 100% no-repeat;
	transition: background-size 0.4s ease, color 0.4s ease;
	/*color: #333;*/
}

	.service_detail .btn11:hover,
	.service_detail .btn11:focus-visible {
		background-size: 100% 100%;
		color: #fff !important;
	}

.service_detail .img_box {
	/*border: 1px solid #eee;*/
	border-radius: 10px;
}

.service_detail .gallery_img {
	border-radius: 10px;
}

@media (min-width: 768px) {
	.service_detail .med_img div {
		width: 66.666%;
	}
}

/*-----------------------------------------*/
/* 診療科 手術実績 (medical/surgical_results.aspx)
-------------------------------------------*/
.results_panel .dept {
	color: #036ea5;
}

.results_panel .list-group-item.active1 {
	background-image: linear-gradient(#04519b, #033c73 60%, #02325f);
	background-repeat: no-repeat;
}

.results_panel .dept1 {
	border-bottom: 1px solid #ccc;
}

	.results_panel .dept1:first-child {
		border-top: 1px solid #ccc;
	}

.results_panel table.results .dept1 tr th {
	vertical-align: top;
}

.results_panel table.results {
	/*background: none repeat scroll 0 0 #fff;
            border: 1px solid #f0f0f0;*/
	border-collapse: collapse;
	border-spacing: 0;
	text-align: left;
	/*width: 100%;*/
	/*font-size: 0.9rem;*/
	/* font-size: 1rem; */
	line-height: 1.6;
}

	.results_panel table.results tr td,
	.results_panel table.results tr th {
		padding: 0.625rem;
	}

	.results_panel table.results tr th {
		font-weight: normal;
	}

.results_panel td {
	border-right: 1px solid #f0f0f0;
}

.results_panel table.results tfoot,
.results_panel table.results thead,
.results_panel table.results tr:nth-of-type(2n) {
	background: none repeat scroll 0 0 #f0f0f0;
}

	.results_panel th,
	.results_panel table.results tr:nth-of-type(2n) td {
		border-right: 1px solid #fff;
	}

.results_panel .btn11 {
	/*padding: 12px 32px;
			border: 2px solid #333;*/
	background: linear-gradient(#87B41E 0 0) center / 0% 100% no-repeat;
	transition: background-size 0.4s ease, color 0.4s ease;
	/*color: #333;*/
}

	.results_panel .btn11:hover,
	.results_panel .btn11:focus-visible {
		background-size: 100% 100%;
		color: #fff !important;
	}

.results_panel .btn_color_green {
	color: #5F8801 !important;
	border-color: #87B41E !important;
	transition: all 0.4s;
}

	.results_panel .btn_color_green::before {
		background-color: #87B41E !important;
	}

	.results_panel .btn_color_green:hover {
		color: #fff !important;
	}

		.results_panel .btn_color_green:hover::before {
			background-color: #87B41E !important;
			color: #fff !important;
		}

.results_panel a.results_link {
	color: inherit;
}

@media screen and (max-width: 480px) {
	/*ここからメディアクエリ*/
	.results_panel table.results tr {
		display: block;
		/*margin-bottom:.5em;
	    border-bottom:1px solid #ccc;
	    box-shadow:0 2px 2px #ddd;*/
	}

		.results_panel table.results tr td {
			display: block;
			text-align: right;
			/*border-top: 1px solid #ccc;
	        border-left: 1px solid #ccc;
	        border-right: 1px solid #ccc;
	        border-bottom:none;*/
		}

			.results_panel table.results tr td::before {
				content: attr(aria-label);
				float: left;
				/*font-weight:bold;*/
				padding-left: .3em
			}

			.results_panel table.results tr td::after { /*クリアフィックス（コレは不要かもしれません）*/
				/*content:"";
				display:table;
				clear:both;*/
			}

	.results_panel table.results tbody th {
		width: 100% !important;
		display: block;
		border: none;
		background: #666;
		color: white
	}

	.results_panel table.results tr th.pc_col,
	.results_panel table.results tr td.pc_col,
	.results_panel .cr {
		display: none !important;
	}
}

/*-----------------------------------------*/
/* Access (access.aspx)
-------------------------------------------*/
.access_panel .map-container {
	position: relative;
	padding-top: 75%; /* 4:3 アスペクト比 */
	height: 0;
}

	.access_panel .map-container iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

.access_panel a.pdf:after {
	margin-left: 0.5em;
	content: url(images/pdficon_small.png);
}

.access_panel .flow {
	max-width: 200px;
	border: 1px solid #999;
}

.access_panel .card-header {
	display: flex;
	/*align-items: flex-start;*/
	align-items: center;
}

	.access_panel .card-header .icon {
		margin-right: 10px;
		align-self: flex-start;
	}

	.access_panel .card-header .icon {
		flex-shrink: 0; /*Qマークが縮まないようにする*/
		width: 50px; /*幅*/
		height: 50px; /*高さ*/
		border-radius: 50%; /*円形にする*/
		background: #033c73; /*背景色。theme.cssのprimary-colorを読み込みます。*/
		color: #fff; /*文字色。theme.cssのprimary-inverse-colorを読み込みます。*/
		display: flex;
		align-items: center;
		justify-content: center;
		/*font-family: var(--accent-font), var(--base-font);*/ /*theme.cssのaccent-fontに指定したフォントを読み込む。読み込めなければbase-fontで指定したフォントを読み込む。*/
		font-size: 1.8rem; /*文字サイズ*/
		font-weight: bold; /*太字*/
	}

	.access_panel .card-header .card-title {
		margin-bottom: 0;
	}

	.access_panel .card-header .card-tools {
		margin-left: auto;
		align-self: flex-start;
	}

/* body側 */

/*.card-body {
  display: flex;*/ /* ← 強制的にflex */
/*align-items: flex-start;
}*/

.access_panel .card-body {
	display: flex;
	align-items: flex-start;
}

	.access_panel .card-body .icon {
		margin-right: 1rem;
		flex-shrink: 0;
	}

	.access_panel .card-body .icon {
		flex-shrink: 0; /*Qマークが縮まないようにする*/
		width: 50px; /*幅*/
		height: 50px; /*高さ*/
		border-radius: 50%; /*円形にする*/
		background: #033c73; /*背景色。theme.cssのprimary-colorを読み込みます。*/
		color: #fff; /*文字色。theme.cssのprimary-inverse-colorを読み込みます。*/
		display: flex;
		align-items: center;
		justify-content: center;
		/*font-family: var(--accent-font), var(--base-font);*/ /*theme.cssのaccent-fontに指定したフォントを読み込む。読み込めなければbase-fontで指定したフォントを読み込む。*/
		font-size: 1.8rem; /*文字サイズ*/
		font-weight: bold; /*太字*/
	}

	.access_panel .card-body .card-text {
		flex: 1;
	}

.access_panel .btn-info {
	color: #fff;
	background-color: #033c73;
	border-color: #033c73;
}

	.access_panel .btn-info:hover {
		color: #fff;
		background-color: #02294e;
		border-color: #022241;
	}

	.access_panel .btn-info:focus, .btn-info.focus {
		color: #fff;
		background-color: #02294e;
		border-color: #022241;
		box-shadow: 0 0 0 0.2rem rgba(41, 89, 136, 0.5);
	}


	.access_panel .btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
	.access_panel .show > .btn-info.dropdown-toggle {
		color: #fff;
		background-color: #022241;
		border-color: #011c35;
	}

		.access_panel .btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,
		.access_panel .show > .btn-info.dropdown-toggle:focus {
			box-shadow: 0 0 0 0.2rem rgba(41, 89, 136, 0.5);
		}

/*-----------------------------------------*/
/* FAQ (faq.aspx)
-------------------------------------------*/
.faq_panel a.pdf:after {
	margin-left: 0.5em;
	content: url(images/pdficon_small.png);
}

.faq_panel .flow {
	max-width: 200px;
	border: 1px solid #999;
}

.faq_panel .card-header {
	display: flex;
	/*align-items: flex-start;*/
	align-items: center;
}

	.faq_panel .card-header .icon {
		margin-right: 10px;
		align-self: flex-start;
	}

	.faq_panel .card-header .icon {
		flex-shrink: 0; /*Qマークが縮まないようにする*/
		width: 36px; /*幅*/
		height: 36px; /*高さ*/
		border-radius: 50%; /*円形にする*/
		background: #033c73; /*背景色。theme.cssのprimary-colorを読み込みます。*/
		color: #fff; /*文字色。theme.cssのprimary-inverse-colorを読み込みます。*/
		display: flex;
		align-items: center;
		justify-content: center;
		/*font-family: var(--accent-font), var(--base-font);*/ /*theme.cssのaccent-fontに指定したフォントを読み込む。読み込めなければbase-fontで指定したフォントを読み込む。*/
		font-size: 1rem; /*文字サイズ*/
		font-weight: bold; /*太字*/
	}

	.faq_panel .card-header .card-title {
		margin-bottom: 0;
	}

	.faq_panel .card-header .card-tools {
		margin-left: auto;
		align-self: flex-start;
	}

/* body側 */

/*.card-body {
  display: flex;*/ /* ← 強制的にflex */
/*align-items: flex-start;
}*/

.faq_panel .card-body-inner {
	display: flex;
	align-items: flex-start;
}

	.faq_panel .card-body-inner .icon {
		margin-right: 10px;
		flex-shrink: 0;
	}

	.faq_panel .card-body-inner .icon {
		flex-shrink: 0; /*Aマークが縮まないようにする*/
		width: 36px; /*幅*/
		height: 36px; /*高さ*/
		border-radius: 50%; /*円形にする*/
		background: #87B41E; /*背景色。theme.cssのaccent-colorを読み込みます。*/
		color: #fff; /*文字色。theme.cssのaccent-inverse-colorを読み込みます。*/
		display: flex;
		align-items: center;
		justify-content: center;
		/*font-family: var(--accent-font), var(--base-font);*/ /*theme.cssのaccent-fontに指定したフォントを読み込む。読み込めなければbase-fontで指定したフォントを読み込む。*/
		font-size: 1rem; /*文字サイズ*/
		font-weight: bold; /*太字*/
	}

	.faq_panel .card-body-inner .card-text {
		flex: 1;
	}

/*-----------------------------------------*/
/* 健康診断 (medical_checkup.aspx)
-------------------------------------------*/

.medical_checkup_panel .callout.callout-light {
	border-left-color: #f6e09c;
}

.medical_checkup_panel .callout.callout-regular {
	border-left-color: #b0dce9;
}

.medical_checkup_panel .callout.callout-premium {
	border-left-color: #d6eaad;
}

.medical_checkup_panel a.pdf:after {
	margin-left: 0.5em;
	content: url(images/pdficon_small.png);
}

.medical_checkup_panel .flow {
	max-width: 200px;
	border: 1px solid #999;
}

/*-----------------------------------------*/
/* 先端機器医療詳細 (customer_harassment.aspx)
-------------------------------------------*/
.policy_detail .lineb {
	/* border-top: 1px solid #ee7800; */
	border-bottom: 1px solid #97c8ed;
	padding-bottom: .5rem;
}

.policy_detail .chapter {
	color: #036ea5;
	font-size: 1.15rem;
}
