@import url(normalize.css);

body
{
	background:url(../images/bodybg.png) no-repeat center top #47b8de;
	background-size:contain;
	color:#000;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:1em;
	line-height:1.5em;
}

.clear	{clear:both; height:0;}
.clearfix:after{clear:both; content:"."; display:block; height:0; visibility:hidden;}

a {outline:none; text-decoration:underline;}
a {color:#47b8de; text-decoration:underline;}
a:visited {color:#47b8de; text-decoration:underline;}
a:hover {color:#47b8de; text-decoration:none; }
a:focus {color:#47b8de; text-decoration:none;}
a:active {color:#47b8de; text-decoration:none;}

a:hover img
{
     background:none !important;
     filter:alpha(opacity=60);
     -ms-filter: "alpha( opacity=60 )";
     opacity:0.6;
}

img { border:none;}

h1,h2,h3,h4,h5,h6,strong
{
	font-family:"ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "メイリオ ボールド", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight:bold;
}

.left	{float:left;}
.right	{float:right;}
.center	{text-align:center;}
.tleft	{text-align:left;}
.tright	{text-align:right;}

.tm5	{margin-top:5px;}
.rm5	{margin-right:5px;}
.bm5	{margin-bottom:5px;}
.lm5	{margin-left:5px;}

.tm10	{margin-top:10px;}
.rm10	{margin-right:10px;}
.bm10	{margin-bottom:10px;}
.lm10	{margin-left:10px;}

.bm15	{margin-bottom:15px;}

.tm20	{margin-top:20px;}
.bm20	{margin-bottom:20px;}

.tm30	{margin-top:30px;}
.bm30	{margin-bottom:30px;}

.tm40	{margin-top:40px;}
.bm40	{margin-bottom:40px;}

.tm60	{margin-top:60px;}
.bm60	{margin-bottom:60px;}

.nm		{margin:0 auto !important;}

.sp_only{	display: none;}

.small
{
	font-size:0.8em;
}
.underline
{
	text-decoration:underline;
}
.large
{
	font-size:1.5em;
	line-height: 1.5em;
}
/* header */
#masthead
{
	height:1030px;
	margin:50px auto 0;
	overflow:hidden;
	position:relative;
	width:100%;
}
#masthead h1
{
	left:50%;
	margin:0;
	position:absolute;
	top:20px;
	-webkit-transform:translate(-50%,0);
	-moz-transform:translate(-50%,0);
	-ms-transform:translate(-50%,0);
	transform:translate(-50%,0);
	width:850px;
	z-index:5;
}
#masthead h1 a:hover img
{
     background:none !important;
     filter:alpha(opacity=100);
     -ms-filter: "alpha( opacity=100 )";
     opacity:1;
}

.header-sun
{
	height:360px;
	left:5%;
	position:absolute;
	top:30px;
	width:435px;
	z-index:1;
    -webkit-animation: rotation 4s ease-in-out infinite alternate;
    -moz-animation: rotation 4s ease-in-out infinite alternate;
    -ms-animation: rotation 4s ease-in-out infinite alternate;
}
@keyframes rotation {
	0%   { transform: scale(0.8,0.8) rotate(45deg); transition:all 0.3s ease-in-out; }
	100% { transform: scale(1.2,1.2) rotate(0); transition:all 0.3s ease-in-out;}
}
@-webkit-keyframes rotation {
	0%   { -webkit-transform: scale(0.8,0.8) rotate(45deg); transition:all 0.3s ease-in-out; }
	100% { -webkit-transform: scale(1.2,1.2) rotate(0); transition:all 0.3s ease-in-out;}
}
@-moz-keyframes rotation {
	0%   { -moz-transform: scale(0.8,0.8) rotate(45deg); transition:all 0.3s ease-in-out;}
	100% { -moz-transform: scale(1.2,1.2) rotate(0); transition:all 0.3s ease-in-out;}
}
@-ms-keyframes rotation {
	0%   { -ms-transform: scale(0.8,0.8) rotate(45deg); transition:all 0.3s ease-in-out;}
	100% { -ms-transform: scale(1.2,1.2) rotate(0); transition:all 0.3s ease-in-out;}
}
.header-birds
{
	height:466px;
	right:2%;
	position:absolute;
	top:0;
	width:285px;
	z-index:1;
    -webkit-animation: flypass 10s ease-in-out infinite;
    -moz-animation: flypass 10s ease-in-out infinite;
    -ms-animation: flypass 10s ease-in-out infinite;
}
@keyframes flypass {
	0%   { transform: scale(0.2,0.2); right:50%; top:50%; transition:all 0.3s ease-in-out; }
	100% { transform: scale(1.5,1.5);  right:-600px; top:-700px; transition:all 0.3s ease-in-out;}
}
@-webkit-keyframes flypass {
	0%   { -webkit-transform:  scale(0.2,0.2); right:50%; top:50%; transition:all 0.3s ease-in-out; }
	100% { -webkit-transform: scale(1.5,1.5);  right:-600px; top:-700px; transition:all 0.3s ease-in-out;}
}
@-moz-keyframes flypass {
	0%   { -moz-transform:  scale(0.2,0.2); right:50%; top:50%; transition:all 0.3s ease-in-out;}
	100% { -moz-transform: scale(1.5,1.5);  right:-600px; top:-700px; transition:all 0.3s ease-in-out;}
}
@-ms-keyframes flypass {
	0%   { -ms-transform:  scale(0.2,0.2); right:50%; top:50%; transition:all 0.3s ease-in-out;}
	100% { -ms-transform: scale(1.5,1.5);  right:-600px; top:-700px; transition:all 0.3s ease-in-out;}
}
.header-clouds
{
	height:287px;
	left:0;
	position:absolute;
	top:380px;
	width:1500px;
	z-index:1;
    -webkit-animation: flow 60s linear infinite;
    -moz-animation: flow 60s linear infinite;
    -ms-animation: flow 60s linear infinite;
}
@keyframes flow {
	0%   { left:-80%;}
	100% { left:100%;}
}
@-webkit-keyframes flow {
	0%   { left:-80%;}
	100% { left:100%;}
}
@-moz-keyframes flow {
	0%    { left:-80%;}
	100% { left:100%;}
}
@-ms-keyframes flow {
	0%    { left:-80%;}
	100% { left:100%;}
}
.header-ribbons
{
	left:50%;
	position:absolute;
	top:30px;
	-webkit-transform:translate(-50%,0);
	-moz-transform:translate(-50%,0);
	-ms-transform:translate(-50%,0);
	transform:translate(-50%,0);
	width:100%;
}
.header-tokyo
{
	height:627px;
	left:50%;
	position:absolute;
	top:300px;
	transform:translate(-50%,0);
	width:902px;
	z-index:5;
    -webkit-animation: tokyo 5s ease-in-out infinite alternate;
    -moz-animation: tokyo 5s ease-in-out infinite alternate;
    -ms-animation: tokyo 5s ease-in-out infinite alternate;
}
@keyframes tokyo {
	0%   { top:300px;}
	100% { top:380px;}
}
@-webkit-keyframes tokyo {
	0%   { top:300px;}
	100% { top:380px;}
}
@-moz-keyframes tokyo {
	0%   { top:300px;}
	100% { top:380px;}
}
@-ms-keyframes tokyo {
	0%   { top:300px;}
	100% { top:380px;}
}
.header-catch
{
	left:50%;
	position:absolute;
	top:390px;
	-webkit-transform:translate(-50%,0);
	-moz-transform:translate(-50%,0);
	-ms-transform:translate(-50%,0);
	transform:translate(-50%,0);
	width:836px;
	z-index:5;
}
.header-catch-vt
{
	position:absolute;
	right:18%;
	top:40px;	
	width:63px;
	z-index:5;
}
@media screen and (max-width:1870px)
{
	.header-catch-vt
	{
		position:absolute;
		right:5%;
		top:40px;	
		width:63px;
		z-index:5;
	}
}
.header-catch-ticket-arrow
{
	left:45%;
	position:absolute;
	top:490px;
	-webkit-transform:translate(-45%,0);
	-moz-transform:translate(-45%,0);
	-ms-transform:translate(-45%,0);
	transform:translate(-45%,0);
	width:818px;
	z-index:6;
	-webkit-animation: ticketarrow 3s ease-in-out infinite;
    -moz-animation: ticketarrow 3s ease-in-out infinite;
    -ms-animation: ticketarrow 3s ease-in-out infinite;
}
@keyframes ticketarrow  {
	0%   { left:45%;}
	10%   { left:40%;}
	30% { left:45%;}
	35% { left:46%;}
	40% { left:45%;}
	45% { left:46%;}	
	50%{ left:45%;}
	100%{ left:45%;}
}
@-webkit-keyframes ticketarrow  {
	0%   { left:45%;}
	10%   { left:40%;}
	30% { left:45%;}
	35% { left:46%;}
	40% { left:45%;}
	45% { left:46%;}	
	50%{ left:45%;}
	100%{ left:45%;}
}
@-moz-keyframes ticketarrow  {
	0%   { left:45%;}
	10%   { left:40%;}
	30% { left:45%;}
	35% { left:46%;}
	40% { left:45%;}
	45% { left:46%;}	
	50%{ left:45%;}
	100%{ left:45%;}
}
@-ms-keyframes ticketarrow  {
	0%   { left:45%;}
	10%   { left:40%;}
	30% { left:45%;}
	35% { left:46%;}
	40% { left:45%;}
	45% { left:46%;}	
	50%{ left:45%;}
	100%{ left:45%;}
}
.header-catch-ticket-img
{
	left:calc( 50% + 409px);
	position:absolute;
	top:370px;
	-webkit-transform:translate(-50%,0);
	-moz-transform:translate(-50%,0);
	-ms-transform:translate(-50%,0);
	transform:translate(-50%,0);
	width:250px;
	z-index:5;
}


/* global navi */
.gnav
{
	background:#07a9e2;
	box-shadow:0 4px 0 #0690c0;
	position:fixed;
	top:0;
	text-align:center;
	width:100%;
	z-index:99;
}
.pc_menu
{
	display:none;
}
.pc_global-navi
{
	list-style:none;
	margin:0 auto;
	padding:0;
	width:100%;
}
.pc_global-navi li
{
	display:inline-block;
}
.pc_global-navi li a
{
	background:#07a9e2;
	box-shadow:0 4px 0 #0690c0;
	color:#fff;
	display:block;
	font-weight:bold;
	padding:0.8em 2em;
	text-align:center;
	text-decoration:none;
	width:100%;
}
.pc_global-navi li a:hover,
.pc_global-navi li a.current
{
	background:#fff;
	box-shadow:0 4px 0 #07a9e2;
	color:#07a9e2;
}
.pc_global-navi li a.comingsoon:hover
{
	background:#fff;
	box-shadow:0 4px 0 #999;
	color:#999;
}

/* footer */
.site-footer
{
	background:#1d2629;
	color:#fff;
	padding:40px 0;
	text-align:center;
	width:100%;
}
.site-footer p
{
	font-size:0.8em;
	margin:20px auto 0 auto;
}
.sponcers-box
{
	background:#fff;
	color:#000;
	margin:0 auto;
	padding:30px 10px;
	width:1000px;
}
.special-sponcers,
.sponcers
{
	margin-top:0;
	width:100%;
}

.sponcers-box dl dt
{
	background:#fed731;
	border-radius:50px;
	font-size:1.5em;
	font-weight:bold;
	padding:0.4em 0;
}
.sponcers-box dl dd
{
	margin:0;
	padding:0;
}

.sponcers-box dl dd ul
{
	list-style:none;
	margin:0;
	padding:0;
}
dl.special-sponcers dd ul
{
	margin:0 auto;
	width:490px;
}

.sponcers-box dl dd ul li
{
	float:left;
	padding:10px 5px 0 5px;
	text-align:left;
	width:245px;
}
.sponcers-box dl dd ul li:nth-child(even)
{
	
}
.sponcers-box .other
{
	border-top:1px solid #ccc;
	padding-top:15px;
	text-align:center;
}
.sponcers-box .other img
{
	height:35px;
}
.totop
{
	background:rgba(255,255,255,0.4);
	box-shadow:0 0 3px 3px rgba(0,0,0,0.1);
	bottom:4em;
	padding:0.75em 1em;
	position:fixed;
	right:10%;
	text-decoration:none;
	z-index:99;
}
.totop:hover
{
	background:rgba(255,255,255,0.8);
	box-shadow:0 0 3px 3px rgba(0,0,0,0.4);
	
}
/* content */
#content
{
	position:relative;
	margin-bottom:-10px;
	top:-50px;
	width:100%;
	z-index:5;
}
	
.side-people
{
	
	height:1010px;
	position:absolute;
	overflow:hidden;
	top:-50px;
	width:100%;
	z-index:1;
}
.people-left
{
	background:url(../images/people_left.png) no-repeat left top;
	background-size:789px;
	height:1024px;
	left:-10%;
	position:absolute;
	top:0;
	width:789px;
}
.people-right
{
	background:url(../images/people_right.png) no-repeat left top;
	background-size:756px;
	height:860px;
	right:-10%;
	position:absolute;
	top:0;
	width:756px;
}
#main-wrap
{
	background:url(../images/mainbg.png) rgba(255,255,255,0.3);
	background-size:2px;
	margin:0 auto;
	min-height:1024px;
	position:relative;
	width:1000px;
	z-index:3;
}
.subcatch
{
	height:245px;
	margin:0 31px;
	position:absolute;
	top:-220px;
	width:938px;
}


.content-area
{
	padding:50px;
}

h2
{
	font-size:2.5em;
	line-height:1.2em;
	text-align:center;
}
h2.long
{
	font-size:2em;
	line-height:1.5em;
}
.remaining-time
{
	margin:0 auto;
	text-align:center;
	width:640px;
}
.flip-clock-wrapper
{
	margin:1em auto;
}
.flip-clock-divider .flip-clock-label,
.flip-clock-divider.minutes .flip-clock-label,
.flip-clock-divider.seconds .flip-clock-label
{
	bottom:-20px;
	font-size:1.5em;
	right:-130px;
	top:auto;
}
.top-about
{
	border-bottom:1px solid #000;
	font-size:1.8em;
	line-height:1.5em;
	width:100%;
}
.top-about dt,
.top-about dd,
form#mailformpro dl.contact dt,
form#mailformpro dl.contact dd
{
	border-top:1px solid #000;
	padding:10px 0;
}
.top-about dt
{
	float:left;
	width:155px;
}
.top-about dd
{
	margin:0;
	padding-left:155px;	
}
.ticket-txt
{
	float:left;
	width:620px;
}
.ticket-img
{
	float:right;
	width:250px;
}
.ticket-txt p
{
	font-size:1.5em;
	line-height:1.5em;
	margin:0;
}
.ticket-txt p.caution
{
	color:#ff0000;
	font-size:2.2em;
}

.choose-lang
{
	float:right;
	list-style:none;
	margin:20px 0 0 0;
	padding:0;
	width:10em;
}
.choose-lang li
{
	border-radius:5px;
	border:1px solid #eee;
	box-shadow:2px 2px 1px 1px rgba(0,0,0,0.4);
	cursor:pointer;
	float:left;
	padding:0.5em;
}
.choose-lang li.ja
{
	background:#fff;
	color:#bd0000;
	margin-right:0.5em;
}
.choose-lang li.cn
{
	background:#e20e0e;
	color:#fff;	
}
.choose-lang li.current
{
	box-shadow:1px 1px 1px 1px rgba(0,0,0,0.4) inset;
	font-weight:bold;
}

#cn-tab
{
	display:none;	
}
.top-contact
{
	background:#f09716;
	border-radius:75px;
	box-shadow:0 4px 0 #e65526;
	display:block;
	margin:2em auto 0;
	padding:1.2em 0 0.8em;
	text-align:center;
	-ms-transition:all 0.3s ease-in-out;
	transition:all 0.3s ease-in-out;
	width:750px;
}
.top-contact img
{
	height:34px;
	width:auto;
}
.top-contact:hover
{
	box-shadow:0 1px 0 #e65526;
}

.page-content
{
	margin:0 auto;
}
.page-content .big.underline
{
	display:block;
	font-size:1.5em;
	text-align:center;
}

.press
{
	border-top:1px dotted #000;
	border-bottom:1px dotted #000;
	margin:0;
	padding:1em 0 1em 1.5em;
}
.press-sample
{
	background:#fff;
	border:3px solid #ccc;
}
.press-sample dt
{
	padding:1em;
}
.press-sample dd
{
	margin:0;
	padding:0 1em 1em 1em;
}
.ps_title
{
	border-bottom:2px solid #47B7DE;
	display:block;
	font-weight:bold;
}
.ps_body
{
	border-left:4px solid #ccc;
	display:block;
	margin:0.5em;
	padding:0.25em 0.5em;
}

/* ranking */
.result-top3
{
	background: #fff;
	border:2px solid #ccc;
	font-size: 1.3em;
}
.result-top3 dt
{
	float: left;
	padding: 60px 20px 20px 20px;
	width: 250px;
	background: url(/images/icon_silver-grandprix.png) no-repeat center 10px #e6e6e5;
	background-size: 60px;
	border-right: 1px solid #989898;
	text-align: center;
}
.result-top3 dt:first-of-type
{
	background: url(/images/icon_gold-grandprix.png) no-repeat center 10px #fff2bc;
	background-size: 60px;
	border-right: 1px solid #b29618;
}
.result-top3 dt:last-of-type
{
	background: url(/images/icon_bronze-grandprix.png) no-repeat center 10px #fce2b4;
	background-size: 60px;
	border-right: 1px solid #b89149;
}

.result-top3 dd
{
	margin:0;
	padding: 40px 20px 40px 270px;
	border-bottom: 1px solid #989898;
}
.result-top3 dd:first-of-type
{
	border-bottom: 1px solid #b29618;
}
.result-top3 dd:last-of-type
{
	border-bottom:none;
}

.result-top3 dd span
{
	display:inline-block;
	float: right;
}

.result-rest7
{
	background: #fff;
	border:2px solid #07a9e2;
}
.result-rest7 dt
{
	padding: 10px;
	width: 6em;
	text-align: center;
	background:rgba(7,169,226,0.5);
	border-right: 1px solid #07a9e2;
	float: left;

}
.result-rest7 dd
{
	padding: 10px 10px 10px 6.5em;
	border-bottom: 1px solid #07a9e2;
	margin: 0;
}
.result-rest7 dd:last-of-type
{
	border-bottom:none;
}
/* participant */
#map
{
	height:875px;
	margin-bottom:40px;
	position:relative;
	width:900px;
}
.map-img
{
	height:595px;
	left:55px;
	position:absolute;
	top:110px;
	width:678px;
	z-index:2;
}
#map a.mapbtn
{
	background:#fff;
	border-radius:5px;
	box-shadow:0 -10px 5px -3px rgba(0,0,0,0.15) inset, 0 0 2px 0px rgba(0,0,0,0.5);
	font-weight:bold;
	padding:0.25em;
	position:absolute;
	z-index:3;
}
#map a.mapbtn:hover
{
	box-shadow:0 10px 5px -3px rgba(0,0,0,0.15) inset;
}
#map a.mbtn_hokkaido
{
	top:190px;
	right:235px;
}
#map a.mbtn_tohoku
{
	top:380px;
	right:315px;
}
#map a.mbtn_kanto
{
	bottom: 340px;
    right: 360px;
}
#map a.mbtn_chubu
{
	bottom:345px;
	left:380px;
}
#map a.mbtn_kinki
{
	bottom:300px;
	left:305px;
}
#map a.mbtn_chugoku
{
	bottom: 320px;
    left: 215px;
}
#map a.mbtn_shikoku
{
	bottom: 265px;
	left: 230px;
}
#map a.mbtn_kyushu
{
	bottom: 235px;
	left: 120px;
}
#map a
{
	color:#000;
	text-decoration:none;
}
#map dl
{
	background-color:#fff;
	background-repeat: no-repeat;
	background-position: right 10px bottom 10px;
	position:absolute;
	padding:15px;
	z-index:3;
}
#map dl dt,
.arealist h3
{
	font-size:1.5em;
	margin-bottom:0.4em;
	padding:0.25em 0 0.25em 0.5em;
}
#map dl dd
{
	font-size:0.93em;
	line-height:1.3em;
	margin:0;
}
#map dl dd span
{
	float:left;
}
#map dl dd span:not(:first-of-type)
{
	padding-left:1em;
}
.maplist_hokkaido
{
	background-image:url(../images/bg_map-hokkaido.png);
	background-size:80px;
	top:0;
	right:0;
	
}
.maplist_hokkaido dt,
.arealist.hokkaido h3
{
	border-left:8px solid #3f3a39;
}
.maplist_tohoku
{
	background-image:url(../images/bg_map-tohoku.png);
	background-size:80px;
	top:270px;
	right:0;	
}
.maplist_tohoku dt,
.arealist.tohoku h3
{
	border-left:8px solid #1c7bad;
}
.maplist_kanto
{
	background-image:url(../images/bg_map-kanto.png);
	background-size:20px;
	top:500px;
	right:140px;
	
}
.maplist_kanto dt,
.arealist.kanto h3
{
	border-left:8px solid #6e9c43;
}
.maplist_chubu
{
	background-image:url(../images/bg_map-chubu.png);
	background-size:100px;
	left:100px;
	top:160px;
}
.maplist_chubu dt,
.arealist.chubu h3
{
	border-left:8px solid #66bfb3;
}
.maplist_kinki
{
	background-image:url(../images/bg_map-kinki.png);
	background-size:60px;
	bottom:40px;
	left:420px;
}
.maplist_kinki dt,
.arealist.kinki h3
{
	border-left:8px solid #e9ab31;
}
.maplist_chugoku
{
	background-image:url(../images/bg_map-chugoku.png);
	background-size:60px;
	left:0;
	top:360px;
}
.maplist_chugoku dt,
.arealist.chugoku h3
{
	border-left:8px solid #be904d;
}
.maplist_shikoku
{
	background-image:url(../images/bg_map-shikoku.png);
	background-size:40px;
	bottom:130px;
	left:250px;
}
.maplist_shikoku dt,
.arealist.shikoku h3
{
	border-left:8px solid #e87589;
}
.maplist_kyushu
{
	background-image:url(../images/bg_map-kyushu.png);
	background-size:50px;
	bottom:0;
	left:0;
}
.maplist_kyushu dt,
.arealist.kyushu h3
{
	border-left:8px solid #d93121;
}
.arealist
{
	background-color:#fff;
	background-repeat: no-repeat;
	background-position: right 20px top 10px;
	margin-bottom:30px;
	padding:30px;
}
.arealist h3
{
	margin-top:0;
}
.arealist table
{
	border:1px solid #7b7b7b;
	border-collapse:collapse;
}
.arealist table tr
{
	background: #fff;
	cursor: pointer;
}
.arealist table tr:hover
{
	background: #dbf1f9;
}

.arealist table th,
.arealist table td
{
	border:1px solid #7b7b7b;
	font-size:0.93em;
	padding:0.5em;
}
.arealist table th
{
	background:#e2e2e2;
}
.arealist table th:first-child
{
	width: 90px;
}
.arealist table td:first-child
{
	text-align: center;
}
.arealist table th:nth-child(2)
{
	width:120px;
}
.arealist table th:last-child
{
	width:325px;
}
.arealist.hokkaido
{
	background-image:url(../images/bg_map-hokkaido.png);
	background-size:90px;
}
.arealist.tohoku
{
	background-image:url(../images/bg_map-tohoku.png);
	background-size:110px;
}
.arealist.tohoku h4
{
	border-bottom:1px solid	#1c7bad;
}
.arealist.kanto
{
	background-image:url(../images/bg_map-kanto.png);
	background-position:right 50px top 10px;
	background-size:17px;
}
.arealist.kanto h4
{
	border-bottom:1px solid	#6e9c43;
}
.arealist.chubu
{
	background-image:url(../images/bg_map-chubu.png);
	background-size:160px;
}
.arealist.chubu h4
{
	border-bottom:1px solid	#66bfb3;
}
.arealist.kinki
{
	background-image:url(../images/bg_map-kinki.png);
	background-position:right 40px top 10px;
	background-size:85px;
}
.arealist.kinki h4
{
	border-bottom:1px solid	#e9ab31;
}
.arealist.chugoku
{
	background-image:url(../images/bg_map-chugoku.png);
	background-size:100px;
}
.arealist.chugoku h4
{
	border-bottom:1px solid	#be904d;
}
.arealist.shikoku
{
	background-image:url(../images/bg_map-shikoku.png);
	background-size:80px;
}
.arealist.shikoku h4
{
	border-bottom:1px solid	#e87589;
}
.arealist.kyushu
{
	background-image:url(../images/bg_map-kyushu.png);
	background-size:65px;
}
.arealist.kyushu h4
{
	border-bottom:1px solid	#d93121;
}

.arealist .first-venue,
.arealist .second-venue
{
	box-sizing: border-box;
	color: #fff;
	display: block;
	margin:0 auto;
	padding: 0.5em;
	text-align: center;
	width: 3em;
}
.arealist .first-venue
{
	background: #ee781e
}
.arealist .second-venue
{
	background: #00aa83;
}
.tomap
{
	display:block;
	text-align:right;
}

/* modal */
.modal-overlay
{
	background: rgba(0,0,0,0.8);
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 100;
}
.modal-base
{
	display: none;
	top: 0;
	left: 10%;
	position: fixed;
	margin: 150px auto 0 auto;
	width: 80%;
	z-index: 200;
}
.modal
{
	display: none;
	width: 100%;
}
.modal-images
{
	float: left;
	width: 60%;
}
.modal-images img
{
	box-shadow: 0 0 5px 3px rgba(0,0,0,0.5);
	width: 49%;
}
.modal-images img:first-of-type
{
	margin-bottom: 20px;
	width: 100%;
}
.modal-txt
{
	background: #fff;
	box-shadow: 0 0 5px 3px rgba(0,0,0,0.5);
	float: right;
	margin:0 auto;
	width: 38%;
}
.hokkaido .modal-txt dt
{
	border-bottom: 2px solid #3f3a39;
}
.hokkaido .modal-txt dd
{
	background:url(../images/bg_map-hokkaido.png) no-repeat right 20px bottom 20px;
	background-size: 150px
}
.tohoku .modal-txt dt
{
	border-bottom: 2px solid #1c7bad;
}
.tohoku .modal-txt dd
{
	background:url(../images/bg_map-tohoku.png) no-repeat right 20px bottom 20px;
	background-size: 150px
}
.kanto .modal-txt dt
{
	border-bottom: 2px solid #6e9c43;
}
.kanto .modal-txt dd
{
	background:url(../images/bg_map-kanto.png) no-repeat right 20px bottom 20px;
	background-size: 50px
}
.chubu .modal-txt dt
{
	border-bottom: 2px solid #66bfb3;
}
.chubu .modal-txt dd
{
	background:url(../images/bg_map-chubu.png) no-repeat right 20px bottom 20px;
	background-size: 200px
}
.kinki .modal-txt dt
{
	border-bottom: 2px solid #e9ab31;
}
.kinki .modal-txt dd
{
	background:url(../images/bg_map-kinki.png) no-repeat right 20px bottom 20px;
	background-size: 120px
}
.chugoku .modal-txt dt
{
	border-bottom: 2px solid #be904d;
}
.chugoku .modal-txt dd
{
	background:url(../images/bg_map-chugoku.png) no-repeat right 20px bottom 20px;
	background-size: 120px
}
.shikoku .modal-txt dt
{
	border-bottom: 2px solid #e87589;
}
.shikoku .modal-txt dd
{
	background:url(../images/bg_map-shikoku.png) no-repeat right 20px bottom 20px;
	background-size: 120px
}
.kyushu .modal-txt dt
{
	border-bottom: 2px solid #d93121;
}
.kyushu .modal-txt dd
{
	background:url(../images/bg_map-kyushu.png) no-repeat right 20px bottom 20px;
	background-size: 120px
}

.modal-txt dt
{
	font-size: 150%;
	padding: 20px;
	text-indent: 0.5em;
}
.modal-txt dt span
{
	font-size: 75%;
}
.modal-txt dt a
{
	text-decoration: none;
}
.modal-txt dt span .first-venue,
.modal-txt dt span .second-venue
{
	box-sizing: border-box;
	color: #fff;
	display: inline;
	margin:0 0 0 0.5em;
	padding: 0.5em;
	text-align: center;
}
.modal-txt dt span .first-venue
{
	background: #ee781e
}
.modal-txt dt span .first-venue:before
{
	content: '第1会場 ';
}
.modal-txt dt span .second-venue
{
	background: #00aa83;
}
.modal-txt dt span .second-venue:before
{
	content: '第2会場 ';
}
/*
.modal-txt dd
{
	line-height: 170%;
	height: auto;
	overflow-y:initial;
	margin: 0;
	padding: 20px 30px;
}*/
.modal-txt dd
{
	line-height: 170%;
	height: 500px;
	overflow-y:auto;
	margin: 0;
	padding: 20px 30px;
}
.close-modal
{
	background: #fff;
	box-shadow: 0 0 5px 3px rgba(0,0,0,0.5);
	color: #47b8de;
	cursor: pointer;
	display: block;
	font-size: 58px;
	font-weight: bold;
	line-height: 65%;
	padding: 0.2em 0.3em 0.4em 0.3em;
	position: absolute;
	right: -50px;
	top: -50px;
}

/* faq */
.faq
{
	margin:0 auto;
}
.faq dt
{
	background:#fff;
	border-bottom: 1px solid #0690c0;
	padding: 10px;
}
.faq dt span,
.faq dd span
{
	color: #fff;
	font-weight:bold;
	display:inline-block;
	border-radius:20px;
	padding:5px 9px;
}
.faq dt span
{
	background: #07a9e2;
}

.faq dd
{
	margin:0 0 30px 0;
	padding: 10px;
}
.faq dd span
{
	background: #e11220;
}

/* access */
.zoomContainer
{
	z-index: 99;
}
.first-venue-title,
.second-venue-title
{
	background:#fff;
	text-align: center;
	font-size: 1.5em;
	padding: 10px 0;
}
.first-venue-title
{
	border-bottom: 2px solid #ee781e;
	color: #ee781e;
}
.second-venue-title
{
	border-bottom: 2px solid #00aa83;
	color: #00aa83;
}

.first-venue,
.second-venue
{
	border-collapse: collapse;
	background: #fff;
}
.first-venue th,
.first-venue td,
.second-venue th,
.second-venue td
{
	padding: 5px;
}
.first-venue th
{
	background:#ee781e;
	border: 1px solid #ee781e;
	color: #fff;
}
.second-venue th
{
	background:#00aa83;
	border: 1px solid #00aa83;
	color: #fff;
}
.first-venue th:not(:last-child),
.second-venue th:not(:last-child)
{
	border-right: 1px solid #fff;
}

.first-venue td
{
	border: 1px solid #ee781e;
}
.second-venue td
{
	border: 1px solid #00aa83;
}

.first-venue td:first-child,
.second-venue td:first-child
{
	text-align: center;
	width: 6em;
}
.first-venue td:nth-child(3),
.second-venue td:nth-child(3)
{
	width: 30em;
}

.first-venue td:last-child,
.second-venue td:last-child
{
	text-align: center;
}
/* form */

form#mailformpro dl.contact dt .required
{
	background:#e00;
	color:#fff;
	font-size:0.8em;
	float:right;
	line-height:1em;
	margin:0 0.5em;
	padding:0.5em;
	vertical-align:baseline;
}

form#mailformpro dl.contact 
{
	border-bottom:1px solid #000;
	margin:0 auto;
	width:100%;
}
form#mailformpro dl.contact dt
{
	border-top:none;
	float:left;
	font-size:1em;
	padding-top:15px;
	text-align:left;
	width:300px;
}
form#mailformpro dl.contact dd
{
	margin:0;
	padding-left:300px;
}
form#mailformpro label.mfp_not_checked
{
	background:#fff;
}
form#mailformpro .form_btns
{
	margin-top:20px;
	text-align:center;
	width:100%;
}
.mfp_element_submit, .mfp_element_reset, .mfp_element_button
{
	background:#f09716;
	border:none;
	border-radius:75px;
	box-shadow:0 4px 0 #e65526;
	color:#fff;
	font-size:1.8em;
	font-weight:bold;
	display:inline-block;
	margin:0 auto;
	padding:0.8em 0;
	text-align:center;
	text-shadow:none;
	width:500px;
}
.mfp_element_submit:hover,.mfp_element_reset:hover,.mfp_element_button:hover
{
	background:#f09716;
	box-shadow:0 1px 0 #e65526;
	-ms-transition:all 0.3s ease-in-out;
	transition:all 0.3s ease-in-out;
}
.mfp_element_button
{
	font-size:1em;
	padding:0.5em 0;
	width:45%;
}
#mfp_button_cancel
{
	background:#ccc;
	box-shadow:0 4px 0 #999;
}
#mfp_button_cancel:hover
{
	background:#ccc;
	box-shadow:0 1px 0 #999;
}
@media screen and (max-width:1000px)
{
	body
	{
		background:url(../images/sp/bodybg.png) no-repeat center top #47b8de;
		background-size:contain;
	}
	.sp_only{	display: block;}

	.large{font-size: 1.2em; line-height: 120%;}
	#masthead
	{
		height:40em;
		height:110vw;
		margin:2em auto 0;
		overflow:hidden;
		position:relative;
		width:100%;
	}
	#masthead h1
	{
		left:50%;
		position:absolute;
		top:4vw;
		-webkit-transform:translate(-50%,0);
		-moz-transform:translate(-50%,0);
		-ms-transform:translate(-50%,0);
		transform:translate(-50%,0);
		width:80%;
		width:80vw;
		z-index:5;
	}
	
	.header-tokyo
	{
		height:66vw;
		left:50%;
		position:absolute;
		top:30vw;
		transform:translate(-50%,0);
		width:95vw;
		z-index:5;
		-webkit-animation: tokyo 5s ease-in-out infinite alternate;
		-moz-animation: tokyo 5s ease-in-out infinite alternate;
		-ms-animation: tokyo 5s ease-in-out infinite alternate;
	}
	@keyframes tokyo {
		0%   { top:30vw;}
		100% { top:50vw;}
	}
	@-webkit-keyframes tokyo {
		0%   { top:30vw;}
		100% { top:50vw;}
	}
	@-moz-keyframes tokyo {
		0%   { top:30vw;}
		100% { top:50vw;}
	}
	@-ms-keyframes tokyo {
		0%   { top:30vw;}
		100% { top:50vw;}
	}
	
	.header-catch
	{
		left:50%;
		position:absolute;
		top:11em;
		top:40vw;
		-webkit-transform:translate(-50%,0);
		-moz-transform:translate(-50%,0);
		-ms-transform:translate(-50%,0);
		transform:translate(-50%,0);
		width:90%;
		width:90vw;
		z-index:7;
	}

	.header-catch-top
	{
		left:50%;
		position:absolute;
		top:18em;
		top:32vw;
		-webkit-transform:translate(-50%,0);
		-moz-transform:translate(-50%,0);
		-ms-transform:translate(-50%,0);
		transform:translate(-50%,0);
		width:90%;
		width:90vw;
		z-index:7;
	}
	
	.header-catch-ticket-arrow
	{
		-moz-transform: translate(0,0);
		-ms-transform: translate(0,0);
		-webkit-animation: ticketarrow 3s ease-in-out infinite;
		-webkit-transform: translate(0,0);
		left:5%;
		position:absolute;
		top:13em;
		top:51vw;
		transform: translate(0,0);
		width:80%;
		z-index:6;
	    -moz-animation: ticketarrow 3s ease-in-out infinite;
	    -ms-animation: ticketarrow 3s ease-in-out infinite;
	}
	@keyframes ticketarrow  {
		0%   { left:5%;}
		10%   { left:0%;}
		30% { left:5%;}
		35% { left:0%;}
		40% { left:5%;}
		45% { left:0%;}	
		50%{ left:5%;}
		100%{ left:5%;}
	}
	@-webkit-keyframes ticketarrow  {
		0%   { left:5%;}
		10%   { left:0%;}
		30% { left:5%;}
		35% { left:0%;}
		40% { left:5%;}
		45% { left:0%;}	
		50%{ left:5%;}
		100%{ left:5%;}
	}
	@-moz-keyframes ticketarrow  {
		0%   { left:5%;}
		10%   { left:0%;}
		30% { left:5%;}
		35% { left:0%;}
		40% { left:5%;}
		45% { left:0%;}	
		50%{ left:5%;}
		100%{ left:5%;}
	}
	@-ms-keyframes ticketarrow  {
		0%   { left:5%;}
		10%   { left:0%;}
		30% { left:5%;}
		35% { left:0%;}
		40% { left:5%;}
		45% { left:0%;}	
		50%{ left:5%;}
		100%{ left:5%;}
	}
	.header-catch-ticket-img
	{
		-webkit-transform: translate(0,0);
		-moz-transform: translate(0,0);
		-ms-transform: translate(0,0);
		left:auto;
		position:absolute;
		right: 0;
		top:9.5em;
		top:38vw;
		transform: translate(0,0);
		width:25%;
		z-index:5;
	}

	/* footer */
	.site-footer
	{
		background:#1d2629;
		color:#fff;
		padding:3em 0;
		text-align:center;
		width:100%;
	}
	.site-footer p
	{
		font-size:0.8em;
		margin:2em auto 0 auto;
	}
	.sponcers-box
	{
		background:#fff;
		color:#000;
		margin:0 auto;
		padding:2em 1em;
		width:90vw;
	}
	.special-sponcers,
	.sponcers
	{
		width:100%;
	}
	.special-sponcers
	{
		float:none;
	}
	.sponcers
	{
		float:none;
	}
	.sponcers-box dl dt
	{
		background:#fed731;
		border-radius:50px;
		font-size:1.5em;
		font-weight:bold;
		padding:0.4em 0;
	}
	.sponcers-box dl dd
	{
		margin:0;
		padding:0;
	}
	
	.sponcers-box dl dd ul
	{
		list-style:none;
		margin:0;
		padding:0;
		width:100%;
	}
	.sponcers-box dl dd ul li
	{
		float:left;
		padding:0.5em 0.2em 0 0;
		width:50%;
	}
	.sponcers-box dl dd ul li:nth-child(even)
	{
		padding:0.5em 0 0 0.2em;
	}

	/* content */
	#content
	{
		position:relative;
		margin-bottom:-5em;
		top:-6em;
		top:-28vw;
		width:100%;
		z-index:5;
	}
		
	.side-people
	{
		height:1010px;
		position:absolute;
		overflow:hidden;
		top:-50px;
		width:100%;
		z-index:1;
	}
	.people-left
	{
		background:url(../images/sp/people_left.png) no-repeat left top;
		background-size:contain;
		height:40em;
		left:-25%;
		position:absolute;
		top:0;
		width:100%;
	}
	.people-right
	{
		background:url(../images/sp/people_right.png) no-repeat right top;
		background-size:contain;
		height:40em;
		right:-35%;
		position:absolute;
		top:0;
		width:100%;
	}
	.people-left img,
	.people-right img
	{
		display:none;
	}
	
	#main-wrap
	{
		background:url(../images/mainbg.png);
		background-size:2px;
		margin:0 auto;
		min-height:40em;
		position:relative;
		width:90vw;
		z-index:3;
	}
	.subcatch
	{
		height:22.2vw;
		margin:0 2.5vw;
		position:absolute;
		top:-20vw;
		width:85vw;
	}
	
	#main-wrap nav
	{
		padding-top:1.5em;
		padding-top:3vw;
	}
	.sp_menu
	{
		background:#07a9e2;
		border:1px solid #0690c0;
		color:#fff;
		font-weight:bold;
		display:block;
		padding:0.8em 0;
		text-align:center;
	}
	.sp_global-navi
	{
		display:none;
		background:#07a9e2;
		box-shadow:0 4px 0 #0690c0;
		list-style:none;
		margin:0;
		padding:0;
		width:100%;
	}
	.sp_global-navi li
	{
		display:block;
		float:none;
		width:100%;
	}
	.sp_global-navi li a
	{
		background:#07a9e2;
		border:1px solid #0690c0;
		box-shadow:0 4px 0 #0690c0;
		box-sizing:border-box;
		color:#fff;
		display:block;
		font-weight:bold;
		padding:0.8em 0;
		text-align:center;
		text-decoration:none;
		width:100%;
	}
	.sp_global-navi li a:hover
	{
		background:#fff;
		box-shadow:0 4px 0 #07a9e2;
		color:#07a9e2;
	}
	.sp_global-navi li a.comingsoon
	{
		background:#fff;
		border:1px solid #999;
		box-shadow:0 4px 0 #999;
		color:#999;
	}
	.content-area
	{
		padding:2em;
	}
	
	.sp-none
	{
		display:none;
	}
	h2
	{
		font-size:2.5em;
		margin:0.5em auto;
		text-align:center;
	}
	h2.long
	{
		font-size:1.5em;
		margin:0.5em auto;
		text-align:center;
	}	
	.remaining-time
	{
		margin:0 auto 7em auto;
		text-align:center;
		width:100%;
	}
	.flip-clock-wrapper
	{
    margin: -10em auto;
	}
	.flip-clock-wrapper ul
	{
		font-size:7em;
		height:1.1em;
		width:1em;
	}
	.flip-clock-wrapper ul li
	{
		line-height:100%;
	}
	.flip-clock-wrapper ul li a div,
	.flip-clock-wrapper ul li a div div.inn
	{
		font-size:100%;
	}
	.flip-clock-dot
	{
		display:none;
	}
	.flip-clock-divider
	{
		display:block;
		float:none;
		height:10em;
	}
	.flip-clock-divider .flip-clock-label
	{
		bottom:-2.2em;
		font-size:4em;
		right:-5.5em;
		top:auto;
	}
	.flip-clock-divider.days  .flip-clock-label
	{
		right:-5em;
	}
	.flip-clock-divider.minutes .flip-clock-label,
	.flip-clock-divider.seconds .flip-clock-label
	{
		bottom:-2.2em;
		font-size:4em;
		right:-4.4em;
		top:auto;
	}
	.top-about
	{
		border-bottom:1px solid #000;
		font-size:1em;
		line-height:1.5em;
		width:100%;
	}
	.top-about dt,
	.top-about dd,
	form#mailformpro dl.contact dt,
	form#mailformpro dl.contact dd
	{
		border-top:1px solid #000;
		padding:0.5em 1em;
	}
	.top-about dt
	{
		background:#fff;
		float:none;
		width:100%;
	}
	.top-about dd
	{
		margin:0;
		padding-left:0;	
	}
	.ticket-txt
	{
		float:none;
		margin:0 auto 0.5em auto;
		width:100%;
	}
	.ticket-img
	{
		float:none;
		width:100%;
	}
	.ticket-txt p
	{
		font-size:1.5em;
		line-height:1.5em;
		margin:0;
	}
	.ticket-txt p.caution
	{
		color:#ff0000;
		font-size:2.2em;
	}
	
	.top-contact
	{
		background:#f09716;
		border-radius:75px;
		box-shadow:0 4px 0 #e65526;
		display:block;
		margin:2em auto 0;
		padding:1.2em 3em 0.8em;
		text-align:center;
		-ms-transition:all 0.3s ease-in-out;
		transition:all 0.3s ease-in-out;
		width:100%;
	}
	.top-contact img
	{
		height:auto;
		max-width:100%;
		width:auto;
	}
	.top-contact:hover
	{
		box-shadow:0 1px 0 #e65526;
	}
	
	.page-content
	{
		margin:0 auto;
	}

	.result-top3 dt
	{
		float: none;
		padding: 60px 20px 20px 20px;
		width: 100%;
		background: url(/images/icon_silver-grandprix.png) no-repeat center 10px #e6e6e5;
		background-size: 60px;
		border-right: none;
		text-align: center;
		border-bottom: 1px solid #989898;
	}
	.result-top3 dt:first-of-type
	{
		background: url(/images/icon_gold-grandprix.png) no-repeat center 10px #fff2bc;
		background-size: 60px;
		border-bottom: 1px solid #b29618;
		border-right: none;
	}
	.result-top3 dt:last-of-type
	{
		background: url(/images/icon_bronze-grandprix.png) no-repeat center 10px #fce2b4;
		background-size: 60px;
		border-bottom: 1px solid #b89149;
		border-right: none;
	}

	.result-top3 dd
	{
		margin:0;
		padding: 20px;
		text-align: center;
		
	}

	.result-top3 dd span
	{
		float: none;
		display:block;
		width: 100%;
		text-align:right;
	}

	.result-rest7
	{
		background: #fff;
		border:2px solid #07a9e2;
	}
	.result-rest7 dt
	{
		padding: 10px;
		width: 6em;
		text-align: center;
		background:rgba(7,169,226,0.5);
		border-right: 1px solid #07a9e2;
		float: left;

	}
	.result-rest7 dd
	{
		padding: 10px 10px 10px 6.5em;
		border-bottom: 1px solid #07a9e2;
		margin: 0;
	}
	.result-rest7 dd:last-of-type
	{
		border-bottom:none;
	}


	/* participant */
	.sp_maplist
	{
		list-style:none;
		margin:0 auto 1em;
		padding:0;
		text-align:center;
	}
	.sp_maplist li
	{
		display:inline-block;
	}
	.sp_maplist li a
	{
		border-radius:0.5em;
		color:#fff;
		display:inline-block;
		margin:0.25em;
		padding:0.25em 0.5em;
		text-decoration:none;
	}
	.sp_maplist li.hokkaido a
	{
		background:#3f3a39;
	}
	.sp_maplist li.tohoku a
	{
		background:#1c7bad;
	}
	.sp_maplist li.kanto a
	{
		background:#6e9c43;
	}
	.sp_maplist li.chubu a
	{
		background:#66bfb3;
	}
	.sp_maplist li.kinki a
	{
		background:#e9ab31;
	}
	.sp_maplist li.chugoku a
	{
		background:#be904d;
	}
	.sp_maplist li.shikoku a
	{
		background:#e87589;
	}
	.sp_maplist li.kyushu a
	{
		background:#d93121;
	}
	.arealist
	{
		background-color:#fff;
		background-repeat: no-repeat;
		background-position: right 20px top 10px;
		margin-bottom: 2em;
		padding: 1em;
	}
	.arealist.hokkaido
	{
		background-image:url(../images/bg_map-hokkaido.png);
		background-size:70px;
	}
	.arealist.tohoku
	{
		background-image:url(../images/bg_map-tohoku.png);
		background-size:80px;
	}
	.arealist.kanto
	{
		background-image:url(../images/bg_map-kanto.png);
		background-position:right 2em top 10px;
		background-size:0.9em;
	}
	.arealist.chubu
	{
		background-image:url(../images/bg_map-chubu.png);
		background-size:100px;
	}
	.arealist.kinki
	{
		background-image:url(../images/bg_map-kinki.png);
		background-position:right 20px top 10px;
		background-size:70px;
	}
	.arealist.chugoku
	{
		background-image:url(../images/bg_map-chugoku.png);
		background-size:80px;
	}
	.arealist.shikoku
	{
		background-image:url(../images/bg_map-shikoku.png);
		background-size:80px;
	}
	.arealist.kyushu
	{
		background-image:url(../images/bg_map-kyushu.png);
		background-size:60px;
	}
	.arealist dl
	{
		border:1px solid #7b7b7b;
		margin-bottom:2em;
	}
	.arealist dl dt
	{
		background:#e2e2e2;
		border-top:1px solid #7b7b7b;
		border-bottom:1px solid #7b7b7b;
		text-align:center;
		padding:0.5em;
	}
	.arealist dl dt:first-of-type
	{
		border-top:none;
	}
	.arealist dl dd
	{
		margin:0;
		padding:0.5em;
	}

	/* modal */
	.modal-base
	{
		margin-top: 7em;
	}
	.modal
	{
		height: 30em;
		height: 77vh;
		overflow-y: auto;
	}
	.close-modal
	{
		right:-0.5em;
		top: -0.5em;
	}
	.modal-images
	{
		float: none;
		width: 100%;
	}
	.modal-images img
	{
		box-shadow: 0 0 5px 3px rgba(0,0,0,0.5);
		margin-bottom: 20px;
		width: 100%;
	}
	.modal-txt
	{
		background: #fff;
		box-shadow: 0 0 5px 3px rgba(0,0,0,0.5);
		float: right;
		margin:0 auto 20px auto;
		width: 100%;
	}
	.modal-txt dd
	{
		height: auto;
		overflow-y: initial;
	}

	/* access */
	.first-venue,
	.second-venue
	{
		text-align: center;
	}

	.first-venue dt:first-of-type,
	.second-venue dt:first-of-type
	{
		color: #fff;
		display:inline-block;
		width: 66%;

	}
	.first-venue dd:first-of-type,
	.second-venue dd:first-of-type
	{
		display:inline-block;
		width: 30%;
	}

	.first-venue dt,
	.second-venue dt,
	.first-venue dd,
	.second-venue dd
	{
		margin:0;
		padding: 10px;
	}

	.first-venue dd,
	.second-venue dd
	{
		margin:0;
		padding: 10px;
		background: #fff;
	}
	.first-venue dt,
	.second-venue dt
	{
		background:rgba(255,255,255,0.8);
		color: #000;
	}

	.first-venue dd:nth-of-type(3),
	.second-venue dd:nth-of-type(3)
	{
		text-align: left;
	}
	.first-venue
	{
		background:#ee781e;
		border: 1px solid #ee781e;
	}
	.first-venue dt:first-of-type
	{
		background:#ee781e;
	}
	.second-venue
	{
		background:#00aa83;
		border: 1px solid #00aa83;
	}
	.second-venue dt:first-of-type
	{
		background:#00aa83;
	}
	
	/* form */
	form#mailformpro dl.contact 
	{
		border-bottom:1px solid #000;
		margin:0 auto;
		width:100%;
	}
	
	form#mailformpro dl.contact dt
	{
		float:none;
		width:100%;
	}
	form#mailformpro dl.contact dd
	{
		margin:0;
		padding-left:0;
	}
	form#mailformpro dl.contact dd input,
	form#mailformpro dl.contact dd textarea
	{
		width:100%;
	}
	.form_btns
	{
		margin-top:20px;
		text-align:center;
		width:100%;
	}
	.form_btns input[type=submit]
	{
		background:#f09716;
		border:none;
		border-radius:75px;
		box-shadow:0 4px 0 #e65526;
		color:#fff;
		font-size:1.8em;
		font-weight:bold;
		display:block;
		margin:0 auto;
		padding:0.8em 0;
		text-align:center;
		text-shadow:none;
		-ms-transition:all 0.3s ease-in-out;
		transition:all 0.3s ease-in-out;
		width:80%;
	}
	
}
@media screen and (max-width:321px)
{
	.form_btns input[type=submit]
	{
		font-size:1em;
	}
}
@media screen and (max-width:641px)
{
	h2
	{
		font-size:1.8em;
		line-height:1.5em;
	}
}