/* -----------------------------------------------
= block
----------------------------------------------- */
.block {
	margin-top: 60px;
	scroll-margin-top: 90px;
}
.block:first-child {
	margin-top: 0;
}
.block .text {
	margin-bottom: 30px;
	font-size: calc(1.5rem / 1.6);
	line-height: calc(34 / 15);
}
@media print, screen and (min-width: 768px) {/* PC */
.block {
	margin-top: 100px;
	scroll-margin-top: 118px;
}
.block .text {
	margin-bottom: 50px;
}
}/* @media */
/* -----------------------------------------------
= policy
----------------------------------------------- */
.policy .item {
	padding: 20px 15px;
	border: 1px solid var(--border-gray);
}
.policy .item + .item {
	margin-top: 10px;
}
.policy .item h3 {
	display: flex;
	align-items: center;
	gap: 0 16px;
	margin-bottom: 16px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--border-gray);
	font-weight: 600;
}
.policy .item h3 span:nth-child(1) {
	color: var(--red);
	font-family: var(--hanknen);
	font-size: calc(1.6rem / 1.6);
}
.policy .item h3 span:nth-child(2) {
	flex: 1;
	font-size: calc(1.6rem / 1.6);
}
.policy .item h3 img {
	width: 44px;
}
.policy .item p {
	font-size: calc(1.3rem / 1.6);
	line-height: 2;
}
.policy .update {
	margin-top: 20px;
	font-size: calc(1.1rem / 1.6);
	line-height: calc(24 / 11);
	text-align: right;
}
@media print, screen and (min-width: 768px) {/* PC */
.policy .item {
	padding: 30px;
}
.policy .item + .item {
	margin-top: 20px;
}
.policy .item h3 {
	gap: 0 36px;
	margin-bottom: 25px;
	padding-bottom: 30px;
}
.policy .item h3 span:nth-child(1) {
	font-size: calc(1.8rem / 1.6);
}
.policy .item h3 span:nth-child(2) {
	font-size: calc(2rem / 1.6);
}
.policy .item p {
	font-size: calc(1.3rem / 1.6);
	line-height: calc(27 / 13);
}
}/* @media */
/* -----------------------------------------------
= organization
----------------------------------------------- */
.organization .img {
	display: block;
}
/* -----------------------------------------------
= governance
----------------------------------------------- */
.governance table {
	display: block;
	border: 1px solid var(--border-gray);
}
.governance table + h3 {
	margin-top: 40px;
}
.governance th,
.governance td {
	display: block;
	padding: 10px 20px;
}
.governance th {
	background: var(--bg-gray);
	font-size: calc(1.5rem / 1.6);
	font-weight: 600;
}
.governance td {
	font-size: calc(1.4rem / 1.6);
	line-height: calc(26 / 14);
}
@media print, screen and (min-width: 768px) {/* PC */
.governance table {
	display: table;
	width: 100%;
}
.governance table + h3 {
	margin-top: 50px;
}
.governance th,
.governance td {
	display: table-cell;
	vertical-align: top;
	border: 1px solid var(--border-gray);
	padding: 15px 20px;
}
.governance th {
	width: calc(250 / 860 * 100%);
	font-weight: 500;
}
.governance td {
	font-size: calc(1.5rem / 1.6);
	line-height: calc(26 / 15);
}
}/* @media */
/* -----------------------------------------------
= rights
----------------------------------------------- */
.rights .box {
	padding: 16px 15px 24px;
	background: var(--bg-gray);
	border: 1px solid var(--border-gray);
	border-radius: 4px;
}
.rights .box h3 {
	margin-bottom: 20px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--border-gray);
	font-size: calc(1.4rem / 1.6);
	font-weight: 600;
}
.rights .box p {
	margin-bottom: 20px;
	font-size: calc(1.2rem / 1.6);
	line-height: calc(25 / 12);
}
.rights .box li + li {
	margin-top: 12px;
}
.rights .box li a {
	display: block;
	position: relative;
	padding: 16px 23px;
	background: #fff;
	border: 1px solid var(--border-gray);
}
.rights .box li a[target="_blank"]::after {
	content: "";
	position: absolute;
	top: calc(50% - 13.5px);
	right: 22px;
	width: 17px;
	height: 17px;
	background: url(../../img/shared/icon-external.svg) no-repeat 50% / cover;
}
.rights .box li a[href$=".pdf"]::after {
	content: "";
	position: absolute;
	top: calc(50% - 10px);
	right: 22px;
	width: 18px;
	height: 20px;
	background: url(../../img/shared/icon-pdf.svg) no-repeat 50% / cover;
}
.rights .box li a span:first-child {
	display: block;
	margin-bottom: 6px;
	font-size: calc(1rem / 1.6);
}
.rights .box li a span:last-child {
	display: block;
	font-size: calc(1.4rem / 1.6);
}
@media print, screen and (min-width: 768px) {/* PC */
.rights .box {
	padding: 30px;
}
.rights .box h3 {
	padding-bottom: 20px;
	font-size: calc(1.7rem / 1.6);
}
.rights .box p {
	margin-bottom: 30px;
	font-size: calc(1.5rem / 1.6);
	line-height: calc(34 / 15);
}
.rights .box ul {
	display: flex;
	gap: 0 20px;
}
.rights .box li {
	width: 100%;
}
.rights .box li + li {
	margin-top: 0;
}
.rights .box li a {
	padding: 30px;
	text-align: center;
}
.rights .box li a[target="_blank"]::after {
	top: auto;
	right: 20px;
	bottom: 20px;
}
.rights .box li a[href$=".pdf"]::after {
	top: auto;
	right: 20px;
	bottom: 20px;
}
.rights .box li a span:first-child {
	margin-bottom: 7px;
	font-size: calc(1.1rem / 1.6);
}
.rights .box li a span:last-child {
	font-size: calc(1.7rem / 1.6);
}
}/* @media */
@media (hover:hover) {
.rights .box li a {
	transition: color .3s;
}
.rights .box li a:hover {
	color: var(--red);
}
}/* @media */
/* -----------------------------------------------
= system
----------------------------------------------- */
.system .img {
	display: block;
	margin-bottom: 70px;
}
.system table {
	border: 1px solid var(--border-gray);
}
.system table + h3 {
	margin-top: 24px;
}
.system th,
.system td {
	width: 50%;
	padding: 14px 20px;
	border: 1px solid var(--border-gray);
	font-size: calc(1.3rem / 1.6);
	line-height: calc(23 / 13);
	vertical-align: top;
}
.system thead td {
	background: var(--bg-gray);
}
.system table ul {
	display: flex;
	flex-wrap: wrap;
}
@media print, screen and (min-width: 768px) {/* PC */
.system table {
	width: 100%;
}
.system table + h3 {
	margin-top: 40px;
}
.system th,
.system td {
	padding: 16px 20px;
	font-size: calc(1.5rem / 1.6);
	line-height: calc(26 / 15);
}
}/* @media */
/* -----------------------------------------------
= stakeholder
----------------------------------------------- */
.stakeholder .img {
	display: block;
	max-width: 431px;
	margin-inline: auto;
}
/* -----------------------------------------------
= manual
----------------------------------------------- */
.manual table {
	display: block;
	border: 1px solid var(--border-gray);
}
.manual th,
.manual td {
	display: block;
	padding: 14px 20px;
}
.manual th {
	background: var(--bg-gray);
	font-size: calc(1.5rem / 1.6);
}
.manual th p {
	display: flex;
}
.manual th span {
	display: block;
}
.manual th span:first-child {
	width: 2em;
	font-weight: 600;
}
.manual th span:last-child {
	flex: 1;
}
.manual td {
	font-size: calc(1.4rem / 1.6);
	line-height: calc(26 / 14);
}
@media print, screen and (min-width: 768px) {/* PC */
.manual table {
	display: table;
	width: 100%;
}
.manual th,
.manual td {
	display: table-cell;
	border: 1px solid var(--border-gray);
	padding: 16px 20px;
	vertical-align: top;
	font-size: calc(1.5rem / 1.6);
	line-height: calc(26 / 15);
}
.manual th {
	width: calc(250 / 860 * 100%);
	border-right: none;
}
}/* @media */
