@charset "UTF-8";
/* CSS Document */


/* -------------------------------------------

全体設定

 ---------------------------------------------------*/
html {
}

body {
	font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', sans-serif !important;
	width:100%;
	font-size: 16px;
	line-height:1.2;
}
a {
	text-decoration: none;
	cursor: pointer!important;
}
a:hover{
	opacity:0.6;
}
img{
	width:100%;
	vertical-align: bottom;
}

/* ヘッダー -----------------------------*/
header{
	position:fixed;
	width: 100%;
	height: 54px;
	background: #fff;
	z-index: 9998;
}
.logo_header{
	max-width:374px;
	margin-left: auto;
	margin-top: 14px;
	margin-right: 65px;
}

.gnav_switch{
    background:url(../images/btn_menu_open.png) no-repeat;
	background-size: cover;
    display: block;
    width:54px;
    height: 54px;
    position: absolute;
    top:0;
    right:0;
    cursor: pointer;
    z-index: 200;
}
.gnav_switch.open{
    background:url(../images/btn_menu_close.png) no-repeat;
	background-size: cover;
}
.gnav {
    position: absolute;
    display: none;
	width: 414px;
	background: #ff5800;
    top: 0px;
    right:0;
	padding: 18px 0 60px;
    z-index: 100;
}
.img_gnav_drakiryu{
	width:205px;
	margin: 0 auto 12px;
}
.menu ul li a{
	display: block;
	color: #000;
	font-size: 17px;
	font-weight: bold;
	text-align:center;
	padding: 10px 0;
}
@media screen and (max-width: 768px) {
	header{
		height:50px;
	}
	.logo_header{
		width:80%;
		margin-right: 60px;
	}
	.gnav_switch{
		width:50px;
		height: 50px;
	}
	.gnav{
		position: fixed;
		width:100%;
		padding: 5% 0 0;
		height: 100%;
		overflow: auto;
	}
	.img_gnav_drakiryu{
		width:50%;
		margin: 0 auto 2%;
	}
	.menu{
		padding-bottom:10%;
	}
	.menu ul li a{
		font-size:93.8%;
		padding: 3% 0;
	}
}




/* 全体囲み -----------------------------*/
.container{
	padding-top:54px;
}
@media screen and (max-width: 768px) {
	.container{
		padding-top:50px;
	}
}

/* メイン -----------------------------*/
#mv{
	position:relative;
	z-index: 9995;
	overflow: hidden;
}
.tit_mv{
	position: absolute;
	width:24%;
	z-index: 99;
	top: 36%;
	left: 50%;
	margin-left: -12%;
	animation: tit 1.5s ease-out forwards;
	animation-delay: 3s;
	opacity: 0;
}
@keyframes tit {
	0% {
		opacity: 0;
		transform: scale(0.1) rotate(30deg);
	}
	50% {
		transform: rotate(-10deg);
	}
	70% {
		transform: rotate(3deg);
	}
	100% {
		opacity: 1;
		transform: scale(1);
	}
}
.btn_requirements{
	position: absolute;
	display: block;
	width:9%;
	z-index: 98;
	top:3%;
	left: 15%;
	animation: bounce 1s forwards;
	animation-delay: 5s;
	opacity: 0;
}
.btn_result{
	position: absolute;
	display: block;
	width:9%;
	z-index: 98;
	top: 23%;
	left: 15%;
	animation: bounce 1s forwards;
	animation-delay: 5s;
	opacity: 0;
}
.btn_result2018{
	position: absolute;
	display: block;
	width:9%;
	z-index: 99;
	top: 28%;
	right: 14%;
	animation: bounce 1s forwards;
	animation-delay: 5s;
	opacity: 0;
}
.btn_entry_mv{
	position: absolute;
	display: block;
	width:14%;
	z-index: 98;
	top: 44%;
	left: 15%;
	animation: bounce 1s forwards;
	animation-delay: 5s;
	opacity: 0;
}
@keyframes bounce {
	0%,20%,40%,60%,80%,100% {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	0% {
		opacity: 0;
		transform: scale3d(0.3, 0.3, 0.3);
	}
	20% {
		transform: scale3d(1.1, 1.1, 1.1);
	}
	40% {
		transform: scale3d(0.9, 0.9, 0.9);
	}
	60% {
		opacity: 1;
		transform: scale3d(1.03, 1.03, 1.03);
	}
	80% {
		transform: scale3d(0.97, 0.97, 0.97);
	}
	100%{
		opacity: 1;
		transform: scale3d(1, 1, 1);
	}
}
.img_entry_ticket{
	position: absolute;
	width:41%;
	z-index: 98;
	bottom: -9%;
	left: 12%;
	animation: entry_ticket 1s ease-in-out forwards;
	animation-delay: 2s;
	opacity: 0;
}
@keyframes entry_ticket {
	0% {
		opacity: 1;
		transform: translateX(-150%);
	}
	50%{
		opacity: 1;
		transform: translateX(8%);
	}
	65%{
		opacity: 1;
		transform: translateX(-4%);
	}
	80%{
		opacity: 1;
		transform: translateX(4%);
	}
	95%{
		opacity: 1;
		transform: translateX(-2%);
	}			
	100% {
		opacity: 1;
		transform: translateX(0%);
	}	
}
.img_drakiryu{
	position:absolute;
	width:40%;
	z-index: 97;
	bottom: -39%;
	right: 6%;
	animation: drakiryu 1s ease-in-out forwards;
	animation-delay: 2s;
	opacity: 0;
}
@keyframes drakiryu {
	0% {
		opacity: 1;
		transform: translateX(150%);
	}
	50%{
		opacity: 1;
		transform: translateX(-8%);
	}
	65%{
		opacity: 1;
		transform: translateX(4%);
	}
	80%{
		opacity: 1;
		transform: translateX(-4%);
	}
	95%{
		opacity: 1;
		transform: translateX(2%);
	}			
	100% {
		opacity: 1;
		transform: translateX(0%);
	}
}
.bg_circle{
	position:absolute;
	width:40%;
	z-index: 95;
	top: 4%;
	left: 50%;
	margin-left: -20%;
	animation: circle 40s linear infinite;
}
@keyframes circle {
	0%{
		transform: rotate(0deg);
	}
	100%{
		transform: rotate(360deg);
	}
}
.bg_stairs{
	position:absolute;
	width:24%;
	z-index: 96;
	bottom: 0;
	left: 50%;
	margin-left: -12%;
	animation: stairs 1s linear forwards; 
	animation-delay: 1s;
	opacity: 0;
}
@keyframes stairs {
	0% {
		transform: translateY(100%);
	}
	50%{
		opacity: 1;
		transform: translateY(-8%);
	}
	65%{
		transform: translateY(4%);
	}
	80%{
		transform: translateY(-4%);
	}
	95%{
		transform: translateY(2%);
	}			
	100% {
		opacity: 1;
		transform: translateY(0%);
	}	
}
.sns_area{
	position: absolute;
	top: 14px;
	right: 10px;
	display:flex;
	justify-content: flex-end;
	z-index: 96;
}
.sns_area a{
	width: 60px;
	margin: 0 4px;
}

@media screen and (max-width: 768px) {
	.tit_mv{
		width: 52%;
		margin-left: -26%;
		top: 28%;
	}
	.btn_requirements, .btn_result{
		width:22%;
		left: 1%;
	}
	.btn_requirements{
		top:23%;
	}
	.btn_result{
		top:38%;
	}
	.btn_result2018{
		width:22%;
		right: 1%;
		top: 13%;
	}
	.btn_entry_mv{
		width:33%;
		left: 2%;
		top: 54%;
	}
	.img_entry_ticket{
		width:97%;
		bottom: -2%;
		left: -6%;
	}
	.img_drakiryu{
		width:92%;
		bottom:-11%;
		right: -28%;
	}
	.bg_circle{
		width:84%;
		margin-left: -42%;
		top: 8%;
	}
	.bg_stairs{
		width:100%;
		left: 0;
		margin-left: 0;
	}
	.sns_area{
		top:10px;
		right: 10px;
	}
	.sns_area a{
		width:11%;
	}
	
}

/* ニュース -----------------------------*/
#news{
	position: relative;
	z-index: 9996;
	background:#000;
	padding: 3% 0 1%;
	text-align: center;
}
.tit_drakiryu{
	width:39%;
	margin: 0 auto;
}
.tit_news{
	width:6%;
	margin: 1% auto 0;
}
.news_list{
	display: inline-block;
	text-align: left;
	margin-top: 3%;
}
.news_list li{
	margin-bottom: 3%;
}
.news_list li a{
	color:#fff;
	font-size:112.5%;
}
@media screen and (max-width: 768px) {
	#news{
		padding: 5% 4% 4%;
	}
	.tit_drakiryu{
		width:100%;
	}
	.tit_news{
		width:16%;
		margin: 2% auto 0;
	}
	.news_list{
		margin-top:7%;
		display: block;
	}
	.news_list li{
		margin-bottom:2%;
	}
	.news_list li a{
		font-size:3.2vw;
	}
}

/* オープニングアクト -----------------------------*/
#link_opening_act{
	background:#fff100;
	text-align: center;
	padding: 3% 0;
}
#link_opening_act h1{
	color:#e60012;
	font-size:187.5%;
	font-weight: bold;
	margin-bottom: 2%;
}
#link_opening_act p{
	color: #2f2066;
	font-size:112.5%;
}
.opening_act_top_txt{
	font-weight: bold;
	margin-top: 1%;
}
#link_opening_act a{
	display:block;
	width:306px;
	margin: 2% auto 0;
}
@media screen and (max-width: 768px) {
	#link_opening_act{
		padding: 6% 4%;
	}
	#link_opening_act h1{
		color:#ff5800;
		font-size: 5.07vw;
		margin-bottom:6%;
	}
	#link_opening_act p{
		font-size: 3.73vw;
		line-height: 1.5;
	}
	.opening_act_top_txt{
		font-size:3.2vw!important;
	}
	#link_opening_act a{
		width:56%;
		margin: 6% auto 0;
	}
}

/* スケジュール -----------------------------*/
#schedule{
	background:url("../images/bg_schedule.jpg") no-repeat;
	background-size:cover;
	padding: 4% 0 3%;
	overflow: hidden;
}
.schedule_inner{
	display: flex;
	max-width: 1020px;
	width: 100%;
	margin: 0 auto;
	padding: 0 4%;
	box-sizing: border-box;
}
.schedule_detail{
	width:70%;
	margin-right: 2%;
}
.tit_schedule{
	width:48%;
	margin: 0 auto 4%;
}
.txt_schedule{
	color: #fff100;
	font-size:137.5%;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	margin-bottom: 3%;
}
.tw_tl{
	width:28%;
	background: #fff;
}
.tw_tl iframe {
	width:780px!important;/*iOShack*/
	height: 870px!important;
}
.tit_tw{
	width:113px;
	margin: 0 auto;
}

#schedule .btn_entry {
    display: block;
    max-width: 690px;
	width: 50%;
    margin: 3% auto 0;
}
@media screen and (max-width: 1024px) {
	.tw_tl iframe {
		width:780px!important;/*iOShack*/
		height: 870px!important;
	}
}
@media screen and (max-width: 880px) {
	.tw_tl iframe {
		height: 698px!important;
	}
}
@media screen and (max-width: 768px) {
	#schedule{
		background:url("../images/smp/bg_schedule.jpg") no-repeat;
		background-size: cover;
		padding:7% 0 0;
	}
	.schedule_inner{
		display:block;
	}
	.tit_schedule{
		width:54%;
		margin:0 auto 5%;
	}
	.txt_schedule{
		font-size:3.73vw;
	}
	#schedule .btn_entry{
		width:100%;
		margin: 5% auto 11%;
	}
	.schedule_detail{
		width:100%;
		margin: 0;
	}
	.tw_tl{
		width:100%;
		margin: 0 0 8%;
	}
	.tw_tl iframe {
		height: 500px!important;
	}
}

.img_schedule{
	position:relative;
}
.img_schedule .count{
	position:absolute;
	width: 20%;
}
.img_schedule .count.kids{
	right:26%;
}
.img_schedule .count.general{
	right:3%;
}
.first_pre .count{
	top:10%;
}
.second_pre .count{
	top:35%;
}
.third_pre .count{
	top:61%;
}
@media screen and (max-width: 1100px) {
	.img_schedule .count.kids{
		right:26%;
	}
	.img_schedule .count.general{
		right:3%;
	}
	.first_pre .count{
		top:10%;
	}
	.second_pre .count{
		top:35%;
	}
	.third_pre .count{
		top:61%;
	}

}


/* コンテストの流れ -----------------------------*/
.step_wrap{
	background: url("../images/bg_step.jpg") no-repeat;
	background-size: cover;
	padding: 4% 0 7%;
}
#step{
}
.tit_drakiryu02{
	width:40%;
	margin: 0 auto;
}
.tit_cnt{
	color: #ff5800;
	font-size:187.5%;
	font-weight: bold;
	text-align: center;
	margin: 2% 0 3%;
}
#step ul{
	max-width:958px;
	width:92%;
	padding: 0 4%;
	margin: 0 auto;
}
#step ul li{
	position: relative;
	color: #fff;
	font-size:131.3%;
	margin-bottom: 80px;
	padding: 2% 0 3%;
	background: #000;
	border-radius: 8px;
}
#step ul li:after {
	content: "";
	display: block;
	position: absolute;
	border: 50px solid transparent;
	border-top-color: #000;
	bottom: -100px;
	left: 50%;
	margin-left: -50px;
}
#step ul li:last-child:after{
	display:none;
}
#step ul li h3{
	width:25%;
	margin: 0 auto 2%;
}
#step ul li h4{
	font-weight: bold;
	margin-bottom: 1%;
	text-align: center;
}
#step ul li p{
	color: #ff5800;
	text-align: center;
}
#step ul li a{
	display: block;
	color: #fff100;
	text-decoration: underline;
	margin:2% 0 0 11%;
}
#step .btn_entry{
	display: block;
    max-width: 690px;
	width: 50%;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.step_wrap{
		background: url("../images/smp/bg_step.jpg") no-repeat;
		background-size: cover;
		padding: 6% 4% 13%;
	}
	#step{
	}	
	.tit_drakiryu02{
		width:100%;
	}
	.tit_cnt{
		font-size:5.07vw;
		margin: 3% 0 8%;
	}
	#step ul{
		padding:0;
		width: 100%;
	}
	#step ul li{
		font-size:4.8vw;
		padding: 2% 4% 4%;
		margin-bottom:34px;
	}
	#step ul li:after {
		border: 25px solid transparent;
		border-top-color: #000;
		bottom: -50px;
		margin-left: -25px;
	}
	#step ul li h3{
		width:40%;
		margin: 0 0 2%;
	}
	#step ul li h4{
		text-align:left;
		margin-bottom: 2%;
	}
	#step ul li p{
		text-align:left;
	}
	#step ul li a{
		margin:2% 0 0 0;
	}
	#step .btn_entry{
		width:100%;
	}
}

/* 賞金特典 -----------------------------*/
#prize_privilege{
	background:#2f2066;
}
#prize_privilege div{
	max-width:1400px;
	width: 100%;
	margin: 0 auto;
}

/* 募集要項 -----------------------------*/
.requirements_wrap{
	background:url("../images/bg_requirements.jpg") no-repeat;
	background-size: cover;
	padding: 5% 4% 3%;
	box-sizing: border-box;
}
#requirements{
}
.tit_drakiryu03{
	width:58%;
	margin: 0 auto;
}
.requirements_inner{
	max-width: 990px;
	width:100%;
	background:rgba(255,255,0,0.6);
	margin: 0 auto;
	padding: 3% 25px 2%;
	overflow: hidden;
	box-sizing: border-box;
}
.requirements_left{
	float: left;
	width:48%;
}
.requirements_right{
	float: right;
	width:48%;
	margin-top:-1%;
}
.requirements_cnt{
	margin-bottom:5%;
}
.tit_requirements{
	width:39%;
	margin-bottom:3%;
}
.requirements_box{
	margin-bottom:4%;
}
.tit_requirements_box{
	color:#ff0000;
	font-size:118.8%;
	font-weight: bold;
	line-height: 1.4;
}
.requirements_cnt p{
	font-size:118.8%;
	font-weight: bold;
	line-height: 1.4;
	margin-left: 1%;
}
.requirements_cnt p.cap{
	font-size:87.5%;
	font-weight: normal;
	margin-top: 8px;
	padding-left:1em;
	text-indent:-1em;
}
.requirements_cnt .cap_red{
	color: #c30d23;
	font-size:75%;
	margin-bottom: 12px;
}
.requirements_cnt p.cap span{
	display: block;
	color: #c30d23;
	font-weight: bold;
}
.requirements_cnt .link_op{
	display:block;
	color: #000;
	font-weight: bold;
	margin-top:3%;
	text-decoration: underline;
}
.requirements_box.preliminary h3{
	color: #c80000;
	font-size:125%;
	font-weight: bold;
	line-height: 1.3;
}
.requirements_box.preliminary p{
	font-size:112.5%;
	line-height: 1.3;
}
.requirements_box.preliminary p span{
	color: #c80000;
	font-weight: bold;
}
.requirements_cnt p.genre{
	font-size:93.8%;
	font-weight: normal;
	padding-left:1em;
	margin-top: 2%;
}
.tournament{
	margin-bottom:4%;
}
.tournament_txt{
	font-size:106.3%!important;
	margin-left: 0!important;
}
@media screen and (max-width: 768px) {
	.requirements_wrap{
		padding:4%;
	}
	#requirements{
	}
	.requirements_inner{
		padding:4% 3% 0;
	}
	.tit_drakiryu03{
		width:96%;
	}
	#requirements .tit_cnt{
		margin:3% 0 5%;
	}
	.requirements_left{
		float:none;
		width:100%;
	}
	.requirements_right{
		float:none;
		width:100%;
		margin-top:0;
	}
	.tit_requirements{
		width:40%;
		margin-left: -2%;
	}
	.tit_requirements_box{
		font-size:3.73vw;
	}
	.requirements_cnt p{
		font-size:3.73vw;
		margin-left: 0;
	}
	.requirements_cnt p.cap{
		font-size:2.93vw;
		margin-top:1%;
		padding-left: 0;
		text-indent: 0;
	}
	.requirements_cnt .link_op{
		font-size:2.93vw;
		margin-top: 2%;
	}
	.requirements_box.preliminary h3{
		font-size:4vw;
	}
	.requirements_box.preliminary p{
		font-size:3.47vw;
	}
	.requirements_cnt p.genre{
		font-size:2.93vw;
	}
	.requirements_cnt .cap_red{
		font-size:2.67vw;
		margin-bottom: 3%;
	}
	.tournament_txt{
		font-size:3.47vw!important;
	}
	
}

/* 審査委員 -----------------------------*/
.judge_wrap{
	background:#2f2066;
	padding: 2% 4%;
}
#judge{
}
#judge .tit_cnt{
	margin:1% 0 2%;
}
.judge_cnt{
	max-width: 1020px;
	width:100%;
	margin: 0 auto;
	border-bottom: 2px dashed #6f6f6f;
	padding:2% 0 0;
	box-sizing: border-box;
}
.judge_cnt:last-child{
	border-bottom:none;
}
.judge_cnt h2{
	color: #fff100;
	font-size:112.5%;
	font-weight: bold;
	margin-bottom: 2%;
}
.judge_cnt ul{
	overflow: hidden;
	padding-left: 3px;
}
.judge_cnt ul li{
	width:33.333%;
	float: left;
	margin-bottom:2%;
	overflow: hidden;
}
.img_judge{
	float: left;
	width:22%;
}
.txt_judge{
	float: left;
	width: 78%;
	padding: 0 5% 0 4%;
	box-sizing: border-box;
	color: #fff;
}
.txt_judge .name{
	font-size:75%;
	font-weight: bold;
	margin-bottom:2%;
}
.txt_judge .txt{
	font-size:68.8%;
	line-height: 1.3;
}
@media screen and (max-width: 768px) {
	.judge_wrap{
		padding:6% 4% 0;
	}
	#judge{
	}
	#judge .tit_cnt{
		margin:0 0 0;
	}
	.judge_cnt{
		padding:6% 0;
	}
	.judge_cnt h2{
		font-size:4vw;
		margin-bottom:0;
	}
	.judge_cnt ul{
		padding-left:0;
	}
	.judge_cnt ul li{
		float:none;
		width:100%;
		margin: 5% 0 0;
	}
	.txt_judge{
		padding:0 0 0 4%;
	}
	.txt_judge .name{
		font-size:3.2vw;
	}
	.txt_judge .txt{
		font-size:2.93vw;
	}
}

/* エントリー -----------------------------*/
#entry{
	background:url(../images/bg_entry.jpg) no-repeat center;
	background-size: cover;
	padding: 7% 0 6%;
}
#entry h1{
	width:32%;
	margin: 0 auto;
}
#entry p{
	width:33%;
	margin: 3% auto;
}
#entry .btn_entry{
	display: block;
	max-width: 690px;
	width:50%;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	#entry{
		background:url(../images/smp/bg_entry.jpg) no-repeat center;
		background-size: cover;
		padding: 11% 4%;
	}
	#entry h1{
		width:64%;
	}
	#entry p{
		width:66%;
		margin: 7% auto;
	}
	#entry .btn_entry{
		width:100%;
	}
}

/* 2018結果報告 -----------------------------*/
#result2018{
	position:relative;
}
.img_result2018{
	position:absolute;
	max-width: 536px;
	width: 40%;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	margin: auto;
}
.img_result2018 a{
	display:block;
}
@media screen and (max-width: 768px) {
	.img_result2018{
		width:80%;
	}
}

/* オープニングアクト -----------------------------*/
.opening_act_wrap{
	background:url("../images/bg_opening_act.jpg") no-repeat;
	background-size: cover;
	padding: 3% 4%;
	box-sizing: border-box;
}
#opening_act{
}
#opening_act h1{
	width: 42%;
	margin: 0 auto;
}
.opening_act_inner{
	max-width: 1020px;
	width:100%;
	margin: 0 auto;
}
.opening_act_top{
	display:flex;
	margin: 2% auto 0;
	align-items: center; 
	justify-content: space-between;
	padding:0 2%;
}
.opening_act_top .txt_box .txt01{
	color:#fff100;
	font-size: 162.5%;
	font-weight: bold;
}
.opening_act_top .txt_box .txt02{
	color:#2f2066;
	font-size: 150%;
	font-weight: bold;
	margin-top: 3%;
}
.opening_act_top .img{
	width:20%;
}
.opening_act_detail{
	float:left;
	width:50%;
	padding-left: 2%;
	box-sizing: border-box;
}
.opening_act_cnt{
	color:#fff;
	font-size: 112.5%;
	margin-bottom:4%;
}
.tit_opening_act{
	position: relative;
	width:35%;
	margin-bottom: 5%;
	left: -3%;
}
.opening_act_cnt dl{
	overflow: hidden;
}
.opening_act_cnt dl dt{
	float: left;
	width: 5em;
	font-weight: bold;
}
.opening_act_cnt dl dd{
	margin-left: 5em;
	font-weight: bold;
	margin-bottom: 2%;
}
.opening_act_cnt dl dd:after{
	content: "";
	clear: both;
	display: block;
}
.opening_act_cnt dl span{
	font-size:88.9%;
}
.opening_act_cnt table{
	line-height: 1.6;
}
.opening_act_cnt table th{
	font-weight: bold;
}
.opening_act_cnt table td{
	font-weight: bold;
	text-align: center;
}
.opening_act_cnt table .entry{
	padding-left:15px;
}
.opening_act_cnt .cap{
	font-size:88.9%;
	margin-top: 1%;
}
.opening_act_cnt ul li{
	margin-bottom:3%;
	line-height: 1.3;
}
.opening_act_cnt ul li h3{
	font-weight: bold;
}
.opening_act_cnt ul li p{
	color:#fff100;
	font-size: 88.9%;
}
.opening_act_cnt .note{
	color:#2f2066;
	font-weight: bold;
}
.btn_opening_act{
	display:block;
	width:66%;
	margin: 2% auto 0;
}
@media screen and (max-width: 768px) {
	.opening_act_wrap{
		background:url("../images/smp/bg_opening_act.jpg") no-repeat;
		background-size: cover;
		padding: 3% 4% 7%;
	}
	#opening_act{
	}
	#opening_act h1{
		width:75%;
	}
	.opening_act_top{
		display:block;
		text-align: center;
		padding: 0;
		margin:6% auto 0;
	}
	.opening_act_top .txt_box .txt01{
		font-size:4vw;
	}
	.opening_act_top .txt_box .txt02{
		font-size:3.73vw;
		margin-top: 4%;
	}
	.opening_act_top .img{
		width:37%;
		margin: 3% auto 0;
	}
	.opening_act_detail{
		float:none;
		width:100%;
		padding-left: 0;
	}
	.opening_act_cnt{
		font-size:3.73vw;
		margin-bottom: 6%;
	}
	.tit_opening_act{
		width:37%;
		margin-bottom:4%;
	}
	.opening_act_cnt table{
		font-size:3.2vw;
	}
	.opening_act_cnt .cap{
		font-size:2.93vw;
		margin-top: 2%;
	}
	.opening_act_cnt ul li h3{
		font-size:4vw;
		margin-bottom: 1%;
	}
	.opening_act_cnt ul li p{
		font-size:2.93vw;
	}
	.opening_act_cnt .note{
		font-size:3.2vw;
		margin-top: 6%;
	}
	.btn_opening_act{
		width:100%;
		margin: 0 auto;
	}
}

/* アクセス -----------------------------*/
.access_wrap{
	background:#fff;
	padding: 3% 4% 1%;
	box-sizing: border-box;
}
#access{
}
#access h1 {
	width:49%;
	margin:0 auto 48px;
}
.access_inner {
	max-width: 1020px;
	width:100%;
	margin: 0 auto;
	overflow: hidden;
}
.access_inner .txt_wrap{
	float: left;
	width: 43%;
	line-height: 1.6;
	padding-right: 3%;
}
.access_cnt{
	margin-bottom:6%;
}
.access_cnt h2{
	color:#ff5800;
	font-weight: bold;
}
.access_cnt p{
	font-size: 87.5%;
	font-weight: bold;
	margin-left: 1em;
}
.access_cnt ul{
	margin-top:10px;
}
.access_cnt ul li{
	font-size: 75%;
	margin-left: 2em;
	overflow: hidden;
}
.access_cnt ul li span{
	float:left;
	width:2em;
}
.access_cnt ul li p{
	font-weight: normal;
	margin-left: 2em;
}
.access_inner .map_wrap{
	float: right;
	width: 54%;
}
.access_inner .map{
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;	
}
.access_inner .map iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 768px) {
	.access_wrap{
		padding:16% 4% 4%;
	}
	#access{
	}
	#access h1{
		width:76%;
		margin:0 auto 4%;
	}
	.access_inner{
		display:table;
	}
	.access_inner .txt_wrap{
		display: table-footer-group;
		float:none;
		width:100%;
		padding-right: 0;
	}
	.access_inner .map_wrap{
		float:none;
		width:100%;
		margin-bottom:5%;
	}
	.access_cnt{
		margin-bottom:4%;
	}
	.access_cnt h2{
		font-size:3.2vw;
	}
	.access_cnt p{
		font-size:2.93vw;
	}
	.access_cnt ul{
		margin-top:3%;
	}
	.access_cnt ul li{
		font-size:2.93vw;
	}
}


/* お問い合わせ -----------------------------*/
.contact_wrap{
	color: #fff;
	text-align: center;
	padding: 4% 0;
	background: #2f2066;
}
#contact {
}
#contact h1{
	width:37%;
	margin: 0 auto;
}
#contact h2{
	color: #fff100;
	font-size: 187.5%;
	font-weight: bold;
	margin: 1% 0 3%;
}
#contact h3, #contact p {
	font-size: 137.5%;
	font-weight: bold;
	line-height: 1.5;
}
.copyright {
	width: 100%;
	padding: 16px 0;
	background: #FFF;
	font-size: 87.5%;
	color: #000;
	text-align: center;
}
.copyright small{
	margin-right: 28px;
}
.copyright a {
	color: #000;
}
.copyright a:hover {
	text-decoration: underline;
}
@media screen and (max-width: 768px) {
	.contact_wrap{
		padding:9% 4% 10%;
	}
	#contact{
	}
	#contact h1{
		width:100%;
	}
	#contact h2{
		font-size:5.07vw;
		margin: 3% 0 10%;
	}
	#contact h3, #contact p{
		font-size:3.2vw;
	}
	.copyright{
		display:table;
		padding: 4% 0;
		font-size: 2.67vw;
		line-height: 1.5;
	}
	.copyright small{
		display:table-footer-group;
	}
	.copyright a{
		text-decoration:underline;
	}
	
}

/* -------------------------------------------

下層ページ

 ---------------------------------------------------*/
.pages {
	background: #2f2066;
}
.pages .sub_header {
	background: #ff5800;
	width: 100%;
	padding: 8px 0;
	box-sizing: border-box;
}
.pages .sub_header .cnts {
	max-width: 1020px;
	width: 100%;
	margin: 0 auto;
	padding: 0 2%;
	box-sizing: border-box;
}
.pages .sub_header img.logo {
	width: 168px;
}
.page_wrap{
	max-width:1020px;
	width: 100%;
	margin: 3% auto 6%;
	padding: 0 2%;
	box-sizing: border-box;
}
.page_wrap h1{
	color:#fff100;
	font-size: 187.5%;
	font-weight: bold;
}
.page_wrap .txt_entry01{
	color: #fff;
	font-size:87.5%;
	line-height: 1.3;
	margin: 15px 0 30px;
}
.page_wrap h2{
	color: #ff5800;
	font-size: 137.5%;
	font-weight: bold;
}
.page_wrap .txt_entry02{
	color: #ff5800;
	font-size:75%;
	line-height: 1.5;
}
@media screen and (max-width: 768px) {
	.pages .sub_header{
		padding:2% 0;
	}
	.pages .sub_header .cnts{
		text-align:center;
		padding: 0;
	}
	.pages .sub_header img.logo{
		width:32%;
		margin-left:-2%;
	}
	.page_wrap{
		padding: 0;
		margin: 5% auto 6%;
	}
	.page_wrap h1{
		font-size: 125%;
		margin:0 4%;
	}
	.page_wrap .txt_entry01{
		font-size:68.8%;
		margin:5% 4%;
	}
	.page_wrap h2{
		font-size:93.8%;
		margin:0 4%;
	}
	.page_wrap .txt_entry02{
		font-size:62.5%;
		margin: 0 4%;
	}
}

/* エントリーページ -----------------------------*/
.entry_form{
	width: 100%;
	background:#fff;
	margin-top: 3%;
	box-sizing: border-box;
	border-spacing: 0;
	font-size:87.5%;
}
.entry_form tr:nth-child(2n){
	background:#dfdfdf;
}
.entry_form th{
	display: block;
	text-align: left;
	padding: 25px;
	box-sizing: border-box;
}
.entry_form th .form_required{
	display: inline-block;
	width: 60px;
	background:#c30d23;
	color: #fff;
	font-size:85.8%;
	text-align: center;
	padding: 4px 0;
	margin-right: 10px;
}
.entry_form td{
	display: block;
    vertical-align: middle;
	padding: 0 25px 30px;
	box-sizing: border-box;
}
.entry_form td input{
	font-size:16px;
	padding:7px 8px;
	border: 1px solid #9e9a98;
}
.entry_form .notice{
	display: block;
	font-size:10px;
	margin-bottom: 8px;
}
.entry_form .notice.red{
	color: #c30d23
}
.entry_form th .notice{
	margin-top:10px;
	margin-bottom: 0;
}

input[type=radio], input[type=checkbox] {
  display: none;
}
.radio {
  box-sizing: border-box;
  position: relative;
  display: inline-block;
  padding: 4px 10px 4px 34px;
  vertical-align: middle;
  cursor: pointer;
}
.radio:hover:after {
  border-color: #f00;
}
.radio:after {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  margin-top: -10px;
  width: 16px;
  height: 16px;
  border: 2px solid #000;
  border-radius: 50%;
  content: '';
}

.radio:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 5px;
  display: block;
  margin-top: -5px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #000;
  content: '';
  opacity: 0;
}
input[type=radio]:checked + .radio:before {
  opacity: 1;
}

select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
    height: 32px;
    background: transparent;
    position: relative;
    z-index: 1;
    padding: 0 30px 0 15px;
    border: 1px solid #9e9a98;
	border-radius: 0;
	width: 100%;
	font-size: 16px;
}
select::-ms-expand {
    display: none;
}
.select_wrap{
    position: relative;
    display: inline-block;
}
.select_wrap::after{
    content: '';
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 9px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 7px 0 7px;
    border-color: #000 transparent transparent transparent; 
}
.entry_form .team_name td,
.entry_form .department td,
.entry_form .num td,
.entry_form .delegate_name td{
	padding:0 25px 30px 40px;
}
.entry_form .team_name input,
.entry_form .mail input,
.entry_form .mail input,
.entry_form .address input,
.entry_form .tel input,
.entry_form .team input{
	width:418px;
}

.entry_form .team_name div{
	display:flex;
	align-items: center;
}
.entry_form .team_name div:first-child{
	margin-bottom:25px;
}
.entry_form .team_name label{
	width:4em;
	margin-right: 18px;
}
.entry_form .department div:first-of-type{
	margin-bottom: 18px;
}
.entry_form .num label{
	margin-right:18px;
}
.entry_form .num div:first-of-type{
	margin-bottom: 18px;
}
.entry_form .num .select_wrap{
	width:140px;
	background: #fff;
	margin-bottom: 0!important;
}
.entry_form .select_wrap{
	width:295px;
	background: #fff;
}
.entry_form .genre th{
	vertical-align: middle;
}
.entry_form .delegate_name label{
	display: inline-block;
	width:2em;
	margin-right: 10px;
}
.entry_form .delegate_name input{
	width:210px;
}
.entry_form .delegate_name td{
	display:flex;
	flex-wrap: wrap;
	max-width: 670px;
}
.entry_form .delegate_name td div{
	margin-right: 30px;
}
.entry_form .delegate_name td div:first-child{
	margin-bottom: 24px;
}
.entry_form .mail th{
	padding:25px 25px 0;
}
.entry_form .mail td:first-of-type{
	padding:0 25px;
}
.entry_form .mail td .notice{
	margin-top: 10px;
}
.entry_form .address .postal_code{
	margin:-5px 0 24px;
}
.entry_form .address .postal_code input{
	width:114px;
}
.entry_form .team th{
	vertical-align: middle;
	border-bottom: none;
}
.entry_form .team th {
	padding:25px 25px 20px;
}
.entry_form .team td{
	border-bottom:none;
}
.btn_send, .btn_check{
	display:block;
	max-width:465px;
	margin: 64px auto 26px;
}
.btn_reset{
	display:block;
	width:138px;
	margin: 0 auto;
}
.opening_act_page .entry_form .num td{
	padding:0 25px 30px;
}

input.btn_check {
    border: 0px;
    width:100%;
    height:64px;
	max-width: 465px;
	background: url("../images/btn_check.png") no-repeat;
	text-indent: -9999px;
	background-size: cover;
}
input.btn_send {
    border: 0px;
    width:100%;
    height:64px;
	max-width: 465px;
	background: url("../images/btn_send.png") no-repeat;
	text-indent: -9999px;
	background-size: cover;
}

input.btn_reset {
    border: 0px;
    width:100%;
    height:46px;
	max-width: 136px;
	background: url("../images/btn_reset.png") no-repeat;
	text-indent: -9999px;
	background-size: cover;
}

.oa_chk {
	background: #FFF;
	padding: 2%;
	margin-top: 3%;
}
.oa_chk h4 {
	margin-bottom: 2%;
	color: #FF0000;
	display: block;
}
.oa_chk p {
	color: #FF0000;
	line-height: 1.6;
	font-size: 100%;
}

.oa_chk_btn {
	border: 1px solid #ffffff;
	background-color:transparent;
	color: #FFFFFF;
	font-size: 120%;
	font-weight: bold;
	padding: 1% 2%;
	width: 80%;
	max-width: 300px;
	display: block;
	margin: 3% auto 0;	
}

.entry_chk_table td {
	padding: 0 25px 30px!important;
}
.entry_chk_table th {
	padding: 25px!important;
}

@media screen and (max-width: 768px) {
	.entry_form{
		font-size: 75%;
		margin-top:6%;
	}
	.entry_form th{
		padding:6% 4%;
	}
	.entry_form td{
		padding:0 4% 6%;
	}
	.entry_form th .notice{
		margin-top:3%;
	}
	.entry_form .notice{
		margin-bottom:2%;
	}
	.entry_form .team_name input,
	.entry_form .mail input,
	.entry_form .mail input,
	.entry_form .address input,
	.entry_form .tel input,
	.entry_form .team input{
		width:100%;
		padding:2%;
		box-sizing: border-box;
	}
	.entry_form .team_name td,
	.entry_form .department td,
	.entry_form .num td,
	.entry_form .delegate_name td{
		padding:0 8% 6%;
	}
	.entry_form .select_wrap{
		width:73%;
	}
	.entry_form .team_name div:first-child{
		margin-bottom:6%;
	}
	.entry_form .team_name label{
		width:25%;
		margin-right: 0;
	}
	.entry_form .department div:first-of-type,
	.entry_form .num div:first-of-type{
		margin-bottom:3%;
	}
	.entry_form .num label{
		margin-right:2%;
	}
	.entry_form .num .select_wrap{
		width:37%;
	}
	.entry_form .delegate_name td div{
		margin-right:0;
		margin-bottom:3%;
	}
	.entry_form .delegate_name td div:first-child{
		margin-bottom:3%;
	}
	.entry_form .delegate_name td div:nth-child(2){
		margin-bottom:10%;
	}
	.entry_form .mail th{
		padding:6% 4% 0;
	}
	.entry_form .mail td:first-of-type{
		padding:0 4%;
	}
	.entry_form .mail td .notice{
		margin:2% 0;
	}
	.entry_form .address .postal_code{
		margin:0 0 6%;
	}
	.entry_form .address .postal_code input{
		width:32%;
	}
	.entry_form .tel th,
	.entry_form .team th{
		padding:6% 4% 2%;
	}
	.btn_send, .btn_check{
		width:92%;
		margin: 9% auto 4%;
	}
	.btn_reset{
		width:24%;
	}
	.entry_chk_table td {
		padding: 0 4% 6%!important;
	}
	.entry_chk_table th {
		padding: 6% 4%!important;
	}
}

@media screen and (max-width: 680px) {
	input.btn_send, input.btn_check {
    	width:294px;
    	height:41px;
	}
	input.btn_reset {
   		width:77px;
   		height:26px;
	}	
}


/* プライバシーポリシーページ -----------------------------*/
.privacy_page .page_wrap h1{
	text-align: center;
	margin-bottom: 44px;
}
.privacy_page h2{
	color: #ff5800;
	font-size:125%;
	margin: 30px 0 10px;
	text-align: left;
}
.privacy_page p {
	color: #fff;
	text-align: left;
}
.privacy_page ul {
	margin-top: 20px;
	color: #fff;
	text-align: left;
}
@media screen and (max-width: 768px) {
	.privacy_page .page_wrap{
		width:92%;
		margin: 8% auto;
	}
	.privacy_page .page_wrap h1{
		margin-bottom:5%;
	}
	.privacy_page h2{
		margin:6% 0 4%;
	}
	.privacy_page ul{
		margin-top:6%;
	}
}


/* -------------------------------------------

　結果発表ページ

 ---------------------------------------------------*/
.result_wrap .tit_result{
	color: #ff5800;
	text-align:center;
	font-size:225%;
	font-weight: bold;
	padding: 3% 0;
}
.result_wrap ul.schedule_list {
	display: flex;
	max-width:1076px;
	width: 100%;
	margin: 0 auto 3%;
	padding: 0 2%;
	box-sizing: border-box;
}
.result_wrap ul.schedule_list li {
	position: relative;
	margin-left:3%;
}
.result_wrap ul.schedule_list li:first-child{
	margin-left: 0;
}
.icon_cs {
	position: absolute;
	width: 86%;
	left: 50%;
	top: 50%;
	margin-top:-25%;
	margin-left: -43%;
	z-index: 100;
}
.result_bg{
	background:url("../images/bg_result2019.jpg") repeat-y center;
	background-size: contain;
	padding: 3% 2% 1%;
	box-sizing: border-box;
}
.result_wrap_inner{
	max-width:1020px;
	width: 100%;
	margin: 0 auto;
}
.tit_result_contest {
	color: #ff5800;
	font-size: 200%;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom:5%;
}
.result_detail {
	margin-bottom: 8%;
}
.result_tit_box {
	display: flex;
}
.result_tit_box h1{
	font-size:150%;
	font-weight: bold;
	margin-left: 14px;
}
.result_tit_box h1 span{
	display: block;
	font-size: 191.7%;
	font-weight: bold;
}
.result_tit_box:before {
	content: "";
	width: 77px;
	height: 74px;
	display: block;
	left: 0;
}
.result_detail_box{
	display:flex;
	margin: 1% 0;
}
.result_detail_box p{
	margin-right: 5%;
}
.result_detail_box p span{
	font-size:125%;
	font-weight: bold;
	vertical-align: middle;
}
.result_detail_box p .teams{
	font-size:150%;
	font-weight: bold;
}
.result_detail_box p .teams .num{
	font-size:133.3%;
}
.result_detail .photo{
	display: flex;
}
.result_detail .photo li{
	margin-left: 1%;
}
.result_detail .photo li:first-child{
	margin-left: 0;
}
.main_img{
	width:80%;
	margin: 2% auto 0;
}
.movie_box{
	width:80%;
	margin: 2% auto 0;
}
.movie_inner {
     position: relative;
     padding-bottom: 56.25%;
     height: 0;
     overflow: hidden;
}
.movie_inner iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}
.result_detail.first .result_tit_box:before {
	background: url("../images/result_icon01.png") no-repeat;
	background-size: contain;
}
.result_detail.second .result_tit_box:before {
	background: url("../images/result_icon02.png") no-repeat;
	background-size: contain;
}
.result_detail.third .result_tit_box:before {
	background: url("../images/result_icon03.png") no-repeat;
	background-size: contain;
}
.result_detail.fourth .result_tit_box:before {
	background: url("../images/result_icon04.png") no-repeat;
	background-size: contain;
}
.result_detail.fifth .result_tit_box:before {
	background: url("../images/result_icon05.png") no-repeat;
	background-size: contain;
}
.result_detail.first .result_tit_box h1 span,
.result_detail.first .result_detail_box p .teams{
	color: #ad860d;
}
.result_detail.second .result_tit_box h1 span,
.result_detail.second .result_detail_box p .teams{
	color: #898989;
}
.result_detail.third .result_tit_box h1 span,
.result_detail.third .result_detail_box p .teams{
	color: #b2663c;
}
.result_detail.fourth .result_tit_box h1 span,
.result_detail.fourth .result_detail_box p .teams,
.result_detail.fifth .result_tit_box h1 span,
.result_detail.fifth .result_detail_box p .teams{
	color: #a48b78;
}
.result_wrap .committee{
	background: #000;
	padding: 3% 2% 6%;
	box-sizing: border-box;
}
.result_wrap .committee h1{
	color:#ff5800;
	font-size: 225%;
	font-weight: bold;
	text-align: center;
}
.result_wrap .committee ul{
	display: flex;
	max-width:1020px;
	width: 100%;
	margin: 4% auto 0;
}
.result_wrap .committee ul li{
	color: #fff;
	flex:1;
	margin-left: 2%;
	overflow: hidden;
}
.result_wrap .committee ul li:first-child{
	margin-left: 0;
}
.result_wrap .committee ul li img{
	float: left;
	display: block;
	width:23%;
	margin-right: 3%;
}
.result_wrap .committee ul li .txt_box{
	float:left;
	width: 74%;
	line-height: 1.6;
}
.result_wrap .committee ul li .txt_box h2{
	font-size:75%;
	font-weight: bold;
}
.result_wrap .committee ul li .txt_box p{
	font-size:68.8%;
}

@media screen and (max-width: 680px) {
	.result_wrap .tit_result{
		font-size:134.4%;
		padding:6% 4% 4%;
		text-align: left;
	}
	.result_wrap ul.schedule_list{
		padding: 0 4%;
		margin: 0 auto 2%;
		flex-wrap: wrap;
	}
	.result_wrap ul.schedule_list li{
		width:48%;
		margin-left: 4%;
		margin-bottom:4%;
	}
	.result_wrap ul.schedule_list li:nth-child(2n+1){
		margin-left: 0;
	}
	.result_bg{
		padding:6% 4% 1%;
	}
	.tit_result_contest{
		font-size:125%;
		margin-bottom: 9%;
	}
	.result_detail{
		margin-bottom:17%;
	}
	.result_tit_box:before{
		width:48px;
		height: 46px;
	}
	.result_tit_box h1{
		font-size:93.8%;
		margin-left: 2%;
	}
	.result_tit_box h1 span{
		font-size:193.3%;
	}
	.result_detail_box{
		display:block;
		margin: 2% 0 4%;
	}
	.result_detail_box p{
		margin-right:0;
	}
	.result_detail_box p span{
		font-size:81.3%;
	}
	.result_detail_box p .teams{
		font-size:93.8%;
	}
	.result_detail_box p .teams .num{
		font-size:133.3%;
	}
	.result_detail .photo{
		flex-wrap: wrap;
	}
	.result_detail .photo li{
		width:49%;
		margin-left: 2%;
		margin-bottom:2%;
	}
	.result_detail .photo li:nth-child(2n+1){
		margin-left: 0;
	}
	.main_img{
		width:100%;
	}
	.movie_box{
		width:100%;
	}
	.result_wrap .committee{
		padding:9% 4% 4%;
	}
	.result_wrap .committee h1{
		font-size:134.4%;
	}
	.result_wrap .committee ul{
		display: block;
		margin:10% auto 0;
	}
	.result_wrap .committee ul li{
		margin-left:0;
		margin-bottom:10%;
	}	
	.result_wrap .committee ul li img{
		width:22%;
	}
	.result_wrap .committee ul li .txt_box{
		width:75%;
	}
	
}

















/* -------------------------------------------

　TOPへ戻る

 ---------------------------------------------------*/
#page_top {
	position: fixed;
	bottom: 10px;
	right: 5px;
	z-index: 5;
	width: 60px;
	height: 60px;
	display: block;
}
@media screen and (max-width: 768px) {
	#page_top{
		width: 44px;
		height: 44px;
	}
}

/* -------------------------------------------

　スクロールで表示

 ---------------------------------------------------*/
.fade_off {
    opacity: 0;
    -webkit-transition: all 3s;
    -moz-transition: all 3s;
    transition: all 3s;
}
.fade_on {
    opacity: 1;
}



/* -------------------------------------------

　スムーススクロール

 ---------------------------------------------------*/
.mg_cnt{
	margin-top:-84px;
	padding-top:84px;
}
@media screen and (max-width: 768px) {
	.mg_cnt{
		margin-top:-60px;
		padding-top:60px;
	}
}


/* -------------------------------------------

レスポンシブ設定

 ---------------------------------------------------*/
.pc_cnt{
	display:block!important;
}
.smp_cnt{
	display:none!important;
}
@media screen and (max-width: 768px) {
	.pc_cnt{
		display:none!important;
	}
	.smp_cnt{
		display:block!important;
	}
}


/* -------------------------------------------

スタイル

 ---------------------------------------------------*/

.mg_t20 {
	margin-top: 20px;
}

/* -------------------------------------------

clearfix

 ---------------------------------------------------*/

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}