@charset "UTF-8";

#float {
	position: fixed;
	z-index: 9999;
	top:  0px;
	left: 0px;
	width: 100%;
	height: 100vh;
	margin: auto;
	background: rgba(255,255,255,0.95);
	text-align: left;
	display: none;
	opacity: 0.0;
}
		
#floatclose {
	display: block;
	width: 100%;
	height: 40px;
	margin: 10px 0px;
	text-indent: -9999px;
	background-image: url(/image/close.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

#floatcont {
	height: calc(100vh - 80px);
	margin: 0px auto;
	padding: 10px 0px;
	overflow: auto;
	-webkit-overflow-scrolling: auto;
}

ul,
ol {
	
}

.l { text-align: left !important; }
.c { text-align: center !important; }
.r { text-align: right !important; }
.b { font-weight: bold; }

hr {
	display: block;
	position: relative;
	overflow: visible;
	text-align: center;
	border-width: 2px 0 0 0;
	border-style: dotted;
	border-color: #888888;
	height: 1rem;
	margin: 15px 10px;
}

p.tbm {
	margin: 2rem auto;
}

p.tblrm {
	margin: 2rem 2rem;
}

img.blkcimg {
	display: block;
	text-align: center;
	margin: 10px auto;
	max-width: calc(100% - 20px);
	height: auto;
}

.button {
	border-radius: 10px 10px 10px 10px; -webkit-border-radius: 10px 10px 10px 10px; -moz-border-radius: 10px 10px 10px 10px; 
	font-size: 24px;
	font-weight: bold;
	display: inline-block;
	width: 270px;
	padding: 10px 0px;
	text-decoration: none;
	-webkit-touch-callout: none;
}

.button {
	background: linear-gradient(#1d50a2, #213a70);
	color: #ffffff;
	border: 4px double #213a70;
}

.button:active {
	background: #ffffff;
	color: #1d50a2;
	border: 4px solid #213a70;
}

blockquote {
	margin: 20px 10px 30px 10px;
	padding: 10px;
	border-radius: 10px 10px 10px 10px; -webkit-border-radius: 10px 10px 10px 10px; -moz-border-radius: 10px 10px 10px 10px; 
	border: 1px dashed #888888;
	background: rgba(250,250,250,0.95);
}

input, 
textarea, 
select { 
	padding: 3px;
	border: 1px solid #888888;
}

fieldset { 
	padding: 10px;
	border: 1px solid #AAAAAA;
	background: rgba(250, 250, 250, 0.8);
	margin-bottom: 10px;
}

fieldset legend {
	padding: 0px 1rem;
}

input:invalid,
select:invalid,
textarea:invalid {
	background: #FFEEEE;
}

input.attent {
	background: #FFFF88;
}

.inpstrg { font-size: 150%; font-weight: bold; }

.inpmax { width: calc(100% - 8px - 20px); }
.inp025 { width:  25px; }
.inp050 { width:  50px; }
.inp100 { width: 100px; }
.inp150 { width: 150px; }
.inp200 { width: 200px; }
.inp250 { width: 250px; }
.inp300 { width: 300px; }
.inp400 { width: 400px; }
.inp500 { width: 500px; }
.inp600 { width: 600px; }
.inp700 { width: 700px; }
.inp800 { width: 800px; }
.inp100p { width: 100%; }

input:placeholder-shown 		 { 	color: #888888; }
input::-webkit-input-placeholder { 	color: #888888; }
input:-moz-placeholder 			 { 	color: #888888; }
input::-moz-placeholder 		 { 	color: #888888; }
input:-ms-input-placeholder 	 { 	color: #888888; }

input[type="button"][disabled],
input[type="submit"][disabled] {
	background: #DDDDDD !important;
	color: #888888 !important;
	cursor: not-allowed !important;
}

span.biggest {
	font-weight: bold;
	font-size: xx-large;
}

body {
}

header nav ul {
	list-style-type: none;
}

header nav ul li {
	text-align: right;
}

body section article ol,
body section article ul {
	margin-left: 20px;
}

h1 {
	display: block;
	text-align: center;
	width: 100%;
}

h1 span {
	display: block;
	margin: 0px auto;
	width: 352px; 
	height: 210px; 
	background-image: url(/rsrcs/top_005.png); 
	background-size: contain; 
	background-repeat: no-repeat; 
	text-indent: -9999px; 
}

main section article {
	margin: 20px 0px;
}

article.cnt,
article.lft {
	background: rgba(255, 255, 255, 0.8);
	border-radius: 10px 10px 10px 10px; -webkit-border-radius: 10px 10px 10px 10px; -moz-border-radius: 10px 10px 10px 10px; 
	padding: 10px 5px;
}

article.cnt {
	text-align: center;
}

article.lft {
	text-align: left;
}

article.cnt p,
article.lft p { 
	margin: 0.25rem 0px 0.75rem 0px; 
}

img#footimage {
	display: block;
	text-align: center;
	margin: 10px auto;
	max-width: 100%;
	height: auto;
}

footer nav ul,
footer nav p {
	text-align: center;
}

footer nav ul li {
	margin: 0;
	padding: 0px 1.5rem;
	display: inline;
}


footer nav ul li:nth-of-type(1) {
	padding-left: 0rem;
}

footer nav ul li:nth-of-type(2) {
	padding-right: 0rem;
}

footer nav p {
	margin: 20px auto;
}

/*
footer nav p * {
	font-size: 10px;
}

footer nav p label {
	white-space: nowrap;
}
*/

footer p a {
	display: inline-block;
	background-image: url(/image/j-n-logo.svg);
	background-repeat: no-repeat;
	padding-left: 45px;
	color: #222222;
}

nav#gnav {
	background: linear-gradient(	 transparent 0%
									,rgba(255, 255, 255, 0.8) 1%
									,rgba(255, 255, 255, 0.8) 99%
									,transparent 100%
									);
	padding: 10px 0px;
	margin: 0px 0px 20px 0px;
}

nav#gnav ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

nav#gnav ul li {
	display: inline-block;
	width: calc(100% / 3 - 4px);
	margin: 10px 3px;
}

nav#gnav ul li:nth-of-type(1) { margin-left:  0px; }
nav#gnav ul li:nth-of-type(3) { margin-right: 0px; }

nav#gnav ul li a {
	display: block;
	text-align: center;
	font-size: 90%;
	line-height: 250%;
	background: #2980af;
	color:      #ffffff;
}

nav#gnav ul li a.now {
	background: #213a70;
	color:      #ffffff;
}


#tabzone {
	margin: 0px 0px 0px 0px;
	position: relative;
}

#tabzone a {
	text-decoration: none;
}

#tabzone hr {
	margin: 0px;
	padding: 0px;
	width: 100%;
	height: 1px;
	border: none;
	border-top: 1px #006bb4 solid;
	position: absolute;
	top: 36px;
	z-index: 1;
}

.tabbtn {
	display: none;
}

.tabitm h4.h4half {
	display: block;
	width: calc(50% - 2px);
	height: 28px;
	line-height: 28px;
	text-align: center;
	float: left;
	background: #2980af;
	color: #ffffff;
	border-top: 1px solid #2980af;
	border-left: 1px solid #2980af;
	border-right: 1px solid #2980af;
	border-bottom: 1px solid #213a70;
	position: relative;
	z-index: 2;
}

.tabitm h4:hover {
	cursor: pointer;
}

input:checked + .tabitm h4 {
	border-top: 1px solid #213a70;
	border-left: 1px solid #213a70;
	border-right: 1px solid #213a70;
	border-bottom: 1px solid #213a70;
	background: #213a70;
	color: #ffffff;
}

.tabcnt {
	display: none;
	padding: 0;
	clear: both;
	overflow: hidden;
}

#tab1:checked ~ #view1,
#tab2:checked ~ #view2 {
	display: block;
}

#view1,
#view2 {
	margin: 0px 0px;
	background: #213a70;
	border-bottom: 1px solid #213a70;
	border-left: 1px solid #213a70;
	border-right: 1px solid #213a70;
	padding: 10px;
}

#view1 div.tabwrap,
#view2 div.tabwrap {
	overflow: hidden;
	background: #FFFFFF;
}

#map {
	width: 100%;
	height: 400px;
}

.dlstamp {
	float: left;
	width: calc((100% - 2px) / 3);
	height: 190px;
	background: #FFFFFF;
	display: block;
	text-align: center;
	border-right: 1px solid #213a70;
	border-top: 1px solid #213a70;
}

.dlstamp:nth-child(3n+3) { 
	border-right: 0px solid transparent;
}

.dlstamp dt,
.dlstamp dd {
	margin: 0;
	padding: 0;
}

.dlstamp dt span {
	display: block;
}

.dlstamp dt span:nth-of-type(1),
.dlstamp dt span:nth-of-type(2) {
	width: calc(50% - 8px);
	font-weight: bold;
}

.dlstamp dt span:nth-of-type(1) label {
	font-weight: normal;
	font-size: 75%;
}

.dlstamp dt span:nth-of-type(1) {
	float: left;
	text-align: left;
	padding-left: 8px;
}

.dlstamp dt span:nth-of-type(2) {
	float: left;
	text-align: right;
	padding-right: 8px;
}

.dlstamp dt span:nth-of-type(3) {
	clear: both;
	width: 100%;
	height: 4.0em;
	border-top: 1px solid #213a70;
	border-bottom: 1px solid #213a70;
	display: flex;
	align-items: center;
	justify-content: center;
}

.dlstamp dt span:nth-of-type(3) label {
	width: calc(100% - 10px);
	font-size: 80%;
	text-align: center;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden; 
}

.dlstamp dd {
	height: 110px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.dlstamp dd img {
	height: 90px;
	width: auto;
}

.dlcamps {
	width: 100%;
	height: 140px;
	background: #FFFFFF;
	display: block;
	overflow: hidden;
	text-align: left;
	border-top: 1px solid #213a70;
}

.dlcamps dt span:nth-of-type(1) {
	width: 3rem;
	float: left;
	text-align: center;
	color: #F62C11;
	font-weight: bold;
}

.dlcamps dt span:nth-of-type(2) {
	width: calc(100% - 3rem);
	height: 3.0em;
	float: left;
	text-align: center;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden; 
}

.dlcamps dd {
	
}

.dlcamps dd img {
	display: block;
	margin-right: 10px;
	width: 120px;
	height: auto;
	float: left;
}

.dlcamps dd p {
	width: calc(100% - 120px - 10px);
}

.dlcamps dd p,
.dlcamps dd p * {
	font-size: 80%;
}

.dlcamps dd p:nth-of-type(1) {

	float: left;
	height: 4.5em;
	text-align: left;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden; 
}

.dlcamps dd p:nth-of-type(2) {
	float: left;
	text-align: right;
}

.dlcamps dd p:nth-of-type(2) a {
	background: #F62C11;
	color: #FFFFFF;
	padding: 2px 5px;
	margin-right: .5rem;
}

.pitems {
	width: 100%;
	line-height: 200%;
	display: block;
	text-align: center;
	font-weight: bold;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	border-top: 1px solid #213a70;
	background: #213a70;
	color: #ffffff;
}

.dlitems {
	float: left;
	width: calc((100% - 1px) / 2);
	height: 270px;
	padding: 5px 0px;
	background: #FFFFFF;
	display: block;
	text-align: center;
	border-top: 1px solid #213a70;
}

.dlitems * {
	font-size: 80%;
}

.dlitems p {
	width: calc(100% - 1rem);
	margin: 3px 0.5rem;
}

.od { 
	border-right: 0.5px solid #213a70;
}

.ev { 
	border-left: 0.5px solid #213a70;
}

.dlitems dt,
.dlitems dd {
	margin: 0;
	padding: 0;
}


.dlitems dt p:nth-of-type(1) label {
	display: block;
	height: 150%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.dlitems dt p:nth-of-type(2) {
	height: 6.0em;
	text-align: center;
	margin: 0px auto;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden; 
}

.dlitems dt p label {
	margin: 0px 1rem;
	background: #F62C11;
	color: #FFFFFF;
}

.dlitems dd p:nth-of-type(1) {
	height: 100px;
	overflow: hidden;
}

.dlitems dd p:nth-of-type(1) img {
	height: 100px;
	width: auto;
}

.dlitems dd p:nth-of-type(2) {
	height: 4.5em;
	text-align: center;
	margin: 0px auto;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden; 
}

.dlitems dd p:nth-of-type(3) {
	font-size: 150%;
	line-height: 200%;
	background: #2980af;
	color:      #ffffff;
}

.dlitems dd p:nth-of-type(3) a {
	display: block;
	font-size: 100%;
	background: linear-gradient(#1d50a2, #213a70);
	color: #ffffff;
	outline: 1px double #213a70;
	outline-offset: -1px;
}

.btn_twitter,
.btn_facebook,
.btn_line {
	display: inline-block;
	height: 40px;
	line-height: 40px;
	background-size: 40px 40px;
	background-repeat: no-repeat;
	background-position: left;
	padding-left: 46px;
}

.btn_twitter {
	background-image: url(/image/twitter_or.svg);
}

.btn_facebook {
	background-image: url(/image/facebook_oror.svg);
}

.btn_line {
	background-image: url(/image/line_or.svg);
}

#itemform {
	padding: 10px;
}

#itemform dt {
	text-indent: 1rem;
	border-bottom: 1px solid #AAAAAA;
	padding-bottom: 3px;
	margin-bottom:  3px;
}

#itemform dd {
	padding-left: 3rem;
	margin-bottom: 15px;
}

#itemform input.numb {
	width: 4rem;
}

.precdl {
	margin: 15px 0px;
}

.precdl dt {

}

.precdl dd {
	margin: 7px 0px 15px 2rem;
}

.precdl dd p {
	margin-bottom: 10px;
}

.precdl dd ul,
.precdl dd ol {
	margin-left: 1rem;
}

.precdl dd ol {
	list-style-type: none;
	margin-left: -0.5rem;
}

.precdl dd ol li {
	text-indent: -2.5rem;
	padding: 0px 0px 0px 2.5rem;
}

.precdl dd ul.idt,
.precdl dd ol.idt {
	margin-left: 2.5rem;
}

.precdl dd li {
	margin-bottom: 5px;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* pc */
@media all and (min-width: 768px) {
	
	header,
	main,
	footer {
		text-align: center;
		margin: 0px auto;
	}
	
	header nav,
	main section,
	footer nav {
		width: calc(768px - 5px - 5px);
		padding: 0px 5px;
		margin: 0px auto;
		text-align: left;
	}
	
	#floatcont {
		width: 768px;
	}
	
}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* sp */
@media all and (max-width: 767px) {
	/*
	a {
		text-decoration: none;
	}
	*/
	header nav ul li {
		padding-right: 5px;
	}
	
	#floatcont {
		width: 100%;
	}
	
	main,
	footer {
		padding: 0px 5px;
	}
	
}

