@charset "UTF-8";

@font-face {
	font-family: 'BIZ UDPGothic';
	font-weight: 400;
	src: url('/data/BIZUDPGothic-Regular.woff2') format('woff2'),
	url('/data/BIZUDPGothic-Regular.woff') format('woff');
}
@font-face {
	font-family: 'BIZ UDPGothic';
	font-weight: 700;
	src: url('/data/BIZUDPGothic-Bold.woff2') format('woff2'),
	url('/data/BIZUDPGothic-Bold.woff') format('woff');
}
@font-face {
	font-family: 'Reddit Sans';
	src: url('/data/RedditSans-VariableFont_wght.woff2') format('woff2'),
	url('/data/RedditSans-VariableFont_wght.woff') format('woff');
}
@font-face {
	font-family: 'Reddit Sans';
	font-style: italic;
	src: url('/data/RedditSans-Italic-VariableFont_wght.woff2') format('woff2'),
	url('/data/RedditSans-Italic-VariableFont_wght.woff') format('woff');
}

:root {
  --elastic-out: linear( 0, 0.2178 2.1%, 1.1144 8.49%, 1.2959 10.7%, 1.3463 11.81%, 1.3705 12.94%, 1.3726, 1.3643 14.48%, 1.3041 16.2%, 0.9987 21.81%, 0.859 24.01%, 0.7932 25.91%, 0.7714 27.84%, 0.7718 29.21%, 0.8104 30.71%, 0.9512 38.33%, 1.0467, 1.075 42.71%, 1.0566 45.7%, 1.0031 53.26%, 0.9569 57.54%, 0.9663 60.71%, 1.0122 68.14%, 1.0266 72.24%, 0.9911 86.66%, 1  );
}
@keyframes bounce {
	0% { transform: scale(.9)}
	100% {transform: scale(1)}
}


/* //////////////////////////////////////////////////////////////////////////////////////////////////// */

/* 色合い */

/* //////////////////////////////////////////////////////////////////////////////////////////////////// */
html:has(.cke_editable),
html:not(.cke_panel_container) body {
	--main-color: #00A0E9;
	--link-color: #008AE7;
	--visited-color: #60C;
	--accent-color: #FF9900;
	--bg-color: #FFF;
	--font-color: #333;
	--footer-color: #6AC04B;
	--border-color1: #AAA;
	--border-color2: #999;
	--border-color3: #DDD;
	--htitle: #EEE;
	--accessibility-bg: var(--link-color);
	--news-bg: var(--bg-color);
	--comment-bg1: #00A0E933;
	--comment-bg2: #FF990033;
	--sat-bg: #D8FBFF;
	--sun-bg: #FFE6E6;

	--white: #FFF;
	--black: #333;

	[data-bc="blue"] & {
		--main-color: #0067cd;
		--link-color: #FF0;
		--visited-color: #FC0;
		--accent-color: #FF9900;
		--bg-color: #00A0E9;
		--font-color: #FFF;
		--footer-color: var(--main-color);
		--border-color1: #9fceed;
		--border-color2: #74bbea;
		--htitle: #008AE7;
		--accessibility-bg: var(--main-color);
		--news-bg: var(--main-color);
		--sat-bg: #3873d2;
		--sun-bg: #cf5286;
	}

	[data-bc="black"] & {
		--main-color: #333;
		--link-color: #FF0;
		--visited-color: #FC0;
		--accent-color: #FF9900;
		--bg-color: #000;
		--font-color: #FFF;
		--footer-color: #000;
		--border-color1: #AAA;
		--border-color2: #999;
		--htitle: #333;
		--accessibility-bg: var(--main-color);
		--news-bg: var(--bg-color);
		--sat-bg: #003b5c;
		--sun-bg: #420000;
	}
}
a {
	color: var(--link-color);
	transition: .3s;

	main &:visited {
		color: var(--visited-color);
	}
}
a.btn:visited {
	color: var(--link-color);
}



/* //////////////////////////////////////////////////////////////////////////////////////////////////// */

/* リセット用CSS */

/* //////////////////////////////////////////////////////////////////////////////////////////////////// */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
a, b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,time, mark, audio, video,
*::before,
*::after {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
	box-sizing: border-box;
}
label input:focus + span {
	outline: auto;
}
th, td {
    vertical-align:middle;
}
iframe, img {
	vertical-align: bottom;
}
img {
	max-width: 100%;
	display: inline-block;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
	display:block;
}
nav ul {
    list-style:none;
}
ul[class],
ol[class] {
	padding: 0;
	list-style: none;
}
blockquote, q {
    quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;

	&[disabled] {
		opacity: .35;
		pointer-events: none;
	}
}
a:not([class]) {
	text-decoration-skip-ink: auto;
}
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}
hr {
    height:1px;
    margin: 1em 0;
    padding: 0;
    display:block;
    border-top:1px solid var(--border-color2);
    border:0;
}
input, select {
    vertical-align:middle;
}
input[type="date"],
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="time"],
input[type="url"],
input[type="button"],
input[type="submit"] {
	box-sizing: border-box;
}
input[type="submit"] {
	cursor: pointer;
}



/* //////////////////////////////////////////////////////////////////////////////////////////////////// */

/* 共通 */

/* //////////////////////////////////////////////////////////////////////////////////////////////////// */
html:has(#main_nav > .active) {
	overflow: hidden;
}
html[data-fs="large"] body {
	font-size: 1.25em;
}

html:has(body.cke_editable),
body {
	min-height: 100vh;
	color: var(--font-color);
    line-height:1;
	font-family: "Reddit Sans", "BIZ UDPGothic", sans-serif;
	font-size: 14px;
	font-weight: 400;
	background-color: var(--main-color);
	background-image: url(../img/bg.png);
	background-attachment: fixed;
	scroll-behavior: smooth;
	text-rendering: optimizeSpeed;

	&.cke_editable {
		width: 770px;
		margin: 20px auto;
		padding: 25px;
		line-height: 1.8;
		background-color: #FFF;
		background-image: none;
		border-radius: 5px;
		box-shadow: 0 0 0 10px rgba(0,0,0,.15);
	}
}
br {
	font-size: 0;
}
img {
	max-width: 100%;
	vertical-align: bottom;
}

/* IE・旧Edge用webフォントジャギ対策 */
_:-ms-lang(x),
p,a,span,strong,h2,h3,h4,h5,h6,li,dt,dd,th,td {
	transform: rotate(0.05deg);
}
_:-ms-lang(x), #usability .radio label input:focus + span::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	border: 2px dotted #000;
	border-radius: 16px;
	box-sizing: border-box;
}
/* Chromium Edge用webフォントジャギ対策 */
_:lang(x)::-ms-,
p,a,span,strong,h2,h3,h4,h5,h6,li,dt,dd,th,td {
	transform: rotate(0.05deg);
}

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="number"],
textarea,
.select-wrapper {
	height: 3.5em;
	padding: 0 1em;
	font-size: .9em;
	border: 1px solid rgba(0,0,0,.15);
	border-top-color: rgba(0,0,0,.3);
	border-left-color: rgba(0,0,0,.3);
	border-radius: 5px;
	box-shadow: 3px 3px 0 0 rgba(0,0,0,.05) inset;
}
input[type="text"]:not([size]),
input[type="search"]:not([size]),
input[type="url"]:not([size]),
input[type="email"]:not([size]),
textarea {
	width: 100%;
}
textarea {
	height: auto;
	min-height: 6em;
	padding: 1em;
	min-height: 6em;
}
.select-wrapper {
	padding: 0;
	position: relative;
	background-color: var(--bg-color);

	& select {
		height: 100%;
		padding: 0 2em 0 .65em;
		border: none;
		appearance: none;
		cursor: pointer;
	}
}
.select-wrapper::after {
	content: "";
	width: 0;
	height: 0;
	display: block;
	position: absolute;
	top: 50%;
	right: .3em;
	border: 5px solid transparent;
	border-top: 7px solid var(--font-color);
	border-bottom: 0;
	transform: translate(-50%, -40%);
	pointer-events: none;
}
.table-wrapper {
	max-width: 100%;
	overflow-x: auto;
}
label {
	margin-bottom: .2em;
	padding: .5em 0;
	display: inline-block;
}
a.btn {
	padding: 1em;
	display: inline-block;
	line-height: 1;
	text-decoration: none;
	border: 2px solid var(--link-color);
	border-radius: 7px;

	&[target="_blank"] {
		position: relative;

		&::after {
			content: "";
			width: 1.2em;
			height: 1.2em;
			display: block;
			position: absolute;
			top: calc(50% - .6em);
			right: 10px;
			background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%22128%22%20height%3D%22128%22%20viewBox%3D%220%200%201792%201792%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22%230066cc%22%3E%3Cpath%20d%3D%22M1408%20928v320q0%20119-84.5%20203.5t-203.5%2084.5h-832q-119%200-203.5-84.5t-84.5-203.5v-832q0-119%2084.5-203.5t203.5-84.5h704q14%200%2023%209t9%2023v64q0%2014-9%2023t-23%209h-704q-66%200-113%2047t-47%20113v832q0%2066%2047%20113t113%2047h832q66%200%20113-47t47-113v-320q0-14%209-23t23-9h64q14%200%2023%209t9%2023zm384-864v512q0%2026-19%2045t-45%2019-45-19l-176-176-652%20652q-10%2010-23%2010t-23-10l-114-114q-10-10-10-23t10-23l652-652-176-176q-19-19-19-45t19-45%2045-19h512q26%200%2045%2019t19%2045z%22%2F%3E%3C%2Fsvg%3E");
			background-size: cover;
			background-position: center center;
			filter: brightness(0) invert(1);
		}
	}
}
.btn input {
	width: 200px;
	margin: -0.5em -1em;
	padding: 1em 1em;
	font-size: 1em;
	background: none;
	border: none;
	cursor: pointer;
}
.center {
	text-align: center;
}
.flex {
	display: flex;
	flex-wrap: wrap;
}
.flex[data-col="2"] > * {
	width: 50%;
}



/* //////////////////////////////////////////////////////////// */
/* #header */
/* //////////////////////////////////////////////////////////// */
header {
	width: 100%;
	height: auto;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-shadow: 3px 0 3px 0 rgba(0,0,0,.15);

	& #logo {
		height: 50vh;
		padding-bottom: 13vh;
		flex-grow: 6;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		position: relative;
		overflow: hidden;
		background-color: #D1F3FF;
		border: 25px solid var(--bg-color);
		box-shadow: 0 -33px 0 0 #38C3FF inset;

		height: 25vh;
		padding-bottom: 0;
		box-shadow: none;

		body.disaster & {
			padding-top: 50px;
			padding-bottom:  0;

			& .disaster-banner {
				display: block;
				position: absolute;
				top: 0;
				left: 0;
				right: 0;
				line-height: 50px;
				color: #FFF;
				text-align: center;
				font-size: 1.3em;
				font-weight: 700;
				background-image: repeating-linear-gradient(315deg, #f00A, #f00A 10px, #F00 10px, #F00 20px);
				z-index: 7;
			}
		}
		
		.sunset & {
			background-color: #FFE7D1;
			box-shadow: 0 -33px 0 0 #FF9F38 inset;

			&::after {
				width: 94px;
				height: 40px;
				left: auto;
				right: 10%;
				bottom: 14vh;
				background-image: url(../img/logo_sunset.png);
			}
		}
		
		.midnight & {
			background-color: #D1DAFF;
			box-shadow: 0 -33px 0 0 #387DFF inset;
			box-shadow: 0 -33px 0 0 #5171aa inset;

			&::before {
				width: 100%;
				height: 80%;
				top: 15px;
				bottom: auto;
				background-image: linear-gradient(transparent 30%, #D1DAFF), url(../img/logo_midnight.png);
				background-size: auto;
				opacity: 1;
			}
			&::after {
				width: 7vh;
				height: 7vh;
				top: 15%;
				left: 75%;
				border-radius: 100%;
				background-color: #D1DAFF;
				box-shadow: -1.6vh -1.6vh 0 0 #F8F6D9 inset;
			}
		}

		& h1 {
			width: 65%;
			position: relative;
			z-index: 4;

			& .ss-preview-part {
				height: 100%;
			}
		}

		& .disaster-banner {
			display: none;
		}

		&::before,
		&::after {
			content: "";
			display: block;
			position: absolute;
			background-size: contain;
		}
		&::before {
			width: 341px;
			height: 304px;
			bottom: 7vh;
			left: 50%;
			background-image: url(../img/logo_cloud.png);
			opacity: .5;
			z-index: 1;
			transform: translate(-50%, 0);
		}
		&::after {
			width: 269px;
			height: 60px;
			bottom: 16vh;
			left: 10%;
			background-image: url(../img/logo_bird.png);
			z-index: 2;
		}

		& img[alt="庁舎"] {
			width: 200%;
			max-width: none;
			position: absolute;
			bottom: 15px;
			left: 0;
			z-index: 3;

			.sunset & {
				filter: hue-rotate(-177deg);
			}
			.midnight & {
				filter: brightness(.8);
			}
		}

		&::before,
		&::after,
		& img[alt="庁舎"] {
			display: none;
		}

		@media screen and (max-width: 1099px) {
			.sub & {
				height: 70px;
				padding: 0 0 0 20px;
				box-shadow: none;
				flex-direction: row;
				justify-content: flex-start;
				border: none;
				background-color: var(--white);

				& h1 {
					width: auto;
					height: 40px;

					& img {
						max-height: 100%;
					}
				}

				& > img {
					display: none;
				}
			}
		}
	}

	& search {
		padding: 0 25px 25px;
		display: flex;
		flex-direction: column;
		flex-grow: 0;
		justify-content: center;
		background-color: var(--bg-color);

		@media screen and (max-width: 1099px) {
			.sub & {
				display: none;
			}
		}

		& form {
			margin-bottom: 15px;
			position: relative;

			& #search-m-text {
				width: 100%;
				height: 42px;
				padding-right: 45px;
				box-shadow: 0 1px 2px 0 rgba(0,0,0,.2), 0 2px 4px 0 rgba(0,0,0,.16), 0 3px 8px 0 rgba(0,0,0,.12);
				border: none;
				border-radius: 100vh;
			}

			& #search-m-btn {
				width: 42px;
				height: 42px;
				overflow: hidden;
				position: absolute;
				top: 50%;
				right: 5px;
				text-indent: 200%;
				background: none;
				background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIHZpZXdCb3g9IjAgMCAyMiAyMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI5LjE2NjY3IiBjeT0iOS4xNjY2NyIgcj0iOC4xNjY2NyIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIi8+PHBhdGggZD0iTTE0LjY2NjcgMTYuNUwxNi41IDE0LjY2NjdMMjIgMjAuMTY2N0wyMC4xNjY3IDIyTDE0LjY2NjcgMTYuNVoiIGZpbGw9ImJsYWNrIi8+PC9zdmc+");
				background-repeat: no-repeat;
				background-position: center;
				border: none;
				transform: translate(0, -50%);
			}
		}

		& #keyword a {
			margin: 10px 5px 0 0;
			padding: .5em;
			display: inline-block;
			color: var(--link-color);
			line-height: 1;
			text-decoration: none;
			border: 1px solid var(--link-color);
			border-radius: 4px;
		}
	}

	& nav {
		display: flex;
		justify-content: stretch;
		align-items: stretch;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		background-color: var(--bg-color);
		z-index: 9;

		& #main_nav {
			width: 100%;
			display: flex;
			flex-direction: row;
			box-shadow: 0 -1px 4px 0 rgba(0,0,0,.45);

			& > li {
				width: 33.333%;
				position: relative;

				&[class] > div::before {
					content: "";
					width: 26px;
					margin: 0 0 5px;
					aspect-ratio: 1 / 1;
					display: block;
					background-position: center;
					background-repeat: no-repeat;
					filter: brightness(0) invert(1);
				}

				&:not(:last-child)::after {
					content: "";
					width: 1px;
					height: 80%;
					position: absolute;
					top: 10%;
					right: 0;
					background-color: var(--white);
					opacity: .35;
				}

				& > div {
					height: 100%;
					padding: 10px 0;
					display: flex;
					flex-direction: column;
					justify-items: center;
					align-items: center;
					position: relative;
					color: var(--white);
					background-color: var(--main-color);
					border-top: 1px solid rgba(255,255,255,.4);

					& > a,
					& > div > a {
						color: var(--white);
						text-decoration: none;

						&::after {
							content: "";
							display: block;
							position: absolute;
							top: 0;
							bottom: 0;
							left: 0;
							right: 0;
						}
					}

					.active & {
						color: var(--font-color);
						background-color: var(--bg-color);

						[data-bc="white"] &::before {
							filter: brightness(1) invert(0);
						}

						& > div > a {
							color: var(--font-color);
						}
					}

					& strong {
						display: inline-block;
						font-size: 13px;
						font-weight: 400;
					}
				}
			}
			& .purpose > div::before {
				background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjYiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAyNiAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMCAxOFYxNS4yMzA4SDEzVjE4SDBaTTAgMTEuMDc2OVY4LjMwNzY5SDYuNVYxMS4wNzY5SDBaTTAgNC4xNTM4NVYxLjM4NDYySDYuNVY0LjE1Mzg1SDBaTTI0LjE4IDE4TDE5LjE3NSAxMi42NjkyQzE4LjY1NSAxMy4wNjE1IDE4LjA4NjIgMTMuMzU1OCAxNy40Njg4IDEzLjU1MTlDMTYuODUxMiAxMy43NDgxIDE2LjIyODMgMTMuODQ2MiAxNS42IDEzLjg0NjJDMTMuODAxNyAxMy44NDYyIDEyLjI2ODcgMTMuMTcxMiAxMS4wMDEyIDExLjgyMTJDOS43MzM3NSAxMC40NzEyIDkuMSA4LjgzODQ2IDkuMSA2LjkyMzA4QzkuMSA1LjAwNzY5IDkuNzMzNzUgMy4zNzUgMTEuMDAxMiAyLjAyNUMxMi4yNjg3IDAuNjc1IDEzLjgwMTcgMCAxNS42IDBDMTcuMzk4MyAwIDE4LjkzMTIgMC42NzUgMjAuMTk4NyAyLjAyNUMyMS40NjYyIDMuMzc1IDIyLjEgNS4wMDc2OSAyMi4xIDYuOTIzMDhDMjIuMSA3LjU5MjMxIDIyLjAwNzkgOC4yNTU3NyAyMS44MjM3IDguOTEzNDZDMjEuNjM5NiA5LjU3MTE1IDIxLjM2MzMgMTAuMTc2OSAyMC45OTUgMTAuNzMwOEwyNiAxNi4wNjE1TDI0LjE4IDE4Wk0xNS42IDExLjA3NjlDMTYuNjgzMyAxMS4wNzY5IDE3LjYwNDIgMTAuNjczMSAxOC4zNjI1IDkuODY1MzlDMTkuMTIwOCA5LjA1NzY5IDE5LjUgOC4wNzY5MiAxOS41IDYuOTIzMDhDMTkuNSA1Ljc2OTIzIDE5LjEyMDggNC43ODg0NiAxOC4zNjI1IDMuOTgwNzdDMTcuNjA0MiAzLjE3MzA4IDE2LjY4MzMgMi43NjkyMyAxNS42IDIuNzY5MjNDMTQuNTE2NyAyLjc2OTIzIDEzLjU5NTggMy4xNzMwOCAxMi44Mzc1IDMuOTgwNzdDMTIuMDc5MiA0Ljc4ODQ2IDExLjcgNS43NjkyMyAxMS43IDYuOTIzMDhDMTEuNyA4LjA3NjkyIDEyLjA3OTIgOS4wNTc2OSAxMi44Mzc1IDkuODY1MzlDMTMuNTk1OCAxMC42NzMxIDE0LjUxNjcgMTEuMDc2OSAxNS42IDExLjA3NjlaIiBmaWxsPSIjMUYxRjFGIi8+PC9zdmc+");;
			}
			& .category > div::before {
				background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMi41IDIwQzEuODEyNSAyMCAxLjIyMzk2IDE5Ljc1NTIgMC43MzQzNzUgMTkuMjY1NkMwLjI0NDc5MiAxOC43NzYgMCAxOC4xODc1IDAgMTcuNUMwIDE2LjgxMjUgMC4yNDQ3OTIgMTYuMjI0IDAuNzM0Mzc1IDE1LjczNDRDMS4yMjM5NiAxNS4yNDQ4IDEuODEyNSAxNSAyLjUgMTVDMy4xODc1IDE1IDMuNzc2MDQgMTUuMjQ0OCA0LjI2NTYyIDE1LjczNDRDNC43NTUyMSAxNi4yMjQgNSAxNi44MTI1IDUgMTcuNUM1IDE4LjE4NzUgNC43NTUyMSAxOC43NzYgNC4yNjU2MiAxOS4yNjU2QzMuNzc2MDQgMTkuNzU1MiAzLjE4NzUgMjAgMi41IDIwWk0xMCAyMEM5LjMxMjUgMjAgOC43MjM5NiAxOS43NTUyIDguMjM0MzggMTkuMjY1NkM3Ljc0NDc5IDE4Ljc3NiA3LjUgMTguMTg3NSA3LjUgMTcuNUM3LjUgMTYuODEyNSA3Ljc0NDc5IDE2LjIyNCA4LjIzNDM4IDE1LjczNDRDOC43MjM5NiAxNS4yNDQ4IDkuMzEyNSAxNSAxMCAxNUMxMC42ODc1IDE1IDExLjI3NiAxNS4yNDQ4IDExLjc2NTYgMTUuNzM0NEMxMi4yNTUyIDE2LjIyNCAxMi41IDE2LjgxMjUgMTIuNSAxNy41QzEyLjUgMTguMTg3NSAxMi4yNTUyIDE4Ljc3NiAxMS43NjU2IDE5LjI2NTZDMTEuMjc2IDE5Ljc1NTIgMTAuNjg3NSAyMCAxMCAyMFpNMTcuNSAyMEMxNi44MTI1IDIwIDE2LjIyNCAxOS43NTUyIDE1LjczNDQgMTkuMjY1NkMxNS4yNDQ4IDE4Ljc3NiAxNSAxOC4xODc1IDE1IDE3LjVDMTUgMTYuODEyNSAxNS4yNDQ4IDE2LjIyNCAxNS43MzQ0IDE1LjczNDRDMTYuMjI0IDE1LjI0NDggMTYuODEyNSAxNSAxNy41IDE1QzE4LjE4NzUgMTUgMTguNzc2IDE1LjI0NDggMTkuMjY1NiAxNS43MzQ0QzE5Ljc1NTIgMTYuMjI0IDIwIDE2LjgxMjUgMjAgMTcuNUMyMCAxOC4xODc1IDE5Ljc1NTIgMTguNzc2IDE5LjI2NTYgMTkuMjY1NkMxOC43NzYgMTkuNzU1MiAxOC4xODc1IDIwIDE3LjUgMjBaTTIuNSAxMi41QzEuODEyNSAxMi41IDEuMjIzOTYgMTIuMjU1MiAwLjczNDM3NSAxMS43NjU2QzAuMjQ0NzkyIDExLjI3NiAwIDEwLjY4NzUgMCAxMEMwIDkuMzEyNSAwLjI0NDc5MiA4LjcyMzk2IDAuNzM0Mzc1IDguMjM0MzhDMS4yMjM5NiA3Ljc0NDc5IDEuODEyNSA3LjUgMi41IDcuNUMzLjE4NzUgNy41IDMuNzc2MDQgNy43NDQ3OSA0LjI2NTYyIDguMjM0MzhDNC43NTUyMSA4LjcyMzk2IDUgOS4zMTI1IDUgMTBDNSAxMC42ODc1IDQuNzU1MjEgMTEuMjc2IDQuMjY1NjIgMTEuNzY1NkMzLjc3NjA0IDEyLjI1NTIgMy4xODc1IDEyLjUgMi41IDEyLjVaTTEwIDEyLjVDOS4zMTI1IDEyLjUgOC43MjM5NiAxMi4yNTUyIDguMjM0MzggMTEuNzY1NkM3Ljc0NDc5IDExLjI3NiA3LjUgMTAuNjg3NSA3LjUgMTBDNy41IDkuMzEyNSA3Ljc0NDc5IDguNzIzOTYgOC4yMzQzOCA4LjIzNDM4QzguNzIzOTYgNy43NDQ3OSA5LjMxMjUgNy41IDEwIDcuNUMxMC42ODc1IDcuNSAxMS4yNzYgNy43NDQ3OSAxMS43NjU2IDguMjM0MzhDMTIuMjU1MiA4LjcyMzk2IDEyLjUgOS4zMTI1IDEyLjUgMTBDMTIuNSAxMC42ODc1IDEyLjI1NTIgMTEuMjc2IDExLjc2NTYgMTEuNzY1NkMxMS4yNzYgMTIuMjU1MiAxMC42ODc1IDEyLjUgMTAgMTIuNVpNMTcuNSAxMi41QzE2LjgxMjUgMTIuNSAxNi4yMjQgMTIuMjU1MiAxNS43MzQ0IDExLjc2NTZDMTUuMjQ0OCAxMS4yNzYgMTUgMTAuNjg3NSAxNSAxMEMxNSA5LjMxMjUgMTUuMjQ0OCA4LjcyMzk2IDE1LjczNDQgOC4yMzQzOEMxNi4yMjQgNy43NDQ3OSAxNi44MTI1IDcuNSAxNy41IDcuNUMxOC4xODc1IDcuNSAxOC43NzYgNy43NDQ3OSAxOS4yNjU2IDguMjM0MzhDMTkuNzU1MiA4LjcyMzk2IDIwIDkuMzEyNSAyMCAxMEMyMCAxMC42ODc1IDE5Ljc1NTIgMTEuMjc2IDE5LjI2NTYgMTEuNzY1NkMxOC43NzYgMTIuMjU1MiAxOC4xODc1IDEyLjUgMTcuNSAxMi41Wk0yLjUgNUMxLjgxMjUgNSAxLjIyMzk2IDQuNzU1MjEgMC43MzQzNzUgNC4yNjU2MkMwLjI0NDc5MiAzLjc3NjA0IDAgMy4xODc1IDAgMi41QzAgMS44MTI1IDAuMjQ0NzkyIDEuMjIzOTYgMC43MzQzNzUgMC43MzQzNzVDMS4yMjM5NiAwLjI0NDc5MiAxLjgxMjUgMCAyLjUgMEMzLjE4NzUgMCAzLjc3NjA0IDAuMjQ0NzkyIDQuMjY1NjIgMC43MzQzNzVDNC43NTUyMSAxLjIyMzk2IDUgMS44MTI1IDUgMi41QzUgMy4xODc1IDQuNzU1MjEgMy43NzYwNCA0LjI2NTYyIDQuMjY1NjJDMy43NzYwNCA0Ljc1NTIxIDMuMTg3NSA1IDIuNSA1Wk0xMCA1QzkuMzEyNSA1IDguNzIzOTYgNC43NTUyMSA4LjIzNDM4IDQuMjY1NjJDNy43NDQ3OSAzLjc3NjA0IDcuNSAzLjE4NzUgNy41IDIuNUM3LjUgMS44MTI1IDcuNzQ0NzkgMS4yMjM5NiA4LjIzNDM4IDAuNzM0Mzc1QzguNzIzOTYgMC4yNDQ3OTIgOS4zMTI1IDAgMTAgMEMxMC42ODc1IDAgMTEuMjc2IDAuMjQ0NzkyIDExLjc2NTYgMC43MzQzNzVDMTIuMjU1MiAxLjIyMzk2IDEyLjUgMS44MTI1IDEyLjUgMi41QzEyLjUgMy4xODc1IDEyLjI1NTIgMy43NzYwNCAxMS43NjU2IDQuMjY1NjJDMTEuMjc2IDQuNzU1MjEgMTAuNjg3NSA1IDEwIDVaTTE3LjUgNUMxNi44MTI1IDUgMTYuMjI0IDQuNzU1MjEgMTUuNzM0NCA0LjI2NTYyQzE1LjI0NDggMy43NzYwNCAxNSAzLjE4NzUgMTUgMi41QzE1IDEuODEyNSAxNS4yNDQ4IDEuMjIzOTYgMTUuNzM0NCAwLjczNDM3NUMxNi4yMjQgMC4yNDQ3OTIgMTYuODEyNSAwIDE3LjUgMEMxOC4xODc1IDAgMTguNzc2IDAuMjQ0NzkyIDE5LjI2NTYgMC43MzQzNzVDMTkuNzU1MiAxLjIyMzk2IDIwIDEuODEyNSAyMCAyLjVDMjAgMy4xODc1IDE5Ljc1NTIgMy43NzYwNCAxOS4yNjU2IDQuMjY1NjJDMTguNzc2IDQuNzU1MjEgMTguMTg3NSA1IDE3LjUgNVoiIGZpbGw9IiMxRjFGMUYiLz48L3N2Zz4=");
			}
			& .organization > div::before {
				background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTYgMEMxNy4xMDQ2IDAgMTggMC44OTU0MzEgMTggMlY2TDE3Ljk4OTMgNi4yMDQxQzE3Ljg5MzggNy4xNDU2NSAxNy4xNDU3IDcuODkzOCAxNi4yMDQxIDcuOTg5MjZMMTYgOEgxM1YxMUgyMS4zOTk0VjE2SDIyTDIyLjIwNDEgMTYuMDEwN0MyMy4yMTI2IDE2LjExMzEgMjMuOTk5OSAxNi45NjQ1IDI0IDE4VjIyTDIzLjk4OTMgMjIuMjA0MUMyMy44OTM4IDIzLjE0NTYgMjMuMTQ1NSAyMy44OTM3IDIyLjIwNDEgMjMuOTg5M0wyMiAyNEgxOC43OTk4TDE4LjU5NTcgMjMuOTg5M0MxNy42NTQzIDIzLjg5MzcgMTYuOTA2IDIzLjE0NTYgMTYuODEwNSAyMi4yMDQxTDE2Ljc5OTggMjJWMThDMTYuNzk5OSAxNi44OTU1IDE3LjY5NTQgMTYuMDAwMSAxOC43OTk4IDE2SDE5LjM5OTRWMTNIMTNWMTZIMTMuNTk5NkwxMy44MDM3IDE2LjAxMDdDMTQuODEyMiAxNi4xMTMxIDE1LjU5OTUgMTYuOTY0NSAxNS41OTk2IDE4VjIyTDE1LjU4ODkgMjIuMjA0MUMxNS40OTM0IDIzLjE0NTYgMTQuNzQ1MiAyMy44OTM3IDEzLjgwMzcgMjMuOTg5M0wxMy41OTk2IDI0SDEwLjQwMDRMMTAuMTk2MyAyMy45ODkzQzkuMjU0NzYgMjMuODkzOCA4LjUwNjU5IDIzLjE0NTcgOC40MTExMyAyMi4yMDQxTDguNDAwMzkgMjJWMThDOC40MDA0NiAxNi44OTU1IDkuMjk1ODkgMTYgMTAuNDAwNCAxNkgxMVYxM0g0LjU5OTYxVjE2SDUuMjAwMkw1LjQwNDMgMTYuMDEwN0M2LjQxMjc1IDE2LjExMzIgNy4yMDAxMyAxNi45NjQ1IDcuMjAwMiAxOFYyMkw3LjE4OTQ1IDIyLjIwNDFDNy4wOTQwMiAyMy4xNDU1IDYuMzQ1NjcgMjMuODkzNyA1LjQwNDMgMjMuOTg5M0w1LjIwMDIgMjRIMkwxLjc5NTkgMjMuOTg5M0MwLjg1NDM3MiAyMy44OTM4IDAuMTA2MTk3IDIzLjE0NTcgMC4wMTA3NDIyIDIyLjIwNDFMMCAyMlYxOEM2LjYwOTU4ZS0wNSAxNi44OTU1IDAuODk1NTAxIDE2IDIgMTZIMi41OTk2MVYxMUgxMVY4SDhMNy43OTU5IDcuOTg5MjZDNi44NTQzNSA3Ljg5MzggNi4xMDYyIDcuMTQ1NjUgNi4wMTA3NCA2LjIwNDFMNiA2VjJDNiAwLjg5NTQzMSA2Ljg5NTQzIDAgOCAwSDE2Wk0yIDIySDUuMjAwMlYxOEgyVjIyWk0xMC40MDA0IDIySDEzLjU5OTZWMThIMTAuNDAwNFYyMlpNMTguNzk5OCAyMkgyMlYxOEgxOC43OTk4VjIyWk04IDZIMTZWMkg4VjZaIiBmaWxsPSIjMzMzMzMzIi8+PC9zdmc+");
			}
			& .local > div::before {
				background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMCAyNFYwSDEyVjUuMzMzMzNIMjRWMjRIMFpNMi40IDIxLjMzMzNIOS42VjE4LjY2NjdIMi40VjIxLjMzMzNaTTIuNCAxNkg5LjZWMTMuMzMzM0gyLjRWMTZaTTIuNCAxMC42NjY3SDkuNlY4SDIuNFYxMC42NjY3Wk0yLjQgNS4zMzMzM0g5LjZWMi42NjY2N0gyLjRWNS4zMzMzM1pNMTIgMjEuMzMzM0gyMS42VjhIMTJWMjEuMzMzM1pNMTQuNCAxMy4zMzMzVjEwLjY2NjdIMTkuMlYxMy4zMzMzSDE0LjRaTTE0LjQgMTguNjY2N1YxNkgxOS4yVjE4LjY2NjdIMTQuNFoiIGZpbGw9IiMxRjFGMUYiLz48L3N2Zz4=");
			}
			& .event > div::before {
				background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjIiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyMiAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMi41Nzg3NSAyNEMxLjg2ODA3IDI0IDEuMjYwNjYgMjMuNzUxNCAwLjc1NjUxMiAyMy4yNTQxQzAuMjUyMTcxIDIyLjc1NyAwIDIyLjE1OCAwIDIxLjQ1NzNWNC40NzYxOEMwIDMuNzcyNTYgMC4yNTIxNzEgMy4xNzExNCAwLjc1NjUxMiAyLjY3MTkyQzEuMjYwNjYgMi4xNzI1MiAxLjg2ODA3IDEuOTIyODIgMi41Nzg3NSAxLjkyMjgySDQuMDcxMDFWMEg2LjQzMjk5VjEuOTIyODJIMTUuNTU2MlYwSDE3LjkxODJWMS45MjI4MkgxOS40MTA0QzIwLjEyNDIgMS45MjI4MiAyMC43MzQzIDIuMTcyNTIgMjEuMjQwNiAyLjY3MTkyQzIxLjc0NjkgMy4xNzExNCAyMiAzLjc3MjU2IDIyIDQuNDc2MThWMjEuNDU3M0MyMiAyMi4xNTggMjEuNzQ2OSAyMi43NTcgMjEuMjQwNiAyMy4yNTQxQzIwLjczNDMgMjMuNzUxNCAyMC4xMjQyIDI0IDE5LjQxMDQgMjRIMi41Nzg3NVpNMi41Nzg3NSAyMS40NTczSDE5LjQxMDRWOS41MDUzM0gyLjU3ODc1VjIxLjQ1NzNaTTIuNTc4NzUgNy41ODI1MUgxOS40MTA0VjQuNDc2MThIMi41Nzg3NVY3LjU4MjUxWk0xMC45OTU4IDE0LjQyMTdDMTAuNjMzMiAxNC40MjE3IDEwLjMyOSAxNC4zMDA4IDEwLjA4MyAxNC4wNTkxQzkuODM3MSAxMy44MTcyIDkuNzE0MTMgMTMuNTE3NiA5LjcxNDEzIDEzLjE2MDNDOS43MTQxMyAxMi44MDI4IDkuODM2NzEgMTIuNTAyOCAxMC4wODE5IDEyLjI2MDNDMTAuMzI3MiAxMi4wMTc4IDEwLjYzMTEgMTEuODk2NiAxMC45OTM0IDExLjg5NjZDMTEuMzU2IDExLjg5NjYgMTEuNjYwMiAxMi4wMTc1IDExLjkwNjEgMTIuMjU5MkMxMi4xNTIxIDEyLjUwMTEgMTIuMjc1IDEyLjgwMDcgMTIuMjc1IDEzLjE1OEMxMi4yNzUgMTMuNTE1NSAxMi4xNTI1IDEzLjgxNTUgMTEuOTA3MyAxNC4wNThDMTEuNjYyIDE0LjMwMDQgMTEuMzU4MSAxNC40MjE3IDEwLjk5NTggMTQuNDIxN1pNNi4zMTUwOSAxNC40MjE3QzUuOTUyNTQgMTQuNDIxNyA1LjY0ODI5IDE0LjMwMDggNS40MDIzNiAxNC4wNTkxQzUuMTU2NDMgMTMuODE3MiA1LjAzMzQ3IDEzLjUxNzYgNS4wMzM0NyAxMy4xNjAzQzUuMDMzNDcgMTIuODAyOCA1LjE1NjA0IDEyLjUwMjggNS40MDExOSAxMi4yNjAzQzUuNjQ2NTQgMTIuMDE3OCA1Ljk1MDM5IDExLjg5NjYgNi4zMTI3NSAxMS44OTY2QzYuNjc1MzEgMTEuODk2NiA2Ljk3OTU1IDEyLjAxNzUgNy4yMjU0OCAxMi4yNTkyQzcuNDcxNDEgMTIuNTAxMSA3LjU5NDM4IDEyLjgwMDcgNy41OTQzOCAxMy4xNThDNy41OTQzOCAxMy41MTU1IDcuNDcxOCAxMy44MTU1IDcuMjI2NjUgMTQuMDU4QzYuOTgxMzEgMTQuMzAwNCA2LjY3NzQ2IDE0LjQyMTcgNi4zMTUwOSAxNC40MjE3Wk0xNS42NzY0IDE0LjQyMTdDMTUuMzI5NSAxNC40MjE3IDE1LjAyOTEgMTQuMzAwOCAxNC43NzU0IDE0LjA1OTFDMTQuNTIxNyAxMy44MTcyIDE0LjM5NDggMTMuNTE3NiAxNC4zOTQ4IDEzLjE2MDNDMTQuMzk0OCAxMi44MDI4IDE0LjUyMTMgMTIuNTAyOCAxNC43NzQyIDEyLjI2MDNDMTUuMDI3MiAxMi4wMTc4IDE1LjMyOTkgMTEuODk2NiAxNS42ODIzIDExLjg5NjZDMTYuMDM0OSAxMS44OTY2IDE2LjMzNTIgMTIuMDE3NSAxNi41ODMzIDEyLjI1OTJDMTYuODMxNiAxMi41MDExIDE2Ljk1NTcgMTIuODAwNyAxNi45NTU3IDEzLjE1OEMxNi45NTU3IDEzLjUxNTUgMTYuODMzMSAxMy44MTU1IDE2LjU4OCAxNC4wNThDMTYuMzQyNiAxNC4zMDA0IDE2LjAzODggMTQuNDIxNyAxNS42NzY0IDE0LjQyMTdaTTEwLjk5NTggMTkuMDM2OUMxMC42MzMyIDE5LjAzNjkgMTAuMzI5IDE4LjkxMjIgMTAuMDgzIDE4LjY2MjhDOS44MzcxIDE4LjQxMzQgOS43MTQxMyAxOC4xMTQ5IDkuNzE0MTMgMTcuNzY3NEM5LjcxNDEzIDE3LjQxOTggOS44MzY3MSAxNy4xMjM2IDEwLjA4MTkgMTYuODc5QzEwLjMyNzIgMTYuNjM0MiAxMC42MzExIDE2LjUxMTggMTAuOTkzNCAxNi41MTE4QzExLjM1NiAxNi41MTE4IDExLjY2MDIgMTYuNjMyNyAxMS45MDYxIDE2Ljg3NDRDMTIuMTUyMSAxNy4xMTYzIDEyLjI3NSAxNy40MTU5IDEyLjI3NSAxNy43NzMyQzEyLjI3NSAxOC4xMTUzIDEyLjE1MjUgMTguNDExNSAxMS45MDczIDE4LjY2MTZDMTEuNjYyIDE4LjkxMTggMTEuMzU4MSAxOS4wMzY5IDEwLjk5NTggMTkuMDM2OVpNNi4zMTUwOSAxOS4wMzY5QzUuOTUyNTQgMTkuMDM2OSA1LjY0ODI5IDE4LjkxMjIgNS40MDIzNiAxOC42NjI4QzUuMTU2NDMgMTguNDEzNCA1LjAzMzQ3IDE4LjExNDkgNS4wMzM0NyAxNy43Njc0QzUuMDMzNDcgMTcuNDE5OCA1LjE1NjA0IDE3LjEyMzYgNS40MDExOSAxNi44NzlDNS42NDY1NCAxNi42MzQyIDUuOTUwMzkgMTYuNTExOCA2LjMxMjc1IDE2LjUxMThDNi42NzUzMSAxNi41MTE4IDYuOTc5NTUgMTYuNjMyNyA3LjIyNTQ4IDE2Ljg3NDRDNy40NzE0MSAxNy4xMTYzIDcuNTk0MzggMTcuNDE1OSA3LjU5NDM4IDE3Ljc3MzJDNy41OTQzOCAxOC4xMTUzIDcuNDcxOCAxOC40MTE1IDcuMjI2NjUgMTguNjYxNkM2Ljk4MTMxIDE4LjkxMTggNi42Nzc0NiAxOS4wMzY5IDYuMzE1MDkgMTkuMDM2OVpNMTUuNjc2NCAxOS4wMzY5QzE1LjMyOTUgMTkuMDM2OSAxNS4wMjkxIDE4LjkxMjIgMTQuNzc1NCAxOC42NjI4QzE0LjUyMTcgMTguNDEzNCAxNC4zOTQ4IDE4LjExNDkgMTQuMzk0OCAxNy43Njc0QzE0LjM5NDggMTcuNDE5OCAxNC41MjEzIDE3LjEyMzYgMTQuNzc0MiAxNi44NzlDMTUuMDI3MiAxNi42MzQyIDE1LjMyOTkgMTYuNTExOCAxNS42ODIzIDE2LjUxMThDMTYuMDM0OSAxNi41MTE4IDE2LjMzNTIgMTYuNjMyNyAxNi41ODMzIDE2Ljg3NDRDMTYuODMxNiAxNy4xMTYzIDE2Ljk1NTcgMTcuNDE1OSAxNi45NTU3IDE3Ljc3MzJDMTYuOTU1NyAxOC4xMTUzIDE2LjgzMzEgMTguNDExNSAxNi41ODggMTguNjYxNkMxNi4zNDI2IDE4LjkxMTggMTYuMDM4OCAxOS4wMzY5IDE1LjY3NjQgMTkuMDM2OVoiIGZpbGw9IiMxRjFGMUYiLz48L3N2Zz4=");
			}
		}

		& li.active .slide_nav {
			top: 0;
			opacity: 1;
			pointer-events: all;
			cursor: default;
		}

		& .slide_nav {
			width: 100%;
			height: calc(100vh - 64px);
			padding: 25px 0 0 35px;
			position: fixed;
			top: 100%;
			left: 0;
			overflow: auto;
			color: var(--font-color);
			background-color: var(--bg-color);
			pointer-events: none;
			transition: .2s;
			z-index: -1;

			& > li {
				width: 100%;
				padding: 0 35px 0 0;

				& div {
					margin: 0 0 10px -35px;
					padding: 10px 0 10px 50px;
					position: relative;
					font-size: 1.29em;
					font-weight: 700;
					line-height: 1;
					background-color: var(--htitle);

					& a::after {
						content: "";
						width: .6em;
						height: .6em;
						margin: -.1em 0 .1em .3em;
						display: inline-block;
						vertical-align: middle;
						border-top: 1px solid var(--link-color);
						border-right: 1px solid var(--link-color);
						transform: rotate(45deg);
					}

					.category &::before {
						content: "";
						width: calc(1.13em + 10px);
						height: calc(1.13em + 10px);
						position: absolute;
						top: 4px;
						left: 10px;
						display: block;


						mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNDBweCIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiIHdpZHRoPSI0MHB4IiBmaWxsPSIjRkZGRkZGIj48cGF0aCBkPSJNNDgwLTQwcS0xODYgMC0zMTMtNjguNVQ0MC0yNzYuNjdxMC03NS42NiA3MC4zMy0xMzIuMTYgNzAuMzQtNTYuNSAxODkuNjctNzYuNVYtNDE4cS04OC4zMyAxMy42Ny0xNDAuODMgNTIuMzMtNTIuNSAzOC42Ny01Mi41IDg5IDAgNjcuMzQgMTEyIDExOC42N1Q0ODAtMTA2LjY3cTE0OS4zMyAwIDI2MS4zMy01MS4zMyAxMTItNTEuMzMgMTEyLTExOC42NyAwLTUxLTUyLjgzLTg5LjMzVDY2MC00MTh2LTY3LjMzUTc3OC42Ny00NjYgODQ5LjMzLTQwOS4xNyA5MjAtMzUyLjMzIDkyMC0yNzYuNjdxMCAxMDAuMzQtMTI3IDE2OC41UTY2Ni00MCA0ODAtNDBaTTM2Ni42Ny0yMDIuNjdWLTY1MkgxNjB2LTY2LjY3aDY0MFYtNjUySDU5My4zM3Y0NDkuMzNoLTY2LjY2Vi00MDZoLTkzLjM0djIwMy4zM2gtNjYuNjZaTTQ4MC4xNC03NzJxLTMwLjQ3IDAtNTIuMzEtMjEuN1E0MDYtODE1LjQgNDA2LTg0NS44NnEwLTMwLjQ3IDIxLjctNTIuMzFRNDQ5LjQtOTIwIDQ3OS44Ni05MjBxMzAuNDcgMCA1Mi4zMSAyMS43UTU1NC04NzYuNiA1NTQtODQ2LjE0cTAgMzAuNDctMjEuNyA1Mi4zMVE1MTAuNi03NzIgNDgwLjE0LTc3MloiLz48L3N2Zz4=");
						mask-size: contain;
						mask-repeat: no-repeat;
						mask-position: center;
						background-color: var(--accent-color);
					}

					html:not([data-bc="white"]) .category &::before {
						background-color: var(--link-color);
					}
					.category li:nth-of-type(2) &:before {
						mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNDBweCIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiIHdpZHRoPSI0MHB4IiBmaWxsPSIjRkZGRkZGIj48cGF0aCBkPSJNMTY4LjY3LTQ5NnEtMjAgMC0zNC4zNC0xNC4zM1ExMjAtNTI0LjY3IDEyMC01NDQuNjdxMC0yMCAxNC4zMy0zNC4zMyAxNC4zNC0xNC4zMyAzNC4zNC0xNC4zMyAyMCAwIDM0LjMzIDE0LjMzIDE0LjMzIDE0LjMzIDE0LjMzIDM0LjMzVDIwMy01MTAuMzNRMTg4LjY3LTQ5NiAxNjguNjctNDk2Wk0xMjAuMjEtODB2LTE5MC42N0g4MFYtNDM0cTAtMTMuNjcgMTAuMi0yMi41dDI1LjI4LTguODNoMTA2LjQ0cTE1LjA4IDAgMjUuMjUgOC44MyAxMC4xNiA4LjgzIDEwLjE2IDIyLjV2MTYzLjMzSDIxOHYxMjRoMzUydi0yMjguNjZoLTc3LjMzcS02NyAwLTExNC4xNy00NS44Mi00Ny4xNy00NS44MS00Ny4xNy0xMTEuNTIgMC00OC4zMyAyNy44NC05MC4xNiAyNy44My00MS44NCA3Ni4xNi01OS44NCA4LjM0LTY4LjMzIDU2Ljg0LTExMi44M3QxMTMuNS00NC41cTY1IDAgMTEzLjE2IDQ0LjVRNzY3LTc1MSA3NzYtNjgyLjY3cTQ4LjMzIDE4IDc2LjE3IDU5Ljg0UTg4MC01ODEgODgwLTUzMi42N3EwIDY1LjcxLTQ3LjUgMTExLjUyUTc4NS0zNzUuMzMgNzE4LTM3NS4zM2gtODEuMzN2MjI4LjY2SDg0NFYtODBIMTIwLjIxWm0zNzIuNDYtMzYySDcxOHEzOCAwIDY2LjY3LTI2IDI4LjY2LTI2IDI4LjY2LTY0LjY3IDAtMjkuNzktMTguMTYtNTQuMDZRNzc3LTYxMSA3NDkuMzMtNjIyLjY3bC0zOC0xNi0yLTM1LjMzcS0yLTQyLjMzLTMyLjUtNzAuODN0LTcxLjMyLTI4LjVxLTQwLjgzIDAtNzEuMTcgMjguNVE1MDQtNzE2LjMzIDUwMi02NzRsLTIgMzUuMzMtMzggMTZxLTI3LjY3IDExLjY3LTQ1LjgzIDM1Ljk0UTM5OC01NjIuNDYgMzk4LTUzMi42NyAzOTgtNDk0IDQyNi4zMy00NjhxMjguMzQgMjYgNjYuMzQgMjZaTTYwNi02MDhaIi8+PC9zdmc+");
					}
					.category li:nth-of-type(3) &:before {
						mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNDBweCIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiIHdpZHRoPSI0MHB4IiBmaWxsPSIjRkZGRkZGIj48cGF0aCBkPSJNNjQ0LTQ1MC42NyA0NzkuMzMtNjExLjMzcS0yOS44OC0yOC41LTUwLjYtNjMuMTZRNDA4LTcwOS4xNiA0MDgtNzUwcTAtNTMuNjcgMzYuMTctOTEuODNRNDgwLjMzLTg4MCA1MzMuMzMtODgwcTMzLjM0IDAgNjEuMzQgMTYuMTcgMjggMTYuMTYgNDkuMzMgNDEuMTYgMjEuMzMtMjUgNDkuMzMtNDEuMTYgMjgtMTYuMTcgNjEuMzQtMTYuMTcgNTMgMCA4OS4xNiAzOC4xN1E4ODAtODAzLjY3IDg4MC03NTBxMCA0MC43OC0yMC42NyA3NS4zOVE4MzguNjctNjQwIDgwOS02MTEuMzNMNjQ0LTQ1MC42N1ptMC05Mi42NiAxMTYuMzMtMTE1cTE5Ljc1LTE5LjU3IDM2LjM4LTQxLjcyIDE2LjYyLTIyLjE0IDE2LjYyLTQ5Ljk1IDAtMjYtMTYuNjYtNDQuNjctMTYuNjctMTguNjYtNDItMTguNjYtMTggMC0zMy41IDkuMTYtMTUuNSA5LjE3LTI3LjE3IDIzLjVMNjQ0LTcyMGwtNTAtNjAuNjdxLTExLjY3LTE0LjMzLTI3LjE3LTIzLjUtMTUuNS05LjE2LTMzLjUtOS4xNi0yNS4zMyAwLTQyIDE4LjY2UTQ3NC42Ny03NzYgNDc0LjY3LTc1MHEwIDI3LjgxIDE2LjYyIDQ5Ljk1IDE2LjYzIDIyLjE1IDM2LjM4IDQxLjcybDExNi4zMyAxMTVaTTI2My4zMy0yMDYuNjdsMjk3LjM0IDg1LjM0TDgwNS4zMy0xOThxLTEuNjYtMTYuMzMtMTUuMTYtMjcuNS0xMy41LTExLjE3LTMxLjUtMTEuMTdINTUycS0xOS42NyAwLTM1LjMzLTIuMzMtMTUuNjctMi4zMy0zMS4zNC03LjY3bC05NS0yOS42NiAyMC02Ni42N0w1MDAtMzEyLjY3cTEzIDQuMzQgMjguMzMgNi42NyAxNS4zNCAyLjMzIDM3LjY3IDIuNjdoMzcuMzNxMC0xNy42Ny0xMS41LTMxLjM0LTExLjUtMTMuNjYtMjcuODMtMjBsLTIyMy4zMy04NGgtNzcuMzR2MjMyWk00MC04MHYtNDI1LjMzaDMwMHE1Ljg5IDAgMTEuNzggMS4xNlEzNTcuNjctNTAzIDM2My01MDFsMjIzLjY3IDgzLjY3cTM2LjMzIDEzLjMzIDYwLjgzIDQ0IDI0LjUgMzAuNjYgMjQuNSA3MGg4Ni42N3E1MC41NSAwIDg1Ljk0IDM1LjY2UTg4MC0yMzIgODgwLTE4MHYzMC42N0w1NjQuNjctNTJsLTMwMS4zNC04NS4zM1YtODBINDBabTY2LjY3LTY2LjY3SDE5NnYtMjkyaC04OS4zM3YyOTJaTTY0NC03MjBaIi8+PC9zdmc+");
					}
					.category li:nth-of-type(4) &:before {
						mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNDBweCIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiIHdpZHRoPSI0MHB4IiBmaWxsPSIjRkZGRkZGIj48cGF0aCBkPSJNMTQ2LjY3LTEyMHEtMjcgMC00Ni44NC0xOS44M1E4MC0xNTkuNjcgODAtMTg2LjY3di00NjYuNjZxMC0yNyAxOS44My00Ni44NFExMTkuNjctNzIwIDE0Ni42Ny03MjBIMzIwdi05My4zM3EwLTI3IDE5LjgzLTQ2Ljg0UTM1OS42Ny04ODAgMzg2LjY3LTg4MGgxODYuNjZxMjcgMCA0Ni44NCAxOS44M1E2NDAtODQwLjMzIDY0MC04MTMuMzNWLTcyMGgxNzMuMzNxMjcgMCA0Ni44NCAxOS44M1E4ODAtNjgwLjMzIDg4MC02NTMuMzN2NDY2LjY2cTAgMjctMTkuODMgNDYuODRRODQwLjMzLTEyMCA4MTMuMzMtMTIwSDE0Ni42N1ptMjQwLTYwMGgxODYuNjZ2LTkzLjMzSDM4Ni42N1YtNzIwWm00MjYuNjYgMzUyLjY3SDU4MC42N3Y2Ni42NmgtMjAwdi02Ni42NmgtMjM0djE4MC42Nmg2NjYuNjZ2LTE4MC42NlptLTM2NiAwSDUxNFYtNDM0aC02Ni42N3Y2Ni42N1pNMTQ2LjY3LTQzNGgyMzR2LTY2LjY3aDIwMFYtNDM0aDIzMi42NnYtMjE5LjMzSDE0Ni42N1YtNDM0Wk00ODAtNDAwLjY3WiIvPjwvc3ZnPg==");
					}
					.category li:nth-of-type(5) &:before {
						mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNDBweCIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiIHdpZHRoPSI0MHB4IiBmaWxsPSIjRkZGRkZGIj48cGF0aCBkPSJNODAtMTIwdi02NjMuMzNMMjc2LjY3LTkyMGwxOTYuNjYgMTM2LjY3djEwNi42Nkg4ODBWLTEyMEg4MFptNjYuNjctNjYuNjdoOTYuNjZ2LTk2LjY2aC05Ni42NnY5Ni42NlptMC0xNjMuMzNoOTYuNjZ2LTk2LjY3aC05Ni42NlYtMzUwWm0wLTE2My4zM2g5Ni42NlYtNjEwaC05Ni42NnY5Ni42N1ptMC0xNjMuMzRoOTYuNjZ2LTk2LjY2aC05Ni42NnY5Ni42NlptMTYzLjMzIDBoOTYuNjd2LTk2LjY2SDMxMHY5Ni42NlptMCA0OTBoNTAzLjMzVi02MTBIMzEwdjQyMy4zM1ptMjQzLjMzLTI2MHYtNjYuNjZoMTYzLjM0djY2LjY2SDU1My4zM1ptMCAxNjMuMzRWLTM1MGgxNjMuMzR2NjYuNjdINTUzLjMzWk00MDYuNjctNDQ2LjY3di02Ni42Nmg2Ni42NnY2Ni42NmgtNjYuNjZabTAgMTYzLjM0Vi0zNTBoNjYuNjZ2NjYuNjdoLTY2LjY2WiIvPjwvc3ZnPg==");
					}
					.category li:nth-of-type(6) &:before {
						mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iNDBweCIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiIHdpZHRoPSI0MHB4IiBmaWxsPSIjRkZGRkZGIj48cGF0aCBkPSJNNTYwLTU3MC42N3YtNTQuNjZxMzMtMTQgNjcuNS0yMXQ3Mi41LTdxMjYgMCA1MSA0dDQ5IDEwdjUwLjY2cS0yNC05LTQ4LjUtMTMuNXQtNTEuNS00LjVxLTM4IDAtNzMgOS41dC02NyAyNi41Wm0wIDIyMFYtNDA2cTMzLTEzLjY3IDY3LjUtMjAuNXQ3Mi41LTYuODNxMjYgMCA1MSA0dDQ5IDEwdjUwLjY2cS0yNC05LTQ4LjUtMTMuNXQtNTEuNS00LjVxLTM4IDAtNzMgOXQtNjcgMjdabTAtMTEwdi01NC42NnEzMy0xNCA2Ny41LTIxdDcyLjUtN3EyNiAwIDUxIDR0NDkgMTB2NTAuNjZxLTI0LTktNDguNS0xMy41dC01MS41LTQuNXEtMzggMC03MyA5LjV0LTY3IDI2LjVabS0zMDggMTU0cTUxLjM4IDAgMTAwLjAyIDExLjg0UTQwMC42Ny0yODMgNDQ4LTI1OS4zM3YtNDE2cS00My42Ny0yOC05NC4wOC00M3QtMTAxLjkyLTE1cS0zNy4zMyAwLTczLjUgOC42NlExNDIuMzMtNzE2IDEwNi42Ny03MDJ2NDIxLjMzUTEzOS0yOTQgMTc2LjgzLTMwMC4zM3EzNy44NC02LjM0IDc1LjE3LTYuMzRabTI2Mi42NyA0Ny4zNHE0OC0yMy42NyA5NC44My0zNS41IDQ2LjgzLTExLjg0IDk4LjUtMTEuODQgMzcuMzMgMCA3NS44MyA2dDY5LjUgMTYuNjd2LTQxOHEtMzMuNjYtMTYtNzAuNzEtMjMuNjctMzcuMDUtNy42Ni03NC42Mi03LjY2LTUxLjY3IDAtMTAwLjY3IDE1dC05Mi42NiA0M3Y0MTZaTTQ4MS4zMy0xNjBxLTUwLTM4LTEwOC42Ni01OC42N1EzMTQtMjM5LjMzIDI1Mi0yMzkuMzNxLTM4LjM2IDAtNzUuMzUgOS42Ni0zNi45OCA5LjY3LTcyLjY1IDI1LTIyLjQgMTEtNDMuMi0yLjMzUTQwLTIyMC4zMyA0MC0yNDUuMzN2LTQ2OS4zNHEwLTEzLjY2IDYuNS0yNS4zM1E1My03NTEuNjcgNjYtNzU4cTQzLjMzLTIxLjMzIDkwLjI2LTMxLjY3UTIwMy4xOS04MDAgMjUyLTgwMHE2MS4zMyAwIDExOS41IDE2LjMzIDU4LjE3IDE2LjM0IDEwOS44MyA0OS42NyA1MS0zMy4zMyAxMDguNS00OS42N1E2NDcuMzMtODAwIDcwOC04MDBxNDguNTggMCA5NS4yOSAxMC4zM1E4NTAtNzc5LjMzIDg5My4zMy03NThxMTMgNi4zMyAxOS44NCAxOCA2LjgzIDExLjY3IDYuODMgMjUuMzN2NDY5LjM0cTAgMjYuMjYtMjEuNSAzOS45NnQtNDMuMTcuN3EtMzUtMTYtNzEuOTgtMjUuMzMtMzYuOTktOS4zMy03NS4zNS05LjMzLTYyIDAtMTE5LjMzIDIxLTU3LjM0IDIxLTEwNy4zNCA1OC4zM1ptLTIwNC0zMzAuNjdaIi8+PC9zdmc+");
					}
					.category li:nth-of-type(7) &:before {
						mask-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgNjQwIDY0MCI+ICA8ZGVmcz4gPHN0eWxlPiAuc3QwIHsgZmlsbDogI0ZGRkZGRjsgfSAuc3QxIHsgZmlsbDogbm9uZTsgc3Ryb2tlOiAjRkZGRkZGOyBzdHJva2UtbGluZWpvaW46IHJvdW5kOyBzdHJva2Utd2lkdGg6IDUwcHg7IH0gPC9zdHlsZT4gPC9kZWZzPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNTMzLjYsOTYuNWMtMTAuMy04LjQtMjUuNC02LjgtMzMuOCwzLjUtOC40LDEwLjMtNi44LDI1LjQsMy41LDMzLjgsNTQuMiw0NCw4OC43LDExMSw4OC43LDE4Ni4ycy0zNC41LDE0Mi4yLTg4LjcsMTg2LjNjLTEwLjMsOC40LTExLjgsMjMuNS0zLjUsMzMuOCw4LjMsMTAuMywyMy41LDExLjgsMzMuOCwzLjUsNjQuOS01Mi45LDEwNi40LTEzMy40LDEwNi40LTIyMy42cy00MS41LTE3MC44LTEwNi40LTIyMy41WiIvPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNDczLjEsMTcxYy0xMC4zLTguNC0yNS40LTYuOC0zMy44LDMuNS04LjQsMTAuMy02LjgsMjUuNCwzLjUsMzMuOCwzMi41LDI2LjQsNTMuMiw2Ni42LDUzLjIsMTExLjdzLTIwLjcsODUuMy01My4yLDExMS44Yy0xMC4zLDguNC0xMS44LDIzLjUtMy41LDMzLjgsOC4zLDEwLjMsMjMuNSwxMS44LDMzLjgsMy41LDQzLjItMzUuMiw3MC45LTg4LjksNzAuOS0xNDlzLTI3LjctMTEzLjgtNzAuOS0xNDl2LS4xWiIvPiA8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNDEyLjYsMjQ1LjVjLTEwLjMtOC40LTI1LjQtNi44LTMzLjgsMy41LTguNCwxMC4zLTYuOCwyNS40LDMuNSwzMy44LDEwLjgsOC44LDE3LjcsMjIuMiwxNy43LDM3LjJzLTYuOSwyOC40LTE3LjcsMzcuM2MtMTAuMyw4LjQtMTEuOCwyMy41LTMuNSwzMy44LDguMywxMC4zLDIzLjUsMTEuOCwzMy44LDMuNSwyMS41LTE3LjcsMzUuNC00NC41LDM1LjQtNzQuNnMtMTMuOS01Ni45LTM1LjQtNzQuNVoiLz4gPHBhdGggY2xhc3M9InN0MSIgZD0iTTgwLDQxNmg0OGwxMzQuMSwxMTkuMmM2LjQsNS43LDE0LjYsOC44LDIzLjEsOC44LDE5LjIsMCwzNC44LTE1LjYsMzQuOC0zNC44VjEzMC44YzAtMTkuMi0xNS42LTM0LjgtMzQuOC0zNC44LTguNSwwLTE2LjcsMy4xLTIzLjEsOC44bC0xMzQuMSwxMTkuMmgtNDhjLTI2LjUsMC00OCwyMS41LTQ4LDQ4djk2YzAsMjYuNSwyMS41LDQ4LDQ4LDQ4WiIvPjwvc3ZnPg==");
					}
				}

				& h2 {
					margin: 0 -35px;
					padding: 30px 40px;
					display: flex;
					justify-content: center;
					align-items: center;
					font-size: 1.29em;
					border-top: 20px solid var(--main-color);

					&::before,
					&::after {
						content: "";
						width: 3em;
						height: 1px;
						margin: 0 .3em;
						display: block;
						background-color: var(--font-color);
					}
				}
				&:first-child h2 {
					padding-top: 10px;
					border-top: none;
				}

				& ul a {
					padding: 7px 0;
					display: inline-block;
					color: var(--link-color);
				}

				& div + ul {
					padding-bottom: 25px;
				}

				& small {
					margin: -2px 0 8px 5px;
					display: block;
					font-size: .85em;
					opacity: .65;
				}
			}
		}
	}
}



/* //////////////////////////////////////////////////////////// */
/* article */
/* //////////////////////////////////////////////////////////// */
main {
	position: static !important;
}
#contents {
	position: relative;
	word-break: break-all;
	z-index: 1;
}

.bg-wave {
	&::after {
		content: "";
		height: 38px;
		display: block;
		position: absolute;
		left: 0;
		right: 0;
		top: 100%;
		mask-image: url(../img/wave_w_b.svg);
		mask-size: 100% 100%;
		background-color: var(--bg-color);
	}
	&.reverse::after {
		mask-image: url(../img/wave_w_t.svg);
	}
}

.btn-box a {
	width: 75vmin;
	margin: 0 auto;
	padding: 15px;
	display: block;
	position: relative;
	line-height: 1;
	color: var(--font-color);
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	border: 3px solid var(--font-color);

	&:visited {
		color: inherit;
	}

	&::after {
		content: "";
		width: 27px;
		height: 27px;
		display: block;
		position: absolute;
		top: 50%;
		right: 10px;
		background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAyOCAyOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQgMTguOTIzTDE4LjkyMjkgMTQuMDAwMUwxNCA5LjA3NzE3TDEyLjc2MDQgMTAuMzE2N0wxNS41NTM4IDEzLjExMDFIOC44NlYxNC44OTAxSDE1LjU1MzhMMTIuNzYwNCAxNy42ODM0TDE0IDE4LjkyM1pNMTQuMDAyNSAyNy40NTg0QzEyLjE1MDcgMjcuNDU4NCAxMC40MDc0IDI3LjEwNTIgOC43NzI1MiAyNi4zOTg4QzcuMTM3NjkgMjUuNjkyMyA1LjcxMDUxIDI0LjcyOTcgNC40OTEgMjMuNTEwOUMzLjI3MTcyIDIyLjI5MTggMi4zMDg2MiAyMC44NjUzIDEuNjAxNzEgMTkuMjMxMUMwLjg5NTAyNyAxNy41OTcgMC41NDE2ODcgMTUuODU0MSAwLjU0MTY4NyAxNC4wMDI2QzAuNTQxNjg3IDEyLjE0MTEgMC44OTQ5MDkgMTAuMzkxNCAxLjYwMTM1IDguNzUzNDZDMi4zMDc4IDcuMTE1NTUgMy4yNzA0MiA1LjY5MDg2IDQuNDg5MjMgNC40NzkzN0M1LjcwODI3IDMuMjY3ODkgNy4xMzQ4NSAyLjMwODY5IDguNzY4OTggMS42MDE3N0MxMC40MDMxIDAuODk1MDg4IDEyLjE0NiAwLjU0MTc0OCAxMy45OTc1IDAuNTQxNzQ4QzE1Ljg1OSAwLjU0MTc0OCAxNy42MDg3IDAuODk0OTcgMTkuMjQ2NiAxLjYwMTQxQzIwLjg4NDYgMi4zMDc4NiAyMi4zMDkyIDMuMjY2NTkgMjMuNTIwNyA0LjQ3NzZDMjQuNzMyMiA1LjY4ODYyIDI1LjY5MTQgNy4xMTI3MiAyNi4zOTgzIDguNzQ5OTJDMjcuMTA1IDEwLjM4NzEgMjcuNDU4NCAxMi4xMzYzIDI3LjQ1ODQgMTMuOTk3NkMyNy40NTg0IDE1Ljg0OTQgMjcuMTA1MSAxNy41OTI4IDI2LjM5ODcgMTkuMjI3NkMyNS42OTIyIDIwLjg2MjQgMjQuNzMzNSAyMi4yODk2IDIzLjUyMjUgMjMuNTA5MUMyMi4zMTE1IDI0LjcyODQgMjAuODg3NCAyNS42OTE1IDE5LjI1MDIgMjYuMzk4NEMxNy42MTMgMjcuMTA1MSAxNS44NjM4IDI3LjQ1ODQgMTQuMDAyNSAyNy40NTg0Wk0xNCAyNS42Nzg0QzE3LjI1MzQgMjUuNjc4NCAyMC4wMTMyIDI0LjU0MjkgMjIuMjc5NCAyMi4yNzJDMjQuNTQ1MyAyMC4wMDExIDI1LjY3ODMgMTcuMjQzOCAyNS42NzgzIDE0LjAwMDFDMjUuNjc4MyAxMC43NDY3IDI0LjU0NTMgNy45ODY5MiAyMi4yNzk0IDUuNzIwNzNDMjAuMDEzMiAzLjQ1NDc3IDE3LjI1MzQgMi4zMjE3OSAxNCAyLjMyMTc5QzEwLjc1NjMgMi4zMjE3OSA3Ljk5OTAyIDMuNDU0NzcgNS43MjgxIDUuNzIwNzNDMy40NTcxOSA3Ljk4NjkyIDIuMzIxNzMgMTAuNzQ2NyAyLjMyMTczIDE0LjAwMDFDMi4zMjE3MyAxNy4yNDM4IDMuNDU3MTkgMjAuMDAxMSA1LjcyODEgMjIuMjcyQzcuOTk5MDIgMjQuNTQyOSAxMC43NTYzIDI1LjY3ODQgMTQgMjUuNjc4NFoiIGZpbGw9ImJsYWNrIi8+PC9zdmc+");
		background-position: center;
		background-repeat: no-repeat;
		transform: translate(0, -50%) rotate(90deg);
		filter: brightness(0) invert(1);
	}
	[data-bc="white"] &::after {
		filter: brightness(1) invert(0);
	}
	&.active::after {
		transform: translate(0, -50%) rotate(-90deg);
	}
}

.accessibility {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	background-color: var(--accessibility-bg);
	box-shadow: 0 1px 4px 0 rgba(0,0,0,0);
	transform: translate(0, -100%);
	transition: .2s;
	z-index: 8;

	&:has(.accessibility_btn.active) {
		box-shadow: 0 1px 4px 0 rgba(0,0,0,.3);
		transform: translate(0, 0);
	}

	& .accessibility_btn {
		width: 120px;
		padding: 8px 0 12px;
		display: flex;
		justify-content: center;
		align-items: center;
		position: absolute;
		bottom: 0;
		right: 12px;
		color: var(--white);
		background-color: var(--accessibility-bg);
		border-radius: 55% 36% 50% 50% / 0% 0% 15% 15% ;
		transform: translate(0, 100%);

		&::before {
			content: "";
			width: 28px;
			height: 28px;
			margin-right: 3px;
			display: inline-block;
			background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMjgiIHZpZXdCb3g9IjAgMCAyOCAyOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQuMDAyIDI1LjA4MzNDMTIuNDc3IDI1LjA4MzMgMTEuMDQxMyAyNC43OTI1IDkuNjk0OTkgMjQuMjEwN0M4LjM0ODY2IDIzLjYyODkgNy4xNzMzNCAyMi44MzYxIDYuMTY5MDMgMjEuODMyNEM1LjE2NDkyIDIwLjgyODUgNC4zNzE3OCAxOS42NTM3IDMuNzg5NjEgMTguMzA3OUMzLjIwNzY0IDE2Ljk2MjIgMi45MTY2NiAxNS41MjY5IDIuOTE2NjYgMTQuMDAyQzIuOTE2NjYgMTIuNDY5IDMuMjA3NTUgMTEuMDI4MSAzLjc4OTMyIDkuNjc5MjVDNC4zNzExIDguMzMwMzkgNS4xNjM4NSA3LjE1NzExIDYuMTY3NTcgNi4xNTk0MkM3LjE3MTQ5IDUuMTYxNzIgOC4zNDYzMiA0LjM3MTc5IDkuNjkyMDggMy43ODk2MkMxMS4wMzc4IDMuMjA3NjUgMTIuNDczMSAyLjkxNjY3IDEzLjk5OCAyLjkxNjY3QzE1LjUzMSAyLjkxNjY3IDE2Ljk3MTkgMy4yMDc1NSAxOC4zMjA3IDMuNzg5MzNDMTkuNjY5NiA0LjM3MTExIDIwLjg0MjkgNS4xNjA2NSAyMS44NDA2IDYuMTU3OTZDMjIuODM4MyA3LjE1NTI2IDIzLjYyODIgOC4zMjgwNiAyNC4yMTA0IDkuNjc2MzRDMjQuNzkyMyAxMS4wMjQ2IDI1LjA4MzMgMTIuNDY1MiAyNS4wODMzIDEzLjk5OEMyNS4wODMzIDE1LjUyMyAyNC43OTI0IDE2Ljk1ODcgMjQuMjEwNyAxOC4zMDVDMjMuNjI4OSAxOS42NTEzIDIyLjgzOTMgMjAuODI2NyAyMS44NDIgMjEuODMxQzIwLjg0NDcgMjIuODM1MSAxOS42NzE5IDIzLjYyODIgMTguMzIzNyAyNC4yMTA0QzE2Ljk3NTQgMjQuNzkyNCAxNS41MzQ4IDI1LjA4MzMgMTQuMDAyIDI1LjA4MzNaTTE0IDIzLjYxNzRDMTYuNjc5MiAyMy42MTc0IDE4Ljk1MiAyMi42ODIzIDIwLjgxODMgMjAuODEyMkMyMi42ODQ0IDE4Ljk0MiAyMy42MTc0IDE2LjY3MTMgMjMuNjE3NCAxNEMyMy42MTc0IDExLjMyMDggMjIuNjg0NCA5LjA0Nzk5IDIwLjgxODMgNy4xODE3MUMxOC45NTIgNS4zMTU2MiAxNi42NzkyIDQuMzgyNTggMTQgNC4zODI1OEMxMS4zMjg3IDQuMzgyNTggOS4wNTc5OSA1LjMxNTYyIDcuMTg3ODIgNy4xODE3MUM1LjMxNzY2IDkuMDQ3OTkgNC4zODI1NyAxMS4zMjA4IDQuMzgyNTcgMTRDNC4zODI1NyAxNi42NzEzIDUuMzE3NjYgMTguOTQyIDcuMTg3ODIgMjAuODEyMkM5LjA1Nzk5IDIyLjY4MjMgMTEuMzI4NyAyMy42MTc0IDE0IDIzLjYxNzRaIiBmaWxsPSJ3aGl0ZSIvPjxwYXRoIGQ9Ik0xNCA5LjczMjYzQzEzLjY0MiA5LjczMjYzIDEzLjMzNzEgOS42MDY4IDEzLjA4NTMgOS4zNTUxNUMxMi44MzM1IDkuMTAzMzggMTIuNzA3NiA4Ljc5ODQ4IDEyLjcwNzYgOC40NDA0M0MxMi43MDc2IDguMDgyMzggMTIuODMzNSA3Ljc3NzQ3IDEzLjA4NTMgNy41MjU3QzEzLjMzNzEgNy4yNzM5MyAxMy42NDIgNy4xNDgwNSAxNCA3LjE0ODA1QzE0LjM1ODEgNy4xNDgwNSAxNC42NjMgNy4yNzM5MyAxNC45MTQ3IDcuNTI1N0MxNS4xNjY1IDcuNzc3NDcgMTUuMjkyNCA4LjA4MjM4IDE1LjI5MjQgOC40NDA0M0MxNS4yOTI0IDguNzk4NDggMTUuMTY2NSA5LjEwMzM4IDE0LjkxNDcgOS4zNTUxNUMxNC42NjMgOS42MDY4IDE0LjM1ODEgOS43MzI2MyAxNCA5LjczMjYzWk0xMi4xODI4IDIwLjgyNVYxMS42OTgxQzExLjQ2OTMgMTEuNjM5NyAxMC43NTk4IDExLjU1NTYgMTAuMDU0NSAxMS40NDU3QzkuMzQ5MSAxMS4zMzU3IDguNjgwOTUgMTEuMTk5OSA4LjA1MDAyIDExLjAzODVMOC4zMDU4NyA5Ljk4ODQ4QzkuMjAyMzMgMTAuMjIwMSAxMC4xMzE0IDEwLjM4NzkgMTEuMDkzMSAxMC40OTJDMTIuMDU0NyAxMC41OTYgMTMuMDIzNiAxMC42NDgxIDE0IDEwLjY0ODFDMTQuOTc2NCAxMC42NDgxIDE1Ljk0NTQgMTAuNTk2IDE2LjkwNjkgMTAuNDkyQzE3Ljg2ODYgMTAuMzg3OSAxOC43OTc3IDEwLjIyMDEgMTkuNjk0MiA5Ljk4ODQ4TDE5Ljk1IDExLjAzODVDMTkuMzE5MSAxMS4xOTk5IDE4LjY1MDkgMTEuMzM1NyAxNy45NDU2IDExLjQ0NTdDMTcuMjQwMiAxMS41NTU2IDE2LjUzMDcgMTEuNjM5NyAxNS44MTcyIDExLjY5ODFWMjAuODI1SDE0Ljc2NzRWMTYuNTQ0MkgxMy4yMzI2VjIwLjgyNUgxMi4xODI4WiIgZmlsbD0id2hpdGUiLz48L3N2Zz4=");
		}
	}

	& .accessibility__contentlink {
		position: absolute;
		left: -110%;
	}
	& .accessibility__uselink {
		display: none;
	}

	& .accessibility-tool {
		padding: 25px 25px 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: stretch;
		color: #FFF;

		& > * {
			width: 50%;
			padding: 25px 0;
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
			text-align: center;
			border-bottom: 1px solid rgba(255,255,255,.3);

			&:nth-of-type(2n) {
				border-left: 1px solid rgba(255,255,255,.3);
			}
			&:last-child {
				width: 100%;
				padding: 25px;
				border-bottom: none;
			}
		}

		& #voice,
		& #kana {
			& button {
				display: flex;
				flex-wrap: wrap;
				justify-content: center;
				align-items: center;
				color: var(--white);
				font-size: 1em;
				font-weight: 700;
				background-color: transparent;
				border: none;

				&::before {
					content: "";
					width: 100%;
					height: 40px;
					margin-bottom: 8px;
					display: block;
					background-position: center;
					background-repeat: no-repeat;
				}
			}
		}
		& #kana #kana-btn-off {
			display: none;
		}
		body[data-kana="true"] & #kana #kana-btn-on {
			display: none;
		}
		body[data-kana="true"] & #kana #kana-btn-off {
			display: flex;
		}
		& #voice button::before {
			background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA1MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjEuODc1IDYuMzg5ODRWMzMuNjA5NEwxMi4zNzI3IDI1LjE2NDFMMTEuNDg0NCAyNC4zNzVINC45OTkyMkMzLjk2NTYzIDI0LjM3NSAzLjEyNDIyIDIzLjUzMzYgMy4xMjQyMiAyMi41VjE3LjVDMy4xMjQyMiAxNi40NjY0IDMuOTY1NjMgMTUuNjI1IDQuOTk5MjIgMTUuNjI1SDExLjQ4NDRMMTIuMzcyNyAxNC44MzU5TDIxLjg3NSA2LjM5MDYzTTQwLjUwMTYgMi4xMTMyOEMzOS45NTU1IDIuMTEzMjggMzkuNDE0MSAyLjM0ODQ0IDM5LjA0NjkgMi44MDQ2OUMzOC4zOTg0IDMuNjA5MzggMzguNTE1NiA0Ljc4OTA2IDM5LjMyMDMgNS40NDUzMUM0My41NTQ3IDguODkwNjIgNDYuMjUgMTQuMTI1IDQ2LjI1IDIwQzQ2LjI1IDI1Ljg3NSA0My41NTQ3IDMxLjEwOTQgMzkuMzIwMyAzNC41NDY5QzM4LjUxNTYgMzUuMjAzMSAzOC4zOTA2IDM2LjM4MjggMzkuMDQ2OSAzNy4xODc1QzM5LjQxOTUgMzcuNjQ0NSAzOS45NjA5IDM3Ljg4MiA0MC41MDcgMzcuODgyQzQwLjkyMjcgMzcuODgyIDQxLjMzOTggMzcuNzQ0NSA0MS42ODc1IDM3LjQ2MDlDNDYuNzU3OCAzMy4zMzU5IDUwIDI3LjA0NjkgNTAgMjBDNTAgMTIuOTUzMSA0Ni43NTc4IDYuNjU2MjUgNDEuNjg3NSAyLjUzOTA2VjIuNTMxMjVDNDEuMzM5MSAyLjI1MDc4IDQwLjkxODcgMi4xMTMyOCA0MC41MDE2IDIuMTEzMjhaTTIyLjQ5ODQgMi41MDE1NkMyMS44OTY5IDIuNTAxNTYgMjEuMzAxNiAyLjcxNjQxIDIwLjgzNTkgMy4xMzI4MUwxMC4yOTY5IDEyLjVINUMyLjI0MjE5IDEyLjUgMCAxNC43NDIyIDAgMTcuNVYyMi41QzAgMjUuMjU3OCAyLjI0MjE5IDI3LjUgNSAyNy41SDEwLjI5NjlMMjAuODM1OSAzNi44NjcyQzIxLjMwMjMgMzcuMjgzNiAyMS44OTY5IDM3LjUwMTYgMjIuNDk5MiAzNy41MDE2QzIyLjg0NjEgMzcuNTAxNiAyMy4xOTUzIDM3LjQyODkgMjMuNTIzNCAzNy4yODA1QzI0LjQyMTkgMzYuODc0MiAyNSAzNS45ODM2IDI1IDM0Ljk5OTJWNUMyNSA0LjAxNTYzIDI0LjQyMTkgMy4xMjUgMjMuNTIzNCAyLjcxODc1QzIzLjE5NDUgMi41NzI2NiAyMi44NDUzIDIuNTAxNTYgMjIuNDk4NCAyLjUwMTU2Wk0zNS43NzUgNy45MzM1OUMzNS4yMjg5IDcuOTMzNTkgMzQuNjg3NSA4LjE2ODc1IDM0LjMyMDMgOC42MjVDMzMuNjcxOSA5LjQyOTY5IDMzLjc4OTEgMTAuNjA5NCAzNC41OTM3IDExLjI2NTZDMzcuMTMyOCAxMy4zMzU5IDM4Ljc1IDE2LjQ3NjYgMzguNzUgMjBDMzguNzUgMjMuNTIzNCAzNy4xMzI4IDI2LjY2NDEgMzQuNTkzNyAyOC43MjY2QzMzLjc4OTEgMjkuMzgyOCAzMy42NjQxIDMwLjU2MjUgMzQuMzIwMyAzMS4zNjcyQzM0LjY5MyAzMS44MjQyIDM1LjIzNDQgMzIuMDYxNyAzNS43ODA1IDMyLjA2MTdDMzYuMTk2MSAzMi4wNjE3IDM2LjYxMzMgMzEuOTI0MiAzNi45NjA5IDMxLjY0MDZDNDAuMzM1OSAyOC44OTA2IDQyLjUgMjQuNjk1MyA0Mi41IDIwQzQyLjUgMTUuMzA0NyA0MC4zMzU5IDExLjEwOTQgMzYuOTYwOSA4LjM1OTM3VjguMzUxNTZDMzYuNjEyNSA4LjA3MTA5IDM2LjE5MjIgNy45MzM1OSAzNS43NzUgNy45MzM1OVpNMzEuMDQ4NCAxMy43NTM5QzMwLjUwMjMgMTMuNzUzOSAyOS45NjA5IDEzLjk4OTEgMjkuNTkzNyAxNC40NDUzQzI4Ljk0NTMgMTUuMjUgMjkuMDYyNSAxNi40Mjk3IDI5Ljg2NzIgMTcuMDg1OUMzMC43MTA5IDE3Ljc4MTIgMzEuMjUgMTguODI4MSAzMS4yNSAyMEMzMS4yNSAyMS4xNzE5IDMwLjcxMDkgMjIuMjE4OCAyOS44NjcyIDIyLjkwNjNDMjkuMDYyNSAyMy41NjI1IDI4LjkzNzUgMjQuNzQyMiAyOS41OTM3IDI1LjU0NjlDMjkuOTY2NCAyNi4wMDM5IDMwLjUwNzggMjYuMjQxNCAzMS4wNTM5IDI2LjI0MTRDMzEuNDY5NSAyNi4yNDE0IDMxLjg4NjcgMjYuMTAzOSAzMi4yMzQ0IDI1LjgyMDNDMzMuOTE0MSAyNC40NDUzIDM1IDIyLjM1MTYgMzUgMjBDMzUgMTcuNjQ4NCAzMy45MTQxIDE1LjU1NDcgMzIuMjM0NCAxNC4xNzk3VjE0LjE3MTlDMzEuODg1OSAxMy44OTE0IDMxLjQ2NTYgMTMuNzUzOSAzMS4wNDg0IDEzLjc1MzlaIiBmaWxsPSJ3aGl0ZSIvPjwvc3ZnPg==");
		}
		& #kana button::before {
			background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDIiIHZpZXdCb3g9IjAgMCA0MCA0MiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMi4wMzc5MSA2LjI0NDgzSDEzLjk4MUMxNC4xMjMyIDQuNjE3MSAxNC4zODM5IDIuNTM1NDkgMTQuNzYzIDBMMTguNTMwOCAwLjQ2OTUzNkMxOC4xNjc1IDIuNzg1OTEgMTcuODk4OSA0LjcxMTAxIDE3LjcyNTEgNi4yNDQ4M0gzNy4yNzQ5VjkuNTU1MDZIMTcuMzY5N0MxNy4xNDg1IDExLjY2OCAxNi45NTg5IDEzLjc4MDkgMTYuODAwOSAxNS44OTM4QzE5LjA0NDIgMTUuNTE4MiAyMS4yMDg1IDE1LjMzMDQgMjMuMjkzOCAxNS4zMzA0QzI4LjkzMzYgMTUuMzMwNCAzMy4yNjIyIDE2LjY5OTggMzYuMjc5NiAxOS40Mzg4QzM4Ljc1OTkgMjEuNjc2OSA0MCAyNC41NjQ2IDQwIDI4LjEwMTdDNDAgMzUuNzM5NSAzNC41NTc3IDQwLjM3MjMgMjMuNjczIDQyTDIxLjk5MDUgMzguOTI0NUMzMS4zNzQ0IDM3LjU3ODUgMzYuMDY2NCAzMy45MzE4IDM2LjA2NjQgMjcuOTg0M0MzNi4wNjY0IDIzLjg4MzcgMzQuMjAyMiAyMS4wNzQzIDMwLjQ3MzkgMTkuNTU2MkMyNy4yMzU0IDI1LjIyMTkgMjMuMTM1OSAzMC4wMjY4IDE4LjE3NTQgMzMuOTcwOUMxNS40MTA3IDM2LjE3NzggMTIuOTkzNyAzNy43MTk0IDEwLjkyNDIgMzguNTk1OUM5LjM5MTc5IDM5LjI1MzIgNy44NjczIDM5LjU4MTkgNi4zNTA3MSAzOS41ODE5QzQuMzQ0MzkgMzkuNTgxOSAyLjc4MDQxIDM4LjkzMjQgMS42NTg3NyAzNy42MzMzQzAuNTUyOTIzIDM2LjM0OTkgMCAzNC41MjY2IDAgMzIuMTYzMkMwIDI4LjU0NzggMS40NzcwOSAyNS4yMjk3IDQuNDMxMjggMjIuMjA5MUM2Ljc4NTE1IDE5LjgxNDQgOS42NDQ1NSAxOC4wMzAyIDEzLjAwOTUgMTYuODU2M0MxMy4xNjc1IDE0LjQxNDggMTMuMzcyOCAxMS45ODEgMTMuNjI1NiA5LjU1NTA2SDIuMDM3OTFWNi4yNDQ4M1pNMTIuODY3MyAyMC4zMzA5QzEwLjA3MTEgMjEuNDg5MSA3LjgxOTkxIDIzLjIwMjkgNi4xMTM3NCAyNS40NzIzQzQuNDA3NTggMjcuNzczMSAzLjU1NDUgMzAuMDExMiAzLjU1NDUgMzIuMTg2N0MzLjU1NDUgMzQuOTU3IDQuNjA1MDYgMzYuMzQyMSA2LjcwNjE2IDM2LjM0MjFDOC40NTk3MiAzNi4zNDIxIDEwLjc1MDQgMzUuMzMyNiAxMy41NzgyIDMzLjMxMzZDMTMuMDcyNyAzMC4xOTkgMTIuODE5OSAyNi43ODcgMTIuODE5OSAyMy4wNzc3QzEyLjgxOTkgMjIuMjYzOCAxMi44MzU3IDIxLjM0ODIgMTIuODY3MyAyMC4zMzA5Wk0xNi40OTI5IDE5LjE4MDVDMTYuNDc3MSAyMC40Nzk2IDE2LjQ2OTIgMjEuNTgzIDE2LjQ2OTIgMjIuNDkwOEMxNi40NjkyIDI1LjU1ODQgMTYuNjExNCAyOC4yOTc0IDE2Ljg5NTcgMzAuNzA3N0MyMS4zODIzIDI2LjcwMSAyNC43NDcyIDIyLjY2MjkgMjYuOTkwNSAxOC41OTM2QzI2LjAyNjkgMTguNDUyOCAyNC44OTczIDE4LjM4MjMgMjMuNjAxOSAxOC4zODIzQzIwLjk2MzcgMTguMzgyMyAxOC41OTQgMTguNjQ4NCAxNi40OTI5IDE5LjE4MDVaIiBmaWxsPSJ3aGl0ZSIvPjwvc3ZnPg==");
		}

		& #color-change,
		& #font-size {
			flex-direction: column-reverse;
			gap: 12px;

			& div {
				width: 100%;
				padding: 0 25px;
				display: flex;
				gap: 10px;
				justify-content: space-between;

				& button {
					height: 3em;
					flex-grow: 2;
					color: #333;
					font-size: 1em;
					font-weight: 700;
					text-decoration: none;
					background-color: #FFF;
					border: 1px solid #FFF;
					border-radius: 4px;

					&.white {
						color: #333;
						background-color: #FFF;
					}
					&.blue {
						color: #FFF;
						background-color: #008AE7;
					}
					&.black {
						color: #FFF;
						background-color: #000;
					}
				}
			}
		}
		& #language a {
			width: 100%;
			color: #333;
			font-size: 1em;
			font-weight: 700;
			line-height: 3;
			text-decoration: none;
			background-color: #FFF;
			border: 1px solid #FFF;
			border-radius: 4px;
		}
	}
}

#bredcrumble {
	display: none;
}


/*--------------------------------------------------------- title ---------------------------------------------------------*/
#contents-title {
	position: relative;

	&::after {
		height: 28px;
		top: auto;
		bottom: 0;
	}

	& .container {
		padding: 20px 20px 35px;
		position: relative;

		& h1 {
			line-height: 1.25;
			color: var(--white);
			font-size: 7vmin;
			font-weight: 400;

			.governor & span {
				margin-right: -1px;
				padding: .3em;
				display: inline-block;
				border: 1px solid var(--white);

				&:first-child,
				&:first-child + * {
					color: var(--main-color);
					background-color: var(--white);
					border-left-color: var(--main-color);
				}
			}
		}
	}
}

#eye-catch {
	text-align: center;
	background-color: var(--bg-color);
}
#contents-menu {
	padding: 20px 20px 0;
	position: relative;
	background-color: var(--bg-color);
		
	&::before {
		content: "MENU";
		margin-bottom: 1px;
		display: block;
		padding: 1em;
		color: var(--white);
		background-color: var(--main-color);
	}
	&::after {
		content: "";
		width: .7em;
		height: .7em;
		display: block;
		position: absolute;
		top: calc(20px + 1em);
		right: calc(20px + 1em);
		border: 1px solid var(--white);
		border-top-color: transparent;
		border-left-color: transparent;
		transform: rotate(45deg);
		transition: .3s;
	}

		&.active::after  {
			top: calc(20px + 1.3em);
			transform: rotate(-135deg);
		}

	& nav {
		display: grid; 
		grid-template-rows: 0fr;
		position: relative;
		transition: 250ms grid-template-rows ease;

		.active & {
			grid-template-rows: 1fr;
		}

		& > div {
			overflow: hidden;

			& a {
				padding: 1em;
				display: block;
				overflow: hidden;
				position: relative;
				color: var(--white);
				text-decoration: none;
				background-color: var(--link-color);
				border-bottom: 1px solid var(--htitle);
				transform-origin: top;

				&::after {
					content: "";
					width: .6em;
					height: .6em;
					display: block;
					position: absolute;
					top: 50%;
					right: 15px;
					border: 1px solid var(--white);
					border-bottom-color: transparent;
					border-left-color: transparent;
					transform: translate(-50%, -50%) rotate(45deg);
				}
			}
		}
	}
}
#contents-news {
	padding: 25px 20px;
	position: relative;
	background-color: var(--bg-color);
	line-height: 1.6;

	& .old {
		display: none;
	}

	&:empty {
		margin-bottom: calc(-60px - 40vh);
		padding-bottom: 40vh;
		display: none;
	}

	.notfound &:empty {
		padding-bottom: calc(40vh + 60px);
	}
}


/*--------------------------------------------------------- body ---------------------------------------------------------*/
#contents-body {
	padding: 20px;
	position: relative;
	color: var(--font-color);
	line-height: 1.8;
	background-color: var(--bg-color);

	& .section-list {

		--bsw: 2px;
		& dt {
			margin-top: 20px;
			padding: 20px 0 0;
			font-weight: 700;
			border-top: 1px dashed var(--border-color1);

			& a {
				padding: .4em calc(.6em + 15px) .4em .6em;
				display: inline-block;
				position: relative;
				line-height: 1.4;
				font-size: 1.08em;
				text-decoration: none;
				border: 2px solid var(--link-color);
				border-radius: 5px;

				&::before {
					content: "";
					width: 0;
					height: 0;
					display: block;
					position: absolute;
					top: 50%;
					right: 5px;
					border: 5px solid transparent;
					border-left: 7px solid var(--accent-color);
					transform: translate(0, -50%);
				}
			}
		}
		& dd {
			margin-top: 10px;

			&:empty {
				display: none;
			}

			&:last-child {
				border-radius: 0 0 4px 4px;
			}
		}
	}

	& .menu-list {
		margin-left: 10px;

		& li {
			padding: 1em 0 1em 12px;
			position: relative;

			&::before {
				content: "";
				width: 0;
				height: 0;
				display: block;
				position: absolute;
				top: calc(50% - 4px);
				left: 0;
				border: 4px solid transparent;
				border-left: 7px solid var(--accent-color);
			}
		}
	}

	& .img-box {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;

		> * {
			width: 100%;
			margin-bottom: 15px;
		}
	}
}

mark {
	color: var(--font-color);
	background-color: rgb(from var(--accent-color) r g b / 0.5);
}
.cke_panel_container mark {
	background-color: rgba(255, 153, 0, .5);
	border-radius: 5px;
}
.cke_combopanel {
	height: 250px;
}
q {
	padding: 30px 50px;
	display: block;
	position: relative;
	background-color: var(--htitle);
	border: 1px solid var(--border-color1);

	&::before,
	&::after {
		content: "”";
		display: block;
		position: absolute;
		font-size: 60px;
		line-height: 0;
		opacity: .3;
	}
	&::before {
		top: 10px;
		left: 15px;
		transform: rotate(180deg);
	}
	&::after {
		bottom: 10px;
		right: 15px;
	}
}
.cke_panel_container q {
	padding: 0;
	background-color: #EEE;
	&::before,
	&::after {
		content: none;
	}
}
body.cke_editable,
#contents {

	& p:not(:last-child) {
		margin-bottom: 1.4em;
	}

	& .alignright {
		text-align: right;
	}

	& p img {
		display: inline-block;
	}

	& h2 {
		margin-bottom: 1em;
		padding: .5em;
		color: var(--white);
		font-size: 1.6em;
		text-shadow: 0 1px 3px rgba(0, 0, 0, .5);
		background-color: var(--main-color);
		background-image: linear-gradient(90deg, var(--main-color) 20%, rgba(0,160,233,.6)), url(../img/wave_w_t.svg);
		background-size: 150% auto;
		background-position: right bottom;
		background-repeat: no-repeat;
		border-radius: 4px;

		& a {
			color: inherit;
		}

		[data-bc="black"] & {
			background-image: linear-gradient(90deg, var(--main-color) 20%, rgba(0, 0, 0, .8)), url(../img/wave_w_t.svg);
		}

		&.navi {
			display: flex;
			justify-content: space-between;
			align-items: center;
			position: relative;

			& .btn {
				padding: .5em .5em;
				font-size: .8em;
				color: var(--white);
				border-color: var(--white);
			}

			& .disabled,
			& .btn[tabindex="-1"] {
				opacity: .35;
				pointer-events: none;
				cursor: not-allowed;
			}

			& .prev {
				padding-left: 1.5em;
				order: -1;
				position: relative;

				&::before {
					content: "";
					width: .5em;
					height: .5em;
					display: block;
					position: absolute;
					top: 50%;
					left: .75em;
					border: 2px solid var(--white);
					border-top: none;
					border-right: none;
					transform: translate(0, -50%) rotate(45deg);
				}
			}
			& .next {
				padding-right: 1.5em;
				order: 10;
				position: relative;

				&::before {
					content: "";
					width: .5em;
					height: .5em;
					display: block;
					position: absolute;
					top: 50%;
					right: .75em;
					border: 2px solid var(--white);
					border-bottom: none;
					border-left: none;
					transform: translate(0, -50%) rotate(45deg);
				}
			}
			& .select-wrapper {
				width: 7.5em;
				height: auto;
				position: absolute;
				top: 0;
				bottom: 0;
				left: 50%;
				transform: translate(-50%, 0);
				opacity: 0;

				& select {
					width: 100%;
				}
			}
		}
	}

	& h3 {
		margin-bottom: 1em;
		padding: 10px 16px;
		display: flex;
		justify-content: flex-start;
		align-items: stretch;
		font-size: 1.3em;
		background-color: rgba(0,130,233, .1);

		&::before {
			content: "";
			width: 5px;
			margin-right: 10px;
			display: block;
			flex-shrink: 0;
			background-color: var(--main-color);
			background-color: var(--accent-color);
			border-radius: 1em;
		}

		& a {
			color: inherit;
		}

		& a:not(:empty) {
			padding-right: 1em;
			position: relative;
			flex-grow: 9;

			&::after {
				content: "";
				width: .6em;
				height: .6em;
				display: block;
				position: absolute;
				right: 0;
				top: 50%;
				border-top: 2px solid var(--link-color);
				border-right: 2px solid var(--link-color);
				transform: translate(0, -50%) rotate(45deg);
				opacity: .5;
			}
			&:hover::after {
				border-color: var(--accent-color);
			}
		}
	}

	& h4 {
		margin-bottom: 1em;
		padding-bottom: 4px;
		position: relative;
		font-size: 1.2em;
		border-bottom: 4px solid var(--htitle);

		& a {
			color: inherit;
		}

		&::after {
			content: "";
			width: 25%;
			height: 4px;
			display: block;
			position: absolute;
			bottom: -3px;
			left: 0;
			background-color: var(--main-color);
		}
	}

	& h5 {
		margin-bottom: 1em;
		padding-left: 8px;
		font-size: 1.15em;
		border-left: 5px double var(--accent-color);

		& a {
			color: inherit;
		}
	}

	& h6 {
		margin-bottom: 1em;
		font-size: 1.1em;
		font-weight: 700;

		& a {
			color: inherit;
		}
	}

	& *:has( +:is(h2,h3,h4,h5,h6)) {
		margin-bottom: 40px !important;
	}

	& table {
		margin-bottom: 1em;

		&:not([class]) {
			width: 100%;
		}

		& th,
		& td {
			padding: .5em;
			border: 1px solid var(--border-color2);
		}

		& th {
			background-color: var(--htitle);
		}
	}

	& ul,
	& ol {
		margin-left: 2em;
	}

	& p > img[style^="float: right"] {
		margin: 0 0 1em 1em;
	}
	& p > img[style^="float: left"] {
		margin: 0 1em 1em 0;
	}

	& .note {
		margin-left: 1.3em;
		position: relative;

		&::before {
			content: "＊";
			position: absolute;
			left: -1.3em;
		}
	}

	& .pagination {
		margin: 20px 0 0;
		display: flex;
		justify-content: center;
		align-items: stretch;
		gap: 5px;
		
		display: none;

		& span {
			min-width: 2.6em;
			text-align: center;
			line-height: calc(2.6em - 2px);
			border: 1px solid var(--border-color1);

			& a {
				width: 100%;
				padding: 0 .6em;
				display: block;
				text-decoration: none;
				
				.next &,
				.prev & {
					position: relative;
					overflow: hidden;
					white-space: nowrap;
					text-indent: -11em;
					
					&::before {
						content: "<";
						display: block;
						position: absolute;
						top:50%;
						left: 50%;
						color: var(--link-color);
						text-indent: 0;
						transform: translate(-50%, -50%);
					}
				}
				.next &::before {
					content: ">";
				}
			}
		}
	}

	& .news-list {
		margin: 0;

		& li {
			margin-bottom: 1em;
			padding-bottom: 1em;
			border-bottom: 1px dashed var(--border-color2);

			& time {
				display: block;
			}
		}
	}

	section.categories {
		display: none;
	}

	& .icon-box {
		padding-top: 15px;

		& a {
			padding: .65em .65em;
			display: inline-flex;
			align-items: center;
			color: var(--bg-color);
			line-height: 1;
			text-align: center;
			text-decoration: none;
			background-color: var(--link-color);
			border-radius: 3px;

			[data-bc="blue"] & {
				color: var(--black);
			}

			& + a {
				margin-left: 3px;
			}

			&::before {
				content: "";
				width: 1.2em;
				height: 1.2em;
				margin-right: .5em;
				display: block;
				background-size: contain;
				background-position: center;
				background-repeat: no-repeat;
				opacity: .5;
				filter: brightness(0);
			}
			[data-bc="white"] &::before {
				filter: brightness(1);
			}
			&.text::before {
				background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBkPSJNMCAyNTZhMjU2IDI1NiAwIDEgMCA1MTIgMEEyNTYgMjU2IDAgMSAwIDAgMjU2ek0yNDEgMzc3Yy05LjQgOS40LTI0LjYgOS40LTMzLjkgMHMtOS40LTI0LjYgMC0zMy45bDg3LTg3LTg3LTg3Yy05LjQtOS40LTkuNC0yNC42IDAtMzMuOXMyNC42LTkuNCAzMy45IDBMMzQ1IDIzOWM5LjQgOS40IDkuNCAyNC42IDAgMzMuOUwyNDEgMzc3eiIgZmlsbD0iI0ZGRkZGRiIvPjwvc3ZnPg==");
			}
			&.movie::before {
				background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NzYgNTEyIj48cGF0aCBkPSJNMCAxMjhDMCA5Mi43IDI4LjcgNjQgNjQgNjRsMjU2IDBjMzUuMyAwIDY0IDI4LjcgNjQgNjRsMCAyNTZjMCAzNS4zLTI4LjcgNjQtNjQgNjRMNjQgNDQ4Yy0zNS4zIDAtNjQtMjguNy02NC02NEwwIDEyOHpNNTU5LjEgOTkuOGMxMC40IDUuNiAxNi45IDE2LjQgMTYuOSAyOC4ybDAgMjU2YzAgMTEuOC02LjUgMjIuNi0xNi45IDI4LjJzLTIzIDUtMzIuOS0xLjZsLTk2LTY0TDQxNiAzMzcuMWwwLTE3LjEgMC0xMjggMC0xNy4xIDE0LjItOS41IDk2LTY0YzkuOC02LjUgMjIuNC03LjIgMzIuOS0xLjZ6IiBmaWxsPSIjRkZGRkZGIi8+PC9zdmc+");
			}
			&.doc::before {
				background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzODQgNTEyIj48cGF0aCBkPSJNNjQgMEMyOC43IDAgMCAyOC43IDAgNjRMMCA0NDhjMCAzNS4zIDI4LjcgNjQgNjQgNjRsMjU2IDBjMzUuMyAwIDY0LTI4LjcgNjQtNjRsMC0yODgtMTI4IDBjLTE3LjcgMC0zMi0xNC4zLTMyLTMyTDIyNCAwIDY0IDB6TTI1NiAwbDAgMTI4IDEyOCAwTDI1NiAwek0xMTIgMjU2bDE2MCAwYzguOCAwIDE2IDcuMiAxNiAxNnMtNy4yIDE2LTE2IDE2bC0xNjAgMGMtOC44IDAtMTYtNy4yLTE2LTE2czcuMi0xNiAxNi0xNnptMCA2NGwxNjAgMGM4LjggMCAxNiA3LjIgMTYgMTZzLTcuMiAxNi0xNiAxNmwtMTYwIDBjLTguOCAwLTE2LTcuMi0xNi0xNnM3LjItMTYgMTYtMTZ6bTAgNjRsMTYwIDBjOC44IDAgMTYgNy4yIDE2IDE2cy03LjIgMTYtMTYgMTZsLTE2MCAwYy04LjggMC0xNi03LjItMTYtMTZzNy4yLTE2IDE2LTE2eiIgZmlsbD0iI0ZGRkZGRiIvPjwvc3ZnPg==");
			}
		}
	}
}

	
#recommend {
	position: relative;
	background-color: var(--bg-color);
	z-index: 1;

	&.active  div {
		animation: 1.5s var(--elastic-out) bounce;
	}

	& > div {
		padding: 30px 0;
		position: relative;
		background-color: var(--bg-color);
		z-index: 3;

		h2 {
			padding: 15px 20px;
			display: flex;
			align-items: center;
			font-size: 1.5em;
			background-color: var(--htitle);

			&::before {
				content: "";
				width: 2.4em;
				height: 2.4em;
				margin-right: .3em;
				display: block;
				background-color: var(--font-color);
				mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiIHdpZHRoPSIyNHB4IiBmaWxsPSIjRkZGRkZGIj48cGF0aCBkPSJNNDAwLTMyMHExMDAgMCAxNzAtNzB0NzAtMTcwcTAtMTAwLTcwLTE3MHQtMTcwLTcwcS0xMDAgMC0xNzAgNzB0LTcwIDE3MHEwIDEwMCA3MCAxNzB0MTcwIDcwWm0tNDItOTggMjI2LTIyNy01Ny01Ny0xNjkgMTcwLTg1LTg0LTU3IDU2IDE0MiAxNDJabTQyIDE3OHEtMTM0IDAtMjI3LTkzVDgwLTU2MHEwLTEzNCA5My0yMjd0MjI3LTkzcTEzNCAwIDIyNyA5M3Q5MyAyMjdxMCA1Ni0xNy41IDEwNS41VDY1My0zNjRsMjI3IDIyOC01NiA1Ni0yMjgtMjI3cS00MSAzMi05MC41IDQ5LjVUNDAwLTI0MFptMC0zMjBaIi8+PC9zdmc+");
				mask-size: contain;
				mask-position: top left;
				mask-repeat: no-repeat;
			}
		}

		ul {
			margin: 0;
			padding: calc(25px - 1em) 20px;
			list-style: none;

			li {
				padding: 1em 0 1em 1.3em;
				position: relative;
				border-bottom: 1px dashed var(--border-color2);

				&::before {
					content: "";
					width: 0;
					height: 0;
					display: block;
					position: absolute;
					top: 1.2em;
					left: .5em;
					border: .3em solid transparent;
					border-left: .4em solid var(--accent-color);
				}
			}
		}
	}
}




/* //////////////////////////////////////////////////////////// */
/* footer */
/* //////////////////////////////////////////////////////////// */
footer {
	padding-top: 38px;
	position: relative;
	color: #FFF;

	& a:not(:has(img)) {
		margin-top: 12px;
		padding: 1em;
		color: #FFF;
		text-decoration: none;
		border: 2px solid #FFF;
		border-radius: 7px;
	}

	& > div:first-child {
		position: relative;
		background-image: linear-gradient(0deg, #FFF, #00A0E9);

		&::before {
			content: "";
			width: 100%;
			height: 38px;
			display: block;
			position: absolute;
			left: 0;
			background-image: url(../img/wave_b_t.svg);
			background-size: 100% 100%;
			transform: translate(0, -100%);
		}
		&::after {
			content: "";
			width: 100%;
			height: 170px;
			display: block;
			background-image: url(../img/footer.png);
			background-size: 120% auto;
			background-position: left bottom;
			background-repeat: no-repeat;
			pointer-events: none;
		}
	}

	& > div:last-child {
		padding: 25px 25px calc(76px + 1em);
		position: relative;
		background-color: var(--footer-color);

		&::before {
			content: "";
			width: 100%;
			height: 29px;
			display: block;
			position: absolute;
			top: -28px;
			left: 0;
			background-color: var(--footer-color);
			mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwMCIgaGVpZ2h0PSIyOSIgdmlld0JveD0iMCAwIDEwMDAgMjkiIGZpbGw9Im5vbmUiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEwMDAgMy4zMDA4M0M4NTUuMTk5IC0zLjUwODY1IDcxMC4zOTkgMC4yMjM0NSA1NjUuNTk5IDE0LjUwMUM0ODAuMjE0IDIyLjkyMDEgMzk0LjgzIDI3LjY3MjkgMzA5LjQ0NSAyOC43NTk4SDIzMy41MDNDMTU1LjY2OSAyNy43NjkgNzcuODM0MyAyMy43MjkyIDAgMTYuNjQ1NlYyOC43NTk4SDIzMy41MDNDMjU4LjgxNyAyOS4wODIgMjg0LjEzMSAyOS4wODIgMzA5LjQ0NSAyOC43NTk4SDEwMDBWMy4zMDA4M1oiIGZpbGw9IiNGRkZGRkYiLz48L3N2Zz4=");
			mask-size: 100% 100%;
			background-size: 100% 100%;
		}

		& .container {
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			align-items: stretch;

			& > div {
				width: 100%;
				display: flex;
				flex-direction: column;
				justify-content: space-between;
			}
			& #sns {
				display: flex;
				justify-content: space-between;
				align-items: center;

				& a:not(:has(img)) {
					margin-top: 0;
					padding: .65em 1em;
				}
			}
			& #sns ~ a {
				display: block;
			}

			& div:last-child {

				& dl {
					padding-top: 24px;

					& dt {
						margin-bottom: 1rem;
						padding-bottom: 0;
						font-size: 1.125em;
						font-weight: 400;
					}

					& dd {

						& > * {
							margin-bottom: 1em;
							display: block;
							font-style: normal;
						}
					}
				}

				& p {
					font-size: .85em;
				}
			}
		}
	}
}












/* /////////////////////////////////////////////////////////////////////////////////////// */
/* PC *//* /////////////////////////////////////////////////////////////////////////////////////// */
@media screen and (min-width: 1100px) {
	body {
		padding-left: min(27vw, 500px);
		font-size: 16px;
	}

	a:hover {
		color: var(--accent-color);
	}

	input[type="text"],
	input[type="search"],
	input[type="tel"],
	input[type="url"],
	input[type="email"],
	input[type="password"],
	input[type="datetime"],
	input[type="date"],
	input[type="month"],
	input[type="week"],
	input[type="time"],
	input[type="number"],
	textarea {
		height: 2.5em;
		padding: 0 1em;
		font-size: .9em;
	}
	.select-wrapper {
		height: 2.5em;
		font-size: .9em;
	}


	/* //////////////////////////////////////////////////////////// */
	/* #header */
	/* //////////////////////////////////////////////////////////// */
	header {
		width: min(27vw, 500px);
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		z-index: 3;

		display: block;
		background-color: var(--bg-color);

		display: flex;

		&::after {
			content: "";
			width: 100%;
			display: block;
			flex-grow: 10;
			position: relative;
			background-color: var(--bg-color);
			z-index: 1;
		}

		& #logo {
			height: auto;
			flex-grow: 0;
			z-index: 1;

				padding: 25px 0;
				box-shadow: none;

			& h1 {
				width: auto;

				& picture {
					max-width: 80%;
				}
			}

			& img[alt="庁舎"] {
				width: auto;
				height: 12vh;

				display: none;
			}
		}

		& search {
			position: relative;
			z-index: 1;

			& #keyword a:hover {
				color: var(--bg-color);
				background-color: var(--link-color);
			}
		}

		& nav {
			position: static;
			z-index: 0;

			& #main_nav {
				flex-direction: column;
				border-top: 1px solid var(--border-color1);
				box-shadow: none;

				& > li {
					width: 100%;

					&[class] > div::before {
						margin: 0 20px 0 0;
					}
					[data-bc="white"] &[class] > div::before {
						filter: brightness(1) invert(0);
					}

					&.active > div::before {
						filter: brightness(0) invert(1);
					}

					&:not(:last-child):after {
						content: none;
					}

					& > div {
						padding: 10px 25px;
						flex-direction: row;
						justify-content: flex-start;
						border-bottom: none;
						color: var(--font-color);
						font-size: .875em;
						background-color: var(--bg-color);
						border-top: none;
						border-bottom: 1px solid var(--border-color1);
						cursor: pointer;
						transition: .3s;

						padding: 20px 25px;

						&:hover {
							color: var(--link-color);
							color: var(--bg-color);
							background-color: var(--link-color);
							border-color: var(--bg-color);

							&::before {
								filter: brightness(1) invert(0);
							}
							[data-bc="white"] &::before {
								filter: brightness(0) invert(1);
							}
							&::after {
								border-color: var(--bg-color);
							}
						}

						.active & {
							color: var(--white);
							background-color: var(--main-color);
							border-color: var(--bg-color);
	
							&::before {
								filter: brightness(0) invert(1) !important;
							}
							&::after {
								border-color: var(--bg-color);
							}
						}

						& > a,
						& > div > a {
							color: var(--font-color);

							&:hover {
								color: var(--white);
							}
						}

						&::after {
							content: "";
							width: 13px;
							height: 13px;
							display: block;
							position: absolute;
							top: 50%;
							right: 15px;
							border: 1px solid var(--border-color1);
							border-bottom: none;
							border-left: none;
							transform: translate(-50%, -50%) rotate(45deg);
						}

						& strong {
							margin-right: 5px;
							font-size: 1.43em;
						}
					}
				}
			}

			& li.active .slide_nav {
				right: 0;
				opacity: 1;
			}
	
			& .slide_nav {
				width: max(73vw, calc(100vw - 500px));
				height: auto;
				display: flex;
				flex-wrap: wrap;
				justify-content: flex-start;
				align-items: flex-start;
				top: 0;
				left: auto;
				right: 50px;
				bottom: 0;
				color: var(--white);
				background-color: var(--main-color);
				opacity: 0;
				transition: .3s;

				padding-top: 10px;
				padding-left: 10px;
				align-items: stretch;
	
				& > li {
					width: 25%;
					padding-right: 25px;

					padding: 0 10px 10px 0;
					display: flex;
					flex-direction: column;
	
					& div {
						margin: 0 0 10px;
						padding: 10px 0;
						font-size: 1.13em;
						text-align: center;
						background-color: var(--bg-color);

						margin-bottom: 0;
						color: var(--font-color);

						& a {
							padding: 0;
							color: var(--link-color);
						}

						.category &::before {
							left: 5px;
						}
					}

					& a:hover {
						text-decoration: none;
						mix-blend-mode: hard-light;
						mix-blend-mode: overlay;
					}
	
					& div + ul a {
						color: var(--white);
					}

					& div + ul {
						padding: 15px;
						flex-grow: 9;
						background-image: radial-gradient(circle farthest-side at 20px 20px, #FFF3, #FFF1);
						box-shadow: 0 3px 5px 0 #0001, 0 2px 2px 0 #0003;
					}

					&:first-child h2 {
						padding-top: 20px;
					}

					&.sub-menu {
						width: 100%;
						padding: 0;

						& h2 {
							margin: 0 0 15px;
							padding-bottom: 15px;

							&::before,
							&::after {
								background-color: var(--white);
							}
						}

						& > ul {
							display: flex;
							flex-wrap: wrap;

							& > li {
								width: 25%;
                    			padding-right: 25px;

								padding: 0 10px 10px 0;
								display: flex;
								flex-direction: column;
							}
						}
					}
				}
			}
		}
	}




	/* //////////////////////////////////////////////////////////// */
	/* article */
	/* //////////////////////////////////////////////////////////// */
	main {
		min-height: 720px;
	}
	
	.container {
		width: 720px;
		margin-left: auto;
		margin-right: auto;
	}

	.btn-box a {
		width: 50%;

		&:hover {
			color: var(--bg-color);
			background-color: var(--main-color);
		}

		&:hover::after {
			filter: brightness(0) invert(1);
		}
	}



	/*--------------------------------------------------------- accessibility ---------------------------------------------------------*/
	.accessibility {
		position: static;
		background-color: rgba(0,0,0,.65);
		transform: translate(0, 0);
		z-index: 2;

		& .accessibility_btn {
			display: none;
		}

		& .accessibility-tool {
			padding: 12px;
			justify-content: flex-end;
			align-items: center;
			color: var(--white);
			font-size: .94em;

			& > * {
				width: auto;
				margin-left: 19px;
				padding: 0;
				display: block;
				border-bottom: none;

				&:nth-of-type(2n) {
					border-left: none;
				}
				&:last-child {
					width: auto;
					padding: 0;
				}
			}

			& button {
				cursor: pointer;
			}

			& #voice,
			& #kana {
				& button {
					height: 2em;
					display: flex;
					flex-direction: column;
					justify-content: center;
					align-items: center;
					color: #333;
					font-size: 1em;
					font-weight: 700;
					background-color: var(--white);
					border-radius: 3px;

					&::before {
						content: none;
					}
				}
			}

			& #color-change,
			& #font-size {
				display: flex;
				flex-direction: row;
				gap: 8px;

				& div {
					width: auto;
					padding: 0;
					display: flex;
					gap: 8px;

					& button {
						height: 2em;
						flex-grow: 0;
						border-radius: 3px;

						&.white,
						&.blue,
						&.black {
							width: 2em;
						}
					}
				}
			}
			& #language a {
				width: auto;
				height: 2em;
				padding: 0 .5em;
				display: flex;
				align-items: center;
				line-height: 1;
				border-radius: 3px;
			}
			
			& #voice,
			& #kana {
				& button:hover {
					
				}
			}
			& #color-change,
			& #font-size {
				& div {
					& button {
						&.white,
						&.blue,
						&.black {
						}
					}
				}
			}
			& #language a {
			}
			
			& #voice button,
			& #kana button,
			& #color-change div button,
			& #font-size div button,
			& #language a {
				box-shadow: 0 0 0 0 var(--main-color);
				transition: .3s;
				
				&:hover {
					box-shadow: 0 0 0 4px var(--main-color);
				}
			}
		}
	}



	/*--------------------------------------------------------- パンくず ---------------------------------------------------------*/
	#bredcrumble {
		padding: 12px;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		position: relative;
		line-height: 1.4;
		
		&::after {
			content: "";
			width: 100%;
			height: 100%;
			display: block;
			position: absolute;
			top: 0;
			left: 0;
			background-color: var(--main-color);
			mix-blend-mode: multiply;
			z-index: -1;
			opacity: .5;
		}

		.page {
			display: inline-block;
			color: #FFF;

			&:not(:last-child) {
				position: relative;
				padding-right: 2em;

				&::after {
					content: "";
					width: .6em;
					height: .6em;
					display: block;
					position: absolute;
					top: 50%;
					right: .7em;
					border-top: 1px solid #FFF;
					border-right: 1px solid #FFF;
					transform: translate(-50%, -50%) rotate(45deg);
					opacity: .5;
				}
			}

			a {
				color: #FFF;
			}
		}

		& .separator {
			display: none;
		}
	}



	/*--------------------------------------------------------- contents ---------------------------------------------------------*/
	body.cke_editable,
	#contents {
		min-height: 560px;

		#contents-title {

			&::after {
				height: 100px;
			}

			& .container {
				padding: 40px 0 125px;

				& h1 {
					font-size: 48px;
				}
			}
		}
		#contents-body {
			padding: 20px 0 10px;

			#contents-title + & {
				padding-top: 25px;
				margin-bottom: 80px;
				
				article:has(#recommend) & {
					margin-bottom: 40px;
				}
			}

			&::after {
				height: 100px;
			}

			& .news-list {
				margin: 0 0 30px;

				&:last-child {
					margin-bottom: 0;
				}

				& li {
					margin-bottom: 1em;
					padding-bottom: 1em;
					display: flex;
					border-bottom: 1px dashed var(--border-color2);

					& time {
						width: 8.5em;
						flex-shrink: 0;

						.public-comment & {
							width: 9em;
							padding-right: .5em;
							line-height: 1.5;
						}
					}
				}
			}
		}
		#contents-menu + #contents-body {
			padding-top: 10px;

			& .container {
				padding: 0 20px;
			}
		}
		
		#contents-title {

			& .container {

				&::after {
					width: 228px;
					height: 340px;
					bottom: -75px;
				}
			}
		}
		#contents-menu {
			&::before,
			&::after {
				content: none;
			}

			& nav > div {
				width: 720px;
				margin: -100px auto 0;
				padding: 20px;
				display: flex;
				overflow: visible;
				flex-wrap: wrap;
				justify-content: space-between;
				align-items: stretch;
				background-color: var(--bg-color);
				border-radius: 7px;

				& a {
					width: calc((100% - 2px) / 3);
					padding: 1em 1.5em 1em .5em;
					display: flex;
					justify-content: flex-start;
					align-items: center;
					background-color: var(--main-color);

					&:hover {
						background-color: var(--accent-color);
					}
					&::after {
						right: 10px;
					}
				}
			}
		}
		#contents-news {
			&::after {
				content: "";
				height: 100px;
				display: block;
				position: absolute;
				top: 100%;
				left: 0;
				right: 0;
				background-size: 100% 100%;
				background-image: url(../img/wave_w_b.svg);
			}
		}
		#contents-body {
			background-color: transparent;

			&::before {
				content: "";
				width: 100%;
				height: min(450px, 100%);
				display: block;
				position: absolute;
				top: 0;
				left: 0;
				background-color: var(--bg-color);
				z-index: 0;
			}
			&::after {
				top: min(450px, 100%);
				bottom: auto;
				z-index: 0;
			}

			& .container {
				width: 770px;
				padding: 10px;
				margin-top: -110px;
				box-sizing: content-box;
				background-image: linear-gradient(rgba(0,0,0,.15), transparent 400px);
				border-radius: 8px;

				position: relative;
				z-index: 1;

				& > section {
					padding: 25px;
					background-color: var(--bg-color);
					border-radius: 5px;
				}
			}

			& .section-list dd {
				padding-left: 13px;
			}

			& .menu-list {
				margin-left: 10px;

				& li {
					padding: .5em 0 .5em 12px;
				}
			}

			& .img-box {

				&:has(> *:nth-child(2)) {
					justify-content: space-between;
				}

				> * {
					width: 48%;
				}
			}
		}
		#contents-news + #contents-body {
			background-color: transparent;

			&::before,
			&::after {
				content: none;
			}

			& .container {
				margin-top: 0;
			}
		}
	}

	#recommend {
		margin: -60px auto 30px;
		background-color: transparent;

		&.active {
			box-shadow: none;
		}

		&::after {
			content: none;
		}

		> div {
			width: 770px;
			padding: 0;
			overflow: hidden;
			border-radius: 5px;

			h2 {
				margin-bottom: 0;
				padding: 10px 25px;
				align-items: center;
				background-color: var(--htitle);
				border-bottom: 1px solid var(--border-color2);

				& br {
					display: none;
				}

				&::before {
					width: 1.8em;
					height: 1.8em;
				}
			}

			ul {
				padding: 5px 25px 5px;

				& li:first-child {
					border-top: none;
				}
				& li:last-child {
					border-bottom: none;
				}
			}
		}
	}





	/*--------------------------------------------------------- footer ---------------------------------------------------------*/
	footer {
		margin-top: -190px;
		padding-top: 100px;
		
		& > div:first-child {
			&::before {
				height: 100px;
			}
			&::after {
				height: 666px;
				background-size: auto 100%;
				background-position: center bottom;
				max-height: calc((100vw - min(25vw, 500px)) * 666 / 1524);
				margin-top: calc(min(666px, (100vw - min(25vw, 500px)) * 666 / 1524) * -0.25);
			}
		}

		& > div:last-child {
			padding: 30px 0;

			& .container,
			& .container > .ss-preview-part {
				flex-direction: row-reverse;
				
				& > div:not(.ss-preview-part),
				& > .ss-preview-part > div {
					width: 45%;

					&:first-child {
						& a:hover {
							color: var(--link-color);
							background-color: var(--bg-color);

							#sns &:not(:first-child) {
								background-color: transparent;
								transform: scale(1.25);
							}
						}
					}

					&:last-child {

						& dl {
							padding-top: 0;

							dt {
								margin-bottom: 12px;
								padding-bottom: 12px;
								font-size: 1.5em;
								font-weight: 700;
								border-bottom: 2px solid #FFF;
							}
						}
					}
				}
			}
		}
	}
}





/* //////////////////////////////////////////////////////////// */
/* 印刷用 */
/* //////////////////////////////////////////////////////////// */
@media print {
	body {
		padding-left: 0;
		background-color: transparent;
		background-image: none;
	}
	header,
	footer,
	#ss-preview,
	#press-header,
	#recommend {
		display: none !important;
	}
	main {
		& .accessibility,
		& #bredcrumble {
			display: none;
		}

		& article {
			& #contents {
				min-height: auto;

				& .container {
					width: 100% !important;
					margin: 0 !important;
					padding: 30px 30px 0 !important;
					background-color: transparent !important;
					background-image: none !important;
				}

				& #contents-title {
					&::after {
						content: none;
					}

					.container h1 {
						color: #000;
						font-size: 32px;
					}
				}

				& #contents-body {
					padding: 0 !important;

					&::before,
					&::after {
						content: none;
					}
					& .container > section {
						padding: 0;

						& h2,
						& h3,
						& h4 {
							padding: 0;
							color: #000;
							text-shadow: none;
							background-color: transparent;
							background-image: none;
							border-bottom: 1px solid #000;
							border-radius: 0;

							&::before,
							&::after {
								content: none;
							}
						}
						& h2:first-child,
						& h3:first-child,
						& h4:first-child {
							margin-top: 0;
						}
						& h2 {
							margin: 40px 0 15px;
							border-bottom-width: 3px;
						}
						& h3 {
							margin: 20px 0 12px;
							border-bottom: 3px double #000;
						}
						& h4 {
							margin: 10px 0 10px;
						}
					}
				}
			}
		}
	}
	body aside {
		margin: 30px 0 0;
		padding: 30px;
		color: #000;

		& section#contact-box {
			width: 100%;

			& dl {
				margin-bottom: 0;
				position: relative;
				border: 1px solid #000;
				border-radius: 10px;
				break-before: page;

				& dt {
					margin: 0;
					position: absolute;
					left: 20px;
					bottom: 100%;
					border-radius: 4px 4px 0 0;
					transform: translate(0, 50%);
					background-color: #FFF;
					background-image: none;

					& .btn {
						padding: 0 .5em;
						display: inline-block;
						font-weight: 700;
						text-decoration: none;
						border: none;
					}
				}

				& dd {
					width: 100%;
					padding: 30px 20px calc(30px + 3em);
					display: flex;
					justify-content: space-evenly;
					align-items: flex-start;

					padding-bottom: 0;

					& > p,
					& > div {
						padding: 0;
						
						& span {
							width: auto;
							display: block;
							position: static;
							text-align: left;
						}
					}
				}

				& a {
					color: #000 !important;
				}
			}

			&.press-release {
				& > div {
					border-color: #000;
				}
			}

			& .btn {
				display: none;
			}
		}
	}

}



/* //////////////////////////////////////////////////////////// */
/* editor */
/* //////////////////////////////////////////////////////////// */
html.cke_panel_container {
	& > body.cke_ltr {
		& h2 {
			padding: .5em;
			color: var(--white);
			font-size: 1.6em;
			text-shadow: 0 1px 3px rgba(0, 0, 0, .5);
			background-color: #00A0E9;
			background-image: linear-gradient(90deg, #00A0E9 20%, rgba(0,160,233,.6)), url(../img/wave_w_t.svg);
			background-size: 150% auto;
			background-position: right bottom;
			background-repeat: no-repeat;
			border-radius: 4px;
		}
		& h3 {
			padding: 10px 16px;
			display: flex;
			justify-content: flex-start;
			align-items: stretch;
			font-size: 1.3em;
			background-color: rgba(0,130,233, .1);

			&::before {
				content: "";
				width: 5px;
				margin-right: 10px;
				display: block;
				flex-shrink: 0;
				background-color: #F90;
				border-radius: 1em;
			}
		}

		& h4 {
			position: relative;
			font-size: 1.2em;
			border-bottom: 3px solid #EEE;

			&::after {
				content: "";
				width: 25%;
				height: 3px;
				display: block;
				position: absolute;
				bottom: -3px;
				left: 0;
				background-color: #00A0E9;
			}
		}

		& h5 {
			font-size: 1.15em;
			border-bottom: 3px dotted #00A0E9;
		}

		& h6 {
			font-size: 1.1em;
		}

		& h2, & h3, & h4, & h5, & h6 {
			margin-bottom: 0;
		}
	}
}