@charset "utf-8";

/* ==========================================
   Sub Page CSS - 下層ページ共通スタイルシート
   日本獣医病理学専門家協会（JCVP）
   下層ページ共通のスタイルを定義
   CSS Naming: BEM
========================================== */

/* ==========================================
   Main Visual - 下層メインビジュアル
   Design Ref: 1_4 (MainVisual)
========================================== */
.sub_mv {
	width: 100%;
	height: 300px;
	position: relative;
	overflow: hidden;
	background: linear-gradient(98.88deg,
			#c8c8c8 0%,
			#e0e0e0 40%,
			#b8b8b8 70%,
			#a0a0a0 100%);
}

.sub_mv::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url("../image/sub/mv-bg.png");
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: 1;
}

.sub_mvBox {
	position: relative;
	z-index: 2;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.sub_mvEyebrow {
	font-size: 2.2rem;
	line-height: 1.2;
	color: #0054b5;
	font-weight: 700;
	letter-spacing: -0.88px;
	text-align: center;
}

.sub_mvUnderline {
	width: 96px;
	height: 2px;
	background: #0b65ce;
	border-radius: 1px;
	margin: 17px auto 0;
}

.sub_mvTitle {
	font-size: 4.4rem;
	line-height: 1.2;
	color: #0053b7;
	font-weight: 700;
	text-align: center;
	margin-top: 19px;
}

/* ==========================================
   Breadcrumb - パンくずリスト
   Design Ref: 1_4 (container8)
========================================== */
.sub_breadcrumb {
	background: #f4f9ff;
	border-bottom: 1px solid #e5e7eb;
}

.sub_breadcrumb .main {
	display: block;
	height: 45px;
	padding: 5px 0;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: #8da4bd #e5edf6;
}

.sub_breadcrumb .main::-webkit-scrollbar {
	height: 4px;
}

.sub_breadcrumb .main::-webkit-scrollbar-track {
	background: #e5edf6;
}

.sub_breadcrumb .main::-webkit-scrollbar-thumb {
	background: #8da4bd;
	border-radius: 2px;
}

.sub_breadcrumb_list {
	display: flex;
	align-items: center;
	width: max-content;
	min-width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	white-space: nowrap;
}

.sub_breadcrumb_item {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	font-size: 1.4rem;
	line-height: 1.5;
	color: #002b5b;
}

.sub_breadcrumb_item:not(:last-child)::after {
	content: ">";
	display: inline-block;
	margin: 0 12px;
	color: #4577aa;
}

.sub_breadcrumb_item a,
.sub_breadcrumb_item span {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
}

.sub_breadcrumb_item a {
	color: #002b5b;
	text-decoration: none;
}

.sub_breadcrumb_item a:hover {
	color: #004ba9;
	text-decoration: underline;
}

.sub_breadcrumb_icon {
	width: 15px;
	height: 13px;
	margin-right: 8px;
	flex-shrink: 0;
}

/* ==========================================
   Sub Content Layout - 下層コンテンツエリア
   Design Ref: 1_4 (group20)
========================================== */
.sub_content {
	padding: 73px 0;
	background: #ffffff;
}

.sub_content .main {
	display: flex;
	align-items: flex-start;
	column-gap: 60px;
}

/* Sidebarを使用しない下層ページ */
.sub_content--full .main {
	display: block;
}

.sub_content--full .sub_main {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}

/* ==========================================
   Sidebar - サイドバーメニュー
   Design Ref: 2024_11 (Group 1)
========================================== */
.sub_sidebar {
	width: 209px;
	flex-shrink: 0;
	border-radius: 8px;
	background: #ffffff;
	padding: 18px 0 0px;
	border: 1px solid #dde4ec;
	overflow: hidden;
}

.sub_sidebar_heading {
	font-size: 1.8rem;
	line-height: 1.6;
	color: #004ba9;
	font-weight: 700;
	padding: 0 17px;
}

.sub_sidebar_divider {
	width: 209px;
	height: 1px;
	background: #dde4ec;
	margin-top: 14px;
}

.sub_sidebar_list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.sub_sidebar_item {
	position: relative;
	border-bottom: 1px solid #e2e7ed;
}

.sub_sidebar_list li.sub_sidebar_item:last-child {
	border-bottom: none;
}

.sub_sidebar_link {
	display: block;
	font-size: 1.4rem;
	line-height: 1.6;
	color: #16233b;
	padding: 14px 17px;
	text-decoration: none;
	transition: 0.3s ease-in-out;
	border-left: 3px solid #ffffff;
}

.sub_sidebar_link:hover {
	color: #004ba9;
	background: #e4f0ff;
	font-weight: 700;
	border-color: #004ba9;
}

/* Active State */
.sub_sidebar_item--active {}

.sub_sidebar_item--active .sub_sidebar_link {
	color: #004ba9;
	background: #e4f0ff;
	font-weight: 700;
	border-color: #004ba9;
}

/* ==========================================
   Main Content Area - メインコンテンツエリア
========================================== */
.sub_main {
	flex: 1 1 auto;
	min-width: 0;
	background: transparent;
	padding: 0;
}

.sub_section {
	min-width: 0;
	max-width: 100%;
}

/* 必要な箇所だけに適用する共通カラーパネル */
.sub_panel {
	background: #f4f9ff;
	padding: 93px 80px;
}

/* 「見出し＋内容」を複数配置するための共通セクション */
.sub_section+.sub_section {
	margin-top: 64px;
}

.sub_section_heading {
	font-size: 2.4rem;
	line-height: 1.6;
	color: #004ba9;
	font-weight: 700;
	margin-bottom: 24px;
}

.sub_main_text {
	font-size: 1.6rem;
	line-height: 3.6rem;
	color: #000000;
	font-family: "Noto Sans JP", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", SimHei, Arial, Helvetica, sans-serif;
}

.sub_main_text p {
	margin-bottom: 0;
	text-indent: 1em;
	text-align: justify;
}

.sub_main_source {
	font-size: 1.4rem;
	line-height: 3.6rem;
	color: #000000;
	margin-top: 0;
}

/* ==========================================
   Responsive - 1024px以下（大型タブレット）
========================================== */
@media only screen and (max-width: 1024px) {
	.sub_mv {
		height: 220px;
	}

	.sub_mvEyebrow {
		font-size: 2.0rem;
		letter-spacing: -0.5px;
	}

	.sub_mvUnderline {
		width: 80px;
		margin-top: 14px;
	}

	.sub_mvTitle {
		font-size: 3.4rem;
		margin-top: 14px;
	}

	.sub_breadcrumb .main {
		padding: 5px 10px;
	}

	.sub_content {
	}

	.sub_content .main {
		flex-direction: column;
		align-items: stretch;
		column-gap: 0;
	}

	.sub_main {
		width: 100%;
		max-width: 100%;
	}

	/* Sidebar - stack above content */
	.sub_sidebar {
		width: 100%;
		border-radius: 6px;
		margin-bottom: 60px;
		padding: 14px 0 0px;
	}

	.sub_sidebar_divider {
		width: 100%;
	}

	.sub_sidebar_divider_item {
	}

	.sub_panel {
		padding: 40px 40px;
	}

	.sub_section+.sub_section {
		margin-top: 52px;
	}
}

/* ==========================================
   Responsive - 768px以下（小型タブレット）
========================================== */
@media only screen and (max-width: 768px) {
	.sub_mv {
		height: 180px;
	}

	.sub_mvEyebrow {
		font-size: 1.8rem;
	}

	.sub_mvUnderline {
		width: 64px;
		margin-top: 12px;
	}

	.sub_mvTitle {
		font-size: 2.8rem;
		margin-top: 12px;
	}

	.sub_breadcrumb .main {
		overflow-x: scroll;
	}

	.sub_breadcrumb_item {
		font-size: 1.2rem;
	}

	.sub_breadcrumb_item:not(:last-child)::after {
		margin: 0 10px;
	}

	.sub_content {
		padding: 60px 0;
	}

	.sub_sidebar {
		margin-bottom: 60px;
	}

	.sub_sidebar_heading {
		font-size: 1.6rem;
	}

	.sub_sidebar_link {
		font-size: 1.4rem;
		padding: 12px 17px;
	}

	.sub_panel {
		padding: 40px 30px;
	}

	.sub_section+.sub_section {
		margin-top: 44px;
	}

	.sub_section_heading {
		font-size: 2rem;
		margin-bottom: 20px;
	}

	.sub_main_text {
		font-size: 1.4rem;
		line-height: 3.0rem;
	}

	.sub_main_source {
		font-size: 1.2rem;
		line-height: 2.8rem;
	}
}

/* ==========================================
   Responsive - 480px以下（スマートフォン）
========================================== */
@media only screen and (max-width: 480px) {
	.sub_mv {
		height: 150px;
	}

	.sub_mvEyebrow {
		font-size: 1.6rem;
		letter-spacing: -0.3px;
	}

	.sub_mvUnderline {
		width: 50px;
		height: 2px;
		margin-top: 10px;
	}

	.sub_mvTitle {
		font-size: 2.4rem;
		margin-top: 10px;
	}

	.sub_breadcrumb .main {
		padding: 5px 8px;
	}

	.sub_content {
		padding: 50px 0;
	}

	.sub_sidebar {
		margin-bottom: 50px;
		padding: 10px 0 0px;
	}

	.sub_sidebar_divider {
		margin-top: 10px;
	}

	.sub_sidebar_link {
		padding: 10px 14px;
	}

	.sub_panel {
		padding: 40px 15px;
	}

	.sub_section+.sub_section {
		margin-top: 36px;
	}

	.sub_section_heading {
		font-size: 1.8rem;
	}

	.sub_main_text {
		line-height: 2.8rem;
	}

	.sub_main_source {
		font-size: 1.2rem;
		line-height: 2.4rem;
	}
}

/* ==========================================
   Supporting Members - 賛助会員
========================================== */
.supporting_members_updated {
	display: block;
	font-size: 1.4rem;
	line-height: 1.8;
	color: #526176;
	font-weight: 500;
	margin-top: 4px;
}

.supporting_members_intro {
	font-size: 1.6rem;
	line-height: 2;
	color: #000000;
	margin-bottom: 32px;
}

.supporting_members_table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	table-layout: fixed;
	border: 1px solid #cbd5e1;
	background: #ffffff;
}

.supporting_members_table td {
	font-size: 1.6rem;
	line-height: 1.7;
	color: #16233b;
	padding: 12px 16px;
	border-bottom: 1px solid #d8e0e9;
	word-break: break-word;
}

.supporting_members_table tr:last-child td {
	border-bottom: none;
}

@media only screen and (max-width: 768px) {
	.supporting_members_updated {
		font-size: 1.2rem;
	}

	.supporting_members_intro {
		font-size: 1.4rem;
		line-height: 1.9;
		margin-bottom: 24px;
	}

	.supporting_members_table td {
		font-size: 1.4rem;
		padding: 11px 14px;
	}
}

@media only screen and (max-width: 480px) {
	.supporting_members_updated {
		font-size: 1.2rem;
	}

	.supporting_members_intro {
		font-size: 1.4rem;
	}

	.supporting_members_table td {
		font-size: 1.4rem;
		padding: 10px 12px;
	}
}

/* ==========================================
   Rules - 会則
========================================== */
.rules_officers {
	font-size: 1.4rem;
	line-height: 1.9;
	color: #526176;
	text-align: right;
	margin: -8px 0 32px;
}

.rules_officers span {
	display: block;
}

.rules_panel {
	padding: 50px 56px;
}

.rules_document_text {
	font-size: 1.6rem;
	line-height: 2;
	color: #16233b;
	margin-bottom: 20px;
}

.rules_label {
	font-size: 1.6rem;
	line-height: 1.6;
	color: #16233b;
	margin-bottom: 12px;
}

.rules_document_text--regulations {
	margin-top: 40px;
	padding-top: 40px;
	border-top: 1px solid #cbd8e7;
}

.rules_link {
	display: inline-flex;
	align-items: center;
	column-gap: 14px;
	max-width: 100%;
	font-size: 1.6rem;
	line-height: 1.6;
	color: #004ba9;
	font-weight: 700;
	background: #ffffff;
	border: 1px solid #b9cbe0;
	border-left: 4px solid #004ba9;
	padding: 14px 18px;
}

.rules_link:hover {
	color: #003d8a;
	border-color: #004ba9;
}

.rules_link_badge {
	flex-shrink: 0;
	font-size: 1.2rem;
	line-height: 1;
	color: #ffffff;
	background: #004ba9;
	border-radius: 3px;
	padding: 5px 7px;
}

@media only screen and (max-width: 1024px) {
	.rules_panel {
		padding: 40px;
	}
}

@media only screen and (max-width: 768px) {
	.rules_officers {
		font-size: 1.2rem;
		text-align: left;
		margin: -4px 0 24px;
	}

	.rules_panel {
		padding: 32px 30px;
	}

	.rules_document_text--regulations {
		margin-top: 32px;
		padding-top: 32px;
	}

	.rules_document_text {
		font-size: 1.4rem;
		line-height: 1.9;
	}

	.rules_link {
		font-size: 1.4rem;
		padding: 12px 14px;
	}
}

@media only screen and (max-width: 480px) {
	.rules_officers {
		font-size: 1.2rem;
	}

	.rules_panel {
		padding: 28px 16px;
	}

	.rules_document_text {
		font-size: 1.4rem;
	}

	.rules_label {
		font-size: 1.4rem;
	}

	.rules_link {
		width: 100%;
		justify-content: space-between;
		font-size: 1.4rem;
		padding: 11px 12px;
	}
}

/* ==========================================
   Nested Sidebar - 三階層サイドバー
========================================== */
.sub_sidebar_item--branch {
	background: #f8fbff;
}

.sub_sidebar_group {
	display: block;
	font-size: 1.4rem;
	line-height: 1.6;
	color: #16233b;
	font-weight: 700;
	padding: 14px 17px 12px;
	border-left: 3px solid transparent;
}

.sub_sidebar_item--branch-active>.sub_sidebar_group {
	color: #004ba9;
	background: #eef6ff;
	border-color: #004ba9;
}

.sub_sidebar_sublist {
	margin: 0;
	padding: 0;
	list-style: none;
	background: #ffffff;
	border-top: 1px solid #d8e0e9;
}

.sub_sidebar_subitem {
	border-bottom: 1px solid #e2e7ed;
}

.sub_sidebar_subitem:last-child {
	border-bottom: none;
}

.sub_sidebar_sublink {
	display: block;
	position: relative;
	font-size: 1.4rem;
	line-height: 1.6;
	color: #526176;
	padding: 10px 12px 10px 31px;
	border-left: 3px solid #ffffff;
	transition: 0.3s ease-in-out;
}

.sub_sidebar_sublink::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 18px;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #9aa9bb;
	transform: translateY(-50%);
}

.sub_sidebar_sublink:hover,
.sub_sidebar_subitem--active .sub_sidebar_sublink {
	color: #004ba9;
	font-weight: 700;
	background: #e4f0ff;
	border-color: #004ba9;
}

.sub_sidebar_sublink:hover::before,
.sub_sidebar_subitem--active .sub_sidebar_sublink::before {
	background: #004ba9;
}

/* ==========================================
   Pathology Seminar Archive - 獣医病理学研修会
========================================== */
.seminar_archive_subtitle {
	font-size: 2rem;
	line-height: 1.7;
	color: #16233b;
	font-weight: 700;
	margin-bottom: 28px;
}

.seminar_archive_download {
	font-size: 1.6rem;
	line-height: 1.9;
	color: #16233b;
	margin-bottom: 18px;
}

.seminar_archive_download a {
	color: #004ba9;
	text-decoration: underline;
}

.seminar_archive_note {
	font-size: 1.4rem;
	line-height: 1.8;
	color: #526176;
	margin-bottom: 24px;
}

.seminar_archive_tableWrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.seminar_archive_table {
	width: 100%;
	min-width: 680px;
	border-collapse: collapse;
	table-layout: fixed;
	background: #ffffff;
}

.seminar_archive_table th,
.seminar_archive_table td {
	font-size: 1.4rem;
	line-height: 1.6;
	color: #16233b;
	padding: 12px 14px;
	border: 1px solid #cbd5e1;
	vertical-align: middle;
}

.seminar_archive_table th {
	color: #ffffff;
	font-weight: 700;
	text-align: left;
	background: #004ba9;
}

.seminar_archive_table th:nth-child(1),
.seminar_archive_table td:nth-child(1) {
	width: 13%;
	text-align: center;
}

.seminar_archive_table th:nth-child(2),
.seminar_archive_table td:nth-child(2) {
	width: 35%;
}

.seminar_archive_table th:nth-child(3),
.seminar_archive_table td:nth-child(3) {
	width: 37%;
}

.seminar_archive_table th:nth-child(4),
.seminar_archive_table td:nth-child(4) {
	width: 15%;
	text-align: center;
}

.seminar_archive_table td a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.seminar_archive_table td img {
	display: block;
	width: 21px;
	height: 26px;
}

@media only screen and (max-width: 768px) {
	.sub_sidebar_group {
		font-size: 1.4rem;
		padding: 12px 17px 10px;
	}

	.sub_sidebar_sublink {
		font-size: 1.4rem;
		padding: 9px 12px 9px 29px;
	}

	.sub_sidebar_sublink::before {
		left: 17px;
	}

	.seminar_archive_subtitle {
		font-size: 1.8rem;
		margin-bottom: 22px;
	}

	.seminar_archive_download {
		font-size: 1.4rem;
	}

	.seminar_archive_note {
		font-size: 1.4rem;
		margin-bottom: 20px;
	}

	.seminar_archive_table th,
	.seminar_archive_table td {
		font-size: 1.4rem;
		padding: 10px 12px;
	}
}

@media only screen and (max-width: 480px) {
	.seminar_archive_subtitle {
		font-size: 1.6rem;
	}

	.seminar_archive_download,
	.seminar_archive_note {
		font-size: 1.4rem;
	}

	.seminar_archive_table {
		min-width: 620px;
	}

	.seminar_archive_table th,
	.seminar_archive_table td {
		font-size: 1.4rem;
		padding: 10px;
	}
}

/* ==========================================
   Exam Registration - 会員資格認定試験実施及び会員登録要項
========================================== */
.sub_sidebar_heading--compact {
	font-size: 1.8rem;
	line-height: 1.5;
}

.exam_registration .sub_section_heading a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.exam_registration_lead {
	font-size: 1.8rem;
	line-height: 1.8;
	color: #16233b;
	margin-bottom: 18px;
}

.exam_registration_revision {
	font-size: 1.4rem;
	line-height: 1.75;
	color: #526176;
	text-align: right;
	margin-bottom: 36px;
}

.exam_registration_document {
	font-size: 1.4rem;
	line-height: 1.9;
	color: #16233b;
}

.exam_registration_block {
	margin-top: 30px;
}

.exam_registration_block:first-child {
	margin-top: 0;
}

.exam_registration_heading {
	font-size: 1.8rem;
	line-height: 1.6;
	color: #004ba9;
	font-weight: 700;
	margin-bottom: 10px;
}

.exam_registration_emphasis {
	color: #d00000;
}

.exam_registration_reference {
	margin-top: 22px;
}

.exam_registration_reference img {
	display: inline-block;
	width: 14px;
	height: 14px;
	margin-right: 5px;
	vertical-align: -1px;
}

@media only screen and (max-width: 768px) {
	.sub_sidebar_heading--compact {
		font-size: 1.6rem;
	}

	.exam_registration_lead {
		font-size: 1.6rem;
	}

	.exam_registration_revision {
		font-size: 1.2rem;
	}

	.exam_registration_document {
		font-size: 1.4rem;
	}

	.exam_registration_heading {
		font-size: 1.6rem;
	}
}

@media only screen and (max-width: 480px) {
	.exam_registration_revision {
		text-align: left;
	}

	.exam_registration_document {
		font-size: 1.4rem;
	}

	.exam_registration_block {
		margin-top: 24px;
	}
}

/* ==========================================
   Overseas Program - 海外派遣事業
========================================== */
.overseas_program_intro,
.overseas_program_download,
.overseas_program_category {
	font-size: 1.4rem;
	line-height: 1.9;
	color: #16233b;
}

.overseas_program_download {
	margin-top: 26px;
}

.overseas_program_download strong,
.overseas_program_category--primary strong {
	color: #d00000;
}

.overseas_program_download a {
	color: #004ba9;
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.overseas_program_historyHeading {
	font-size: 2rem;
	line-height: 1.7;
	color: #16233b;
	font-weight: 700;
	margin-top: 38px;
}

.overseas_program_category {
	margin: 12px 0 14px;
}

.overseas_program_category--secondary {
	margin-top: 32px;
}

.overseas_program_category--secondary strong {
	color: #008c8c;
}

.overseas_program_tableWrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.overseas_program_table {
	width: 100%;
	min-width: 720px;
	border-collapse: collapse;
	table-layout: fixed;
	background: #ffffff;
}

.overseas_program_table th,
.overseas_program_table td {
	font-size: 1.4rem;
	line-height: 1.65;
	color: #16233b;
	padding: 12px 13px;
	border: 1px solid #cbd5e1;
	vertical-align: top;
	word-break: normal;
	overflow-wrap: anywhere;
}

.overseas_program_table th {
	color: #ffffff;
	font-weight: 700;
	text-align: left;
	background: #004ba9;
}

.overseas_program_table th:nth-child(1),
.overseas_program_table td:nth-child(1) {
	width: 12%;
	text-align: center;
}

.overseas_program_table th:nth-child(2),
.overseas_program_table td:nth-child(2) {
	width: 37%;
}

.overseas_program_table th:nth-child(3),
.overseas_program_table td:nth-child(3) {
	width: 51%;
}

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

	.overseas_program_intro,
	.overseas_program_download,
	.overseas_program_category {
		font-size: 1.4rem;
	}

	.overseas_program_historyHeading {
		font-size: 1.8rem;
	}

	.overseas_program_table th,
	.overseas_program_table td {
		font-size: 1.4rem;
		padding: 10px 11px;
	}
}

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

	.overseas_program_intro,
	.overseas_program_download,
	.overseas_program_category {
		font-size: 1.4rem;
	}

	.overseas_program_historyHeading {
		font-size: 1.6rem;
	}

}

/* Wide tables stay inside the content column and scroll independently. */
.seminar_archive_tableWrap,
.overseas_program_tableWrap,
.past_presidents_tableWrap {
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	overflow-x: auto;
	overflow-y: hidden;
	padding-bottom: 8px;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-inline: contain;
	scrollbar-width: thin;
	scrollbar-color: #7a93b2 #e8eef5;
}

.seminar_archive_tableWrap::-webkit-scrollbar,
.overseas_program_tableWrap::-webkit-scrollbar,
.past_presidents_tableWrap::-webkit-scrollbar {
	height: 8px;
}

.seminar_archive_tableWrap::-webkit-scrollbar-track,
.overseas_program_tableWrap::-webkit-scrollbar-track,
.past_presidents_tableWrap::-webkit-scrollbar-track {
	background: #e8eef5;
	border-radius: 4px;
}

.seminar_archive_tableWrap::-webkit-scrollbar-thumb,
.overseas_program_tableWrap::-webkit-scrollbar-thumb,
.past_presidents_tableWrap::-webkit-scrollbar-thumb {
	background: #7a93b2;
	border-radius: 4px;
}

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

	.seminar_archive_tableWrap,
	.overseas_program_tableWrap,
	.past_presidents_tableWrap {
		overflow-x: scroll;
	}
}

/* ========================================
   JSVP Rules Page
======================================== */
.jsvp_rules_intro {
	margin: 0 0 24px;
	font-size: 1.6rem;
	line-height: 2;
}

.jsvp_rules_document {
	margin-top: 32px;
	padding: 36px 40px;
	border: 1px solid #d6e0ea;
	background: #fff;
}

.jsvp_rules_title {
	margin: 0;
	padding-bottom: 18px;
	border-bottom: 2px solid #075bb5;
	color: #0755a6;
	font-size: 2rem;
	line-height: 1.6;
}

.jsvp_rules_chapter {
	margin-top: 34px;
}

.jsvp_rules_chapter h4 {
	margin: 0 0 14px;
	padding: 10px 14px;
	border-left: 4px solid #075bb5;
	background: #f1f6fc;
	color: #073c73;
	font-size: 1.8rem;
	line-height: 1.6;
}

.jsvp_rules_chapter p {
	margin: 0;
	font-size: 1.6rem;
	line-height: 2;
}

@media only screen and (max-width: 768px) {
	.jsvp_rules_intro {
		margin-bottom: 20px;
		font-size: 1.4rem;
		line-height: 1.9;
	}

	.jsvp_rules_document {
		margin-top: 24px;
		padding: 24px 20px;
	}

	.jsvp_rules_title {
		padding-bottom: 14px;
		font-size: 1.8rem;
	}

	.jsvp_rules_chapter {
		margin-top: 28px;
	}

	.jsvp_rules_chapter h4 {
		margin-bottom: 12px;
		padding: 8px 12px;
		font-size: 1.6rem;
	}

	.jsvp_rules_chapter p {
		font-size: 1.4rem;
		line-height: 1.9;
	}
}

@media only screen and (max-width: 480px) {
	.jsvp_rules_document {
		padding: 20px 14px;
	}
}

/* ========================================
   JSVP Honorary Members Page
======================================== */
.jsvp_honorary_date {
	margin: 16px 0 0;
	font-size: 1.4rem;
	line-height: 1.8;
}

.jsvp_honorary_tables {
	margin-top: 28px;
}

.jsvp_honorary_table {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}

.jsvp_honorary_table+.jsvp_honorary_table {
	margin-top: 24px;
}

.jsvp_honorary_table td {
	width: 50%;
	padding: 13px 18px;
	border: 1px solid #cbd7e4;
	background: #fff;
	font-size: 1.6rem;
	line-height: 1.7;
	vertical-align: middle;
}

@media only screen and (max-width: 768px) {
	.jsvp_honorary_tables {
		margin-top: 24px;
	}

	.jsvp_honorary_table+.jsvp_honorary_table {
		margin-top: 20px;
	}

	.jsvp_honorary_table td {
		padding: 11px 12px;
		font-size: 1.4rem;
	}
}

@media only screen and (max-width: 480px) {
	.jsvp_honorary_table td {
		padding: 10px 8px;
	}
}

/* ========================================
   Veterinary Pathology / Related Links
======================================== */
.veterinary_pathology {
	width: 100%;
}

.veterinary_pathology_cover {
	display: block;
	width: 169px;
	height: auto;
}

.veterinary_pathology_name {
	margin: 18px 0 0;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.6;
}

.veterinary_pathology_since,
.veterinary_pathology_access {
	margin: 18px 0 0;
	font-size: 1.6rem;
	line-height: 1.9;
}

.veterinary_pathology_since {
	font-weight: 700;
}

.veterinary_pathology_access span {
	color: #d72841;
}

.veterinary_pathology a,
.related_links_list a {
	color: #004ba9;
	text-decoration: underline;
	overflow-wrap: anywhere;
}

.veterinary_pathology a:hover,
.related_links_list a:hover {
	color: #002b5b;
}

.related_links_list {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	row-gap: 6px;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.8;
}

@media only screen and (max-width: 768px) {
	.veterinary_pathology_name {
		font-size: 1.8rem;
	}

	.veterinary_pathology_since,
	.veterinary_pathology_access,
	.related_links_list {
		font-size: 1.4rem;
	}
}

/* ========================================
   Past Presidents Page
======================================== */
.past_presidents_subheading {
	margin: 32px 0 12px;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.7;
}

.past_presidents_subheading--presidents {
	color: #d72841;
}

.past_presidents_subheading--honorary {
	margin-top: 34px;
	color: #004ba9;
}

.past_presidents_table {
	width: 100%;
	min-width: 680px;
	border-collapse: collapse;
	table-layout: fixed;
	background: #fff;
}

.past_presidents_table th,
.past_presidents_table td {
	padding: 11px 14px;
	border: 1px solid #cbd5e1;
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.6;
	vertical-align: middle;
}

.past_presidents_table th {
	background: #004ba9;
	color: #fff;
	font-weight: 700;
	text-align: center;
}

.past_presidents_table th:first-child,
.past_presidents_table td:first-child {
	width: 46%;
}

.past_presidents_table--honorary {
	min-width: 560px;
}

.past_presidents_table--honorary td {
	width: 50%;
}

@media only screen and (max-width: 768px) {
	.past_presidents_subheading {
		font-size: 1.4rem;
	}

	.past_presidents_table th,
	.past_presidents_table td {
		padding: 10px 12px;
		font-size: 1.4rem;
	}
}

/* ========================================
   Board Page
======================================== */
.board_list {
	margin: 0;
	padding: 0;
	border-top: 1px solid #d6dee8;
}

.board_item {
	display: grid;
	grid-template-columns: 150px minmax(0, 1fr);
	column-gap: 14px;
	padding: 13px 14px;
	border-bottom: 1px solid #d6dee8;
}

.board_item dt,
.board_item dd {
	margin: 0;
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.7;
}

.board_item dt {
	position: relative;
	padding-left: 16px;
	font-weight: 700;
}

.board_item dt::before {
	content: "・";
	position: absolute;
	left: 0;
	top: 0;
}

@media only screen and (max-width: 768px) {
	.board_item {
		grid-template-columns: 104px minmax(0, 1fr);
		column-gap: 10px;
		padding: 12px 10px;
	}
}

@media only screen and (max-width: 480px) {
	.board_item {
		grid-template-columns: 82px minmax(0, 1fr);
		padding: 10px 6px;
	}

	.board_item dt {
		padding-left: 14px;
	}
}

/* ========================================
   Committees Page
======================================== */
.committee_block+.committee_block {
	margin-top: 48px;
}

.committee_heading {
	margin-bottom: 16px;
}

.committee_table {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	background: #ffffff;
}

.committee_table th,
.committee_table td {
	padding: 13px 16px;
	border: 1px solid #cbd5e1;
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.8;
	text-align: left;
	vertical-align: top;
	overflow-wrap: anywhere;
}

.committee_table th {
	width: 150px;
	background: #f4f9ff;
	color: #004ba9;
	font-weight: 700;
}

@media only screen and (max-width: 768px) {
	.committee_block+.committee_block {
		margin-top: 40px;
	}

	.committee_heading {
		font-size: 2rem;
		line-height: 1.6;
	}

	.committee_table th,
	.committee_table td {
		padding: 11px 10px;
		font-size: 1.4rem;
	}

	.committee_table th {
		width: 88px;
	}
}

/* ========================================
   Web Slide Seminar Page
======================================== */
.web_slide_intro {
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.9;
}

.web_slide_intro p+p {
	margin-top: 4px;
}

.web_slide_details {
	margin-top: 28px;
}

.web_slide_detail {
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	column-gap: 24px;
	padding: 16px 8px;
	border-bottom: 1px solid #d8e0e9;
}

.web_slide_detail:first-child {
	border-top: 1px solid #d8e0e9;
}

.web_slide_detail dt,
.web_slide_detail dd {
	min-width: 0;
	margin: 0;
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.8;
}

.web_slide_detail dt {
	position: relative;
	padding-left: 18px;
	font-weight: 700;
}

.web_slide_detail dt::before {
	position: absolute;
	left: 2px;
	top: 0;
	content: "・";
}

.web_slide_closed {
	color: #d00000;
}

.web_slide_archive_period+.web_slide_archive_period {
	margin-top: 48px;
}

.web_slide_archive_periodHeading {
	margin-bottom: 18px;
	padding-left: 12px;
	border-left: 4px solid #004ba9;
	color: #16233b;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
}

.web_slide_archive_tableWrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.web_slide_archive_tableWrap+.web_slide_archive_tableWrap {
	margin-top: 28px;
}

.web_slide_archive_tableWrap:focus-visible {
	outline: 2px solid #004ba9;
	outline-offset: 3px;
}

.web_slide_archive_table {
	width: 100%;
	min-width: 680px;
	border-collapse: collapse;
	table-layout: fixed;
	background: #ffffff;
}

.web_slide_archive_table caption {
	margin-bottom: 10px;
	color: #16233b;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: left;
}

.web_slide_archive_table th,
.web_slide_archive_table td {
	padding: 10px 12px;
	border: 1px solid #cbd5e1;
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.6;
	vertical-align: middle;
}

.web_slide_archive_table thead th {
	background: #004ba9;
	color: #ffffff;
	font-weight: 700;
	text-align: center;
}

.web_slide_archive_topic {
	width: 47%;
}

.web_slide_archive_session {
	width: 17%;
}

.web_slide_archive_speaker {
	width: 36%;
}

/* ========================================
   Overseas Program Rules
======================================== */
.overseas_program_rules_revision {
	margin: -8px 0 28px;
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.7;
	text-align: right;
}

.overseas_program_rules_text {
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.9;
}

/* ========================================
   Encouragement Award Page
======================================== */
.sub_sidebar_group[href] {
	text-decoration: none;
	transition: 0.3s ease-in-out;
}

.sub_sidebar_group[href]:hover {
	color: #004ba9;
	background: #e4f0ff;
	border-color: #004ba9;
}

.encouragement_award_guide {
	margin-bottom: 28px;
	padding-bottom: 12px;
	border-bottom: 1px dotted #d00000;
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.8;
}

.encouragement_award_guide strong {
	color: #d00000;
}

.encouragement_award_guide a {
	color: #004ba9;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.encouragement_award_revision {
	margin: -8px 0 28px;
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.7;
	text-align: right;
}

.encouragement_award_document {
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.9;
}

.encouragement_award_document p+p {
	margin-top: 24px;
}

@media only screen and (max-width: 768px) {
	.web_slide_detail {
		grid-template-columns: 112px minmax(0, 1fr);
		column-gap: 16px;
		padding: 14px 6px;
	}

	.web_slide_archive_periodHeading {
		font-size: 1.8rem;
	}

	.web_slide_archive_table {
		min-width: 660px;
	}

	.overseas_program_rules_revision,
	.encouragement_award_revision {
		text-align: left;
	}
}

@media only screen and (max-width: 480px) {
	.web_slide_details {
		margin-top: 24px;
	}

	.web_slide_detail {
		grid-template-columns: 1fr;
		row-gap: 8px;
		padding: 14px 2px;
	}

	.web_slide_detail dt {
		padding-left: 16px;
	}

	.web_slide_archive_period+.web_slide_archive_period {
		margin-top: 40px;
	}

	.web_slide_archive_table {
		min-width: 620px;
	}

	.web_slide_archive_table th,
	.web_slide_archive_table td {
		padding: 9px 10px;
	}

	.encouragement_award_guide {
		margin-bottom: 24px;
	}
}

/* ========================================
   Tumor Diagnosis Resources Page
======================================== */
.tumor_resources_text {
	color: #16233b;
	font-size: 1.6rem;
	line-height: 2;
}

.tumor_resources_text p+p {
	margin-top: 18px;
}

.tumor_resources_signatures {
	width: fit-content;
	max-width: 100%;
	margin: 40px 0 0 auto;
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.8;
	text-align: right;
}

.tumor_resources_signatures p+p {
	margin-top: 20px;
}

.tumor_resources_list {
	margin: 44px 0 0;
	padding-left: 0;
	border-top: 1px solid #cbd7e4;
	list-style: none;
}

.tumor_resources_item {
	padding: 22px 18px;
	border-bottom: 1px solid #cbd7e4;
}

.tumor_resources_title {
	display: flex;
	align-items: center;
}

.tumor_resources_num {
	flex: none;
}

.tumor_resources_num span {
	font-size: 1.6rem;
	line-height: 1.7;
}

.tumor_resources_content {
	flex: 1 1 auto;
	padding-left: 5px;
}

.tumor_resources_link {
	display: inline-flex;
	align-items: center;
	column-gap: 14px;
	max-width: calc(100% - 0px);
	vertical-align: top;
	color: #004ba9;
	font-size: 1.6rem;
	line-height: 1.7;
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.tumor_resources_link span {
	flex: 1 1 auto;
}

.tumor_resources_pdfIcon {
	display: block;
	flex: 0 0 auto;
	width: 28px;
	height: auto;
	flex: none;
}

.tumor_resources_item p {
	margin-top: 10px;
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.8;
	padding-left: 20px;
}

.tumor_resources_members {
	margin-top: 44px;
}

.tumor_resources_members_note {
	color: #16233b;
	font-size: 1.6rem;
	line-height: 1.8;
}

.tumor_resources_members_note_red {
	color: #e60012;
}

.tumor_resources_list--members {
	margin-top: 20px;
}

@media only screen and (max-width: 768px) {
	.tumor_resources_text {
		font-size: 1.4rem;
		line-height: 1.9;
	}

	.tumor_resources_signatures {
		margin-top: 32px;
	}

	.tumor_resources_list {
		margin-top: 36px;
		padding-left: 0;
	}

	.tumor_resources_members {
		margin-top: 36px;
	}

	.tumor_resources_members_note {
		font-size: 1.4rem;
	}

	.tumor_resources_list--members {
		margin-top: 16px;
	}

	.tumor_resources_item {
		padding: 18px 12px;
	}

	.tumor_resources_link {
		font-size: 1.4rem;
	}

	.tumor_resources_num span {
		font-size: 1.4rem;
		top: 7px;
	}
}

@media only screen and (max-width: 480px) {
	.tumor_resources_signatures {
		width: 100%;
		text-align: left;
	}

	.tumor_resources_pdfIcon {
		width: 26px;
	}
}

/* ========================================
   Certification Exam / Exam Archive
======================================== */
.exam_service {
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.9;
	overflow-wrap: anywhere;
}

.exam_service p+p {
	margin-top: 24px;
}

.exam_service a {
	color: #004ba9;
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.exam_service_red,
.exam_service a.exam_service_red {
	color: #d00000;
}

.exam_service_blue {
	color: #004ba9;
}

.exam_service_updateIcon {
	display: inline-block;
	width: 22px;
	height: 14px;
	margin-left: 3px;
	vertical-align: -2px;
}

.exam_service_requirements {
	margin: 0;
	padding-left: 1.8em;
}

.exam_service_requirements li {
	padding-left: 0.2em;
}

.exam_service_downloads {
	margin: 20px 0 24px;
	padding-left: 1.8em;
}

.exam_service_guide {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	margin-top: 42px;
}

.exam_service_guide>div {
	min-width: 0;
	flex: 1 1 auto;
}

.exam_service_image {
	display: block;
	flex: 0 0 auto;
	width: 180px;
	height: 153px;
	object-fit: cover;
}

.exam_service_guide p:first-child {
	margin-top: 8px;
}

.exam_archive_list {
	margin-top: 30px;
}

.exam_archive_item {
	padding: 28px 0;
	border-bottom: 1px solid #d8e0e9;
}

.exam_archive_item:first-child {
	padding-top: 0;
}

.exam_archive_item h3 {
	margin-bottom: 8px;
	color: #16233b;
	font-size: 1.6rem;
	line-height: 1.7;
	font-weight: 700;
}

.exam_archive_item p {
	margin: 0;
}

.exam_archive_item>div {
	min-width: 0;
}

.exam_archive_indent {
	display: inline-block;
	padding-left: 7em;
}

.exam_archive_pdf img {
	display: block;
	flex: 0 0 auto;
	width: 28px;
	height: auto;
	margin: 0;
}

.exam_archive_item>div>.exam_archive_pdf {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	width: 100%;
	margin: 4px 0 0;
}

.exam_archive_item>div>.exam_archive_pdf:first-of-type {
	margin-top: 10px;
}

.exam_archive_pdf>span {
	min-width: 0;
	flex: 1 1 auto;
	overflow-wrap: anywhere;
}

@media only screen and (max-width: 768px) {
	.exam_service {
		font-size: 1.4rem;
		line-height: 1.8;
	}

	.exam_service_guide {
		margin-top: 34px;
	}

	.exam_archive_item {
		padding: 24px 0;
	}

	.exam_archive_item h3 {
		font-size: 1.6rem;
	}
}

@media only screen and (max-width: 480px) {
	.exam_service p+p {
		margin-top: 20px;
	}

	.exam_service_guide {
		display: block;
		margin-top: 30px;
	}

	.exam_service_guide>div {
		margin-top: 20px;
	}

	.exam_service_guide p:first-child {
		margin-top: 0;
	}

	.exam_archive_list {
		margin-top: 24px;
	}

	.exam_archive_indent {
		padding-left: 2em;
	}

	.exam_archive_pdf img {
		width: 26px;
	}

	.exam_archive_item>div>.exam_archive_pdf {
		gap: 6px;
	}
}

/* ========================================
   Encouragement Award Application / Recipients
======================================== */
.award_application {
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.9;
	overflow-wrap: anywhere;
}

.award_application_title {
	margin-top: 28px;
	color: #004ba9;
	font-size: 1.8rem;
	line-height: 1.6;
	font-weight: 700;
}

.award_application_block {
	margin-top: 24px;
}

.award_application_block h4 {
	margin-bottom: 4px;
	color: #16233b;
	font-size: 1.6rem;
	line-height: 1.7;
	font-weight: 400;
}

.award_application_block p+p {
	margin-top: 18px;
}

.award_application_download {
	margin-top: 28px;
}

.award_application_download a {
	color: #d00000;
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.award_recipients_group {
	margin-top: 34px;
}

.award_recipients_group:first-of-type {
	margin-top: 28px;
}

.award_recipients_group h3 {
	margin-bottom: 10px;
	color: #16233b;
	font-size: 1.8rem;
	line-height: 1.6;
	font-weight: 700;
}

.award_recipients_tableWrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: #8da4bd #e5edf6;
}

.award_recipients_tableWrap::-webkit-scrollbar {
	height: 6px;
}

.award_recipients_tableWrap::-webkit-scrollbar-track {
	background: #e5edf6;
}

.award_recipients_tableWrap::-webkit-scrollbar-thumb {
	background: #8da4bd;
	border-radius: 3px;
}

.award_recipients_table {
	width: 100%;
	min-width: 760px;
	border-collapse: collapse;
	table-layout: fixed;
	color: #16233b;
}

.award_recipients_table th,
.award_recipients_table td {
	padding: 12px;
	border: 1px solid #cbd7e4;
	font-size: 1.4rem;
	line-height: 1.7;
	vertical-align: middle;
	overflow-wrap: anywhere;
}

.award_recipients_table thead th {
	background: #0054ad;
	color: #ffffff;
	font-weight: 700;
	text-align: left;
}

.award_recipients_table tbody th {
	background: #f4f9ff;
	font-weight: 400;
	text-align: center;
}

.award_recipients_year {
	width: 10%;
}

.award_recipients_name {
	width: 16%;
}

.award_recipients_affiliation {
	width: 24%;
}

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

	.award_application,
	.award_recipients_table th,
	.award_recipients_table td {
		font-size: 1.4rem;
	}

	.award_application_title,
	.award_recipients_group h3 {
		font-size: 1.6rem;
	}

	.award_recipients_table {
		min-width: 720px;
	}

	.award_recipients_table th,
	.award_recipients_table td {
		padding: 10px;
	}
}

@media only screen and (max-width: 480px) {
	.award_application_title {
		margin-top: 24px;
	}

	.award_application_block {
		margin-top: 20px;
	}

	.award_recipients_group {
		margin-top: 28px;
	}
}

/* ========================================
   Privacy Policy
======================================== */
.privacy_policy {
	width: 100%;
	color: #16233b;
	font-size: 1.6rem;
	line-height: 1.9;
}

.privacy_policy_intro {
	margin: 0 0 36px;
	font-weight: 700;
}

.privacy_policy_section {
	padding: 0 0 32px;
	border-bottom: 1px solid #cbd7e4;
}

.privacy_policy_section+.privacy_policy_section {
	margin-top: 32px;
}

.privacy_policy_section h2 {
	margin: 0 0 16px;
	color: #004ba9;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.6;
}

.privacy_policy_section p {
	margin: 0;
}

.privacy_policy_section ul {
	margin: 12px 0 0;
	padding-left: 1.5em;
}

.privacy_policy_section li+li {
	margin-top: 4px;
}

.privacy_policy_section a {
	color: #004ba9;
	text-decoration: underline;
	overflow-wrap: anywhere;
}

.privacy_policy_section a:hover {
	text-decoration: none;
}

@media only screen and (max-width: 768px) {
	.privacy_policy {
		font-size: 1.4rem;
	}

	.privacy_policy_intro {
		margin-bottom: 28px;
	}

	.privacy_policy_section {
		padding-bottom: 24px;
	}

	.privacy_policy_section+.privacy_policy_section {
		margin-top: 24px;
	}

	.privacy_policy_section h2 {
		margin-bottom: 12px;
		font-size: 1.8rem;
	}
}

/* ========================================
   JSVP Board / Tumor Committee
======================================== */
.jsvp_board,
.tumor_committee {
	color: #16233b;
	font-size: 1.6rem;
	line-height: 1.8;
}

.jsvp_board_title {
	margin: 0;
	padding-bottom: 10px;
	border-bottom: 1px dotted #d72841;
	color: #004ba9;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.8;
}

.jsvp_board_links {
	margin: 10px 0 26px;
	padding: 0;
	list-style: none;
}

.jsvp_board_links li {
	position: relative;
	padding-left: 1em;
}

.jsvp_board_links li::before {
	content: "・";
	position: absolute;
	left: 0;
}

.jsvp_board_links a {
	color: #004ba9;
	text-decoration: underline;
}

.jsvp_board_links a:hover {
	text-decoration: none;
}

.jsvp_board_table th {
	width: 210px;
}

.tumor_committee_overview {
	margin: 0 0 24px;
}

.tumor_committee_table th {
	width: 190px;
}

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

	.jsvp_board,
	.tumor_committee {
		font-size: 1.4rem;
	}

	.jsvp_board_title {
		font-size: 1.4rem;
	}

	.jsvp_board_table th,
	.tumor_committee_table th {
		width: 96px;
	}
}

/* ========================================
   JSVP History / Past Presidents
======================================== */
.jsvp_history_panel .sub_main_text p+p {
	margin-top: 18px;
}

.jsvp_past_presidents_intro {
	margin: 0 0 24px;
	color: #16233b;
	font-size: 1.6rem;
	line-height: 1.8;
}

.jsvp_past_presidents_tableWrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: #8da4bd #e5edf6;
}

.jsvp_past_presidents_tableWrap::-webkit-scrollbar {
	height: 6px;
}

.jsvp_past_presidents_tableWrap::-webkit-scrollbar-track {
	background: #e5edf6;
}

.jsvp_past_presidents_tableWrap::-webkit-scrollbar-thumb {
	background: #7a93b2;
	border-radius: 3px;
}

.jsvp_past_presidents_table {
	width: 100%;
	min-width: 720px;
	border-collapse: collapse;
	table-layout: fixed;
	background: #ffffff;
}

.jsvp_past_presidents_table th,
.jsvp_past_presidents_table td {
	padding: 13px 16px;
	border: 1px solid #cbd5e1;
	color: #16233b;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.8;
	text-align: left;
	vertical-align: middle;
	overflow-wrap: anywhere;
}

.jsvp_past_presidents_table th {
	width: 44%;
	background: #f4f9ff;
	color: #004ba9;
}

@media only screen and (max-width: 768px) {
	.jsvp_history_panel .sub_main_text p+p {
		margin-top: 14px;
	}

	.jsvp_past_presidents_intro {
		font-size: 1.4rem;
	}

	.jsvp_past_presidents_tableWrap {
		overflow-x: scroll;
	}

	.jsvp_past_presidents_table {
		min-width: 680px;
	}

	.jsvp_past_presidents_table th,
	.jsvp_past_presidents_table td {
		padding: 11px 10px;
	}
}

/* ========================================
   About Veterinary Pathology
======================================== */
.about_veterinary_pathology_text {
	color: #16233b;
	font-size: 1.6rem;
	line-height: 2;
}

.about_veterinary_pathology_text p {
	margin: 0;
	text-align: justify;
}

.about_veterinary_pathology_text p+p {
	margin-top: 20px;
}

.about_veterinary_pathology_comic {
	margin: 48px 0 0;
}

.about_veterinary_pathology_comic img {
	display: block;
	width: 100%;
	height: auto;
}

@media only screen and (max-width: 768px) {
	.about_veterinary_pathology_text {
		font-size: 1.4rem;
		line-height: 1.9;
	}

	.about_veterinary_pathology_text p+p {
		margin-top: 16px;
	}

	.about_veterinary_pathology_comic {
		margin-top: 32px;
	}
}

/* ========================================
   Councilors
======================================== */
.councilors_term {
	margin: 0 0 24px;
	color: #16233b;
	font-size: 1.6rem;
	line-height: 1.8;
}

.councilors_list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
	padding: 0;
	border-top: 1px solid #cbd5e1;
	border-left: 1px solid #cbd5e1;
	list-style: none;
}

.councilors_item {
	min-width: 0;
	padding: 13px 16px;
	border-right: 1px solid #cbd5e1;
	border-bottom: 1px solid #cbd5e1;
	background: #ffffff;
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.8;
	overflow-wrap: anywhere;
}

@media only screen and (max-width: 768px) {
	.councilors_term {
		margin-bottom: 20px;
		font-size: 1.4rem;
	}

	.councilors_list {
		grid-template-columns: minmax(0, 1fr);
	}

	.councilors_item {
		padding: 11px 12px;
		font-size: 1.4rem;
	}
}

/* ========================================
   Pathology Seminar
======================================== */
.pathology_seminar {
	color: #16233b;
	font-size: 1.6rem;
	line-height: 1.9;
}

.annual_meeting_current p {
	margin: 0;
}

.annual_meeting_lead {
	margin: 0 0 24px;
	font-weight: 700;
	text-align: center;
}

.annual_meeting_tableWrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.annual_meeting_table {
	width: 100%;
	border-collapse: collapse;
	color: #16233b;
}

.annual_meeting_table th,
.annual_meeting_table td {
	padding: 12px 14px;
	border: 1px solid #6f7f91;
	font-size: 1.6rem;
	line-height: 1.7;
	text-align: left;
	vertical-align: middle;
}

.annual_meeting_table th {
	width: 180px;
	background: #f4f9ff;
	font-weight: 400;
}

.annual_meeting_pending {
	color: #d72841;
}

.annual_meeting_historyList {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid #d8e0e9;
}

.annual_meeting_historyList li {
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 18px;
	padding: 14px 8px;
	border-bottom: 1px solid #d8e0e9;
}

.annual_meeting_round {
	position: relative;
	padding-left: 1em;
	font-weight: 700;
}

.annual_meeting_round::before {
	content: "・";
	position: absolute;
	left: 0;
}

.annual_meeting_historyList p {
	margin: 0;
}

.pathology_seminar_record {
	display: grid;
	grid-template-columns: 200px minmax(0, 1fr);
	gap: 28px;
	padding-bottom: 32px;
	border-bottom: 1px solid #d8e0e9;
}

.pathology_seminar_record+.pathology_seminar_record {
	margin-top: 32px;
}

.pathology_seminar_image {
	margin: 0;
}

.pathology_seminar_image img {
	display: block;
	width: 200px;
	height: 200px;
	object-fit: cover;
}

.pathology_seminar_recordBody {
	min-width: 0;
}

.pathology_seminar_recordBody h3,
.pathology_seminar_history h3 {
	margin: 0 0 16px;
	color: #004ba9;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.7;
}

.pathology_seminar_recordBody p,
.pathology_seminar_history p {
	margin: 0;
}

.pathology_seminar_recordBody p+p {
	margin-top: 18px;
}

.pathology_seminar a {
	color: #004ba9;
	text-decoration: underline;
	text-underline-offset: 0.14em;
	overflow-wrap: anywhere;
}

.pathology_seminar a:hover {
	text-decoration: none;
}

.pathology_seminar_links {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 14px;
}

.pathology_seminar_archive {
	margin-top: 26px;
	padding-top: 22px;
	border-top: 1px solid #cbd5e1;
}

.pathology_seminar_archive h4 {
	margin: 0 0 12px;
	color: #d72841;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.7;
}

.pathology_seminar_archiveList {
	margin: 0;
	padding: 0;
	list-style: none;
}

.pathology_seminar_archiveList li {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 2px;
}

.pathology_seminar_archiveList li+li {
	margin-top: 4px;
}

.pathology_seminar_history h3 {
	color: #d72841;
	font-size: 1.8rem;
}

.pathology_seminar_history strong {
	font-weight: 700;
}

.pathology_seminar_external {
	margin-top: 32px !important;
	padding: 18px 20px;
	border-left: 4px solid #004ba9;
	background: #f4f9ff;
}

.pathology_seminar_external a {
	display: block;
	font-weight: 700;
}

.sub_sidebar_group {
	text-decoration: none;
	transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
}

.sub_sidebar_group:hover {
	color: #004ba9;
	background: #e4f0ff;
	border-color: #004ba9;
}

@media only screen and (max-width: 768px) {
	.pathology_seminar {
		font-size: 1.4rem;
	}

	.annual_meeting_lead {
		text-align: left;
	}

	.annual_meeting_table th,
	.annual_meeting_table td {
		padding: 10px 12px;
		font-size: 1.4rem;
	}

	.annual_meeting_table th {
		width: 150px;
	}

	.annual_meeting_historyList li {
		grid-template-columns: 110px minmax(0, 1fr);
		gap: 12px;
		padding: 12px 6px;
	}

	.pathology_seminar_record {
		grid-template-columns: 180px minmax(0, 1fr);
		gap: 22px;
		padding-bottom: 28px;
	}

	.pathology_seminar_record+.pathology_seminar_record {
		margin-top: 28px;
	}

	.pathology_seminar_image img {
		width: 180px;
		height: 180px;
	}

	.pathology_seminar_recordBody h3,
	.pathology_seminar_history h3 {
		font-size: 1.8rem;
	}

	.pathology_seminar_archive h4 {
		font-size: 1.6rem;
	}

	.pathology_seminar_external {
		margin-top: 28px !important;
		padding: 16px;
	}
}

@media only screen and (max-width: 600px) {
	.annual_meeting_historyList li {
		grid-template-columns: minmax(0, 1fr);
		gap: 4px;
	}

	.pathology_seminar_record {
		grid-template-columns: minmax(0, 1fr);
		gap: 20px;
	}

	.pathology_seminar_image img {
		width: 160px;
		height: 160px;
	}
}

/* ========================================
   Pathology Seminar Rules
======================================== */
.pathology_rules_page {
	color: #16233b;
	font-size: 1.6rem;
	line-height: 2;
}

.pathology_rules_page .sub_section_heading {
	line-height: 1.7;
}

.pathology_rules_revisions {
	margin: 0 0 40px;
	text-align: right;
}

.pathology_rules_revisions p {
	margin: 0;
}

.pathology_rules_group+.pathology_rules_group {
	margin-top: 40px;
}

.pathology_rules_group h3 {
	display: grid;
	grid-template-columns: 26px minmax(0, 1fr);
	gap: 5px;
	margin: 0 0 12px;
	color: #16233b;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.8;
}

.pathology_rules_sectionMarker,
.pathology_rules_itemMarker {
	white-space: nowrap;
}

.pathology_rules_list {
	margin: 0;
	padding: 0 0 0 31px;
	list-style: none;
}

.pathology_rules_list>li {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr);
	gap: 5px;
}

.pathology_rules_list>li+li {
	margin-top: 8px;
}

.pathology_rules_list p {
	margin: 0;
}

.pathology_rules_institutions {
	margin-top: 8px !important;
}

.pathology_rules_history p {
	margin: 0;
}

.pathology_rules_history p+p {
	margin-top: 10px;
}

.pathology_rules_page a {
	color: #004ba9;
	text-decoration: underline;
	text-underline-offset: 0.14em;
	overflow-wrap: anywhere;
}

.pathology_rules_page a:hover {
	text-decoration: none;
}

@media only screen and (max-width: 768px) {
	.pathology_rules_page {
		font-size: 1.4rem;
	}

	.pathology_rules_revisions {
		margin-bottom: 32px;
	}

	.pathology_rules_group+.pathology_rules_group {
		margin-top: 32px;
	}

	.pathology_rules_group h3 {
		grid-template-columns: 20px minmax(0, 1fr);
		font-size: 1.6rem;
	}

	.pathology_rules_list {
		padding-left: 25px;
	}
}

@media only screen and (max-width: 480px) {
	.pathology_rules_revisions {
		text-align: left;
	}

}

/* ========================================
   Meeting Archive Index
======================================== */
.meeting_archive_legacy {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 10px;
	margin: 0 0 24px;
}

.meeting_archive_list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.meeting_archive_list li {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 2px;
}

.meeting_archive_list li + li {
	margin-top: 4px;
}

.meeting_archive_preparing {
	color: #d72841;
}

/* ========================================
   President / Poster Award
======================================== */
.president_poster_award {
	color: #16233b;
	font-size: 1.6rem;
	line-height: 2;
}

.president_poster_award p {
	margin: 0;
	text-align: justify;
}

.president_poster_award_results {
	margin-top: 40px;
}

.president_poster_award_results .sub_section_heading {
	margin-bottom: 18px;
}

.president_poster_award_table {
	min-width: 860px;
}

.president_poster_award_category {
	width: 13%;
}

.president_poster_award_name {
	width: 11%;
}

.president_poster_award_subject {
	width: 51%;
}

.president_poster_award_affiliation {
	width: 25%;
}

.president_poster_award_table thead th:first-child {
	text-align: center;
}

@media only screen and (max-width: 768px) {
	.president_poster_award {
		font-size: 1.4rem;
		line-height: 1.9;
	}

	.president_poster_award_results {
		margin-top: 32px;
	}
}

@media only screen and (max-width: 480px) {
	.president_poster_award_title {
		font-size: 2rem;
	}
}

/* ========================================
   Certification Renewal Documents
======================================== */
.renewal_document {
	color: #16233b;
	font-size: 1.4rem;
	line-height: 1.9;
}

.renewal_document_organization {
	margin-bottom: 8px;
	font-size: 1.6rem;
	text-align: center;
}

.renewal_document_title {
	margin-bottom: 38px;
	text-align: center;
}

.renewal_document_block+.renewal_document_block {
	margin-top: 34px;
}

.renewal_document_heading {
	margin-bottom: 10px;
	color: #004ba9;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.6;
}

.renewal_document_subheading,
.renewal_document_tableTitle {
	margin-top: 24px;
	margin-bottom: 10px;
	color: #16233b;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.7;
}

.renewal_document p+p {
	margin-top: 8px;
}

.renewal_document_list {
	margin: 10px 0 0;
	padding: 0;
	list-style: none;
}

.renewal_document_list li {
	display: grid;
	grid-template-columns: 2.6em minmax(0, 1fr);
	gap: 0.3em;
}

.renewal_document_list li+li {
	margin-top: 6px;
}

.renewal_document_list--dot li {
	grid-template-columns: 1.7em minmax(0, 1fr);
}

.renewal_document_list--continued {
	margin-top: 26px;
}

.renewal_document_marker {
	white-space: nowrap;
}

.renewal_document_tableWrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.renewal_document_table {
	width: 100%;
	min-width: 720px;
	border-collapse: collapse;
	background: #ffffff;
	line-height: 1.7;
}

.renewal_document_table--attachments {
	min-width: 900px;
}

.renewal_document_table th,
.renewal_document_table td {
	padding: 10px 12px;
	border: 1px solid #cbd5e1;
	vertical-align: top;
	text-align: left;
	overflow-wrap: anywhere;
}

.renewal_document_table th {
	background: #e4f0ff;
	color: #16233b;
	font-weight: 700;
	vertical-align: middle;
}

.renewal_document_table--score th:nth-child(2),
.renewal_document_table--score th:nth-child(3),
.renewal_document_table--score td:nth-child(2),
.renewal_document_table--score td:nth-child(3) {
	width: 84px;
	text-align: center;
}

.renewal_document_table--meetings {
	table-layout: fixed;
}

.renewal_document_table--attachments th:nth-child(1) {
	width: 23%;
}

.renewal_document_table--attachments th:nth-child(2) {
	width: 47%;
}

.renewal_document_table--attachments th:nth-child(3) {
	width: 30%;
}

.renewal_document_notes {
	margin-top: 14px;
	font-size: 1.3rem;
	line-height: 1.75;
}

.renewal_document_notes p+p,
.renewal_document_referenceList p+p {
	margin-top: 2px;
}

.renewal_document_referenceList {
	margin-bottom: 28px;
}

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

	.renewal_document_organization,
	.renewal_document_subheading,
	.renewal_document_tableTitle {
		font-size: 1.5rem;
	}

	.renewal_document_title {
		margin-bottom: 30px;
	}

	.renewal_document_heading {
		font-size: 1.6rem;
	}

	.renewal_document_block+.renewal_document_block {
		margin-top: 28px;
	}
}
