@charset "UTF-8";
/* CSS Document */


/* ----------------------------------------------
   基本設定
------------------------------------------------ */
* {
	box-sizing: border-box;
}

html,
body,
div,
span,
applet,
object,
iframe,
h4,
h5,
h6,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 1em;
}

article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary {
	display: block;
}

ol,
ul {
	list-style: none;
}

body {
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: .875rem;
	color: #333;
	padding: 0;
}

/* h2 {
			font-size: 120%;
			padding: 2px 0px 2px 10px;
			margin: 0 0 10px;
			border-left: 5px solid #3366cc;
		} */

table {
	width: 100%;
	margin: 10px 0 40px;
	border-collapse: collapse;
	border-top: 1px solid #ccc;
}

td,
th {
	padding: 8px 10px;
	text-align: left;
}

th {
	font-size: 12px;
	color: #fff;
	background: #333;
	border-bottom: 1px solid #ccc;
	white-space: nowrap;
}

td {
	border-bottom: 1px solid #ccc;
}

a {
	color: #36c;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

.center {
	text-align: center;
}

.green {
	color: #336600;
	background: #ecffdd;
}

.gray {
	background: #fafafa;
}

.yellow {
	background: #ffffe1;
}

.note {
	margin: 15px 0 50px;
}

.note li {
	font-size: 12px;
	line-height: 1.3;
	color: #999;
	margin: 10px 0 0;
	padding: 0 0 0 1.2em;
	text-indent: -1.2em;
}

:root {
	--jk-lib-color1: #2f1642;
	--jk-lib-color2: #3b1b52;
	--jk-lib-color3: #4f3263;
	--jk-lib-color4: #624975;
	--jk-lib-color5: #765f86;
	--jk-lib-color6: #c4bbcb;
	--jk-lib-color7: #d8d1dc;
	--jk-lib-color8: #ebe8ee;
	--jk-lib-color9: #f3f1f5;
	--jk-personal-color1: #8d3300;
	--jk-personal-color2: #b04000;
	--jk-personal-color3: #b8531a;
	--jk-personal-color4: #c06633;
	--jk-personal-color5: #d08c66;
	--jk-personal-color6: #dfb399;
	--jk-personal-color7: #efd9cc;
	--jk-personal-color8: #f7ece6;
	--jk-personal-color9: #faf4f0;
	--jk-neutral-color1: #181818;
	--jk-neutral-color2: #2f2f2f;
	--jk-neutral-color3: #474747;
	--jk-neutral-color4: #5e5e5d;
	--jk-neutral-color5: #70706e;
	--jk-neutral-color6: #8e8e8d;
	--jk-neutral-color7: #bebebc;
	--jk-neutral-color8: #d6d6d2;
	--jk-neutral-color9: #ededeb;
	--jk-neutral-color10: #f5f5f5;
	--jk-bg-color: var(--jk-neutral-color10);
	--jk-text-color: var(--jk-neutral-color1);
	--jk-text-sub-color: var(--jk-neutral-color5);
	--jk-link-color: #0070b3;
	--jk-link-hover-color: #005a8f;
	--jk-link-bg-color: #e6f1f7;
	--jk-link-visited-color: #77004c;
	--jk-link-visited-hover-color: #530035;
	--jk-alert-color: #a8281b;
	--jk-alert-hover-color: #761c13;
	--jk-alert-bg-color: #f6eae8;
	--jk-info-color: #1b5225;
	--jk-info-hover-color: #13391a;
	--jk-info-bg-color: #e8eee9;
	--jk-border-color: var(--jk-neutral-color8);
	--jk-border-radius: .25rem;
	--jk-border-radius-lg: .5rem;
	--bs-form-invalid-color: var(--jk-alert-color);
	--bs-form-invalid-border-color: var(--jk-alert-color);
	--bs-form-valid-color: var(--jk-info-color);
	--bs-form-valid-border-color: var(--jk-info-color);
}

body {
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	color: var(--jk-text-color);
	background: var(--jk-bg-color);
}

img {
	max-width: 100%;
	height: auto;
	border: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: bold;
}

input::-webkit-input-placeholder {
	line-height: 1 !important;
}

input::-ms-clear {
	visibility: hidden;
}

input::-ms-reveal {
	visibility: hidden;
}

input:focus,
input:focus-visible,
textarea:focus,
textarea:focus-visible,
select:focus,
select:focus-visible {
	outline: auto !important;
	box-shadow: none !important;
}

pre {
	margin: 0;
}

a:not(.btn),
a:link:not(.btn) {
	color: var(--jk-link-color);
}

a:visited:not(.btn) {
	color: var(--jk-link-visited-color);
}

a:focus-visible {
	outline: auto !important;
	box-shadow: none !important;
}

button:focus-visible {
	outline: auto !important;
	box-shadow: none !important;
}

.small,
small {
	font-size: .875rem;
	font-weight: normal;
}

.bi {
	width: 1em;
	height: 1em;
	vertical-align: -.125em;
	fill: currentcolor;
}

.offcanvas-title {
	font-size: 1.25rem;
}

.btn {
	--bs-btn-padding-x: 1rem;
	--bs-btn-padding-y: .5rem;
	--bs-btn-font-weight: bold;
	--bs-btn-border-width: 2px;
	--bs-btn-border-radius: 999em;
	--bs-btn-disabled-opacity: .3;
	text-decoration: none !important;
}

.btn-group-lg>.btn,
.btn-lg {
	--bs-btn-padding-x: 1.5rem;
	--bs-btn-padding-y: .875rem;
	--bs-btn-font-size: 1.125rem;
	--bs-btn-border-width: 3px;
}

.btn-primary {
	--bs-btn-bg: var(--jk-link-color);
	--bs-btn-border-color: var(--jk-link-color);
	--bs-btn-hover-bg: var(--jk-link-hover-color);
	--bs-btn-hover-border-color: var(--jk-link-hover-color);
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--jk-link-hover-color);
	--bs-btn-active-border-color: var(--jk-link-hover-color);
	--bs-btn-disabled-bg: var(--jk-link-color);
	--bs-btn-disabled-border-color: var(--jk-link-color);
}

.btn-secondary {
	--bs-btn-color: var(--jk-neutral-color3);
	--bs-btn-bg: var(--jk-neutral-color9);
	--bs-btn-border-color: var(--jk-neutral-color9);
	--bs-btn-hover-color: var(--jk-neutral-color1);
	--bs-btn-hover-bg: var(--jk-neutral-color8);
	--bs-btn-hover-border-color: var(--jk-neutral-color8);
	--bs-btn-active-color: var(--jk-neutral-color1);
	--bs-btn-active-bg: var(--jk-neutral-color8);
	--bs-btn-active-border-color: var(--jk-neutral-color8);
	--bs-btn-disabled-color: var(--jk-neutral-color3);
	--bs-btn-disabled-bg: var(--jk-neutral-color9);
	--bs-btn-disabled-border-color: var(--jk-neutral-color9);
	--bs-btn-disabled-opacity: .5;
}

.btn-outline-primary {
	--bs-btn-bg: #fff;
	--bs-btn-color: var(--jk-link-color);
	--bs-btn-border-color: var(--jk-link-color);
	--bs-btn-hover-color: var(--jk-link-hover-color);
	--bs-btn-hover-bg: var(--jk-link-bg-color);
	--bs-btn-hover-border-color: var(--jk-link-hover-color);
	--bs-btn-active-color: var(--jk-link-hover-color);
	--bs-btn-active-bg: var(--jk-link-bg-color);
	--bs-btn-active-border-color: var(--jk-link-hover-color);
	--bs-btn-disabled-color: var(--jk-link-color);
	--bs-btn-disabled-border-color: var(--jk-link-color);
}

.btn-outline-secondary {
	--bs-btn-bg: #fff;
	--bs-btn-color: var(--jk-neutral-color3);
	--bs-btn-border-color: var(--jk-neutral-color9);
	--bs-btn-hover-color: var(--jk-neutral-color2);
	--bs-btn-hover-bg: #fff;
	--bs-btn-hover-border-color: var(--jk-neutral-color8);
	--bs-btn-active-color: var(--jk-neutral-color2);
	--bs-btn-active-bg: #fff;
	--bs-btn-active-border-color: var(--jk-neutral-color8);
	--bs-btn-disabled-color: var(--jk-neutral-color3);
	--bs-btn-disabled-border-color: var(--jk-neutral-color9);
	--bs-btn-disabled-opacity: .5;
}

.btn-secondary.lib {
	--bs-btn-color: #fff;
	--bs-btn-bg: var(--jk-lib-color2);
	--bs-btn-border-color: var(--jk-lib-color2);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--jk-lib-color1);
	--bs-btn-hover-border-color: var(--jk-lib-color1);
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--jk-lib-color1);
	--bs-btn-active-border-color: var(--jk-lib-color1);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: var(--jk-lib-color2);
	--bs-btn-disabled-border-color: var(--jk-lib-color2);
}

.btn-outline-secondary.lib {
	--bs-btn-color: var(--jk-lib-color2);
	--bs-btn-border-color: var(--jk-lib-color2);
	--bs-btn-hover-color: var(--jk-lib-color1);
	--bs-btn-hover-bg: var(--jk-lib-color9);
	--bs-btn-hover-border-color: var(--jk-lib-color1);
	--bs-btn-active-color: var(--jk-lib-color1);
	--bs-btn-active-bg: var(--jk-lib-color9);
	--bs-btn-active-border-color: var(--jk-lib-color1);
	--bs-btn-disabled-color: var(--jk-lib-color2);
	--bs-btn-disabled-border-color: var(--jk-lib-color2);
}

.btn-secondary.personal {
	--bs-btn-color: #fff;
	--bs-btn-bg: var(--jk-personal-color2);
	--bs-btn-border-color: var(--jk-personal-color2);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--jk-personal-color1);
	--bs-btn-hover-border-color: var(--jk-personal-color1);
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--jk-personal-color1);
	--bs-btn-active-border-color: var(--jk-personal-color1);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: var(--jk-personal-color2);
	--bs-btn-disabled-border-color: var(--jk-personal-color2);
}

.btn-outline-secondary.personal {
	--bs-btn-color: var(--jk-personal-color2);
	--bs-btn-border-color: var(--jk-personal-color2);
	--bs-btn-hover-color: var(--jk-personal-color1);
	--bs-btn-hover-bg: var(--jk-personal-color9);
	--bs-btn-hover-border-color: var(--jk-personal-color1);
	--bs-btn-active-color: var(--jk-personal-color1);
	--bs-btn-active-bg: var(--jk-personal-color9);
	--bs-btn-active-border-color: var(--jk-personal-color1);
	--bs-btn-disabled-color: var(--jk-personal-color2);
	--bs-btn-disabled-border-color: var(--jk-personal-color2);
}

.btn-light {
	--bs-btn-bg: #fff;
	--bs-btn-border-color: #fff;
	--bs-btn-hover-bg: var(--jk-neutral-color10);
	--bs-btn-hover-border-color: var(--jk-neutral-color10);
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--jk-neutral-color10);
	--bs-btn-active-border-color: var(--jk-neutral-color10);
	--bs-btn-disabled-bg: #fff;
	--bs-btn-disabled-border-color: #fff;
}

.btn-outline-light {
	--bs-btn-bg: transparent;
	--bs-btn-hover-bg: transparent;
	--bs-btn-color: #fff;
	--bs-btn-border-color: #fff;
	--bs-btn-hover-color: var(--jk-neutral-color10);
	--bs-btn-hover-border-color: var(--jk-neutral-color10);
	--bs-btn-active-color: var(--jk-neutral-color10);
	--bs-btn-active-border-color: var(--jk-neutral-color10);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-border-color: #fff;
}

.btn.arrow::before {
	display: inline-block;
	width: var(--bs-btn-font-size);
	font: var(--fa-font-solid);
	font-size: .75em;
	line-height: var(--bs-btn-font-size);
	color: #fff;
	content: "\f105";
	margin-right: .5rem;
	background: var(--bs-btn-color);
	border-radius: 50%;
	vertical-align: .1em;
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn.arrow:hover::before {
	background: var(--bs-btn-hover-color);
}

.btn.btn-outline-light.arrow::before {
	color: #000;
}

.form-label {
	float: inherit;
	width: 100%;
	font-size: 1rem;
	margin-bottom: .25rem;
}

.form-control {
	padding-top: .75rem;
	padding-bottom: .75rem;
	border: 1px solid var(--jk-neutral-color6);
}

.form-select {
	padding-top: .75rem;
	padding-bottom: .75rem;
	border: 1px solid var(--jk-neutral-color6);
	cursor: pointer;
}

.form-check {
	line-height: 1.5;
}

.form-check-label {
	cursor: pointer;
}

.form-check-box {
	padding: 1rem;
	border: 1px solid var(--jk-neutral-color6);
	border-radius: var(--bs-border-radius);
}

.form-check-input {
	border-color: var(--jk-neutral-color6);
}

.form-check-input:checked {
	background-color: var(--jk-link-color);
	border-color: var(--jk-link-color);
}

.form-text {
	color: var(--jk-text-sub-color);
}

.form-control.is-valid,
.was-validated .form-control:valid {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%231b5225' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
}

.form-control.is-invalid,
.was-validated .form-control:invalid {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23a8281b'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23a8281b' stroke='none'/%3e%3c/svg%3e");
}

.form-select.is-invalid:not([multiple]):not([size]),
.form-select.is-invalid:not([multiple])[size="1"],
.was-validated .form-select:invalid:not([multiple]):not([size]),
.was-validated .form-select:invalid:not([multiple])[size="1"] {
	--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23a8281b'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23a8281b' stroke='none'/%3e%3c/svg%3e");
}

.invalid-feedback {
	margin: 0;
}

.error-summary {
	display: none;
	color: var(--jk-alert-color);
	margin: 0 0 1.5rem;
	padding: 1.25rem;
	background: var(--jk-alert-bg-color);
}

.error-summary h2 {
	font-size: 1rem !important;
	margin: 0 0 .75rem !important;
	padding: 0 !important;
}

.error-summary h2::before {
	display: none;
}

.error-summary ul {
	margin: 0;
	padding: 0;
}

.error-summary ul li {
	font-size: .875rem;
	line-height: 1.5;
	margin: .25rem 0 0;
	padding: 0;
	list-style-type: none;
}

.error-summary ul li a {
	position: relative;
	display: inline-block;
	color: var(--jk-alert-color) !important;
	padding-left: 1.25em;
}

.error-summary ul li a:hover {
	color: var(--jk-alert-hover-color) !important;
}

.error-summary ul li a::before {
	position: absolute;
	top: .25em;
	left: 0;
	display: inline-block;
	font: var(--fa-font-solid);
	content: "\f107";
}

.colorLib {
	font-weight: bold;
	color: var(--jk-lib-color2);
}

.colorPersonal {
	font-weight: bold;
	color: var(--jk-personal-color2);
}

.text-danger,
.colorAlert {
	font-weight: bold;
	color: var(--jk-alert-color) !important;
}

.nowrap {
	white-space: nowrap;
}


/* ----------------------------------------------
   ヘッダー
------------------------------------------------ */
header {
	border-bottom: 4px solid #4d3164;
}

.personal_head {
	border-bottom: 4px solid #b04000;
}

#header .container-fluid {
	position: relative;
	padding: 1rem 2.5rem;
	background: #fff;
	box-shadow: 0 .25rem .25rem rgba(0, 0, 0, .15);
}

#header .navbar {
	padding: 0;
}

#header .navbar-nav .nav-link {
	color: var(--jk-text-color);
	white-space: nowrap;
}

#header .navbar-nav .nav-link small {
	font-size: .75rem;
}

#header .navbar-nav .dropdown-item {
	color: var(--jk-text-color);
	background: none;
}

#header .logo {
	margin: 0;
}

#header .logo a {
	display: inline-block;
}

#header .logo img {
	height: 1.75rem;
}

#header .navbar-toggler {
	padding: 0;
	border: none;
}

body.lib #header .navbar-nav .nav-link::before {
	color: var(--jk-lib-color2);
}

body.personal #header .navbar-nav .nav-link::before {
	color: var(--jk-personal-color2);
}

#header .navbar-nav .search-basic::before,
#header .navbar-nav .shelf::before,
#header .navbar-nav .link-collection::before,
#header .navbar-nav .myfolder::before,
#header .navbar-nav .pdf::before {
	font: var(--fa-font-solid);
	margin-right: .25rem;
}

#header .navbar-nav .search-basic::before {
	content: "\f002";
}

#header .navbar-nav .search-advanced::before {
	display: inline-block;
	width: 1em;
	height: 1em;
	content: "";
	background-color: currentColor;
	mask: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20viewBox%3D%220%200%20512%20512%22%3E%0A%3Cpath%20d%3D%22M502.6%2C457.6l-126.1-126.2c25-34.3%2C39.8-76.5%2C39.8-122.2s-2.1-33.8-6-49.7l-57.8%2C52.6c-1.6%2C77.8-65.2%2C140.5-143.4%2C140.5s-143.4-64.2-143.4-143.4%2C1.1-20.4%2C3.2-30c.3-2.5.9-5%2C1.8-7.3%2C16.4-61.1%2C72.2-106.1%2C138.5-106.1s58.2%2C9.3%2C81.3%2C25.2l44.5-39.5c1.4-1.3%2C2.8-2.5%2C4.3-3.5C303.7%2C19.2%2C258.4%2C2%2C209.2%2C2%2C94.7%2C2%2C2%2C94.7%2C2%2C209.2s92.7%2C207.2%2C207.2%2C207.2%2C88-14.7%2C122.2-39.8l126.1%2C126.2c12.5%2C12.5%2C32.7%2C12.5%2C45.1%2C0%2C12.5-12.5%2C12.5-32.7%2C0-45.1Z%22%2F%3E%0A%3Cpath%20d%3D%22M405.8%2C98.6l-25.4-25.4c-1.4-1.4-3-2.2-4.8-2.5-.5%2C0-1.1-.1-1.6-.1h0c-2.3%2C0-4.7.8-6.4%2C2.6l-41.9%2C37.2-117.8%2C104.7-72-72c-1.8-1.8-4.1-2.7-6.4-2.7s-4.7.9-6.4%2C2.7l-25.4%2C25.4c-3.5%2C3.5-3.5%2C9.3%2C0%2C12.9l72%2C72%2C31.8%2C31.8c1.8%2C1.8%2C4.1%2C2.7%2C6.4%2C2.7s4.7-.9%2C6.4-2.7l31.8-28.2%2C106.6-97.1%2C50.3-45.9%2C2.7-2.4c3.5-3.5%2C3.5-9.3%2C0-12.9Z%22%2F%3E%0A%3Cpath%20d%3D%22M70%2C174.3c.2-.8.4-1.6.6-2.5-.9%2C2.4-1.5%2C4.8-1.8%2C7.3.3-1.4.6-2.9%2C1-4.3%2C0-.2%2C0-.4.1-.6Z%22%2F%3E%0A%3Cpath%20d%3D%22M69.9%2C174.8c0-.2%2C0-.4.1-.6%2C0%2C.2%2C0%2C.4-.1.6Z%22%2F%3E%0A%3C%2Fsvg%3E');
	margin-right: .25rem;
	vertical-align: -.1em;
}

#header .navbar-nav .shelf::before {
	content: "\f02d";
}

#header .navbar-nav .link-collection::before {
	content: "\f03a";
}

#header .navbar-nav .myfolder::before {
	content: "\e185";
}

#header .navbar-nav .pdf::before {
	content: "\f1c1";
}

#header .navbar-nav .login,
#header .navbar-nav .logout {
	font-size: .875rem;
	padding: .125rem .5rem;
	border-width: 1px;
	white-space: nowrap;
}

#header .navbar-nav .login::before,
#header .navbar-nav .logout::before {
	font: var(--fa-font-solid);
	color: var(--bs-btn-color);
	margin-right: .25rem;
	transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

#header .navbar-nav .login::before {
	content: "\f2f6";
}

#header .navbar-nav .logout::before {
	content: "\f2f5";
}


/* ----------------------------------------------
   フッター
------------------------------------------------ */
#footer {
	font-size: .875rem;
	line-height: 1.7;
	color: #fff;
	padding: 2.5rem 0;
	background: var(--jk-neutral-color1);
}

#footer ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#footer li {
	margin: 0;
	padding: 0;
}

#footer a {
	color: #fff;
	text-decoration: none;
}

#footer .copyright {
	font-size: .75rem;
	margin: 0;
}

#pageTopBtn {
	position: fixed;
	right: 20px;
	bottom: -100px;
	width: 40px;
	height: 40px;
	background: var(--jk-neutral-color2);
	border: 2px solid var(--jk-neutral-color10);
	border-radius: 50%;
	box-shadow: 0 .25rem .25rem rgba(0, 0, 0, .15);
	overflow: hidden;
	cursor: pointer;
	transition: .3s;
	z-index: 100;
}

#pageTopBtn.show {
	bottom: 20px;
}

#pageTopBtn:before {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	font: var(--fa-font-solid);
	font-size: 1rem;
	line-height: 36px;
	color: #fff;
	content: "\f062";
	text-align: center;
}

/* ----------------------------------------------
   パンくず
------------------------------------------------ */
.atart_breadcrumbs {
	box-sizing: border-box;
	max-width: 960px;
	font-size: 11px;
	padding: 15px 0 10px;
}


/* ----------------------------------------------
   アンカーリンク
------------------------------------------------ */
.anchor_box {
	margin: 0px 0 35px;
}

.anchor_box .anchor_list {
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	max-width: 900px;
	margin: 0 auto;
	justify-content: center;
}





.anchor_box .anchor_list .anchor_item {
	width: 24%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	box-shadow: none !important;
	-webkit-box-shadow: none !important;
	text-align: center;
	margin: 10px 0;
	line-height: 1.5;
	position: relative;
	display: inline-block;
}

.anchor_box .anchor_list .anchor_item .anchor {
	font-weight: 700;
	display: block;
	background: #b04000;
	border-radius: 5px;
	padding: 10px;
	border-radius: 5px;
	color: #fff;
}

.anchor_item a:focus-visible {
	outline: 2px solid black !important;
}

.hoverLine:hover {
	border-color: red !important;
}

.box02 .anchor {
	background: #4d3164 !important;
}

.anchor_box .anchor_list .anchor_item:after {
	content: "";
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	position: absolute;
	top: 46%;
	right: 13px;
	margin-top: -4px;
}

@media screen and (min-width: 768px) {
	.second {
		margin: 10px !important;
	}

	.first {
		margin-right: 10px !important;
	}
}

@media screen and (max-width: 1024px) {
	.anchor_box .anchor_list {
		flex-wrap: wrap;
		font-size: 0.7rem;
	}
}

@media screen and (max-width: 767px) {
	.anchor_box {
		margin: 0 0 38px;
	}

	.anchor_box .anchor_list {
		display: block;
		font-size: 1rem;
	}

	.anchor_box .anchor_list .anchor_item {
		width: 100%;
		margin: 2px 0 8px;
	}
}




/* ----------------------------------------------
   メインコンテンツ
------------------------------------------------ */
#contents {
	line-height: 1.8;
	max-width: 1000px;
	margin: 0 auto;
	background: #f5f5f5;
	padding: 25px 0;
}


.main {
	background: #fff;
	padding: 20px 46px;
}

.sample_image {
	max-width: 600px;
	margin: 28px auto;
}

.sample_image img {
	width: 100%;
}

.mian_image {
	max-width: 780px;
	margin: 28px auto 5px;
}

.mian_image img {
	width: 100%;
}

.sub_image {
	max-width: 800px;
	margin: 28px auto;
}

.sub_image img {
	width: 100%;
}

.text_box p {
	margin-top: 0;
}

.caption {
	display: block;
	text-align: center;
	font-size: 0.9em;
	margin-bottom: 40px;
}

.fa,
.fas {
	font-weight: 900;
}

.fa,
.far,
.fas {
	font-family: "Font Awesome 5 Free";
}

.fa-external-link-alt:before {
	content: "\f35d";
}

@media screen and (max-width: 1024px) {
	.atart_breadcrumbs {
		padding-left: 20px;
	}
}

@media screen and (max-width: 767px) {
	.sample_image {
		width: 68%;
	}

	.main {
		padding: 8px 12px;
	}

	.mian_image {
		margin: 7px auto 8px;
	}

	.text_box p {
		margin-bottom: 0;
	}
}

#pageTop {
	position: fixed;
	right: 20px;
	bottom: -60px;
	width: auto !important;
	padding: 0 !important;
	z-index: 7777;
	transition: .5s;
}

#pageTop a {
	color: #fff;
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	background: #000 url(../images/icon_mark_pagetop.png) no-repeat center 48%;
	-moz-background-size: 14px 14px;
	-webkit-background-size: 14px 14px;
	background-size: 14px 14px;
	-moz-border-radius: 40px;
	-webkit-border-radius: 40px;
	border-radius: 40px;
	box-shadow: 0px 0px 10px #999;
	-moz-box-shadow: 0px 0px 10px #999;
	-webkit-box-shadow: 0px 0px 10px #999;
	text-indent: -777px;
	overflow: hidden;
}

.lib_col {
	color: #4d3164;
}

.per_col {
	color: #b04000;
}

.icon_Area::after {
	position: relative;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	font: var(--fa-font-solid);
	font-size: 1.25rem;
	line-height: 2rem;
	color: var(--jk-personal-color2);
	content: "\f142";
	text-align: center;
}

.myfolder-title-line .fa-up-right-from-square {
	font-size: .875rem;
	color: var(--jk-text-sub-color);
	vertical-align: .1em;
}

.fa-solid,
.fas {
	font-weight: 900;
}

.fa-classic,
.fa-regular,
.fa-solid,
.far,
.fas {
	font-family: "Font Awesome 6 Free";
}

.fa-external-link-alt:before,
.fa-up-right-from-square:before {
	content: "\f35d";
}


/* ----------------------------------------------
   ページタイトル
------------------------------------------------ */
#pageTitle {
	margin: 0 0 2rem;
	background: var(--jk-personal-color2);
	text-align: center;
}

#pageTitle h1 {
	display: inline-block;
	font-size: 2rem;
	line-height: 1.5;
	color: #fff;
	margin: 0 auto;
	padding: 2rem 1rem;
	text-align: left;
}

h1 {
	position: relative;
	font-size: 24px;
	padding-left: 1.5rem;
	margin: 1.25rem 0px 1.25rem;
}

h1::before {
	position: absolute;
	top: 0;
	left: 0;
	width: .5rem;
	height: 100%;
	content: "";
	background: #4d3164;
	border-radius: var(--jk-border-radius);
}

.personal h1::before {
	position: absolute;
	top: 0;
	left: 0;
	width: .5rem;
	height: 100%;
	content: "";
	background: #b04000;
	border-radius: var(--jk-border-radius);
}

h2 {
	margin: 40px 0 18px;
	font-size: 22px;
	padding-bottom: 0.3rem;
	border-bottom: 3px solid #4d3164;
	padding-left: 5px;
}

.personal h2 {
	margin: 40px 0 18px;
	font-size: 22px;
	padding-bottom: 0.3rem;
	border-bottom: 3px solid #b04000;
	padding-left: 5px;
}

h3 {
	font-size: 18px;
	font-weight: bold;
	margin: 0;
}

.red {
	color: #c00;
}

@media only screen and (max-width: 767px) {
	h1 {
		font-size: 20px;
	}

	h2 {
		font-size: 18px;
	}

	h3 {
		font-size: 16px;
	}

	.personal h2 {
		font-size: 18px;
	}
}


/* ----------------------------------------------
   Media Queries
------------------------------------------------ */
@media screen and (min-width: 767px) {
	.sp {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.pc {
		display: none;
	}

	.sp {
		display: block;
	}
}


@media (hover: hover) {

	a:not(.btn):hover,
	a:link:not(.btn):hover {
		color: var(--jk-link-hover-color);
	}

	a:not(.btn):visited:hover {
		color: var(--jk-link-visited-hover-color);
	}

	a span.hoverLine {
		background: linear-gradient(var(--jk-link-color), var(--jk-link-color)) 100% 100%/0 1px no-repeat;
		transition: background-size .4s cubic-bezier(.23, 1, .32, 1) 0s !important;
	}

	button span.hoverLine {
		background: linear-gradient(var(--jk-text-color), var(--jk-text-color)) 100% 100%/0 1px no-repeat;
		transition: background-size .4s cubic-bezier(.23, 1, .32, 1) 0s !important;
	}

	a:hover span.hoverLine,
	button:hover span.hoverLine {
		background-size: 100% 1px !important;
		background-position: 0 100% !important;
	}

	.btn.btn-primary span.hoverLine,
	.btn.btn-secondary.lib span.hoverLine,
	.btn.btn-secondary.personal span.hoverLine,
	.btn.btn-outline-light span.hoverLine {
		background: linear-gradient(#fff, #fff) 100% 100%/0 1px no-repeat;
	}

	.btn.btn-secondary span.hoverLine {
		background: linear-gradient(var(--jk-neutral-color3), var(--jk-neutral-color3)) 100% 100%/0 1px no-repeat;
	}

	.btn.btn-outline-primary span.hoverLine {
		background: linear-gradient(var(--jk-link-hover-color), var(--jk-link-hover-color)) 100% 100%/0 1px no-repeat;
	}

	.btn.btn-outline-secondary span.hoverLine {
		background: linear-gradient(var(--jk-neutral-color4), var(--jk-neutral-color4)) 100% 100%/0 1px no-repeat;
	}

	.btn.btn-outline-secondary.lib span.hoverLine {
		background: linear-gradient(var(--jk-lib-color2), var(--jk-lib-color2)) 100% 100%/0 1px no-repeat;
	}

	.btn.btn-outline-secondary.personal span.hoverLine {
		background: linear-gradient(var(--jk-personal-color2), var(--jk-personal-color2)) 100% 100%/0 1px no-repeat;
	}

	#footer .links a span.hoverLine {
		background: linear-gradient(#fff, #fff) 100% 100%/0 1px no-repeat;
	}

	#localNav li a:not(.active):hover::after {
		background: var(--jk-neutral-color8);
	}

	#paging-area button:hover {
		color: var(--jk-link-hover-color);
		background: var(--jk-link-bg-color);
		border: 1px solid var(--jk-link-hover-color);
	}

	#pageTopBtn:hover {
		background: var(--jk-neutral-color1);
	}

}

@media print,
screen and (hover: hover) and (min-width: 1024px) {

	#header .navbar-nav .nav-link span.hoverLine,
	#header .navbar-nav .dropdown-item span.hoverLine {
		background: linear-gradient(var(--jk-text-color), var(--jk-text-color)) 100% 100%/0 1px no-repeat;
	}

	#header .dropdown:hover .dropdown-menu {
		left: 50%;
		display: block;
		padding: 1rem;
		box-shadow: .25rem .25rem .25rem rgba(0, 0, 0, .15);
		transform: translateX(-50%);
	}

	#header .dropdown:hover .dropdown-menu.advanced {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 1rem;
	}

	#header .dropdown:hover .dropdown-menu.dropdown-menu-md-end {
		right: 0;
	}

	#header .dropdown>.dropdown-toggle:active {
		pointer-events: none;
	}

}

@media print,
screen and (min-width: 1024px) {

	body {
		min-width: 1100px;
	}

	.wrap {
		width: 1040px;
		margin: 0 auto;
	}

	/* ヘッダー */
	#header .navbar-nav .nav-link {
		margin-left: 1.75rem;
		padding: .5rem 0;
	}

	#header .navbar-nav .nav-btn {
		display: flex;
		align-items: center;
		margin-left: 1.75rem;
	}

	#header .dropdown-menu.show {
		padding: 1rem;
		box-shadow: .25rem .25rem .25rem rgba(0, 0, 0, .15);
	}

	#header .dropdown-menu.advanced.show {
		display: grid;
		grid-template-columns: 1fr 1fr;
		column-gap: 1rem;
	}

	/* フッター */
	#footer .wrap {
		width: 1100px;
	}

	#footer .menu {
		display: flex;
		align-items: center;
		justify-content: center;
		line-height: 1;
		margin-bottom: 2rem;
	}

	#footer .menu li+li {
		margin-left: .5rem;
		padding-left: .5rem;
		border-left: 1px solid var(--jk-neutral-color2);
	}

	#footer .links {
		display: flex;
	}

	#footer .copyright {
		text-align: center;
	}

}

@media only screen and (max-width: 1024px) {

	.btn-group-lg>.btn,
	.btn-lg {
		--bs-btn-padding-x: 1rem;
		--bs-btn-padding-y: .75rem;
		--bs-btn-font-size: 1rem;
		--bs-btn-border-width: 2px;
	}

	.form-check-box {
		padding: .75rem 1rem;
	}

	.error-summary {
		margin: 0 0 1.5rem;
		padding: 1rem;
	}

	/* ヘッダー */
	#header .container-fluid {
		padding: 1rem 1.25rem;
	}

	#header .logo img {
		height: 1.375rem;
	}

	#header .navbar-nav .nav-btn .btn {
		margin: 1rem 0;
		padding: .5rem 1rem;
	}

	/* フッター */
	#footer {
		font-size: .875rem;
		padding: 1.5rem 1.25rem;
	}

	#footer .links {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: .25rem;
	}

	#footer .links {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: .25rem;
	}

	#footer .copyright {
		font-size: .75rem;
		padding: 1rem 0 0;
		text-align: left;
	}

	#pageTopBtn {
		right: .75rem;
	}

	#pageTopBtn.show {
		bottom: .75rem;
	}

	/* ページタイトル */
	#pageTitle {
		margin: 0 0 1rem;
	}

	#pageTitle h1 {
		font-size: 1.5rem;
		padding: 1rem 0;
	}

	#localNav li a {
		font-size: 1rem;
		padding: .75rem .5rem;
	}

	#localNav li+li::before {
		top: 1rem;
		height: calc(100% - 2rem);
	}

	/* ページナビゲーション */
	#paging-area .pc {
		display: none;
	}

	#paging-area .sp {
		display: flex;
		margin: 1.5rem 0;
	}

}

@media only screen and (max-width: 374px) {

	html {
		font-size: 4.266666vw;
	}

}


/* ----------------------------------------------
   印刷対応
------------------------------------------------ */
@page {

	margin: 10mm;
	size: A4 portrait;

}

@media print {

	body {
		min-width: inherit;
		width: 1100px;
		print-color-adjust: exact;
		-webkit-print-color-adjust: exact;
	}

	#pageTopBtn {
		display: none;
	}

	.offcanvas,
	#selectTextNav {
		display: none !important;
	}

}