@charset "utf-8";

/**
 * font
 * 
 */
@font-face {
  font-family: 'fontello';
  src: url('../font/fontello.eot?4387305');
  src: url('../font/fontello.eot?4387305#iefix') format('embedded-opentype'),
       url('../font/fontello.woff2?4387305') format('woff2'),
       url('../font/fontello.woff?4387305') format('woff'),
       url('../font/fontello.ttf?4387305') format('truetype'),
       url('../font/fontello.svg?4387305#fontello') format('svg');
  font-weight: normal;
  font-style: normal;
}


/**
 * Global
 * 
 */
* {
	margin: 0;
	padding: 0;
}


html, body {
	height: 100%;
}
body {
	background: #fff;
	color: #333;
	font-size: 15px;
	line-height: 1.6;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}


img {
	border: 0;
}
img, input, textarea {
	vertical-align: bottom;
}
figure img {
	width: 100%;
	height: auto;
}
hr {
	border-top: 1px dotted #8c8b8b;
	color: #FFFFFF;
}
em {
	font-style: normal;
}

a:link, a:visited {
	color: #333;
	text-decoration: none;
	outline: none;
}
a, a img, a::after, a span, label img {
	transition: background-color .2s ease, border-bottom-color .2s ease, color .2s ease, opacity .2s ease, text-decoration .2s ease;
}

i, address {
	font-style: normal;
}
b {
	font-weight: normal;
	font-style: normal;
}








/**
 * #body
 * 
 */
#body {
	position: relative;
	min-height: 100%;
	height: 100%;
}
#body::after {
	content: '';
	display: block;
	clear: both;
}
#body #header-container {
	position: absolute;
	top: 0;
	box-sizing: border-box;
	width: 232px;
	min-height: 100%;
	height: 100%;
}
#body #content-container {
	position: relative;
	box-sizing: border-box;
	margin-left: 232px;
	height: 100%;
	background-color: #f5f7f4;
}





/**
 * header.global
 * 
 */
header.global.fixed {
	position: fixed;
}
header.global #logo {
	padding: 40px 30px 40px;
	font-size: 16px;
}
header.global #logo a {
	display: block;
}
header.global #logo img {
	display: block;
	width: 172px;
	height: auto;
}
header.global #logo img:nth-of-type(2) {
	margin-top: 24px;
}


header.global nav {
	line-height: 1;
	font-size: 12px;
}
header.global nav div > ul {
	padding-top: 28px;
	padding-bottom: 28px;
	padding-left: 32px;
	border-top: 1px solid #e7e7e7;
}
header.global nav div > ul#nav-formers {
	padding-top: 12px;
	margin-bottom: 12px;
}
header.global nav ul li {
	display: block;
}
header.global nav ul li a {
	display: inline-block;
	line-height: 1;
}
header.global nav ul li:not(.banner) a::before {
	display: inline-block;
	vertical-align: top;
	margin-top: 9px;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\e803';
	color: #ccc;
	font-size: 12px;
}
header.global nav ul li a.current::before, 
header.global nav ul li a:hover::before {
	color: #65ab31;
}
header.global nav ul li:not(.banner) img {
	display: inline-block;
	border-bottom: 1px solid #fff;
}
header.global nav ul li:not(.banner) a.current img,
header.global nav ul li:not(.banner) a:hover img {
	border-bottom-color: #65ab31;
}
header.global nav  div > ul > li {
	display: block;
	padding: 4px 0;
}
header.global nav div > ul > li > span {
	display: inline-block;
	margin-left: 12px;
	padding: 8px 0 7px;
}
header.global nav div > ul > li > a > img {
	padding: 8px 0 7px;
}
header.global nav ul li#nav-bustour {
}
header.global nav ul li#nav-bustour a img {
	width: 170px;
	height: auto;
}
header.global nav ul li#nav-bustour a:hover img {
	opacity: 0.8;
}
header.global nav ul li ul {
	margin-left: 12px;
}
header.global nav ul li ul li {
	padding: 2px 0;
}
header.global nav ul li ul li img {
	padding: 8px 0 7px;
	vertical-align: middle;
	line-height: 1;
}
header.global nav ul li ul li a::before {
	margin-top: 10px;
}





/**
 * footer
 * 
 */
footer.global {
	margin-top: -246px;
	width: 100%;
	text-align: center;
}
#home + footer.global {
	background-color: #eceee7;
}
footer.global .content {
	position: relative;
	box-sizing: border-box;
	padding: 32px 0;
	height: 214px;
}
footer.global .content h1 {
	line-height: 1;
	font-size: 12px;
}
footer.global .content h1 img {
	width: auto;
	height: 80px;
}
footer.global .content #footer-contact {
	margin-top: 16px;
	line-height: 1;
	font-size: 12px;
}
footer.global .content #footer-contact dt {
	display: block;
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: bold;
}
footer.global .content #footer-contact dd {
	line-height: 14px;
}
footer.global .content #footer-contact dd + dd {
	margin-top: 4px;
}
footer.global .content #footer-contact dd i, 
footer.global .content #footer-contact dd span {
}
footer.global .content #footer-contact dd i {
	margin-right: 4px;
}
footer.global .content #footer-contact dd i img {
	vertical-align: baseline;
}
footer.global #copyright {
	background-color: #8dc21f;
}
footer.global #copyright small {
	line-height: 32px;
	font-size: 10px;
}





/**
 * .container
 * 
 */
.container {
	opacity: 0;
	box-sizing: border-box;
	padding-bottom: 246px;
	min-height: 100%;
	background-color: #f5f7f4;
}



/**
 * .content
 * 
 */
.content {
	margin: 0 auto;
	padding: 36px 48px;
	max-width: 1038px;
	
}





.link-to {
	margin-top: 12px;
	line-height: 1;
}
.link-to a {
}
#home #events .archives section .link-to > span::before,
.link-to a::before {
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\e803';
	color: #ccc;
	font-size: 12px;
}
#home #events .archives section .link-to > span span,
.link-to a span {
	display: inline-block;
	padding-bottom: 4px;
	border-bottom: 1px dashed #666;
	font-size: 12px;
	font-weight: bold;
}
#home #events .archives section .link-to > span span {
	max-width: calc(100% - 12px);
}
#home #events .archives section a:hover .link-to > span::before,
.link-to a:hover::before {
	color: #65ab31;
}
#home #events .archives section a:hover .link-to > span span,
.link-to a:hover span {
	border-bottom: 1px solid #65ab31;
}


.link-external a {
	display: inline-block;
	vertical-align: middle;
	padding-bottom: 2px;
	border-bottom: 1px dashed #333;
	font-size: 13px;
	line-height: 1.2;
	transition: all 0.2s ease;
}
.link-external a i {
	display: inline-block;
	vertical-align: top;
	margin-left: 8px;
	/*background: url(../images/pc/link-external-hover.svg) no-repeat 0 0;*/
	line-height: 1;
}
.link-external a i svg {
	stroke: #333;
	transition: all 0.2s ease;
}
.link-external a:hover {
	border-bottom: 1px solid #65ab31;
}
.link-external a:hover i svg {
	stroke: #65ab31;
	/*opacity: 0;*/
}




/**
 * #home
 * 
 */
#home {
}
#home #slide-container {
}
#home #slide-container #slide ul li {
	position: relative;
	padding-top: calc(100% * 736 / 1584);
}
#home #slide-container #slide ul li img {
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

#home section {
}
#home #home-content > section:nth-child(odd) {
	background-color: #eceee7;
}
#home #home-content > section:nth-child(odd) .content {
	/*padding: 24px 48px;*/
}
#home #home-content > section:not(#about) h1 {
	margin-bottom: 24px;
	line-height: 1;
	font-size: 14px;
}
#home #home-content > section h1 img {
	display: inline-block;
	padding-bottom: 7px;
	border-bottom: 1px solid #65ab31;
}
#home #home-content > section .link-to {
	margin-top: 24px;
}

#home #home-content #notices {
	margin: 48px 0 0;
}
#home #home-content #notices .content {
	padding: 0 48px;
}
#home #home-content #notices .content .notice-body {
	box-sizing: border-box;
	padding: 24px;
	border: 2px solid #8dc21f;
	background-color: #fff;
	font-size: 16px;
	font-weight: bold;
}
#home #home-content #notices .content .notice-link-to {
	margin-top: 16px;
}
#home #home-content #notices .content .notice-link-to a {
	padding: 8px;
	background-color: #c9e200;
	line-height: 1;
	font-size: 14px;
}
#home #home-content #notices .content .notice-link-to a span::before {
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\e803';
	color: #fff;
	font-size: 12px;
}

#home #about {
}
#home #home-content > #about .link-to {
	margin-top: 16px;
}
#home #home-content > #about figure {
	margin-top: 32px;
}
#home #home-content > #about figure figcaption {
	margin-bottom: 12px;
	line-height: 1;
	font-size: 15px;
	font-weight: bold;
}
#home #home-content > #about figure img {
	max-width: 100%;
	width: auto !important;
}
#home #home-content > #about figure.video {
	width: calc(100% * 480 / 696);
}
#home #home-content > #about figure.video > div {
	position: relative;
	padding-top: 56.25%;
	width: 100%;
}
#home #home-content > #about figure.video > div iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#home #home-content > #about dl.former-video {
	margin-top: 40px;
}
#home #home-content > #about dl.former-video dt {
	margin-bottom: 8px;
	font-weight: bold;
}
#home #home-content > #about dl.former-video dt br {
	display: none;
}
#home #home-content > #about dl.former-video dd {
	width: calc(100% * 480 / 696);
}
#home #home-content > #about dl.former-video dd div {
	position: relative;
	padding-top: 56.25%;
	width: 100%;
}
#home #home-content > #about dl.former-video dd iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#home #newsreports {
}
#home #newsreports .section-body {
	padding: 24px;
	background-color: #fff;
}
#home #newsreports .section-body dl + dl {
	margin-top: 16px;
}
#home #newsreports .section-body dl dt, 
#home #newsreports .section-body dl dd {
	display: inline-block;
	vertical-align: middle;
}
#home #newsreports .section-body dl dt {
	width: 9em;
	font-size: 14px;
}
#home #newsreports .section-body dl dd.genre {
	margin-right: 16px;
	min-width: calc(4em + 18px);
	line-height: 1;
	font-size: 11px;
	font-weight: bold;
}
#home #newsreports .section-body dl dd.genre span {
	display: inline-block;
	padding: 4px 8px;
	border: 1px solid #ccc;
}
#home #newsreports .section-body dl dd.title {
	font-size: 14px;
}
#home #newsreports .section-body dl dd.title a {
}
#home #newsreports .section-body dl dd.title a::before {
	display: inline-block;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\e803';
	color: #ccc;
	font-size: 12px;
}
#home #newsreports .section-body dl dd.title a span {
	border-bottom: 1px solid #fff;
}
#home #newsreports .section-body dl dd.title a:hover::before {
	color: #333;
}
#home #newsreports .section-body dl dd.title a:hover span {
	border-bottom-color: #333;
}

#home #events .archives {
	margin-top: -24px;
	margin-left: -24px;
}
#home #events .archives section {
	display: inline-block;
	vertical-align: top;
	margin-top: 24px;
	margin-left: 24px;
	width: calc((100% - 48px) / 2);
	background-color: #fff;
}
#home #events .archives section figure {
	border-bottom: 1px solid #ccc;
}
#home #events .archives section figure img {
}
#home #events .archives section header {
	margin-bottom: 24px;
	padding: 24px 24px 0;
}
#home #events .archives section header .no {
	line-height: 1;
	color: #65ab31;
	font-size: 12px;
	font-weight: bold;
}
#home #events .archives section header h2 {
	line-height: 1.4;
	font-size: 18px;
}
#home #events .archives section header h2 span {
	display: block;
}
#home #events .archives section header .period {
	margin-top: 6px;
	line-height: 1;
	font-size: 10px;
}
#home #events .archives section .excerpt {
	margin-top: 20px;
	line-height: 1.67;
	font-size: 12px;
	text-align: justify;
}
#home #events .archives section .link-to {
	padding: 0 24px 24px;
	line-height: 1;
	font-size: 12px;
	font-weight: bold;
}

#home #usefultools {
}
#home #usefultools .archives {
	margin-left: -24px;
}
#home #usefultools .archives dl {
	display: inline-block;
	margin-left: 24px;
	width: calc((100% - 48px) / 2);
}
#home #usefultools .archives dl dt a {
	display: block;
	position: relative;
	padding: 24px;
	background-color: #fff;
	line-height: 1;
}
#home #usefultools .archives dl dt a::after {
	display: block;
	position: absolute;
	content: '';
	box-sizing: border-box;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 2px solid #65ab31;
	opacity: 0;
}
#home #usefultools .archives dl dt a span {
	font-size: 16px;
	font-weight: bold;
}
#home #usefultools .archives dl dt a span::before {
	display: inline-block;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\e803';
	color: #ccc;
	font-size: 12px;
}
#home #usefultools .archives dl dt a:hover::after {
	opacity: 1;
}
#home #usefultools .archives dl dt a:hover span::before {
	color: #65ab31;
}
#home #usefultools .archives dl dd {
	margin-top: 12px;
	font-size: 12px;
}

#home #access {
}
#home #access .wrapper {
}
#home #access .wrapper figure, 
#home #access .wrapper .summary {
	display: inline-block;
	vertical-align: top;
	width: calc((100% - 24px) / 2);
}
#home #access .wrapper .summary {
	margin-left: 24px;
	line-height: 1.71;
	font-size: 14px;
	text-align: justify;
}

#home #relatedinformation .wrapper {
}
#home #relatedinformation .wrapper figure, 
#home #relatedinformation .wrapper .summary {
	display: inline-block;
	vertical-align: top;
	width: calc((100% - 24px) / 2);
}
#home #relatedinformation .wrapper .summary {
	margin-right: 24px;
	line-height: 1.71;
	font-size: 14px;
	text-align: justify;
}





/**
 * #about
 * 
 */
#about {
}
#about #single-container > header {
	margin-bottom: 24px;
}
#about #lead h1 {
	margin-bottom: 18px;
	line-height: 1;
	font-size: 26px;
}
#about #lead p {
	line-height: 1.93;
	font-size: 15px;
	font-weight: bold;
}
#about #lead p em {
	display: block;
	margin-top: 12px;
	font-size: 12px;
	font-weight: normal;
}
#about #article-body > figure {
	margin-bottom: 32px;
}


#about #article-body #area {
	margin-top: 32px;
}
#about #article-body #area figure {
	margin-bottom: 24px;
}
#about #article-body #area dl {
	margin-left: 32px;
	margin-top: 10px;
	line-height: 1;
	font-size: 12px;
}
#about #article-body #area dl dt,
#about #article-body #area dl dd,
#about #article-body #area dl dt i {
	display: inline-block;
}
#about #article-body #area dl dt {
	margin-right: 8px;
	width: calc(26px + 6em);
	color: #65ab31;
	font-weight: bold;
}
#about #article-body #area dl dt i {
	margin-right: 8px;
}
#about #article-body #area dl dt i img {
	vertical-align: middle;
}


#about #article-body > section {
	margin-top: 48px;
	padding: 24px;
	background-color: #fff;
}
#about #article-body > section + section {
	margin-top: 24px;
}
#about #article-body > section header {
	position: relative;
	overflow: hidden;
}
#about #article-body > section header > .header-body {
	float: left;
	width: calc(100% - 192px - 24px);
}
#about #article-body > section header h1 {
	margin-bottom: 24px;
	color: #65ab31;
	line-height: 1;
	font-size: 18px;
}
#about #article-body > section header .lead {
	line-height: 1.74;
	font-size: 15px;
}
#about #article-body > section header figure {
	float: right;
	width: 192px;
	text-align: right;
}
#about #article-body > section header figure img, 
#about #article-body > section header figure figcaption {
	display: inline-block;
	vertical-align: bottom;
}
#about #article-body > section header figure img {
	width: auto;
	height: 109px;
}
#about #article-body > section header figure figcaption {
	font-size: 12px;
	text-align: left;
}
#about #article-body > section .section-body {
	display: flex;
	align-items: center;
	margin-top: 16px;
	padding: 24px;
	border: 1px solid #e7e7e7;
}
#about #article-body > section .section-body h2 {
	margin-bottom: 20px;
	line-height: 1;
	font-size: 16px;
}
#about #article-body > section .section-body > div {
	width: calc((100% - 24px) * 408 / 576);
}
#about #article-body > section .section-body > div .description {
	line-height: 1.83;
	font-size: 12px;
	text-align: justify;
}
#about #article-body > section .section-body > figure {
	margin-left: 24px;
	width: calc((100% - 24px) * 168 / 576);
}
#about #article-body > section#komonology-dainipponichi .section-body > div {
	width: calc((100% - 24px) * 468 / 576);
}
#about #article-body > section#komonology-dainipponichi .section-body > div .description {
	line-height: 1.6;
	font-size: 13px;
}
#about #article-body > section#komonology-dainipponichi .section-body > figure {
	width: calc((100% - 24px) * 108 / 576);
}


#about #article-body > h2 {
	margin-top: 64px;
	margin-bottom: 16px;
	line-height: 1;
	font-size: 14px;
}
#about #article-body > h2::before {
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\f111';
	color: #dcdcd6;
	font-size: 10px;
	transform: scale(0.6);
}
#about #article-body > h2 + div + h2 {
	margin-top: 40px;
}
#about #article-body > h2 + div {
	padding: 24px;
	background-color: #fff;
}
#about #article-body #eventoutline h3 {
	line-height: 1;
	font-size: 16px;
}
#about #article-body  #eventoutline > div {
	margin-top: 24px;
	line-height: 1.2;
}
#about #article-body  #eventoutline dl {
	margin-top: 8px;
}
#about #article-body  #eventoutline dl dd {
}
#about #article-body  #eventoutline dl dt {
	display: block;
	float: left;
}
#about #article-body  #eventoutline dl dd {
	padding-left: 8px;
	border-left: 1px solid #333;
}
#about #article-body  #eventoutline #date-and-venu dl {
	font-size: 14px;
}
#about #article-body  #eventoutline #date-and-venu dl dt {
	width: 6em;
}
#about #article-body  #eventoutline #date-and-venu dl dd {
	margin-left: 6em;
}
#about #article-body  #eventoutline #date-and-venu dl dd span {
	display: block;
	margin-top: 8px;
	font-size: 13px;
}
#about #article-body  #eventoutline #banking dl {
	font-size: 13px;
}
#about #article-body  #eventoutline #banking dl dt {
	width: 3em;
}
#about #article-body  #eventoutline #banking dl dd {
	margin-left: 3.5em;
}
#about #article-body  #precautions {
	line-height: 1.83;
	font-size: 12px;
}
#about #article-body  #precautions ul {
	
}
#about #article-body  #precautions ul li {
	display: block;
}
#about #article-body  #precautions ul li::before {
	display: inline-block;
	vertical-align: middle;
	content: '・';
	width: 12px;
}





/**
 * #events
 * 
 */
.events {
}

.events .content > header #root-title {
	line-height: 1;
}
.events .content > header h1 img, 
.events .content > header #root-title > img,
.events .content > header #root-title a {
	display: inline-block;
	padding-bottom: 8px;
	border-bottom: 1px solid #65ab31;
}
.events .content > header h1 img {
	border-bottom-width: 2px;
}
.events .content > header #root-title > img, 
.events .content > header #root-title a > img {
	width: auto;
	height: 16px;
}
.events .content > header #root-title a i {
	display: inline-block;
	vertical-align: top;
	margin-left: 4px;
	background: url(../images/pc/link-close.svg) no-repeat 0 0;
}
.events .content > header #root-title a i img {
	background-color: #f5f7f4;
}
.events .content > header #root-title a.opened i img {
	opacity: 0;
}

.events .content h1 + #genre-nav {
	margin-top: 24px;
}
.events .content #root-title + #genre-nav {
	margin-top: 16px;
	display: none;
}

.events #juku-nav {
	margin-top: 24px;
}
.events #juku-nav ul {
	padding: 16px 0;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
.events #juku-nav ul li {
	display: inline-block;
}
.events #juku-nav ul li + li {
	margin-left: 8px;
}
.events #juku-nav ul li a {
	display: block;
	box-sizing: border-box;
	padding: 11px 16px 10px;
	border: 1px solid #999;
	background-color: #fff;
	line-height: 1;
}
.events #juku-nav ul li a:hover, 
.events #juku-nav ul li a.current {
	border-color: #65ab31;
	background-color: #65ab31;
	color: #fff;
	font-weight: bold;
}

.events #genre-nav {
	padding: 8px 20px 16px;
	background-color: #fff;
}
.events #genre-nav ul {
	margin-top: -8px;
	margin-left: -16px;
}
.events #genre-nav ul li {
	display: inline-block;
	vertical-align: middle;
	margin-top: 8px;
	margin-left: 16px;
}
.events #genre-nav ul li a {
	display: inline-block;
	padding: 4px 0;
	line-height: 1;
	font-size: 13px;
	border-bottom: 1px dashed #333;
}
.events #genre-nav ul li a.current, 
.events #genre-nav ul li a:hover {
	color: #65ab31;
	border-bottom: 1px solid #65ab31;
	font-weight: bold;
}

.events #date-nav {
	overflow: hidden;
	padding: 16px 0;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	font-feature-settings: "palt";
}
.events #date-nav > dl dt, 
.events #date-nav > dl dd {
	display: inline-block;
	vertical-align: middle;
	line-height: 26px;
}
.events #date-nav > dl dt {
	width: 64px;
	font-size: 14px;
	font-weight: bold;
}
.events #date-nav > dl dt::before {
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\f111';
	color: #dcdcd6;
	font-size: 10px;
	transform: scale(0.6);
}
.events #date-nav > dl dd {
	font-size: 12px;
}
.events #date-nav > dl dt + dd {
}
.events #date-nav > dl dt + dd a {
	padding: 0 8px;
	display: block;
	cursor: pointer;
}
.events #date-nav > dl dt + dd a#select {
	background-color: #fff;
	border: 1px solid #999;
}
.events #date-nav > dl dt + dd a#selected {
	background-color: #65ab31;
	border: 1px solid #65ab31;
	color: #fff;
	font-weight: bold;
}
.events #date-nav > dl dt + dd a::after {
	display: inline-block;
	vertical-align: middle;
	margin-left: 8px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	font-size: 18px;
}
.events #date-nav > dl dt + dd a.closed::after {
	content: '\f107';
}
.events #date-nav > dl dt + dd a.opened::after {
	content: '\f106';
}
.events #date-nav > dl dd + dd {
	margin-left: 20px;
}
.events #date-nav > dl dd + dd a {
	display: block;
	border-bottom: 1px dashed #333;
}
.events #date-nav #days {
	display: none;
	margin: 16px 0 0;
	padding: 16px;
	background-color: #fff;
}
.events #date-nav #days dl {
	overflow: hidden;
	font-size: 12px;
}
.events #date-nav #days dl + dl {
	margin-top: 16px;
}
.events #date-nav #days dl dt {
	display: block;
	float: left;
	width: 32px;
	text-align: center;
	font-weight: bold;
}
.events #date-nav #days dl dd {
	margin-left: 48px;
}
.events #date-nav #days dl dd ul {
	margin-top: -8px;
	margin-left: -14px;
}
.events #date-nav #days dl dd ul li {
	display: inline-block;
	margin-top: 8px;
	margin-left: 14px;
	width: 4em;
}
.events #date-nav #days dl dd ul li a {
	display: block;
	border-bottom: 1px dashed #333;
	text-align: center;
}
.events #date-nav #days dl dd ul li a span {
	display: inline-block;
	
}

.events #date-nav > dl dd + dd a:hover, 
.events #date-nav #days dl dd ul li a:hover, 
.events #date-nav #days dl dd ul li a.current {
	color: #65ab31;
	border-color: #65ab31;
}
.events #archive-container > header #date-nav ul li a.current, 
.events #date-nav dd ul li a:hover {
}


.events #archive-container > header h1 {
	line-height: 1;
}
.events #archive-container > header #root-title + h1 {
	margin-top: 40px;
}
.events #archive-container > header #genre-nav {
}
.events .content header #genre-nav + h1 {
	margin-top: 32px;
}
.events .content header #period {
	margin-top: 8px;
	line-height: 1;
	font-size: 12px;
}
.events .content header #summary {
	margin-top: 16px;
	line-height: 1.7;
	font-size: 14px;
	text-align: justify;
}
.events #archive-container > header #summary + #date-nav {
	margin-top: 16px;
}
.events #archive-container > header #genre-nav + #date-nav {
	margin-top: 24px;
}

.events .archives {
	margin-left: -24px;
}

.events .archives a {
	display: block;
	position: relative;
}
.events .archives a::after {
	display: block;
	position: absolute;
	content: '';
	box-sizing: border-box;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 2px solid #65ab31;
	opacity: 0;
}
.events .archives a:hover::after {
	opacity: 1;
}
.events .archives a:hover .genre span {
	border-bottom-color: #65ab31;
}

.events .archives .event {
	display: inline-block;
	vertical-align: top;
	margin-top: 24px;
	margin-left: 24px;
	width: calc((100% - 72px) / 3);
	background-color: #fff;
}
.events #archive-container .archives .event figure {
	position: relative;
	overflow: hidden;
	width: 100%;
	padding-top: calc(100% * 2 / 3);
	border-bottom: 1px solid #ccc;
	z-index: 10;
}
.events #archive-container .archives .event figure span {
	display: block;
}
.events #archive-container .archives .event figure img {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.events #archive-container .archives .event figure.landscape img {
	width: 100%;
	height: auto;
}
.events #archive-container .archives .event figure.portrait img {
	width: auto;
	height: 100%;
}
.events .archives .event header {
	position: relative;
	padding: 12px 16px;
}
.events .archives .event header p.no {
	margin-bottom: 8px;
	color: #65ab31;
	line-height: 1;
	font-size: 12px;
	font-weight: bold;
}
.events .archives .event header h1 {
	line-height: 1.28;
	font-size: 14px;
}
.events .archives .event header .period {
	margin-top: 12px;
	line-height: 1.28;
	font-size: 11px;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'YuGothic', 'Yu Gothic', 'メイリオ', Meiryo, sans-serif;;
	font-feature-settings: "palt";
}
.events .archives .event .genre {
	padding: 0 16px 12px;
	line-height: 1;
	font-size: 10px;
	font-weight: bold;
}
.events .archives .event .genre span {
	display: inline-block;
	padding-bottom: 4px;
	border-bottom: 1px dashed #333;
}
.events .archives .event .genre span + span {
	margin-left: 12px;
}
.events .archives .event .type {
	position: absolute;
	top: 8px;
	right: 8px;
	line-height: 1;
	font-size: 10px;
	font-weight: bold;
}
.events .archives .event .type span {
	display: inline-block;
	padding: 3px 3px 2px;
}
.events .archives .event .type span + span {
	margin-left: 4px;
}
.events .type span.teikikaisai {
	background-color: #a2d7b3;
}
.events .type span.futeikikaisai {
	background-color: #cae798;
}


.events #page-nav {
	margin-top: 40px;
	text-align: center;
}
.events #page-nav #paginate-links a.page-numbers, 
.events #page-nav #paginate-links span.current {
	display: inline-block;
	margin: 0 4px;
	width: 26px;
	line-height: 26px;
	font-size: 13px;
	border: 1px solid #999;
}
.events #page-nav #paginate-links a.page-numbers {
	background-color: #fff;
	border: 1px solid #999;
}
.events #page-nav #paginate-links a.page-numbers:hover, 
.events #page-nav #paginate-links span.current {
	background-color: #65ab31;
	border-color: #65ab31;
	color: #fff;
	font-weight: bold;
}
.events #page-nav #paginate-links a.next, 
.events #page-nav #paginate-links a.prev {
	border: none;
	background-color: #ccc;
	background-position: 0 0;
	background-repeat: no-repeat;
	font-size: 10px;
}
.events #page-nav #paginate-links a.next {
	background-image: url(../images/pc/link-next-hover.svg)
}
.events #page-nav #paginate-links a.prev {
	background-image: url(../images/pc/link-prev-hover.svg)
}
.events #page-nav #paginate-links a.next:hover img, 
.events #page-nav #paginate-links a.prev:hover img {
	opacity: 0;
}



.events aside#nav, 
.events #single-container article .specifics + .specifics, 
.events #single-container article #venue-and-contact, 
.events #single-container article #exhibitors, 
.events #single-container article #yunoyamanight-map {
	margin-top: 24px;
	border-top: 1px solid #ccc;
}
.events #single-container article .wrapper {
	margin: 0 auto;
	max-width: 696px;
}


.events #single-container > header {
	
}
.events #single-container > header #root-title {
	margin-bottom: 24px;
}
.events #single-container > header h1 {
	padding: 12px;
	background-color: #fff;
	line-height: 1;
	font-size: 15px;
	font-weight: normal;
}


.events #single-container article {
	margin-top: 40px;
}
.events #single-container article .wrapper > header {
	margin-bottom: 40px;
}
.events #single-container article .wrapper > header .no {
	margin-bottom: 6px;
	line-height: 1;
	color: #65ab31;
	font-size: 18px;
	font-weight: bold;
}
.events #single-container article .wrapper > header h1 {
	display: inline-block;
	vertical-align: middle;
	line-height: 1.5;
	font-size: 26px;
}
.events #single-container article.archive header h1 {
	line-height: 1;
	font-size: 24px;
}
.events #single-container article header #year-around {
	display: inline-block;
	vertical-align: middle;
	margin-left: 12px;
	padding: 0 4px;
	line-height: 24px;
	font-size: 13px;
	font-weight: bold;
	border: 1px solid;
	color: #65ab31;
	border-color: #65ab31;
}
.events #single-container article .wrapper > header .type {
	margin-top: 8px;
	line-height: 24px;
	font-size: 13px;
	font-weight: bold;
}
.events #single-container article .wrapper > header .type span {
	display: inline-block;
	/*padding: 6px 8px 4px;*/
	padding: 0 8px;
}
.events #single-container article .wrapper > header .type span + span {
	margin-left: 8px;
}

.events #single-container article figure img {
	display: block;
	max-width: 696px;
	max-height: 464px;
	width: auto !important;
	height: auto !important;
	margin: 0 auto;
}
.events #single-container article #logo {
	margin-top: 24px;
	width: 216px;
}
.events #single-container article #logo img {
	width: 100%;
	height: auto;
}

.events #single-container article .description {
	margin-top: 16px;
	line-height: 1.73;
	font-size: 14px;
}
.events #single-container article .specifics {
	padding-top: 32px;
}
.events #single-container article .specifics h2 {
	display: inline-block;
	vertical-align: middle;
	padding-left: 8px;
	border-left: 3px solid #ccc;
	line-height: 1.2;
	font-size: 15px;
}
.events #single-container article .video {
	margin-top: 16px;
}
.events #single-container article .video > div {
	position: relative;
	padding-top: 56.25%;
	width: 100%;
}
.events #single-container article .video > div iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.events #single-container article .specifics .tradename-and-pr {
	margin-top: 16px;
	/*padding:*/ 
	border: 1px solid #b5b5b6;
	border-radius: 6px;
	line-height: 1.73;
	font-size: 14px;
}
.events #single-container article .specifics .tradename-and-pr h3 {
	display: inline-block;
	padding: 6px 0 6px 24px;
	border-bottom: 1px solid #b5b5b6;
	font-size: 14px;
	font-weight: normal;
}
.events #single-container article .specifics .tradename-and-pr .specific-body {
	padding: 8px 24px;
}
.events #single-container article .specifics .application-attention {
	display: inline-block;
	vertical-align: middle;
	margin-left: 4px;
	padding: 4px 4px 2px;
	border: 1px solid #65ab31;
	color: #65ab31;
	line-height: 1;
	font-size: 11px;
	font-weight: bold;
}
.events #single-container article .specifics h2 + .specific, 
.events #single-container article .specific:first-child {
	margin-top: 0;
	border-top: none;
}
.events #single-container article .specifics .tradename-and-pr + .specific {
	border-top: none;
}
.events #single-container article .specific {
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid #ccc;
	font-size: 14px;
}
.events #single-container article .specific h3 {
	margin-bottom: 8px;
	line-height: 1;
	font-size: 14px;
}
.events #single-container article .specific h3::before {
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\f111';
	color: #dcdcd6;
	font-size: 10px;
	transform: scale(0.6);
}
.events #single-container article .specific .specific-body {
	margin-left: 12px;
}
.events #single-container article .specific .specific-body #map-link li {
	display: block;
}



.events #single-container article .periods .table {
	display: table;
	border-collapse: collapse;
}
.events #single-container article .periods dl {
	display: table-row;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'YuGothic', 'Yu Gothic', 'メイリオ', Meiryo, sans-serif;;
	font-feature-settings: "palt";
}
.events #single-container article .periods dl dt, 
.events #single-container article .periods dl dd {
	display: table-cell;
}
.events #single-container article .periods dl dt {
	text-align: right;
}
.events #single-container article .periods dl dd {
	padding-left: 8px;
}
.events #single-container article .time ol li {
	display: block
}


.events #single-container article .application .attention {
	display: inline-block;
	margin-bottom: 8px;
	padding: 8px;
	border: 1px solid #65ab31;
	color: #65ab31;
	line-height: 1;
	font-weight: bold;
}

.events #single-container article .application #methods {
	overflow: hidden;
	margin-top: 16px;
	border-radius: 4px;
	width: 456px;
}
.events #single-container article .application h4 {
	position: relative;
	background-color: #65ab31;
	color: #fff;
	line-height: 48px;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	cursor: pointer;
}
.events #single-container article .application h4 i {
	display: block;
	position: absolute;
	top: 17px;
	right: 16px;
	width: 14px;
	height: 14px;
}
.events #single-container article .application h4 i img {
	position: absolute;
}
.events #single-container article .application h4.opened i img:nth-of-type(1) {
	display: none;
}
.events #single-container article .application #methods > div {
	display: none;
	padding: 16px;
	background-color: #fff;
}
.events #single-container article .application #methods > div dl {
	line-height: 1;
}
.events #single-container article .application dl + dl {
	margin-top: 16px;
}
.events #single-container article .application dl dt::before {
	display: inline-block;
	vertical-align: middle;
	width: 8px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\f111';
	color: #333;
	font-size: 10px;
	transform: scale(0.4);
}
.events #single-container article .application dl dd {
	margin-top: 8px;
	margin-left: 8px;
	color: #666;
	font-weight: bold;
}
.events #single-container article .application dl dd::before {
	display: inline-block;
	width: 20px;
	vertical-align: middle;
	conetnt: '';
}
.events #single-container article .application dl.tel dd::before {
	content: url(../images/pc/application-tel.svg);
}
.events #single-container article .application dl.fax dd::before {
	content: url(../images/pc/application-fax.svg);
}
.events #single-container article .application dl.mail dd::before {
	content: url(../images/pc/application-mail.svg);
}
.events #single-container article .application dl.hp dd::before {
}
.events #single-container article .application dl dd a {
}
.events #single-container article .application dl dd a:hover {
	color: #65ab31;
}

.events #single-container article .contact dl dt, 
.events #single-container article .venue dl dt {
	font-size: 15px;
}
.events #single-container article .contact dl dd, 
.events #single-container article .venue dl dd {
	margin-left: 4px;
	font-size: 13px;
}
.events #single-container article .venue #map-container {
	margin-top: 16px;
	padding: 4px;
	width: 456px;
	height: 248px;
	background-color: #fff;
}
.events #single-container article .venue #map {
	width: 100%;
	height: 100%;
}

.events #single-container article .contact {
	margin-top: calc(24px - 0.4em);
	padding-top: 16px;
	border-top: 1px solid #ccc;
	padding-left: 12px;
	line-height: 1.8;
}
.events #single-container article .contact li {
	display: block;
}
.events #single-container article .contact li span.label {
	display: inline-block;
	width: 4em;
}
.events #single-container article .contact li span.value::before {
	display: inline-block;
	content: '｜';
	margin-right: 4px;
}
.events #single-container article .website {
	margin-top: 4px;
}
.events #single-container article .website a {
	font-size: inherit;
}
.events #single-container article .sns {
	margin-top: 10px;
}
.events #single-container article .sns ul {
	display: flex;
	align-items: center;
	gap: 12px;
}
.events #single-container article .sns ul li {
	display: inline-block;
}
.events #single-container article .sns ul li a {
	display: flex;
	align-items: center;
}
.events #single-container article .sns li + li {
}

.events #single-container article #exhibitors section {
	overflow: hidden;
	margin-top: 16px;
	padding: 24px;
	background-color: #fff;
}
.events #single-container article #exhibitors section figure {
	float: right;
	width: 192px;
	margin-left: 24px;
}
#nakagawamasashichi #single-container article #exhibitors section figure, 
#yunoyamanight #single-container article #exhibitors section figure {
	width: 312px;
}
.events #single-container article #exhibitors section figure img {
	width: 100% !important;
	height: auto !important;
}
.events #single-container article #exhibitors section figure img + img {
	margin-top: 16px;
}
.events #single-container article #exhibitors section .section-body {
	float: left;
	width: calc(100% - 216px);
}
#nakagawamasashichi #single-container article #exhibitors section .section-body, 
#yunoyamanight #single-container article #exhibitors section .section-body {
	width: calc(100% - 336px);
}
.events #single-container article #exhibitors section .type {
	margin-bottom: 4px;
	color: #65ab31;
	line-height: 1;
	font-size: 12px;
}
.events #single-container article #exhibitors section header {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	margin: 8px 0 22px;
}
.events #single-container article #exhibitors section h1 {
	line-height: 1;
	font-size: 16px;
}
.events #single-container article #exhibitors section .proviso {
	display: inline-block;
	vertical-align: middle;
	/*margin-left: 8px;*/
	padding: 0 4px;
	border: 1px solid #333;
	line-height: 16px;
	font-size: 11px;
	font-weight: bold;
}
.events #single-container article #exhibitors section .title {
	margin-top: 4px;
	font-size: 13px;
	font-weight: bold;
}
.events #single-container article #exhibitors section .description {
	margin-bottom: 22px;
}
.events #single-container article #exhibitors section .description p {
	margin: -0.35em 0;
	line-height: 1.7;
	font-size: 13px;
}
.events #single-container article #exhibitors section .date-venue-hours {
	margin-top: 8px;
	line-height: 1.7;
	font-size: 13px;
}
.events #single-container article #exhibitors section .menu {
	margin-bottom: 22px;
}
.events #single-container article #exhibitors section .menu p {
	/*margin-top: 16px;*/
	margin: -0.335em 0;
	padding-left: 8px;
	border-left: 1px solid #ccc;
	line-height: 1.67;
	font-size: 12px;
	font-weight: bold;
}

.events #single-container article #exhibitors section .link-external {
	margin-top: 22px;
	line-height: 16px;
}
.events #single-container article #exhibitors section .websites a {
	padding-bottom: 2px;
	font-size: 14px;
}
.events #single-container article #exhibitors section ul.sns {
	display: flex;
	align-items: center;
	gap: 12px;
}
.events #single-container article #exhibitors section ul.sns li {
	display: inline-block;
}
.events #single-container article #exhibitors section ul.sns li a {
	display: flex;
	align-items: center;
}
.events #single-container article #exhibitors section .shopinfo {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid #cbcbcb;
}
.events #single-container article #exhibitors section .shopinfo dl {
	display: flex;
	line-height: 1.1;
	font-size: 11px;
}
.events #single-container article #exhibitors section .shopinfo dl dt {
	flex-basis: 5em;
	flex-shrink: 0;
}
.events #single-container article #exhibitors section .shopinfo dl + dl {
	margin-top: 8px;
}
.events #single-container article #exhibitors section .shopinfo dl dd::before {
	content: '｜';
	margin-right: 4px;
/*	padding-left: 8px;
	border-left: 1px solid #333;*/
}
.events #single-container article #exhibitors section .links {
	margin-top: 24px;
}
.events #single-container article #exhibitors section .links li {
	display: block;
	margin-top: 8px;
}




.events aside#nav {
	margin-top: 0;
}
.events aside#nav .wrapper {
	margin: 0 auto;
	padding: 32px 48px;
	max-width: 1038px;
}
.events aside#nav #date-nav {
	margin-top: 24px;
}





/**
 * #newsreports
 * 
 */
#newsreports {
}
#newsreports .archives .event header .date {
	margin-bottom: 8px;
	line-height: 1;
	font-size: 11px;
}
#newsreports .archives .event .excerpt {
	padding: 12px 16px;
	border-top: 1px solid #ccc;
	line-height: 1.67;
	font-size: 12px;
	text-align: justify;
}
#newsreports .archives .event .genre {
	padding: 0 16px 12px;
	line-height: 1;
	font-size: 10px;
	font-weight: bold;
	min-height: calc(1em + 10px);
}
#newsreports .archives .event .genre span {
	display: inline-block;
	padding: 4px;
	border: 1px solid #ccc;
}


#newsreports #single-container article header {
	padding-bottom: 24px;
	border-bottom: 2px solid #ccc;
}
#newsreports #single-container article header #date {
	line-height: 1;
	font-size: 14px;
}
#newsreports #single-container article header h1 {
	display: block;
	margin-right: 0;
}
#newsreports #single-container article header #genre {
	margin-top: 8px;
	min-height: calc(1em + 10px);
	line-height: 1;
	font-size: 11px;
	font-weight: bold;
}
#newsreports #single-container article header #genre span {
	display: inline-block;
	padding: 4px;
	border: 1px solid #ccc;
	background-color: #fff;
}
#newsreports #single-container article #article-body {
	margin-top: 24px;
}
#newsreports #single-container article .description {
	margin-top: 16px;
	line-height: 2.26;
	font-size: 15px;
}
#newsreports #single-container article .description h2 {
	font-size: 15px;
}
#newsreports #single-container article .description a {
	padding-bottom: 4px;
	border-bottom: 1px dashed #666;
}
#newsreports #single-container article .description a:hover {
	color: #65ab31;
	border-bottom-style: solid;
	border-bottom-color: #65ab31;
}
#newsreports #single-container article .description img {
	display: block;
	margin: 16px auto;
	width: auto;
	height: auto;
	max-width: 696px;
	max-height: 696px;
}
#newsreports #single-container article .description .embed {
	position: relative;
	padding-top: 56.25%;
	width: 100%;
}
#newsreports #single-container article .description .embed iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#newsreports #single-container article .download {
	margin-top: 32px;
	width: 348px;
}
#newsreports #single-container article .download a {
	display: block;
	position: relative;
	padding: 0 16px;
	border: 1px solid #65ab31;
	background-color: #fff;
	line-height: 56px;
	color: #65ab31;
	font-size: 15px;
	font-weight: bold;
}
#newsreports #single-container article .download a::after {
	display: block;
	position: absolute;
	top: 20px;
	right: 16px;
	content: url("../images/pc/icon-download.png");
	line-height: 1;
}
#newsreports #single-container article .download a:hover {
	text-decoration: underline;
}






/**
 * #
 * 
 */
.container .content > header h1 {
	line-height: 1;
}
.container .content > header h1 img {
	display: inline-block;
	padding-bottom: 8px;
	border-bottom: 2px solid #65ab31;
}
.container .content header #summary {
	margin-top: 16px;
	max-width: 696px;
	line-height: 1.7;
	font-size: 14px;
	text-align: justify;
}




/**
 * .usefultools
 * 
 */
.usefultools {
}
.usefultools .content > header {
}
.usefultools .content header #summary {
	margin-top: 24px;
	padding: 12px;
	max-width: none;
	background-color: #fff;
	line-height: 1;
	font-size: 15px;
}




/**
 * #schedule
 * 
 */
#schedule {
}
#schedule .content > header {
	margin-bottom: 32px;
}

#schedule #operation-nav {
	display: none;
	overflow: hidden;
	margin-bottom: 8px;
}
#schedule #operation-nav #print-to {
	display: inline-block;
}
#schedule #operation-nav #print-to a {
	display: inline-block;
	padding: 8px;
	border: 1px solid #65ab31;
	color: #65ab31;
	line-height: 1;
	font-size: 12px;
	font-weight: bold;
}
#schedule #operation-nav #print-to a::before {
	display: inline-block;
	content: url(../images/pc/link-print.svg);
	vertical-align: middle;
	margin-right: 8px;
}
#schedule #operation-nav ul {
	float: right;
	display: inline-block;
	font-size: 14px;
}
#schedule #operation-nav ul li {
	display: inline-block;
	vertical-align: middle;
}
#schedule #operation-nav ul li {
	line-height: 32px;
}
#schedule #operation-nav ul li + li {
	margin-left: 16px;
}
#schedule table {
	position: relative;
	overflow: auto;
	width: 100%;
	height: 100%;
	border-collapse: separate;
	border-spacing: 0;
	font-size: 12px;
	border: 2px solid #65ab31;
	border-top: none;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'YuGothic', 'Yu Gothic', 'メイリオ', Meiryo, sans-serif;;
	font-feature-settings: "palt";
}
#schedule table thead, 
#schedule table tbody {
}
#schedule table th,
#schedule table td {
	background-clip: padding-box;
	/*width: calc((100% - 328px) / 2);*/
	width: 34%;
}
#schedule table thead .blank, 
#schedule table tbody th {
	/*width: 328px;*/
	width: 32%;
	border-right-width: 2px !important;
}
#schedule table .pad {
}
#schedule table thead {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 2;
}
#schedule table thead tr {
}
#schedule table thead th {
	border-top: 2px solid #65ab31;
	border-bottom: 1px solid #65ab31;
	background-color: #f5f7f4;
	color: #65ab31;
	font-size: 12px;
}
#schedule table thead th + th {
	border-left: 1px solid #65ab31;
}
#schedule table thead .blank + th {
}
#schedule table thead th p {
	box-sizing: border-box;
	padding: 8px 0;
}
#schedule table thead .blank {
	background-color: #d6e9ca;
	color: #333;
	text-align: center;
}
#schedule table thead .blank p {
}
#schedule table tbody {
	background: #fff;
}
#schedule table tbody th {
	height: 100%;
	font-size: 12px;
	word-break: break-all;
	text-align: left;
}
#schedule table td {
	padding: 16px 8px;
	border-left: 1px solid #65ab31;
	font-weight: bold;
}
#schedule table td.after,
#schedule table td.border {
	border-left: 1px dotted #ccc;
}

#schedule table tbody td, 
#schedule table tbody th {
	border-top: 1px solid #65ab31;
}
#schedule table tbody tr:first-child td, 
#schedule table tbody tr:first-child th {
	border-top-width: 0;
}
#schedule table tbody th + td, 
#schedule table thead .blank + th {
	border-left-width: 2px;
}

#schedule table td div {
	padding: 4px 4px;
	height: 1.4em;
	background-color: #bbdaa7;
}
#schedule table td div p {
	position: absolute;
	white-space: nowrap;
}
#schedule table tbody th dl {
	display: table;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	border-collapse: collapse;
}
#schedule table tbody th dl dt, 
#schedule table tbody th dl dd {
	display: table-cell;
	vertical-align: middle;
	padding: 8px 4px;
}
#schedule table tbody th dl dt {
	width: 2em;
	border-right: 1px solid #65ab31;
	text-align: center;
	color: #65ab31;
}





/**
 * #venuemap
 * 
 */
#venuemap .content > header {
	margin-bottom: 24px;
}
#venuemap #map-container {
	padding: 8px;
	height: 608px;
	background-color: #fff;
}
#venuemap #map-container #map {
	width: 100%;
	height: 100%;
}

#venuemap #map-container #map .infowindow {
	padding: 4px 0;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
}
#venuemap #map-container #map .infowindow .no {
	margin-bottom: 4px;
	color: #65ab31;
	line-height: 1;
	font-size: 12px;
	font-weight: bold;
}
#venuemap #map-container #map .infowindow h1 {
	font-size: 16px;
}
#venuemap #map-container #map .infowindow .period {
	margin-top: 4px;
	font-size: 11px;
}
#venuemap #map-container #map .infowindow ul {
	margin-top: 16px;
}
#venuemap #map-container #map .infowindow li {
	display: block;
}
#venuemap #map-container #map .infowindow a {
}


#venuemap .archives {
	margin-top: 24px;
	padding: 24px;
	background-color: #fff;
}
#venuemap .archives .wrapper {
	margin-top: -8px;
	margin-left: -16px;
}
#venuemap .archives .wrapper > a {
	display: inline-block;
	vertical-align: top;
	margin-top: 8px;
	margin-left: 16px;
	width: calc((100% - 48px) / 3);
	line-height: 1;
}
#venuemap .archives a dl {
	line-height: 1.33;
	font-size: 12px;
}
#venuemap .archives a dl dt {
	float: left;
	width: 2em;
	color: #65ab31;
	font-weight: bold;
}
#venuemap .archives a dl dd {
	margin-left: 2em;
}

#venuemap #main-venue dl {
	margin-left: 16px;
	font-size: 12px;
}
#venuemap #main-venue dl dt a {
	color: #65ab31;
}

#venuemap #memberstore a dl dd {
	margin-left: 3em;
}





/**
 * #informationcenter
 * 
 */
#informationcenter {
}
#informationcenter .archives > section {
	margin-top: 16px;
	padding: 24px;
	background-color: #fff;
}
#informationcenter .archives > section .wrapper {
	overflow: hidden;
}
#informationcenter .archives > section .wrapper > div {
	float: left;
	width: calc((100% - 24px) * 432 / 624);
}
#informationcenter .archives > section .wrapper > div .no {
	margin-bottom: 8px;
	line-height: 1;
	color: #65ab31;
	font-size: 12px;
	font-weight: bold;
}
#informationcenter .archives > section .wrapper > div h1 {
	line-height: 1.33;
	font-size: 18px;
}
#informationcenter .archives .description {
	margin-top: 16px;
	line-height: 1.83;
	font-size: 12px;
	text-align: justify;
}
#informationcenter .archives .link-to {
	margin-top: 8px;
}
#informationcenter .archives .details {
	margin-top: 16px;
}
#informationcenter .archives .details dl {
	margin-top: 8px;
	line-height: 1.4;
	font-size: 13px;
}
#informationcenter .archives .details dl dt {
	float: left;
	width: 4em;
}
#informationcenter .archives .details dl dd {
	margin-left: 4.5em;
	padding-left: 8px;
	border-left: 1px solid #333;
}
#informationcenter .archives > section .wrapper > figure {
	float: right;
	width: calc((100% - 24px) * 192 / 624);
}


#informationcenter .archives > section #within {
	margin-top: 24px;
}
#informationcenter .archives > section #within section {
	display: flex;
	align-items: center;
	overflow: hidden;
	box-sizing: border-box;
	margin-top: 16px;
	padding: 24px;
	border: 1px solid #e7e7e7;
}
#informationcenter .archives > section #within section.other {
	padding: 0;
	border: none;
}
#informationcenter .archives > section #within section.other h2 {
	line-height: 1.83;
	font-size: 12px;
	font-weight: normal;
}
#informationcenter .archives > section #within section.other .description {
	margin-top: 0;
}
#informationcenter .archives > section #within section.other .description li {
	display: block;
}
#informationcenter .archives > section #within section.other .description li::before {
	display: inline-block;
	content: '・';
}
#informationcenter .archives > section #within section > .section-body {
	width: calc((100% - 24px) * 408 / 576);
} 
#informationcenter .archives > section #within section > div .subtitle {
	line-height: 1;
	font-size: 13px;
	font-weight: bold;
}
#informationcenter .archives > section #within section > div h2 {
	font-size: 18px;
}
#informationcenter .archives > section #within section .figures {
	margin-left: 24px;
	width: calc((100% - 24px) * 168 / 576);
}
#informationcenter .archives > section #within section .figures figure + figure {
	margin-top: 8px;
}
#informationcenter .archives > section #within section .figures figure figcaption {
	font-size: 10px;
}


#informationcenter #map-container {
	margin-top: 32px;
	padding: 8px;
	height: 428px;
	background-color: #fff;
}
#informationcenter #map-container #map {
	width: 100%;
	height: 100%;
}
#map-container #markers {
	display: none;
}





/**
 * #access
 * 
 */
#access {
}

#access #article-body {
	margin-top: 32px;
}
#access #article-body > section {
	margin-top: 40px;
}
#access #article-body > section > h1 {
	margin-bottom: 16px;
	line-height: 1;
	font-size: 14px;
}
#access #article-body > section > h1::before {
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\f111';
	color: #dcdcd6;
	font-size: 10px;
	transform: scale(0.6);
}
#access #article-body > section .section {
	margin-top: 24px;
	padding: 24px;
	background-color: #fff;
}
#access #article-body > section > h1 + .section {
	margin-top: 0;
}


#access #from-directon h2 {
	margin-bottom: 16px;
	line-height: 1;
	font-size: 16px;
}
#access #from-directon input[type=radio] {
	display: none;
}
#access #from-directon ul.using {
	position: relative;
	margin-bottom: 16px;
	border-left: 1px solid #999;
}
#access #from-directon ul.using::after {
	display: block;
	content: '';
	position: absolute;
	z-index: 1;
	bottom: 0;
	width: 100%;
	border-bottom: 1px solid #999;
}
#access #from-directon ul.using li {
	display: inline-block;
	position: relative;
	z-index: 10;
	vertical-align: top;
	border-top: 1px solid #999;
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	width: 144px;
}
#access #from-directon ul.using li label {
	display: inline-block;
	box-sizing: border-box;
	padding: 0 24px;
	width: 100%;
	line-height: 46px;
	font-size: 15px;
	cursor: pointer;
}
#access #from-directon ul.using li label i {
	display: inline-block;
	margin-right: 8px;
	line-height: 1;
	background-position: 0 0;
	background-repeat: no-repeat;
}
#access #from-directon ul.using li label i img {
	width: auto;
	height: 15px;
}
#access #from-directon ul.using li.by-train label i {
	background-image: url(../images/pc/access-train-on.svg);
}
#access #from-directon ul.using li.by-car label i {
	background-image: url(../images/pc/access-car-on.svg);
}
#access #from-directon #ctrl-from-tokyo-by-train:checked ~ .using #label-from-tokyo-by-train,
#access #from-directon #ctrl-from-osaka-by-train:checked ~ .using #label-from-osaka-by-train, 
#access #from-directon #ctrl-from-osaka-by-car:checked ~ .using #label-from-osaka-by-car, 
#access #from-directon #ctrl-from-osaka-by-car2:checked ~ .using #label-from-osaka-by-car2, 
#access #from-directon #ctrl-from-nagoya-by-train:checked ~ .using #label-from-nagoya-by-train, 
#access #from-directon #ctrl-from-nagoya-by-car:checked ~ .using #label-from-nagoya-by-car,
#access #from-directon #ctrl-from-nagoya-by-car2:checked ~ .using #label-from-nagoya-by-car2 {
	border-bottom-color: #fff;
}
#access #from-directon #ctrl-from-tokyo-by-train:checked ~ .using #label-from-tokyo-by-train label,
#access #from-directon #ctrl-from-osaka-by-train:checked ~ .using #label-from-osaka-by-train label, 
#access #from-directon #ctrl-from-osaka-by-car:checked ~ .using #label-from-osaka-by-car label, 
#access #from-directon #ctrl-from-osaka-by-car2:checked ~ .using #label-from-osaka-by-car2 label, 
#access #from-directon #ctrl-from-nagoya-by-train:checked ~ .using #label-from-nagoya-by-train label, 
#access #from-directon #ctrl-from-nagoya-by-car:checked ~ .using #label-from-nagoya-by-car label,
#access #from-directon #ctrl-from-nagoya-by-car2:checked ~ .using #label-from-nagoya-by-car2 label {
	font-weight: bold;
}
#access #from-directon ul.using li label:hover i img,
#access #from-directon #ctrl-from-tokyo-by-train:checked ~ .using #label-from-tokyo-by-train label i img,
#access #from-directon #ctrl-from-osaka-by-train:checked ~ .using #label-from-osaka-by-train label i img, 
#access #from-directon #ctrl-from-osaka-by-car:checked ~ .using #label-from-osaka-by-car label i img, 
#access #from-directon #ctrl-from-osaka-by-car2:checked ~ .using #label-from-osaka-by-car2 label i img, 
#access #from-directon #ctrl-from-nagoya-by-train:checked ~ .using #label-from-nagoya-by-train label i img, 
#access #from-directon #ctrl-from-nagoya-by-car:checked ~ .using #label-from-nagoya-by-car label i img,
#access #from-directon #ctrl-from-nagoya-by-car2:checked ~ .using #label-from-nagoya-by-car2 label i img {
	opacity: 0;
}


#access #from-directon .panels > div {
	max-height: 0;
	opacity: 0;
	-webkit-transition: opacity .2s;
	transition: opacity .2s;
	pointer-events: none;
}
#access #from-directon #ctrl-from-tokyo-by-train:checked ~ .panels #from-tokyo-by-train,
#access #from-directon #ctrl-from-osaka-by-train:checked ~ .panels #from-osaka-by-train, 
#access #from-directon #ctrl-from-osaka-by-car2:checked ~ .panels #from-osaka-by-car2, 
#access #from-directon #ctrl-from-osaka-by-car:checked ~ .panels #from-osaka-by-car, 
#access #from-directon #ctrl-from-nagoya-by-train:checked ~ .panels #from-nagoya-by-train, 
#access #from-directon #ctrl-from-nagoya-by-car:checked ~ .panels #from-nagoya-by-car, 
#access #from-directon #ctrl-from-nagoya-by-car2:checked ~ .panels #from-nagoya-by-car2 {
	max-height: initial;
	opacity: 1;
	pointer-events: auto;
}
#access #from-directon .panels > div .route + .route {
	margin-top: 16px;
}
#access #from-directon .panels > div .point {
	padding: 16px;
	background-color: #eceee7;
}
#access #from-directon .panels > div .point p {
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
	font-size: 14px;
	font-weight: bold;
}
#access #from-directon .panels > div .point ul {
	float: right;
	display: inline-block;
	vertical-align: middle;
}
#access #from-directon .panels > div .point ul li {
	margin-top: 0;
	margin-left: 24px;
	display: inline-block;
}
#access #from-directon .panels > div .point ul li a {
}
#access #from-directon .panels > div .line {
	box-sizing: border-box;
	margin-left: 16px;
	padding: 16px 0 16px 48px;
	line-height: 1;
}
#access #from-directon .panels > div.by-train .line {
	background-position: 0 0;
	background-repeat: repeat-y;
	background-size: 6px auto;
}
#access #from-directon .panels > div.by-train .local {
	background-image: url(../images/pc/access-train-local.png);
}
#access #from-directon .panels > div.by-train .shinkansen {
	background-image: url(../images/pc/access-train-shinkansen.png);
}
#access #from-directon .panels > div.by-car .line {
	border-left: 2px solid #333;
}
#access #from-directon .panels > div.by-car .local {
	border-left-color: #999;
}
#access #from-directon .panels > div.by-car .expressway {
}
#access #from-directon .panels > div .line dt {
	margin-bottom: 8px;
	font-size: 14px;
}
#access #from-directon .panels > div .line dd {
	font-size: 12px;
}


#access #traffic-informaitions h2 {
	line-height: 1;
	color: #65ab31;
	font-size: 15px;
}
#access #tourism-accommodation dl,
#access #traffic-informaitions dl {
	margin-top: 16px;
}
#access #tourism-accommodation dl dt::before,
#access #traffic-informaitions dl dt::before {
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\f111';
	color: #333;
	font-size: 10px;
	transform: scale(0.5);
}
#access #tourism-accommodation dl dt,
#access #traffic-informaitions dl dt {
	font-size: 14px;
	font-weight: bold;
}
#access #tourism-accommodation dl dd,
#access #traffic-informaitions dl dd {
	margin-top: 8px;
	margin-left: 12px;
	font-size: 13px;
}
#access #traffic-informaitions dl dd.note {
	margin-top: 4px;
	font-size: 12px;
}

#access #tourism-accommodation dl:first-child {
	margin-top: 0;
}





/**
 * #formers
 * 
 */
#formers {
}
#formers #article-body {
	margin-top: 48px;
}
#formers .archives > section + section {
	margin-top: 40px;
}
#formers .archives > section h1 {
	margin-bottom: 16px;
	line-height: 1.4;
	font-size: 14px;
}
#formers .archives > section h1::before {
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\f111';
	color: #dddcd6;
	font-size: 10px;
	transform: scale(0.6);
}
#formers .archives > section h1 br {
	display: none;
}
#formers .archives > section .section-body {
	padding: 24px;
	background-color: #fff;
}
#formers .archives > section .section-body dl + dl {
	margin-top: 24px;
}
#formers .archives > section .section-body dl dt {
	margin-bottom: 12px;
	line-height: 1;
	font-size: 13px;
	font-weight: bold;
}
#formers .archives > section .section-body dl.video dd {
	width: calc(100% * 560 / 696);
}
#formers .archives > section .section-body dl.video dd div {
	position: relative;
	padding-top: 56.25%;
	width: 100%;
}
#formers .archives > section .section-body dl.video dd iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}






/**
 * #relatedinformation
 * 
 */
#relatedinformation {
}
#relatedinformation .archives > h2 {
	margin-top: 32px;
	line-height: 1;
	font-size: 14px;
}
#relatedinformation .archives > h2::before {
	display: inline-block;
	vertical-align: middle;
	width: 12px;
	font-family: "fontello";
	font-style: normal;
	font-weight: normal;
	speak: none;
	content: '\f111';
	color: #dcdcd6;
	font-size: 10px;
	transform: scale(0.6);
}
#relatedinformation .archives > h2 + section {
	
}
#relatedinformation .archives > section {
	margin-top: 16px;
	padding: 24px;
	background-color: #fff;
}
#relatedinformation .archives > section .wrapper {
	overflow: hidden;
}
#relatedinformation .archives > section .wrapper > div {
	float: left;
	width: calc((100% - 24px) * 432 / 624);
}
#relatedinformation .archives > section .wrapper > div .subtitle {
	line-height: 1.7;
	font-size: 13px;
	font-weight: bold;
}
#relatedinformation .archives > section .wrapper > div h1 {
	line-height: 1.33;
	font-size: 18px;
}
#relatedinformation .archives > section .wrapper > div .period {
	margin-top: 8px;
	font-size: 12px;
}
#relatedinformation .archives .description {
	margin-top: 16px;
	line-height: 1.83;
	font-size: 12px;
	text-align: justify;
}
#relatedinformation .archives .description h2 {
	font-size: 15px;
}
#relatedinformation .archives .description p + h2 {
	margin-top: 16px;
}
#relatedinformation .archives .description h3 {
	margin-top: 16px;
	line-height: 1.2;
	font-size: 13px;
}
#relatedinformation .archives .link-to {
	margin-top: 8px;
}
#relatedinformation .archives .details {
	margin-top: 16px;
}
#relatedinformation .archives .details dl {
	margin-top: 8px;
	line-height: 1.4;
	font-size: 12px;
}
#relatedinformation .archives .details dl dt {
	float: left;
	width: 4em;
}
#relatedinformation .archives .details dl dd {
	margin-left: 4.5em;
	padding-left: 8px;
	border-left: 1px solid #333;
}
#relatedinformation .archives .details dl dd ul {
}
#relatedinformation .archives .details dl dd ul li {
	display: block;
}
#relatedinformation .archives .details dl dd ul li::before {
	display: inline-block;
	vertical-align: top;
	content: '・';
	width: 12px;
}
#relatedinformation .archives .details dl dd em {
	font-size: 11px;
}

#relatedinformation .archives > section .wrapper > figure {
	float: right;
	width: calc((100% - 24px) * 192 / 624);
}
#relatedinformation .archives > section .wrapper > figure img {
	box-sizing: border-box;
	border: 1px solid #e7e7e7;
}
#relatedinformation .archives > section .wrapper > figure img + img {
	margin-top: 16px;
}
