@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Stick+No+Bills:wght@700&display=swap');
@import url("font.css");

html {
	font-size: 62.5%;
}
body {
	font-family: 'Noto Sans JP', sans-serif;
  background: #000000;
	color: #ffffff;
	width: 100%;
	height: 100%;
	margin:0;
	padding: 0;
	-webkit-text-size-adjust: 100%;
	font-size: 1.6rem;
	line-height: 2em;
	font-weight: 400; 
	font-feature-settings: "palt" 1;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding :0;
	font-weight: 500; 
}
table {
}
img, figure, figcaption {
	border: 0;
	margin: 0;
	padding: 0;
	vertical-align: top;
}
img {
	width: 100%;
  height: auto;
}
* {
  box-sizing: border-box;
	position: relative;
}
a, a:hover, a img, a:hover img {
	-webkit-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
a {
	color: #ffffff;
  text-decoration: none;
	display: inline-block;
}
a:hover {
  opacity: 0.6;
}

p {
	margin: 0;
	padding: 0;
	text-align: justify;
	text-justify: distribute;
}
ul, ol, li, dl, dt, dd {
	margin: 0;
	padding: 0;
	list-style: none;
}
table {
	width: 100%;
	border: none;
}
tbody {
	border-top: 0px;
}
th {
	padding-right: 0em;
	border-bottom: none;
}
tbody th {
	border-bottom: none;
}
.pc {
	display: inline;
}
.sp {
	display: none;
}
#Content > section, #Content > section .inner > *, #Content > section .inner > * > li {
	transition: all 1s;
}
#Wrapper {
	text-align: center;
}

/*header
-------------------------------------------------------*/
#top {
  display: block;
}
header {
  /*background: #000000 url("../img/bg.jpg?date=20250208") center top no-repeat;
  background-size: cover;*/
}
header .inner {
	padding: 0 0 20px 0;
}
header .Logo {
	width: 200px;
  margin: 0 auto 20px auto;
}
header h1 {
	z-index: 10;
}

/*footer
-------------------------------------------------------*/
#btnTop {
  position: fixed;
  right: 0px;
  bottom: 0px;
  z-index: 10;
}
#btnTop a {
	background: #000000;
	color: #ffffff;
  width: 50px;
  height: 50px;
  padding: 15px;
	text-decoration: none;
	text-align: center;
  display: block;
}
#btnTop a::before {
  font-family: FontAwesome;
	content: "\f106";
	font-size: 2.0rem;
	line-height: 2.0rem;
  display: block;
}
footer .inner {
	padding: 20px 0 40px 0;
}
footer .Logo {
	width: 180px;
	margin: 0 auto;
	margin-bottom: 10px;
	line-height: 1em;
}
#Copy {
	font-size: 1.1rem;
	line-height: 2em;
	font-weight: 400;
	text-align: center;
}

/*flex
-------------------------------------------------------*/
.flex, #Cont1 dl > * {
	display: -webkit-flex;
	display: flex;
	flex-direction: row;
  flex-wrap: wrap;
}

/*
-------------------------------------------------------*/
#Content section, footer {
	margin-top: 100px;
}
#Content .inner {
}
#Content .inner > *:nth-child(n+2) {
	margin-top: 50px;
}
.btn a {
	background: #442200;
	color: #ffffff;
	width: 200px;
	height: 40px;
	margin: 0 auto;
	line-height: 3.8rem;
}
.btn a::after {
  font-family: FontAwesome;
	content: "\f105";
	padding-left: 0.5em;
  display: inline-block;
}

h2 {
  color: #555555;
  line-height: 1.5em;
}
h2 span {
  font-family: 'Stick No Bills', sans-serif;
  color: #ffffff;
  font-size: 6.0rem;
  line-height: 1.5em;
  display: block;
  text-shadow: rgba(216,54,64,0.7) 0 0 20px, rgba(216,54,64,1.0) 0 0 10px;
}
.center {
  text-align: center;
}
.indent {
  padding-left: 1em;
  text-indent: -1em;
}
.caution {
  color: #e00000;
  font-weight: 500;
}
.double {
  border-bottom: #e00000 4px double;
}
.annotation {
  padding-left: 1.3em;
}
.annotation li {
	font-size: 1.4rem;
	line-height: 2.0em;
  text-align: justify;
}
.annotation li::before {
  content: '※';
  display: block;
  position: absolute;
  left: -1.3em;
  top: 0;
}
.explanation {
	font-size: 1.4rem;
  line-height: 2.0em;
}
.announce {
  border: #ffffff 1px solid;
  padding: 40px 20px;
	font-size: 2.0rem;
}
.ggmap {
  padding-bottom: 100%;
	height: 0;
	position: relative;
	overflow: hidden;
} 
.ggmap iframe, .ggmap object, .ggmap embed {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/*Cont1
-------------------------------------------------------*/
#Cont1 dl, #Cont1 dl > * {
	align-items: flex-start;
}
#Cont1 dl > *:nth-of-type(n+2) {
	margin-top: 30px;
}
#Cont1 dl dt {
	background: #ffffff;
	color: #000000;
	width: 100%;
	font-weight: 500;
}
#Cont1 dl dd {
	width: 100%;
	font-size: 2.0rem;
	line-height: 2.0em;
	text-align: justify;
	text-justify: distribute;
}
#Cont1 dl dd > *:nth-child(n+2):not(a) {
	margin-top: 20px;
}
#Cont1 dl dd strong {
	font-size: 1.6rem;
	line-height: 2.0em;
}
#Cont1 dl dd h3 strong {
  font-size: 2.7rem;
  line-height: 2.0em;
  font-weight: 900;
}
#Cont1 dl dd ol {
	padding-left: 25px;
}
#Cont1 dl dd ol li {
	font-size: 1.4rem;
	line-height: 2.8rem;
	list-style: decimal;
}
#Cont1 dl dd ol li:nth-of-type(n+2) {
	padding-top: 10px;
}
#Cont1 dl dd .link {
  line-height: 1.0em;
}
#Cont1 dl dd .link li a {
  background: linear-gradient(to bottom,  #ffff00 0%,#ffcc00 100%);
  color: #000000;
  padding: 40px 20px;
  text-align: center;
  display: block;
  border-radius: 10px;
}

/*Cont2
-------------------------------------------------------*/
#Cont2 {
  background: #D83640;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}
#Cont2 .inner {
  padding: 100px 0;
}
#Cont2 h2 {
  color: rgba(255,255,255,0.3);
}
#Cont2 h3 {
  font-size: 3.0rem;
  line-height: 1.5em;
  font-weight: 700;
}
#Cont2 .caution {
  color: #ffff00;
}

/*Cont3
-------------------------------------------------------*/
#Cont3 .inner > ul.flex > li > *:nth-child(n+2) {
  margin-top: 20px;
}
#Cont3 .inner > ul.flex > li > h3 + *:nth-child(n+2), #Cont3 .inner > ul.flex > li > *:nth-child(n+2).ggmap {
  margin-top: 40px;
}
#Cont3 h3 {
  border: #ffffff 2px solid;
  padding: 20px 10px;
  font-size: 2.4rem;
  line-height: 1.5em;
}
#Cont3 .capacity, #Cont3 .capacity strong {
  font-size: 2.0rem;
  line-height: 1.5em;
  font-weight: 700;
}

/*pc
-------------------------------------------------------*/
@media print, screen and (min-width: 768px) {
	
  .inner {
    max-width: 1140px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
  }

  /*column
  -------------------------------------------------------*/
  .flex.sb, .column1, .column2, .column3, #Cont2 .inner > ul li {
    justify-content: space-between;
  }
	.flex.center {
    justify-content: center;
  }
	.flex.vcenter {
		align-items: center;
  }
  .column1 > * {
    width: 100%;
		height: auto;
  }
  .column2 > * {
    width: 48%;
		height: auto;
  }
  .column3 > * {
    width: 29%;
		height: auto;
  }
	
	/*header
	-------------------------------------------------------*/
  header .inner {
    max-width: 1200px;
    margin: 0 auto;
  }
	header h1 {
	}
	header .Logo {
	}
	
	/*
	-------------------------------------------------------*/
	h2 img {
		width: 460px;
		height: auto;
	}
	
	/*Cont1
	-------------------------------------------------------*/
	#Cont1 dl dt {
		width: 180px;
    margin-right: 40px;
	}
	#Cont1 dl dd {
    flex: 1;
	}
  #Cont1 dl dd .link {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 30px
  }
	
	/*Cont2
	-------------------------------------------------------*/
  #Cont2 .ggmap {
    padding-bottom: 600px;
  } 
	#Cont2 p {
    text-align: center;
	}
	
	/*Cont3
	-------------------------------------------------------*/
	#Cont3 .annotation {
    min-height: 90px;
	}
  #Cont3 .column1 > * {
    width: 600px;
		height: auto;
    margin-left: auto;
    margin-right: auto;
  }
  #Cont3 .column1 .ggmap {
    padding-bottom: 60%;
  }
  
}


/*sphone
-------------------------------------------------------*/
@media screen and (max-width: 767px) {
	
	body {
		font-size: 1.4rem;
		line-height: 2em;
	}
	img {
		max-width: 100%;
		height: auto;
	}
	.pc {
		display: none;
	}
	.sp {
		display: inline;
	}

  /*flex
  -------------------------------------------------------*/
	.flex {
	}
	
	/*header
	-------------------------------------------------------*/
  header {
    /*background: url("../img/bg_s.jpg?date=20250208") center top no-repeat;
    background-size: cover;*/
  }
	header .inner {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
		/*padding: 20px 0;*/
	}
	header .Logo {
		width: 160px;
	}

	/*footer
	-------------------------------------------------------*/
	footer .Logo {
		width: 160px;
	}
	#Copy {
		font-size: 1.0rem;
		line-height: 2em;
	}

	/*
	-------------------------------------------------------*/
	#Wrapper {
		overflow: hidden;
	}
	#Content section, footer {
		margin-top: 60px;
	}	
	#Content .inner {
		padding: 0 20px;
	}
	#Content .inner > *:nth-child(n+2) {
		margin-top: 40px;
	}
  h2 {
    font-size: 1.6rem;
    line-height: 1.5em;
  }
  h2 span {
    font-size: 4.0rem;
    line-height: 1.5em;
  }
  .ggmap {
    padding-bottom: 76.25%;
  }

	/*Cont1
	-------------------------------------------------------*/
	#Cont1 dl > dd:nth-of-type(n+2), #Cont1 dl dd {
		margin-top: 20px !important;
	}
	#Cont1 dl dt {
		font-size: 1.4rem;
		line-height: 2.0em;
	}
	#Cont1 dl dd {
		font-size: 1.6rem;
		line-height: 2.0em;
	}
  #Cont1 dl dd h3 strong {
    font-size: 2.2rem;
  }
  #Cont1 dl dd .link li:nth-of-type(n+2) {
    padding-top: 20px;
  }
  
	/*Cont2
	-------------------------------------------------------*/
  #Cont2 .inner {
    padding: 60px 20px;
  }
  #Cont2 h3 {
    font-size: 2.4rem;
    line-height: 1.5em;
  }

	/*Cont3
	-------------------------------------------------------*/
	#Cont3 li {
    width: 100%;
	}
	#Cont3 .inner > ul.flex > li:nth-of-type(n+2) {
    margin-top: 60px;
	}
  #Cont3 h3 {
    font-size: 2.0rem;
    line-height: 1.5em;
  }
  #Cont3 .capacity, #Cont3 .capacity strong {
    font-size: 1.8rem;
    line-height: 1.5em;
  }

}