@charset "utf-8";

/*font-family:'Yu Gothic Std-TT R';
font-family:'Yu Gothic Std-TT B';
font-family:'Helvetica LT W01 Light';
font-family:'Helvetica LT W01 Bold';*/

/*-------------------------------------------------- common --------------------------------------------------*/
html,body{margin:0;padding:0;height:100%;background:transparent;}body{font:13px/1.231 arial,Helvetica,verdana,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Lucida Grande","ＭＳ Ｐゴシック","Osaka",sans-serif;*font-size:small;*font:x-small;color:#000000;text-align:left;background:#ffffff;line-height:1.6;}article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{display:block;}table{font-size: inherit;font:100%;width:100%;border-collapse:collapse;border:0;}pre,code,kbd,samp,tt{font-family:monospace;*font-size:108%;line-height:100%;}img{vertical-align:bottom;}/*strong{font-weight:bold;}*/p{margin-bottom:1em;}object{margin:0;padding:0;}
html, body {
	background: #fff;
	font-family: 'Helvetica LT W01 Light','Yu Gothic Std-TT R';
	font-size: 13px;
	color: #000;
	letter-spacing: .05em;
	line-height: 1.8;
	word-wrap: break-word;
}
a,
a:hover {
	color: #8e24aa;
	outline: none;
	text-decoration: underline;
}
input[type="text"],
input[type="number"],
input[type="submit"],
textarea {
	display: block;
	margin: 0; padding: 0;
	box-sizing: border-box;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
}
strong {
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
}
img {
	display: block;
	width: 100%; height: auto;
}
/*------------------------- class -------------------------*/
.pc_show {
	display: none;
}
.sp_show {
	display: block;
}
.fc_red {
	color: #c51162;
}
.small {
	font-size: 11px;
}
.xsmall {
	font-size: 10px;
}

/*-------------------------------------------------- header --------------------------------------------------*/
#header {
	position: fixed;
	top: 0; left: 0;
	width: 100%;
	background: #f2f2f2;
	z-index: 100;
}
#header.active {
	background: #fff;
}
#header .gnav ul {
	display: table;
	width: 100%;
}
#header .gnav ul li {
	display: table-cell;
	position: relative;
	width: 25%;
}
#header .gnav ul li a {
	display: block;
	padding-top: 48px;
	height: 80px;
	box-sizing: border-box;
	font-size: 11px;
	color: #fff;
	text-align: center;
	text-decoration: none;
}
#header .gnav ul .program a {
	background: url(../img/common/ico_program.png) center 20px no-repeat;
	-webkit-background-size: 20px;
	background-size: 20px;
}
#header .gnav ul .access a {
	background: url(../img/common/ico_access.png) center 20px no-repeat;
	-webkit-background-size: 20px;
	background-size: 20px;
}
#header .gnav ul .ticket a {
	background: url(../img/common/ico_ticket.png) center 20px no-repeat;
	-webkit-background-size: 20px;
	background-size: 20px;
}
#header .gnav ul li a p {
	margin-bottom: 0;
}
#btn_gnav {
	display: block;
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 20px;
	text-decoration: none;
	cursor: pointer;
}
#btn_gnav span {
	display: block;
	position: absolute;
	top: 29px; left: 50%;
	margin: -1px 0 0 -10px;
	width: 20px; height: 2px;
	background: #000;
	transition: all 0.15s ease;
	-webkit-transition: all 0.15s ease;
	-moz-transition: all 0.15s ease;
}
#btn_gnav span:before,
#btn_gnav span:after {
	content: "";
	position: absolute;
	left: 0;
	width: 20px; height: 2px;
	background: #000;
	transition: all 0.15s ease;
	-webkit-transition: all 0.15s ease;
	-moz-transition: all 0.15s ease;
}
#btn_gnav span:before {
	top: -6px;
}
#btn_gnav span:after {
	top: 6px;
}
#btn_gnav.active span {
	background-color: transparent;
}
#btn_gnav.active span:before {
	top: 0;
	transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}
#btn_gnav.active span:after {
	top: 0;
	transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}
/* small */
#header.small .gnav ul li a {
	padding-top: 0;
	height: 40px;
}
#header.small .gnav ul .program a,
#header.small .gnav ul .access a,
#header.small .gnav ul .ticket a {
	background-position: center;
}
#header.small #btn_gnav span {
	top: 20px;
}
#header.small .gnav ul li a p {
	display: none;
}

/*------------------------- content_gnav -------------------------*/
#content_gnav {
	display: none;
	position: fixed;
	top: 0; left: 0;
	z-index: 90;
}
#content_gnav ul {
	position: fixed;
	top: 0; left: 0;
	margin-top: 40px;
	width: 100%;
	z-index: 20;
}
#content_gnav ul li {
	border-bottom: 1px solid #353535;
}
#content_gnav ul li a {
	display: block;
	position: relative;
	padding: 10px 0;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 11px;
	color: #fff;
    text-decoration: none;
    letter-spacing: .1em;
	overflow: hidden;
	text-align: center;
}
#content_gnav .overlay {
	position: fixed;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background: rgba(0,0,0,0.9);
	z-index: 10;
}

/*-------------------------------------------------- main --------------------------------------------------*/
#main {
	padding-top: 40px;
}
#main .kv .competition {
	display: block;
	padding: 25px 0;
	background: #fff;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	color: #000;
	text-align: center;
	text-decoration: underline;
	line-height: 1.6;
}

/*------------------------- nav_main -------------------------*/
#nav_main {
}
#nav_main ul {
	overflow: hidden;
}
#nav_main ul li {
	float: left;
	width: 50%;
	background: #fff;
	border-bottom: 1px solid #eaeaea;
}
#nav_main ul li a {
	display: block;
	position: relative;
	padding: 15px 0;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 11px;
	color: #000;
	text-decoration: none;
	letter-spacing: .1em;
	text-align: center;
}
#nav_main ul li:nth-child(odd) a {
	border-right: 1px solid #eaeaea;
}

/*------------------------- info -------------------------*/
#info {
	margin: 75px 15px 50px;
	padding: 50px;
	background: #fff;
	border: 1px solid #111;
}
#info section {
	margin-bottom: 15px;
}
#info section:last-child {
	margin-bottom: 0;
}
#info section h2 {
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
}

/*------------------------- program -------------------------*/

#program .sec_add {
	padding: 0 25px 50px;
}

#program {
	margin-top: 50px;
	margin-bottom: 50px;
}
#program .ttl {
	padding: 25px 0;
	font-size: 15px;
	text-align: center;
	letter-spacing: .25em;
	border-top: 4px solid #f5f5f5;
	border-bottom: 4px solid #f5f5f5;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
}
#program .tab_date {
	margin: 35px 10px;
}
#program .tab_date ul {
	display: table;
	width: 100%;
	background: #fff;
	border: 1px solid #eaeaea;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	border-collapse: separate;
	overflow: hidden;
}
#program .tab_date ul li {
	display: table-cell;
	width: 16.66%; height: 57px;
	border-right: 1px solid #eaeaea;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 12px;
	text-align: center;
	letter-spacing: 0;
	line-height: 1.4;
	vertical-align: middle;
	transition: all 0.2s ease;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
}
#program .tab_date ul li.cur {
	background: #8e24aa;
	color: #fff;
}
#program .tab_date ul li:last-child {
	border-right: none;
}
#program .tab_date ul li span {
	display: block;
}
#program .date {
	padding: 10px 0;
	background: #fff;
	border-top: 1px solid #eaeaea;
	border-bottom: 1px solid #eaeaea;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 12px;
	color: #8e24aa;
	text-align: center;
}
#program section {
	background: #fff;
}
#program section a {
	display: table;
	width: 100%;
	color: #111;
	text-decoration: none;
	overflow: hidden;
}
#program section a .wrap_thumb,
#program section a .wrap_info {
	display: table-cell;
	vertical-align: middle;
}
#program section a .wrap_thumb {
	padding: 25px 0 25px 15px;
	width: 100px;
}
#program section a .wrap_info {
	padding: 25px 25px 25px 25px;
}
#program section a .wrap_info .head {
	display: inline-block;
	margin-bottom: 8px;
	padding: 3px 12px;
	background: #eaeaea;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	border-radius: 50px;
	font-size: 10px;
	line-height: 1.3;
	letter-spacing: 0;
}
#program section a .wrap_info .name {
	margin-bottom: 2px;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 14px;
	letter-spacing: .1em;
	line-height: 1.5;
}
#program section a .wrap_info .name .caution {
	margin-bottom: 8px;
	font-size: 10px;
	color: #c51162;
	letter-spacing: .05em;
}
#program section a .wrap_info .sub {
	margin-bottom: 3px;
	font-size: 10px;
	letter-spacing: 0;
}
#program section a .wrap_info .ico_free {
	display: inline-block;
	padding: 2px 10px;
	background: #ebff21;
	-webkit-border-radius: 1px;
	-moz-border-radius: 1px;
	border-radius: 1px;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 10px;
	line-height: 1.3;
	letter-spacing: 0;
	color: #111;
}
#program .wrap_btn {
	background: #fff;
	border-top: 1px solid #eaeaea;
	overflow: hidden;
}
#program .wrap_btn .btn {
	display: block;
	margin: 35px 25px;
	background: #8e24aa;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 12px;
	color: #fff;
	text-align: center;
	line-height: 50px;
}

/*------------------------- access -------------------------*/
#access {
	margin-bottom: 50px;
}
#access .ttl {
	padding: 25px 0;
	font-size: 15px;
	text-align: center;
	letter-spacing: .25em;
	border-top: 4px solid #f5f5f5;
	border-bottom: 4px solid #f5f5f5;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
}
#access .content {
	padding: 50px 25px;
	background: #fff;
}
#access .wrap_map {
	position: relative;
	margin-bottom: 50px;
	padding-bottom: 75%;
	height: 0;
	overflow: hidden;
}
#access .wrap_map iframe {
	position: absolute;
	top: 0; left: 0;
	width: 100% !important;
	height: 100% !important;
}
#access .content .sec01 {
	margin-bottom: 50px;
}
#access .content .sec01 h3 {
	margin-bottom: 5px;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 14px;
	letter-spacing: .1em;
}
#access .content .sec01 p {
	margin-bottom: 25px;
	font-size: 10px;
}
#access .content .sec01 dl {
	border-bottom: 1px solid #eaeaea;
	font-size: 12px;
	overflow: hidden;
}
#access .content .sec01 dl dt,
#access .content .sec01 dl dd {
	padding: 10px 0;
	border-top: 1px solid #eaeaea;
}
#access .content .sec01 dl dt {
	float: left;
	width: 90px;
}
#access .content .sec01 dl dd {
	margin-left: 90px;
}
#access .content .sec02 {
	border: 4px solid #f5f5f5;
	font-size: 12px;
}
#access .content .sec02 h3 {
	padding: 10px 25px;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 10px;
	border-bottom: 4px solid #f5f5f5;
}
#access .content .sec02 .inner {
	padding: 25px;
}
#access .content .sec02 h4 {
	margin-bottom: 5px;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 13px;
	letter-spacing: .1em;
}
#access .content .sec02 p {
	margin-bottom: 25px;
	font-size: 10px;
}
#access .content .sec02 dl {
	border-bottom: 1px solid #eaeaea;
	font-size: 12px;
	overflow: hidden;
}
#access .content .sec02 dl dt,
#access .content .sec02 dl dd {
	padding: 10px 0;
	border-top: 1px solid #eaeaea;
}
#access .content .sec02 dl dt {
	float: left;
	width: 90px;
}
#access .content .sec02 dl dd {
	margin-left: 90px;
}

/*------------------------- ticket -------------------------*/
#ticket {
	margin-bottom: 50px;
}
#ticket .ttl {
	padding: 25px 0;
	font-size: 15px;
	text-align: center;
	letter-spacing: .25em;
	border-top: 4px solid #f5f5f5;
	border-bottom: 4px solid #f5f5f5;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
}
#ticket .content {
	padding: 50px 25px;
	background: #fff;
}
#ticket .content section {
	margin-bottom: 25px;
}
#ticket .content .sec02 {
	margin-bottom: 0;
	border: 4px solid #f5f5f5;
	font-size: 12px;
}
#ticket .content .sec02 h3 {
	padding: 10px 25px;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 10px;
	border-bottom: 4px solid #f5f5f5;
}
#ticket .content .sec02 .inner {
	padding: 25px;
}
#ticket .content .sec02 h4 {
	margin-bottom: 5px;
	padding-top: 25px;
	border-top: 1px solid #eaeaea;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 13px;
	letter-spacing: .1em;
}
#ticket .content .sec02 p {
	margin-bottom: 25px;
	font-size: 10px;
}

/*------------------------- detail_program -------------------------*/
#detail_program {
	margin-bottom: 50px;
	background: #fff;
	border-bottom: 1px solid #eaeaea;
}
#detail_program .date {
	padding: 10px 0;
	background: #fff;
	border-bottom: 1px solid #eaeaea;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 10px;
	color: #8e24aa;
	text-align: center;
}
#detail_program .wrap_info {
	margin: 35px 25px;
}
#detail_program .wrap_info .head {
	display: inline-block;
	margin-bottom: 20px;
	padding: 0 12px;
	background: #eaeaea;
	-webkit-border-radius: 9px;
	-moz-border-radius: 9px;
	border-radius: 9px;
	font-size: 10px;
	line-height: 18px;
}
#detail_program .wrap_info .name {
	margin-bottom: 15px;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 17px;
	letter-spacing: .1em;
}
#detail_program .wrap_info .name .xsmall {
	font-size: 12px;
}
#detail_program .wrap_info .sub {
	font-size: 12px;
}
#detail_program .wrap_info .ico_free {
	display: inline-block;
	margin-top: 13px;
	padding: 2px 10px;
	background: #c51162;
	-webkit-border-radius: 1px;
	-moz-border-radius: 1px;
	border-radius: 1px;
	font-size: 10px;
	line-height: 1.3;
	letter-spacing: 0;
	color: #fff;
}
#detail_program .wrap_schedule {
	margin: 0 25px 35px;
	border: 4px solid #f5f5f5;
	font-size: 12px;
}
#detail_program .wrap_schedule .time {
	padding: 10px 25px;
    font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
    font-size: 10px;
    border-bottom: 4px solid #f5f5f5;
}
#detail_program .wrap_schedule .time .caution {
	color: #c51162;
}
#detail_program .wrap_schedule p {
	margin-bottom: 0;
	padding: 25px;
}
#detail_program .wrap_detail {
	margin: 0 25px 50px;
}
#detail_program .wrap_btn_bottom {
	margin: 0 25px 50px;
}
#detail_program .wrap_btn_bottom .btn {
	display: block;
	position: relative;
	border: 1px solid #eaeaea;
    padding: 15px 25px;
    font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 12px;
	color: #111;
    text-decoration: none;
    letter-spacing: .1em;
}
#detail_program .wrap_btn_bottom .btn:before,
#detail_program .wrap_btn_bottom .btn:after {
	content: "";
	position: absolute;
	top: 50%; right: 15px;
	width: 9px; height: 1px;
	background: #ccc;
}
#detail_program .wrap_btn_bottom .btn:before {
	margin-top: -3px;
	transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}
#detail_program .wrap_btn_bottom .btn:after {
	margin-top: 3px;
	transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}

/*------------------------- detail_page -------------------------*/
#detail_page {
	margin-bottom: 50px;
	background: #fff;
	border-bottom: 1px solid #eaeaea;
}
#detail_page .ttl {
	padding: 35px 25px;
	border-bottom: 1px solid #eaeaea;
    font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
	font-size: 16px;
	text-align: center;
	letter-spacing: .1em;
}
#detail_page .content {
	padding: 35px 25px;
}
#detail_page .content p {
	margin-bottom: 35px;
}
#detail_page .content dl {
	border-top: 1px solid #eaeaea;
	padding-top: 35px;
	font-size: 10px;
	overflow: hidden;
}
#detail_page .content dl dt {
	float: left;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
}
#detail_page .content dl dd {
	margin-left: 65px;
}
#detail_page .content h2 {
	border-top: 1px solid #eaeaea;
	padding: 35px 0;
	font-family: 'Helvetica LT W01 Bold','Yu Gothic Std-TT B';
}
#detail_page .content .list_selection {
	overflow: hidden;
}
#detail_page .content .list_selection li {
	float: left;
	margin-bottom: 35px;
	width: 50%;
	font-size: 11px;
}
#detail_page .content .list_selection li:last-child {
	margin-bottom: 0;
}
#detail_page .content .list_selection li a {
	color: #111;
}
#detail_page .content .list_selection li img {
	float: left;
	margin-right: 10px;
	width: 50px;
}
#detail_page .content .list_selection li .name {
	margin-bottom: 0;
	line-height: 50px;
}
#detail_page .content .list_special {
	border-top: 1px solid #eaeaea;
}
#detail_page .content .list_special li {
	border-bottom: 1px solid #eaeaea;
}
#detail_page .content .list_special li a {
	display: block;
	position: relative;
	padding: 15px 25px 15px 0;
	font-size: 11px;
	color: #111;
}
#detail_page .content .list_special li a:before,
#detail_page .content .list_special li a:after {
	content: "";
	position: absolute;
	top: 50%; right: 0;
	width: 9px; height: 1px;
	background: #ccc;
}
#detail_page .content .list_special li a:before {
	margin-top: -3px;
	transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}
#detail_page .content .list_special li a:after {
	margin-top: 3px;
	transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}

/*-------------------------------------------------- footer --------------------------------------------------*/
#footer_bnr {
	margin-bottom: 50px;
	overflow: hidden;
}
#footer_bnr ul {
	margin: 0 15px;
}
#footer_bnr ul li {
	margin-bottom: 15px;
}
#footer_bnr ul li:last-child {
	margin-bottom: 0;
}
#footer_bnr ul li a {
	display: block;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	overflow: hidden;
}
#footer {
	padding-bottom: 100px;
}
#footer .credits {
	margin-bottom: 25px;
}
#footer .credits ul li {
	text-align: center;
}
#footer .credits ul li .logo_footer01 {
	width: 104px;
}
#footer .credits ul li .logo_footer02 {
	width: 121px;
}
#footer .nav_sns {
	margin-bottom: 25px;
}
#footer .nav_sns ul {
	text-align: center;
}
#footer .nav_sns ul li {
	display: inline-block;
	margin: 0 7px;
}
#footer .nav_sns ul li a {
}
#footer .nav_sns ul li a img {
	width: 36px; height: 36px;
}
#footer .credits ul li a img {
	display: inline;
}
#footer .copyrights {
	margin: 0;
	font-size: 10px;
	text-align: center;
	letter-spacing: 0;
	line-height: 1;
}











