@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&family=Yanone+Kaffeesatz:wght@200;300;400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Anton&family=Kanit:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

* {
	box-sizing: border-box;
	margin:0;
	padding:0;
	text-decoration:none;
	list-style:none;
}

html,
button,
input,
select,
textarea {
    color: #222;
}

html {
    font-size: 1em;
    line-height: 1.4;
}

.map{
	width:100%;
	padding-top:56.25%;
	position:relative;
}

.map iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	right:0;
}

.sp{
	display:none;
}

@media screen and (max-width:767px){
	.pc{
		display:none;
	}

	.sp{
		display:block;
	}
	.map{
		padding-top:120%;
	}
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

audio,
canvas,
img,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

.inr {
	width:90%;
	margin:0 auto;
}

@media screen and (max-width:767px){
	.inr {
		width:100%;
	}
}

/* ==========================================================================
   Browse Happy prompt
   ========================================================================== */

.browsehappy {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
body {
	color: #666;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	position:relative;
	min-height:calc(100svh - 3.5em);
	padding-bottom:3em;
}

	body {
		background-size:cover;
		background:none;
	}

	body::before {
		background:url('../img/bg.jpg') no-repeat center bottom;
		background-size:cover;
		display: block;
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100%;
		padding-bottom: 108px;
		content: "";
		z-index: -1;
	}


ul {
	padding: 0;
}

li {
	margin-bottom: .6em;
}

.alignR {
	text-align: right;
}

.alignC {
	text-align: center;
}

/* a:link,
a:visited {
	color: #06F;
} */

a{
	transition:.3s;
}

a:hover {
	text-decoration: none;
}

a.btn:hover{
	opacity:.7;
}

/*----------------------------------------------------
	wrapper
----------------------------------------------------*/
.wrapper {
	position: relative;
	padding: 15% 0;
}

.discon {
	position:fixed;
	width:90%;
	max-width:960px;
	transform:translate(-50%, -50%);
	top:50%;
	left:50%;
	background:#ffffffdd;
	padding:2em 2em 5em;
	border:solid;
	z-index:1000;
	color:#c22;
}

@media screen and (max-width:767px){
	.discon {
		position:absolute;
		transform:translate(-50%, 0);
		top:5%;
		left:50%;
		padding:2em 1em 5em;
	}
}

.discon h3 {
	text-align:center;
	margin-bottom:2em;
}


/*----------------------------------------------------
	navi
----------------------------------------------------*/
.navi {
	margin: 0 3% 0 5%;
	list-style: none;
	font-family: 'Yanone Kaffeesatz', sans-serif;
	font-size: 170%;
}

.navi .txt_jp {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 80%;
}

.navi li {
	display: inline-block;
	width: 31%;
	margin-right: 2%;
	vertical-align: bottom;
}

.navi li a {
	display: block;
	text-align: center;
	text-decoration: none;
	font-weight: 100;
	border: 1px solid #ffffff;
	border-radius: 2px;
	color: #ffffff;
	background: rgba(255, 255, 255, 0.8);
	height: 1.3em;
}

.navi li a:hover {
	color: #186993;	
	background: #fff;
}

/*----------------------------------------------------
	outline h1
----------------------------------------------------*/
.outline {
	margin:  0 5% 100px;
	position: relative;
	/*overflow: hidden;*/
}


.outline:before {
	display: block;
	content: '';
	background: url(/img/2015/bg_outline_004.jpg) no-repeat left top;
	z-index: -1;
	position: absolute;
	width: 197px;
	height: 387px;
	top: -100px;
	left: -6%;
}

#top {
	margin: 0 0 30px;
}

.outline#top:before {
	display: none;
}


#message {
    background: rgba(255, 255, 255, 0.8);
    padding: 5%;
	margin-bottom:5%;
}

#message h2 {
    font-size: 1.5em;
    color: #666;
    text-align: left;
    background: none;
    border-bottom: 5px solid #ffffff;
}

h1 {
	margin: 0 0 5%;
	padding-top: 0;
	font-size: 640%;
	/* font-family: 'Yanone Kaffeesatz', sans-serif; */
	font-family: "Kanit", sans-serif;
	font-weight: 800;
	color: #ffffff;
	text-shadow: 0 1px 0 #009;
	letter-spacing: -1px;
	line-height: 0.8;
	text-align: center;
}

h2 {
	font-size: 2em;
	/* font-family: 'Yanone Kaffeesatz', sans-serif; */
	font-family: "Kanit", sans-serif;
	color: #FFFFFF;
	background: #ffffff;
	text-align: center;
	font-weight: 100;
	line-height:1.5em;
}

.flag {
	position: fixed;
	top: -5px;
	left: 10px;
	z-index: 100;
	width: 16%;
}

.flag img {
	width: 100%;
}

figure {
	text-align: center;
	margin-bottom: 1em;
}

figure img {
	max-width: 100%;
	vertical-align: bottom;
}

figcaption {
	margin-top: 1em;
}

.date{
	position: relative; /* for year */
	margin: 0;
	font-size: 500%;	
	font-family: 'Yanone Kaffeesatz', sans-serif;
	font-family: "Kanit", sans-serif;
	font-weight: 800;
	color: #ffffff;
	text-align: center;
	text-shadow: 0 1px 0 #009;
	line-height: 1;
	/* filter: drop-shadow(1px 1px 0px #254995aa) drop-shadow(-1px -1px 0px #254995aa) drop-shadow(2px 4px 6px #254995); */
}

.place {
	margin: 0;
	padding: 0 0 5%;
	font-size: 240%;	
	font-family: 'Yanone Kaffeesatz', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #ffffff;
	text-align: center;
	line-height: 1.2;
	filter: drop-shadow(2px 4px 0px #254995) drop-shadow(2px 4px 6px #254995);
}


.year {
	display: block;
	font-size: 30%;
	font-weight: 200;
}

.month {
	font-size: 220%;
}

.day {
	font-size: 220%;
}

.sat {
	display: inline-block;
	padding: 3px 5px 2px;
	position: relative;
	/* text-shadow: none; */
	font-weight: 600;
	font-family: "Kanit", sans-serif;
}


.village{
	font-size: 55%;
	line-height: 1;
}

@media screen and (max-width:767px){
	.place .village{
		display:block;
	}
}

.address {
	display: block;
	font-size: 40%;
	margin-top:0.5em;
}

.time {
	margin: 0;
	padding: 0 0 5%;
	font-size: 165%;	
	font-family: 'Yanone Kaffeesatz', sans-serif;
	color: #ffffff;
	text-align: center;
	line-height: 1;
}

.googleMap {
	margin: 0 auto 15px;
}

.googleMap iframe {
	width: 100%;	
}


/*----------------------------------------------------
	article
----------------------------------------------------*/
.inner {
    background: rgba(255, 255, 255, 0.8);
    padding: 5%; 
  font-family: 'Yanone Kaffeesatz', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;	
}

.inner h2 {
	position: relative;
	padding-left: 37px;
	color: #186993;
}

.inner h3 {
	margin-top: 60px;
}

.inner h3:first-of-type {
	margin-top: 1em;
}

.inner ul {
	list-style-position: outside;
	margin-left: 1em;
}

/*----------------------------------------------------
	news
----------------------------------------------------*/
.news-list dt {
	clear: both;
	float: left;
}

.news-list dd {
	margin: 0 0 15px 80px;
	padding-left: 7px;
	border-left: 3px solid #BEBEBE;
}

.notation {
	font-size: 80%;
}

/*----------------------------------------------------
	band
----------------------------------------------------*/
.caption {
	display: block;
	font-size: 50%;
}	

.caption:before {
	content: "-";
}

.caption:after {
	content: "-";
}

.band {
	list-style: none;
	display:flex;
	flex-wrap:wrap;
}

.band a:link,
.band a:visited {
  font-family: 'Yanone Kaffeesatz', sans-serif;
  font-size: 2em;
  text-decoration: none;
  color: #000;
  font-weight: 100;
}


.band a:hover {
	color: #186993;	
}

.band li {
    position: relative;
	margin-bottom: 2em;
	padding-bottom:3em;
}

.band figure {
	margin-bottom: 0;
	position:relative;
	width:100%;
	padding-top:66%;
	overflow:hidden;
}

.band figure img{
	position:absolute;
	width:100%;
	height:100%;
	transform:translate(-50%, -50%);
	top:50%;
	left:50%;
	object-fit: cover;
	transition:.3s;
}

.band li a:hover figure img{
	transform:translate(-50%, -50%) scale(1.05);
}


.band li p{
	position:absolute;
	width:50%;
	height:3em;
	transform:translate(-50%, 0);
	left:50%;
	bottom:0;
	margin:0;
}

.band li p img{
	width:100%;
	height:100%;
	object-fit:contain;
	filter: drop-shadow(2px 4px 6px #00000080);
}



.band span {
    display: block;
    background: rgba(255, 255, 255, 0.8);
    /*position: absolute;*/
    bottom: 0;
    width: 100%;
    text-align: center;
}

.band li em{
	position:absolute;
	display:block;
	top: 0;
	left: 0;
	background: url(../img/new.png) no-repeat;
	background-size: contain;
	width: 20%;
	height:20%;
}

.more{
	text-align:right;
	color:#fff;
	margin-right:2em;
	font-family: 'Yanone Kaffeesatz', sans-serif;
	font-weight:200;
	letter-spacing:.2em;
	font-size:1.5em;
}


@media screen and (max-width:767px){
	.band li{
		padding-bottom:1.5em;
	}

	.band li p{
		width:65%;
		height:2em;
	}

	.band li {
		width:48%;
		margin:1% 1% 0;
	}

	.band span {
		font-size:65%;
	}
}

/*----------------------------------------------------
	ticket
----------------------------------------------------*/
.ticket{
	color:#fff;
	line-height:1.8em;
	text-align:center;
	background:#1d3c7d80;
}

.ticket h2{
	background:none;
}

.ticket p{
	letter-spacing:0.05em;
	font-family: "Noto Sans JP", sans-serif;
}

.ticket p span{
	background:#000;
	padding:0.2em 0.3em;
	font-size:.8em;
	margin-left:0.5em;
}

.ticket .caution{
	text-align:left;
	padding:1.5em;
	font-size:.85em;
	border:solid 1px #ffffff80;
}

.ticket dl{
	display:flex;
	justify-content: center;
}

.ticket dl dt{
	background:#000;
	text-align:center;
	padding:0 1em;
}

.ticket dl dd{
	margin-left:.5em;
}
.btn{
	padding:0.3em 1em;
	background:#ee6aaa;
	color:#fff;
	border-radius:.5em;
	letter-spacing:.1em;
	display:inline-block;
	border:none;
	font-family: "Noto Sans JP", sans-serif;
}

.ticket .btn.ikn{
	background:#dd2121;
}

.ticket .btn.eplus{
	padding:0;
	width:70px;
}

.ticket ul{
	display:flex;
	justify-content:space-between;
	width:200px;
	margin:2em auto;
}

.ticket ul li{
	width:30%;
}

.ticket ul li a{
	display:block;
	padding:.5em;
	border-radius:5px;
}

.ticket ul li.pia a{
	background:#06F;
}

.ticket ul li.lawson a{
	background:#009;
}

.ticket ul li.eplus a{
	background:#f16baa;
}

.ticket .btn{
	margin:1em 0 2em;
	font-size:1.2em;
}

#ticket a {
	text-decoration:none;
}

#ticket span {
	width:50%;
	background:rgba(249, 250, 244, 0.8);;
	border:solid 1px;
	color:#2c6706;
	margin:0 auto;
	display:block;
	padding:2%;
	text-align:center;
	font-weight:bold;
}

#ticket a:hover span{
	background:#fff;
	color:#c22;
}

@media screen and (max-width:767px){
	#ticket span {
		width:90%;
	}

	.ticket dl{
		flex-direction: column;
	}

	.ticket dl dt{
		display:inline-block;
		width:50%;
		margin:0 auto 1em;
	}
}

/*----------------------------------------------------
	statement
----------------------------------------------------*/
.continue {
	background: #666;
	border-radius: 3px;
	padding: 10px;
	color: #fff;
	text-align: center;
}

/*----------------------------------------------------
	access
----------------------------------------------------*/
.access li {
	margin-bottom: 8px;
}


/*----------------------------------------------------
	time table
----------------------------------------------------*/
#timetable {
	clear: both;
}

#timetable table {
	  width: 100%;
  font-size: 220%;
  font-weight: bold;
  color: #ffffff;
}

#timetable th,
#timetable td {
	padding: 5px;
	border-bottom: 1px solid #575757;
}

#timetable th {
	font-weight: 100;
	font-size: 70%;
}

#timetable table .change {
	font-size: 45%;
	font-weight: 100;
	background: #575757;
	color: #fff;
}

#timetable a {
	display: block;
	width: 50%;
	margin: 30px auto 0;
	padding: 2%;
	text-align: center;
	text-decoration: none;
	font-weight: 100;
	border: 1px solid #06F;
	border-radius: 2px;
	color: #fff;
	background: #06F;
}

#timetable a:hover {
	background: #1503B1;
}

section.caution .boxara{
	padding:1.5em;
	background:#ffffffdd;
}

section.caution .boxara ul li{
	padding-left:1em;
	text-indent:-1em;
}

section.caution .boxara p{
	line-height: 1.8em;
    font-size: .9em;
    padding: 1.5em;
}




/*----------------------------------------------------
	shirt
----------------------------------------------------*/
#shirt {
	clear: both;
}

/*----------------------------------------------------
	shirt
----------------------------------------------------*/
#booth dl {
    background-color: rgba(255, 255, 255, 0.8);
	    vertical-align: top;
}

#booth dt {
    font-size: 140%;
    padding: 3%;
    font-weight: bold;
    border-bottom: 1px solid #eee;
}

#booth dd {
    margin: 0;
    padding: 2% 3% 3%;
}

img{
	max-width:100%;
}


/*----------------------------------------------------
	parking
----------------------------------------------------*/
#parking {
	clear: both;
}

#parking th,
#parking td {
	padding: 5px;
	border: 1px solid #CCC;
}


/*----------------------------------------------------
	notes
----------------------------------------------------*/
#notes {
	clear: both;
}

/*----------------------------------------------------
	sns
----------------------------------------------------*/
.sns {
	width: 210px;
	margin: 0 auto 35px;
	display: flex;

bottom: -15%;
}

.twitter,
.fb,
.line {
	margin:1%;
}

@media screen and (max-width:767px){
	.sns{
		width:210px;
	}
}

/*----------------------------------------------------
	footer
----------------------------------------------------*/
footer {
	text-align: center;
	/*background: rgba(0,0,0,0.3);*/
	position:absolute;
	margin-bottom: 0;
	padding: 1% 0;
	color: rgba(0,0,0,0.3);
	bottom: 0;
	width:  100%;
	/*opacity: 0.8;*/
}

footer p,
footer address {
	margin: 0;
	padding: 0;
	font-size: 60%;
	font-style:normal;
}

footer address a {
	text-decoration:none;
	color:rgba(0,0,0,0.3);

}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

@media only screen and (min-width: 767px) {

	body {
		border-top: 2px solid #FF3870;
		position: relative; /* for googleMap */
		/*background-size: initial;*/
		background-attachment:fixed;
	}
			
	.wrapper {
		padding: 10% 0 0;
	}
	
	.outline {
	margin-bottom: 35px;
	}
	
	#message,
	#parking,
	#notes,
	#timetable,
	#shirt,
	#areamap {
		width: 65%;
		margin: 0 auto;
		padding: 3%;
	}

	#message{
		margin:0 auto 3%;
	}
	
	#timetable th {
	font-size: 100%;
	}
	
	#message:before {
		left: -21%;
	}
	
	h1 {
		margin: 0;
		/* border-bottom: 1px solid #fff; */
		padding-top: 15px;
	 font-size: 640%;
	position: relative;
	/* z-index: 100; */
	}
	
	.flag {
	position: fixed;
	top: -15px;
	left: auto;
	width: auto;
	}
	
	.dateAndPlace {
		width: 60%;
		margin: 0 auto;
	}
	
	.date {
		margin: 0;
		padding: 0;
		line-height: 1.2;
	font-weight: 700;
	}
	
	.year {
		font-size: 80%;
		display: inline-block;
		margin-right: 5px;
	}
	
	.sat {
		padding: 0;
		margin-left: 5px;
		position: static;
	}
	
	.place {
	margin: 0;
	padding-bottom: 1%;
	line-height: 1;
	font-size: 350%;
	}
	
	.village {
		padding-right: 15px;
		font-size: 45%;
	}
	
	.address {
		display: block;
		font-size: 22%;
		margin: 10px 0;
	}
	
	.time {
		margin: 0 0 10px;
		padding-bottom: 2%;
		line-height: 1;
		font-size: 270%;
}
	
	header {
		top: -80px;
	}
	
	header .inner {
		width: 970px;
		margin: 0 auto;
	}
	
	header h1 {
		font-size: 200%;
	}
	
	header .date {
		font-size: 150%;
	}
	
	header .place {
		font-size: 150%;
	}
	
	header .sat,
	header .village {
		font-size: 100%;
	}
	
		/*----------------------------------------------------
		min-width: 640px > band
	----------------------------------------------------*/	
	.band  {
		margin-right: -2%;
	}
	
	.band li {
		width: 31.3%;
		display: inline-block;
		margin-right: 2%;
		margin-bottom: 2%;
	}
		
	.googleMap {
		width: 100%;
		height: 450px;
}
	
	.googleMap iframe {
		height: 450px;
	}
	
	.continue {
		display: none;
	}
	
	inner {
		width: 940px;
	}
	
	.statement h3:first-of-type {
		margin-top: 60px;
	}

article#access {
    width: 43%;
    float: left;
    margin: 0 0 0 5%;
}


#access:before,
#ticket:before {
	display: none;
}

#booth dl {
    display: inline-block;
    margin: 0 2% 3% 0;
      width: 31.3%;
}

#booth dl:nth-child(3n+1) {
	margin-right: 0;
}

	.span_1of2 {
		width: 50%;
		padding: 0 2%;
		box-sizing: border-box;
		float: left;
	}
	
	.span_1of2 iframe {
		width: 100%;
	}

	.sns {
		text-align: center;
		z-index: 10;
		padding-top: 50px;
		clear: both;	}
	
	.twitter,
	.fb,
	.line {
		/*display: inline-block;
		padding: 0 10px;*/
	}	
}


.inr{
	width:1300px;
	max-width:95%;
	margin:0 auto;
}

section{
	padding:5em 0;
}


.modal-open{
	overflow:hidden;
}

.comment{
	/* background:#00000080; */
	opacity:0;
	position:fixed;
	z-index:-1;
	width:100%;
	min-height:100svh;
	top:0;
	transition:.3s;
	overflow:auto;
}

.comment .cmt_inr{
	font-family: "Noto Sans JP", sans-serif;
	width:1024px;
	max-width:95%;
	margin:0 auto;
	background:#ffffffdd;
	line-height:1.8em;
	padding:1.5em 3em;
	overflow:auto;
	height:80svh;
	min-height:550px;
	position:absolute;
	transform:translate(-50%, 0);
	left:50%;
	font-size:15px;
	box-shadow: 5px 15px 25px #000000cc;
	transition:.3s;
	top:20svh;
	opacity:0;
}

.modal-open .comment .cmt_inr{
	top:10svh;
	opacity:1;
}

.comment .cmt_inr h6{
	font-size:1.5em;
	text-align:center;
	margin:1em 0;
}

.comment .cmt_inr h6 img{
	max-height:5em;
	filter: drop-shadow(2px 4px 6px #ffffff80);
}

.comment .cmt_inr strong{
	display:block;
	margin:2em 0;
	font-size:1.1em;
}

.comment .cmt_inr .sign{
	margin-top:2em;
	text-align:right;
}

.comment .cmt_inr .photo{
	margin:0;
}

.comment .cmt_inr .photo ol{
	margin:0 0 1em;
	padding:0;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
}

.comment .cmt_inr .photo ol li{
	width:32%;
}

.comment .cmt_inr .photo em{
	font-style:normal;
	display:block;
	text-align:right;
	margin-top:1em;
	font-size:.8em;
}

@media screen and (max-width:767px){
	.comment .cmt_inr{
		padding:1.5em;
	}
	.comment .cmt_inr .photo ol li{
		width:100%;
		margin-bottom:0.5em;
	}
}


.comment .modal-close {
    position: static;
    /* width: 2.5em; */
    /* height: 2.5em; */
    /* top: 1em; */
    /* right: 1em; */
}

.comment .modal-close:before {
    content: '';
    background: #00000080;
    width: 100vw;
    height: 100svh;
    position: absolute;
    display: block;
    top: 0;
    left: 0;
}

.comment .modal-close span{
	width:100%;
	height:2px;
	background:#eee;
	position: absolute;
    top: 2.5em;
    width: 2.5em;
    right: 1.5em;
}

.comment .modal-close span:nth-child(1){
	transform:translate(0, -50%) rotate(45deg);
}

.comment .modal-close span:nth-child(2){
	transform:translate(0, -50%) rotate(-45deg);
}


.modal-open .comment{
	opacity:1;
	z-index:101;
	transition:.3s;
}

.modal-close{
	cursor:pointer;
}

.mdlopn{
	text-align:center;
	margin:3em 0;
	cursor:pointer;
}

.mdlopn span{
	background:#fff;
	color:#ffffff;
	border:solid 1px;
	border-radius:5px;
	padding:0.5em .85em 0.5em 1em;
	letter-spacing:0.15em;
	font-weight:bold;
	transition:.3s;
	display:inline-block;
}

.mdlopn:hover span{
	background:#ffffff;
	color:#fff;
	border-color:#ffffff;
}

.company{
	color:#fff;
	background:#00000040;
}

.company h3{
	text-align:center;
}

.company .supcom{
	padding:1.5em;
	border:solid 1px #ffffff80;
	font-size:.8em;
}

.player{
	margin-top:1.5em;
	width:100%;
	padding-top:56.25%;
	position:relative;
}

.player iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	right:0;
}

.accessmap {
	margin-top:1.5em;
	text-align:center;
}

.accessmap img{
	width:640px;
	max-width:90%;
}

.areamap .caution{
	margin-top:1.5em;
	background:#ffffffcc;
	color:#444;
	padding:1.5em;
	font-size:.8em;
	width:90%;
	margin:1.5em auto;
	border-radius:.5em;
	border:solid;
}

.areamap .caution ul li{
	padding-left:1.5em;
	position:relative;
}

.areamap .caution ul li:before{
	content:'';
	position:absolute;
	width:.5em;
	height:.5em;
	background:#444;
	border-radius:50rem;
	top:.25em;
	left:.5em;
}

.timetable{
	padding:0 0 5em;
}

.timetable img{
	display:block;
	margin:0 auto;
	width:min(800px, 100%);
}
.sponcer {
	background:#ffffffdd;
}

.sponcer h3{
	text-align:center;
}

.sponcer ul{
	display:flex;
	flex-wrap:wrap;
	width:700px;
	max-width:90%;
	margin:1em auto;
	justify-content:space-around;
	align-items:center;
}

.sponcer ul:after{
	content:'';
	width:22%;
}

.sponcer ul:before{
	content:'';
	width:22%;
	order:1;
}

.sponcer ul li {
	width:22%;
	text-align:center;
	margin-bottom:1em;
}

.sponcer ul li img{
	max-height:4em;
	object-fit:contain;
}