@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Teko&display=swap');
@font-face {
  font-family: TrueWorlds;
  src: url("/font/TrueWorlds.otf?v=0fc9e73533f1b7dc");
  font-display: swap;
}
/* Main theme */
html {
	scroll-behavior: smooth;
}

body {
	margin: 0 auto;
	color: white;
	font-family: 'Noto Sans JP', sans-serif;
	min-height: 100%;
	background: #292727;
	counter-reset: section;
}

#bg-img {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -100;
	width: 100%;
	height: 100vh;
	min-height: 100%;
}

#bg-img.status-default {
	background-image: url("/img/backgrounds/default.jpg?v=822423725d43f191");
}
#bg-img.status-404 {
	background-image: url("/img/backgrounds/404.png?v=1d3b1f74e2069575");
}
#bg-img.status-500 {
	background-image: url("/img/backgrounds/500.png?v=5437234ab1881746");
}

#navlogo {
	padding-left: 45px;
	padding-top: 7px;
	padding-bottom: 7px;
	float: left;
	height: 75px;
}
#banner {
	width: 100%;
	padding-bottom: 0%;
	overflow: hidden;
	box-shadow: 0px 0px 20px 1px black inset;
}
#bannertext {
	padding-top: 3%;
	padding-right: 50px;
	text-align: right;
	font-size: 20px;
	text-shadow: 2px 2px dimgray;
	font-family: 'Noto Sans JP', sans-serif;
	font-style: italic;
}
#bannerrun {
	margin-left: 50px;
	padding-top: 27%;
	bottom: 0;
	left: 0;
}
#bannernotice {
	float: right;
	padding-top: 3%;
	padding-right: 50px;
	text-align: right;
	font-size: 18px;
	text-shadow: 2px 2px dimgray;
	font-family: 'Noto Sans JP', sans-serif;
}
#content {
	background: rgb(41, 39, 39, 0.85);
	padding: 50px;
	margin-bottom: 0;
	min-height: 100%;
	overflow-wrap: break-word;
}
footer {
	overflow: hidden;
	box-shadow: 0px 0px 20px 1px black inset;
	padding: 40px;
	text-align: center;
	font-size: 17px;
	text-shadow: 2px 2px dimgray;
	margin-bottom: 0;
}
  

 /* The navigation menu */
.navbar {
  overflow: hidden;
  background-color: rgb(41, 39, 39, 0.85);
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
}
/* Navigation links */
.navbar a {
  float: left;
  font-size: 1.1em;
  color: white;
  text-align: center;
  text-decoration: none;
  text-shadow: 2px 2px black;
}
/* Hamburger button */
#hamburger {
	display: none;
	font-size: 2.75em;
}
/* Language flags */
.flags {
	display: inline-block;
	width: 24px;
	padding-top: 20px;
	padding-left: 30px;
	margin-right: auto;
}
/* The dropdownigation menu */
.dropdown {
  float: right;
  overflow: hidden;
}
.dropdownbtn {
  text-shadow: 2px 2px black;
  font-family: TrueWorlds;
  padding: 25px 56px 25px 0px;
}
/* dropdown button */
.dropdown .dropdownbtn {
  font-size: 35px;
  font-weight: normal;
  border: none;
  outline: none;
  color: white;
  background-color: inherit;
  margin: 0;
}
/* Add a red background color to navigation links on hover */
.navbar a:hover, .dropdown:hover .dropdownbtn {
  color: silver;
}
/* Style the dropdown content - positioned absolute */
.dropdown-content {
  display: none;
  position: absolute;
  background-color: rgb(41, 39, 39, 0.75);
  min-width: 100px;
  z-index: 1;
}
/* Style the dropdown links */
.dropdown-content a {
  float: none;
  color: white;
  text-decoration: none;
  font-size: 16px;
  padding: 10px 16px; /*margin: 14px 30px 14px 0;*/
  text-shadow: 2px 2px #292727;
  display: block;
  text-align: left;
}
/* Add a grey background color on hover */
.dropdown-content a:hover {
  color: silver;
}
/* When you move the mouse over the dropdown container, open the dropdown content */
.dropdown:hover .dropdown-content,
.dropdown:focus-within .dropdown-content {
  display: block;
} 

.skiplink {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.skiplink:focus {
  position: static;
  width: auto;
  height: auto;
}

/* Unset default link styles */
a {
	color: unset;
	text-decoration: unset;
}

/* link styles */
.link:link {
	color: #55ffff;
	text-decoration: underline;
}
.link:visited {
	color: #55ffff;
	text-decoration: underline;	
}
.link:hover {
	color: silver;
	text-decoration: underline;
}

/* Table styles*/
table, th, td {
	border: 2px solid dimgray;
}
table {
	border-collapse: collapse;
	width: 65%;
	height: auto;
	border-style: solid;
	text-align: center;
}
th {
	text-decoration: underline;
	font-weight: bold;
	padding: 20px 0;
	color: #55ffff;
}
td {
	padding: 10px;
}
.table-left {
	float: left;
	width: 45%; 
	margin-top: 50px; 
	margin-right: 50px;
}
table.table-shops {
	border-collapse: collapse;
	width: auto;
	border-style: solid;
	margin-left: 0;
}
table.table-shops td, table.table-shops th {
	padding: 5px;
	text-align: left;
}

/* font styles */
h2 {
	font-size: 5em;
	color: #55ffff;
	margin-top: 10px;
	margin-bottom: 20px;
	font-family: TrueWorlds;
	font-weight: normal;
}
h3 {
	font-size: 3em;
	color: #55ffff;
	margin-top: 80px;
	margin-bottom: 20px;
	font-family: TrueWorlds;
	font-weight: normal;
}
h4 {
	display: block;
	margin-top: 60px;
	margin-bottom: 20px;
	font-size: 1.5em;
	font-weight: bold;
	text-decoration: underline;
	color: #ffffff;
}
h5 {
	display: block;
	margin-top: 2.2em;
	margin-bottom: 1em;
	font-size: 1.05em;
	font-weight: bold;
	text-decoration: underline;
	color: #ffffff;
}
h6 {
	display: block;
	margin-top: 2.2em;
	margin-bottom: 1em;
	font-size: 1.05em;
	font-weight: bold;
	color: #ffffff;
}
p {
	width: 1400px;
}
ul > li, ol > li {
  width: 1400px;
}
li li {
  width: 100%;
}
.darkblue {
	color: #0000aa;
	text-shadow: 1px 1px #151515;
}
.darkgreen {
	color: #00aa00;
	text-shadow: 1px 1px #151515;
	}
.darkaqua {
	color: #00aaaa;
	text-shadow: 1px 1px #151515;
}
.darkred {
	color: #aa0000;
	text-shadow: 1px 1px #151515;
}
.darkpurple {
	color: #aa00aa;
	text-shadow: 1px 1px #151515;
}
.gold {
	color: #ffaa00;
	text-shadow: 1px 1px #151515;
}
.gray {
	color: #aaaaaa;
	text-shadow: 1px 1px #151515;
}
.darkgray {
	color: #555555;
	text-shadow: 1px 1px #151515;
}
.blue {
	color: #5555ff;
	text-shadow: 1px 1px #151515;
}
.bluepurple {
	color: #802BD5;
	text-shadow: 1px 1px #151515;
}
.green {
	color: #55ff55;
	text-shadow: 1px 1px #151515;
}
.aqua {
	color: #55ffff;
	text-shadow: 1px 1px #151515;
}
.red {
	color: #ff5555;
	text-shadow: 1px 1px #151515;
}
.lightpurple {
	color: #ff55ff;
	text-shadow: 1px 1px #151515;
}
.yellow {
	color: #ffff55;
	text-shadow: 1px 1px #151515;
}
.white {
	color: #ffffff;
	text-shadow: 1px 1px #151515;
}
.midred {
	color: #b83d3d;
	text-shadow: 1px 1px #151515;
}


/* image styles */
.stafficon {
	width: 32px;
	height: 32px;
	margin-top: 1em;
}
.mapimage {
	width: 30%;
	float: right;
	border: 3px solid dimgray;
	border-radius: 4px;
	margin: 30px 0px 0px 30px;
}
.importantimage {
	border: 3px solid dimgray;
	border-radius: 4px;
}
.otherimage {
	width: 30%;
	float: right;
	border: 3px solid dimgray;
	border-radius: 4px;
	margin: 16px 0px 16px 16px;
}
.navicon {
	height: 20px;
	margin-right: 5px;
}

/* news */
.newsimage {
	width: 30%;
	float: right;
	border: 3px solid dimgray;
	border-radius: 4px;
	margin: 30px 0px 30px 30px;
}
.newstitle {
	margin-top: 30px;
	margin-bottom: 0px;
}
.date {
	color: #555555;
	font-size: 13px;
	margin-top: 0px;
	text-decoration: none;
	font-family: 'Noto Sans JP', sans-serif;
}

/* other */
.indent {
	padding-left: 30px;
}
.center {
	text-align: center;
}
#scrollbox {
	height: 200px;
	width: 500px;
	overflow: auto;
	border: 2px solid #555555;
	padding: 10px;
}
.sidescroll {
	overflow-x: auto;
}
.settings button {
	width: 125px;
	padding: 2px;
}
ol.listspacing > li {
    margin-bottom: 16px;
}
#toc, #toc ol {
	counter-reset: item;
}
#toc li {
	display: block;
}
#toc li:before {
	content: counters(item, ".") ". ";
	counter-increment: item;
}
h3.autonumbering {
	counter-reset: subsection;
}
h3.autonumbering::before {
	counter-increment: section;
	content: counter(section) ". ";
}
h5.autonumbering::before {
	counter-increment: subsection;
	content: counter(section) "." counter(subsection) ". ";
}
.iteminfo {
	background-color: rgba(41, 39, 39, 0.85);
}

@media screen and (max-width: 1500px) {
.dropdownbtn {
	padding: 10px 56px 15px 10px;
}
.otherimage {
	width: 40%;
}
.mapimage {
	width: 40%;
}
.newsimage {
	width: 40%;
}
p {
	width: 100%;
}
ul > li, ol > li {
	width: 100%;
}
hr {
	width: 100%;
}
table {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
.navbar {
	flex-direction: column;
}
.navbar div:first-child {
	margin-right: unset;
}
.navbar div:not(:first-child) {
	display: none;
}
.flags {
	width: auto;
}
.flags a {
	padding-left: 10px;
}
#hamburger {
	float: right;
	display: block;
	padding-right: 50px;
	padding-top: 20px;
	padding-bottom: 20px;
	height: 50px;
	font-size: 2.25em;
}
.navbaritem {
	padding-left: 50px;
}
.navbar.responsive > div {
	display: block;
	text-align: left;
}
}

@media screen and (max-width: 1000px) {
#navlogo {
	padding-left: 7px;
}
#hamburger {
	padding-right: 10px;
}
#bannertext {
	padding-top: 10%;
	padding-right: 0px;
	text-align: center;
	font-size: 15px;
}
#bannerrun {
	margin-left: 10px;
}
#bannernotice {
	float: none;
	padding-top: 10%;
	padding-right: 0px;
	text-align: center;
	font-size: 13px;
}
#content {
	padding: 10px;
}
.otherimage {
	width: 70%;
	float: none;
	margin: 10px 0px 10px 0px;
}
.mapimage {
	width: 70%;
	float: none;
	margin: 10px 0px 10px 0px;
}
.importantimage {
	max-width: 95%;
}
.newsimage {
	width: 70%;
	float: none;
	margin: 10px 0px 10px 0px;
}
#scrollbox {
	max-width: 95%;
}
.table-left {
	float: none; 
	width: 100%; 
	margin: 10px 0px 10px 0px;
}
}

@media screen and (max-width: 500px) {
.importantimage {
	max-width: 99%;
}
.otherimage {
	width: 99%;
}
.mapimage {
	width: 99%;
}
.newsimage {
	width: 99%;
}
}

.markdown {
	a {
		color: #55ffff;
		text-decoration: underline;
	}
	a:link {
		color: #55ffff;
		text-decoration: underline;
	}
	a:visited {
		color: #55ffff;
		text-decoration: underline;
	}
	a:hover {
		color: silver;
		text-decoration: underline;
	}
	mark {
		background: none;
		color: #55ffff;
		text-shadow: 1px 1px #151515;
	}
	h5.autonumbering a {
		color: #fff;
	}
	h3.autonumbering a {
		text-decoration: none;
	}
}
