@charset "utf-8";
/* ========================================
2019.010.23 GungHo afes19 hn
/* ========================================
reset
========================================*/
body {
	font-family: -apple-system, Meiryo, Arial, Helvetica, sans-serif, Osaka;
	background: #ebdfb9 url(../img/bg.jpg) repeat;
	font-size: 16px;
}

body,main,article,section,div,dl,dt,dd,h1,h2,h3,h4,h5,h6,ul,li,ol,table,th,td,img,p,header,figure,figcaption,aside,a,span {
	box-sizing: border-box;
}

body,html,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
	margin: 0;
	padding: 0;
}

ol,ul {
	list-style: none;
}
/* ========================================
common
========================================*/
@media screen and (min-width:751px) {
	.spShow{display: none;}
}
@media screen and (max-width:750px) {
	.pcShow{
		display: none;
	}
}
/* ========================================
Header
========================================*/
.gunghoLogoWrap {
	width: 100%;
	padding:8px 4px 4px;
	background: #742e74;
}
.gunghologo {
	max-width: 122px;
	margin: 0 auto;
}
.gunghologo img {
	width: 100%;
}
.heroImage {
	max-width: 1920px;
	margin: 0 auto;
	background:url(../img/head_bg.jpg);
	text-align: center;
}
.heroImage img{
	width: 100%;
	max-width: 1270px;
}

/* ========================================
main
========================================*/
main {
}
article{
	width: 100%;
	max-width: 1000px;
	margin: 44px auto 16px;
}
main section {
	width: 100%;
	background: #fff;
	margin: 2em auto;
	padding: 0 0 1em;
}
.gNavWrap{
	width: 100%;
	background-color: #532300;
	padding: 8px 0;
}
.gNavWrap .gNav {
	display: flex;
	max-width: 1270px;
	margin: 0 auto;
	justify-content:center;
}
.gNavWrap li:not(:last-child) {
	padding-right: 20px;
	border-right: 2px solid #fff;
	margin-right: 20px;
}
.gNavWrap li a {
	color: #fff;
	text-decoration: none;
	font-size: 1.5rem;
	font-weight: 700;
	font-style: normal;
}
@media screen and (max-width:1019px) {
	.gNavWrap li a {
		font-size: 1rem;
	}
}
@media screen and (max-width:749px) {
	.gNavWrap .gNav{
		flex-wrap: wrap;
	}
}
.st {
	z-index: 2;
	position: -webkit-sticky;
	position: sticky;
	top: 0;
}
.sns {
	width: 100%;
	max-width: 1270px;
	margin: 0 auto;
	position: relative;
}
.sns ul {
	position: absolute;
	right: 8px;
	top:8px;
	display: flex;
}
.sns ul li:first-child {
	margin-right: 4px;
}
.sns ul li:not(:first-child){
	margin-top: -1px;
}
main h2 img{
	width: 100%;
}
.contents {
	width: 95%;
	margin: 16px auto;
}
.ac {
	display: flex;
	flex-wrap: wrap;
}
.ac dt{
	width: calc(4em + 8px);
	background: #4e6dca;
	color: #fff;
	text-align: center;
	margin-bottom: 8px;
}
@media screen and (max-width:749px) {
	.ac dt{
		height:calc(1em + 8px);
	}
}
.ac dd{
	width: calc(100% - 6em);
	margin-left: 1em;
	text-indent: -1em;
}
.ac dd::before{
	content: "：";
}
.catchWrap {
	display: inline-block;
	width: 50%;
	margin: 0 8px 2em 0;
}
.catch {
}
.siteLinkBtn a{
	color: #fff;
	text-decoration: none;
	display: block;
}
.siteLinkBtn {
	margin: 1em auto;
	width: 180px;
	height:50px;
	text-align: center;
	background-color: #000;
	line-height: 52px;
	color: #FFF;
	text-decoration: none;
	font-weight: bold;
	border: 2px solid #000;
	position: relative;
	overflow: hidden;
	z-index: 1;
}
.siteLinkBtn :after{
	width: 100%;
	height: 0;
	content:"";
	position: absolute;
	top: 50%;
	left: 50%;
	background : #FFF;
	opacity: 0;
	transform: translateX(-50%) translateY(-50%) rotate(45deg);
	transition: .2s;
	z-index: -1;
}
.siteLinkBtn :hover{
	color: #000;
}
.siteLinkBtn :hover:after{
	height: 240%;
	opacity: 1;
}
.siteLinkBtn :active:after{
	height: 340%;
	opacity: 1;
}
.keyVisual {
	display: inline-block;
	width: calc(50% - 1em);
	max-width: 432px;
	vertical-align: top;
}
.keyVisual img {
	width: 100%;
}
.present {
	width: 95%;
	max-width: 920px;
	margin: 0 auto;
}
.present img {
	width: 100%;
}
.mapWrap{
	max-width: 600px;
	margin: 0 auto;
}
.map {
	position: relative;
	width: 100%;
	padding-top: 75%;
}
.map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.stamprally{
	margin: 0 auto;
	text-align: center;
}
.stamprally img{
	width: 100%;
	max-width: 750px;
}
main h3 {
	width: 95%;
	font-size: 1.5rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.2;
	margin: 1em auto;
}
@media screen and (max-width:749px) {
	main h3 {
		font-size: 1.25rem;
	}
	.catchWrap,.keyVisual{
		display: block;
		width: 100%;
	}
	.keyVisual{
		margin: 16px auto 0;
	}
	.catchWrap{
		margin: 0 auto;
	}
}
.present {
	max-width: 920px;
	margin-bottom: 2em;
}
.present figure img {
	width: 100%;
}
main h4 {
	font-size: 1.2rem;
}
.comingSoon {
	margin-bottom: 1.5em;
}
.stage{
	margin: 1em auto 2em;
}
.stage tr{
	border-bottom:#fff 8px solid;
}
.stage th{
	padding: 8px 4px 8px 16px;
	text-align: center;
	border-right: #fff 8px solid;
	white-space:nowrap;
}
.icon{
	text-align: center;
	padding: 2px;
}
.icon img{
	height: 70px;
}
.stage tr:nth-child(odd) th,.stage tr:nth-child(odd) td{
	background-color: #93ba16;
}
.stage tr:nth-child(even) th,.stage tr:nth-child(even) td{
	background-color: #c9da93;
}
/*.stage tr:nth-child(odd) td::before {
	content: "●";
	padding: 0 6px;
	margin-left: -22px;
	margin-top: 1px;
	color: #fff;
	display: inline-block;
	width: calc(1rem + 16px);
	height: calc(1rem + 16px);
	background-color: #93ba16;
	transform:
		rotate(-45deg)
		skew(
			calc((90deg - 90deg) / 2),
			calc((90deg - 90deg) / 2)
		);
}
.stage tr:nth-child(even) td::before {
	content: "●";
	padding: 0 6px;
	margin-left: -22px;
	margin-top: 1px;
	color: #fff;
	display: inline-block;
	width: calc(1rem + 16px);
	height: calc(1rem + 16px);
	background-color: #c9da93;
	transform:
		rotate(-45deg)
		skew(
			calc((90deg - 90deg) / 2),
			calc((90deg - 90deg) / 2)
		);
}
.stage td{
	display: inline-block;
	margin-left:18px;
	width: 100%;
	padding: 6px
}*/
.guestName{
	margin-left: 8px;
	padding-right: 16px;
}
@media screen and (max-width:429px) {
	.icon img{
		height: 50px;
	}
	.guestName{
		font-size: 0.875rem;
	}
}
.guest{
	display: flex;
}
.guest figure,.guest figcaption{
	width: 100%;
	margin: 0;
}
.guest li {
	max-width: 200px;
	margin: 8px auto;
}
.guest li:not(:last-child){
	margin-right: 16px;
}
@media screen and (max-width:749px) {
	.guest{
		flex-wrap: wrap;
	}
	.guest li {
		width: calc(100% / 3 - 16px);
	}
	.guest li:nth-child(3){
		margin-right: 0px;
	}
}
.guest li img {
	width: 100%;
}
main figcaption {
	text-align: center;
	font-weight: bold;
}
.notice li{
	margin-left: 1em;
	text-indent: -1em;
	font-size: 0.875rem;
}
.notice li:before{
	content: "※";
}
.exText{
	color: #F00;
	font-weight: bold;
}
dl.notice{
	margin-bottom: 1em;
}
.notice dt {
	
}
.notice dd {
	margin-left: 1em;
	text-indent: -1em;
	font-size: 0.875rem;
}
.notice dd:before {
	content: "・";
}
footer {
}
#toPageTop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	max-width: 90px;
	z-index: 3;
}
#toPageTop img{
	width: 100%;
}
@media screen and (max-width:749px) {
	#toPageTop {
		bottom: 4px;
		right: 4px;
		max-width: 60px;
	}
}
.appList {
	background: #532300;
	display: flex;
	justify-content: center;
	margin-bottom: 1em;
	padding:16px 2.5%;
}
.appList li {
	width: calc(100% / 3 -16px);
	max-width: 80px;
}
.appList li:not(:last-child){
	margin-right: 20px;
}
.appList li img {
	width: 100%;
}
.copy {
	width: 95%;
	margin: 0 auto 95px;
	font-size: 0.625rem;
	text-align: center;
}
@media screen and (max-width:749px) {
	.copy {
		margin: 0 auto 65px;
	}
}
.gunghoFootLogo{
	margin: 0 auto 1em;
	width: 50%;
	max-width: 80px;
}
.gunghoFootLogo img{
	width:100%;
}