@charset "utf-8";
/* PC ================================================== */
@media all and (min-width:1025px){
#sitemap {
	width: 100%;
	height: auto;
}
	.sitemap__inner {
		width: 90%;
		max-width: 1086px;
		height: auto;
		padding: 0 0 80px;
		margin: 0 auto;
	}
		.sitemap__contents {
			width: 100%;
			height: auto;
		}
			.sitemap__table {
				width: 100%;
				height: auto;
				background-color: #F8F8F8;
			}
				.sitemap__table tr {
					width: 100%;
					height: auto;
				}
					.sitemap__table td {
						padding: 18px 0 18px 28px;
						border: solid 1px var(--color--lightgray);
						vertical-align: top;
					}
					.sitemap__table td.top {
						width: 190px;
					}
					.sitemap__table td.child {
						width: 355px;
					}
						.page_link {
							padding-left: 29px;
							position: relative;
						}
							.page_link::before,
							.page_link::after {
								content: '';
								position: absolute;
							}
							.page_link::before {
								content: '';
								display: block;
								width: 14px;
								height: 1px;
								background-color: var(--color--black);
								position: absolute;
								top: 50%;
								left: 0;
								transform: translate(0%,-50%);
								transition: .3s;
							}
							.page_link::after {
								content: '';
								display: block;
								width: 6px;
								height: 6px;
								border-top: solid 1px var(--color--black);
								border-right: solid 1px var(--color--black);
								position: absolute;
								top: 50%;
								left: 8px;
								transform: rotate(45deg) translate(0%,-50%);
								transform-origin: center 0%;
								transition: .3s;
							}
						.under_page_list {
							width: 100%;
							height: auto;
						}
							.under_page_item {
								width: 100%;
								height: auto;
								padding-left: 16px;
								margin-bottom: 11px;
								position: relative;
							}
							.under_page_item:last-of-type {
								margin-bottom: 0;
							}
								.page_link a {
									font-size: 1.125rem;
								}
								.under_page_item a {
									font-size: 0.875rem;
								}
								.page_link a,
								.under_page_item a {
									font-weight: 700;
								}
								.page_link a:hover,
								.under_page_item a:hover {
									text-decoration: underline;
								}
								.under_page_link_icon {
									width: 5px;
									height: auto;
									fill: var(--color--black);
									position: absolute;
									top: 10px;
									left: 0;
								}
								.external_link_icon {
									width: 10px;
									height: auto;
									fill: var(--color--black);
									position: absolute;
									top: 10px;
									left: -3px;
								}
}

/* Tablet ================================================== */
@media all and (min-width:600px) and (max-width:1024px){
#sitemap {
	width: 100%;
	height: auto;
}
	.sitemap__inner {
		width: 90%;
		max-width: 1086px;
		height: auto;
		padding: 0 0 80px;
		margin: 0 auto;
	}
		.sitemap__contents {
			width: 100%;
			height: auto;
		}
			.sitemap__table {
				width: 100%;
				height: auto;
				background-color: #F8F8F8;
				border: solid 1px var(--color--lightgray);
			}
				.sitemap__table tr {
					width: 100%;
					height: auto;
				}
					.sitemap__table td {
						display: block;
						width: 100%;
						padding: 13px 0 18px 20px;
						border-bottom: solid 1px var(--color--lightgray);
						vertical-align: top;
					}
					.sitemap__table tr:last-of-type td:last-of-type {
						border-bottom: none;
					}
					.sitemap__table td.child {
						padding: 13px 0 5px 20px;
						border-bottom: none;
					}
						.page_link {
							padding-left: 29px;
							position: relative;
						}
							.page_link::before,
							.page_link::after {
								content: '';
								position: absolute;
							}
							.page_link::before {
								content: '';
								display: block;
								width: 14px;
								height: 1px;
								background-color: var(--color--black);
								position: absolute;
								top: 50%;
								left: 0;
								transform: translate(0%,-50%);
								transition: .3s;
							}
							.page_link::after {
								content: '';
								display: block;
								width: 6px;
								height: 6px;
								border-top: solid 1px var(--color--black);
								border-right: solid 1px var(--color--black);
								position: absolute;
								top: 50%;
								left: 8px;
								transform: rotate(45deg) translate(0%,-50%);
								transform-origin: center 0%;
								transition: .3s;
							}
						.under_page_list {
							width: 100%;
							height: auto;
							padding-left: 30px;
						}
							.under_page_item {
								width: 100%;
								height: auto;
								padding-left: 16px;
								margin-bottom: 3px;
								position: relative;
							}
							.under_page_item:last-of-type {
								margin-bottom: 0;
							}
								.page_link a {
									font-size: 1.125rem;
								}
								.under_page_item a {
									font-size: 0.875rem;
								}
								.page_link a,
								.under_page_item a {
									font-weight: 700;
								}
								.page_link a:hover,
								.under_page_item a:hover {
									text-decoration: underline;
								}
								.under_page_link_icon {
									width: 5px;
									height: auto;
									fill: var(--color--black);
									position: absolute;
									top: 10px;
									left: 0;
								}
								.external_link_icon {
									width: 10px;
									height: auto;
									fill: var(--color--black);
									position: absolute;
									top: 10px;
									left: -3px;
								}
}

/* SP ================================================== */
@media all and (max-width:599px){
#sitemap {
	width: 100%;
	height: auto;
}
	.sitemap__inner {
		width: 90%;
		max-width: 1086px;
		height: auto;
		padding: 0 0 80px;
		margin: 0 auto;
	}
		.sitemap__contents {
			width: 100%;
			height: auto;
		}
			.sitemap__table {
				width: 100%;
				height: auto;
				background-color: #F8F8F8;
				border: solid 1px var(--color--lightgray);
			}
				.sitemap__table tr {
					width: 100%;
					height: auto;
				}
					.sitemap__table td {
						display: block;
						width: 100%;
						padding: 13px 0 18px 20px;
						border-bottom: solid 1px var(--color--lightgray);
						vertical-align: top;
					}
					.sitemap__table tr:last-of-type td:last-of-type {
						border-bottom: none;
					}
					.sitemap__table td.child {
						padding: 13px 0 5px 20px;
						border-bottom: none;
					}
						.page_link {
							padding-left: 29px;
							position: relative;
						}
							.page_link::before,
							.page_link::after {
								content: '';
								position: absolute;
							}
							.page_link::before {
								content: '';
								display: block;
								width: 14px;
								height: 1px;
								background-color: var(--color--black);
								position: absolute;
								top: 50%;
								left: 0;
								transform: translate(0%,-50%);
								transition: .3s;
							}
							.page_link::after {
								content: '';
								display: block;
								width: 6px;
								height: 6px;
								border-top: solid 1px var(--color--black);
								border-right: solid 1px var(--color--black);
								position: absolute;
								top: 50%;
								left: 8px;
								transform: rotate(45deg) translate(0%,-50%);
								transform-origin: center 0%;
								transition: .3s;
							}
						.under_page_list {
							width: 100%;
							height: auto;
							padding-left: 30px;
						}
							.under_page_item {
								width: 100%;
								height: auto;
								padding-left: 16px;
								margin-bottom: 3px;
								position: relative;
							}
							.under_page_item:last-of-type {
								margin-bottom: 0;
							}
								.page_link a {
									font-size: 1.125rem;
								}
								.under_page_item a {
									font-size: 0.875rem;
								}
								.page_link a,
								.under_page_item a {
									font-weight: 700;
								}
								.page_link a:hover,
								.under_page_item a:hover {
									text-decoration: underline;
								}
								.under_page_link_icon {
									width: 5px;
									height: auto;
									fill: var(--color--black);
									position: absolute;
									top: 10px;
									left: 0;
								}
								.external_link_icon {
									width: 10px;
									height: auto;
									fill: var(--color--black);
									position: absolute;
									top: 10px;
									left: -3px;
								}
}