@charset "utf-8";
* {
	margin: 0;
	padding: 0;
	font-family: "メイリオ","Hiragino Kaku Gothic Pro",Meiryo,"ヒラギノ角ゴ Pro W3","MS PGothic","MS UI Gothic",Helvetica,Arial,sans-serif;
	font-size: 16px;
	line-height: 1.9em;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
}
@media (max-width:1200px) {
	* {
		font-size: calc(16/1200 * 100vw);
	}
}
@media (max-width:768px) {
	* {
		font-size: 3.2vw;
	}
}
.is_pc{
	display:block !important;
}
.is_sp{
	display:none !important;
}
@media (max-width:767px) {
	.is_pc{
		display:none !important;
	}
	.is_sp{
		display:block !important;
	}
}
body {
	width: 100%;
	margin: 0;
	background-color: #FFFFFF;
	color: #111111;
	overscroll-behavior: none;
}
img {
	vertical-align: bottom;
	border:none;
	max-width: 100%;
}
a{
	color:#111111;
	text-decoration: none;
	transition: all .3s ease-in-out;
}
ul li{list-style-type: none;}


.mds,
.mds *{
	font-family: 'Oswald', sans-serif;
	-webkit-font-smoothing: auto;
	font-weight: 300;
	font-style: normal;
	letter-spacing: 0.13em;
}
.mds_b,
.mds_b *{
	font-family: 'Oswald', sans-serif;
	-webkit-font-smoothing: auto;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0.13em;
}
.min,
.min *{
    font-family: 'Noto Serif JP',"游明朝", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-style: normal;
	letter-spacing: 0.1em;
}

/*************************** loading *********/

/*************************** nav *********/
header{
	width: 100%;
	height: 120px;
	padding: 0 30px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: fixed;
	z-index: 999;
	top: 0;
	background: rgba(255, 255, 255, 0.8);
	transition: all .3s;
}
header h1{
	height: 69px;
	transition: all .3s;
}
header h1 img{
	height: 100%;
	width: auto;
	transition: all .3s;
}
header .linkarea{
	width: calc(100% - 120px);
}
header .linkarea ul{
	display: flex;
	justify-content: flex-end;
}
header .linkarea ul li{
	margin-left: 40px;
}
header .linkarea ul li:first-child{
	opacity: 0;
	visibility: hidden;
	transition: all .3s;
	margin-left: 0;
}
header .linkarea ul li a{
	font-size: 14px;
}
header.fixed{
	height: 80px;
}
header.fixed h1{
	height: 50px;
}
header.fixed .linkarea ul li:first-child{
	opacity: 1;
	visibility: inherit;
}
@media (max-width:1200px) {
	header{
		height: calc(120/1200 * 100vw);
		padding: 0 calc(30/1200 * 100vw);
	}
	header h1{
		height: calc(69/1200 * 100vw);
	}
	header .linkarea ul li{
		margin-left: calc(40/1200 * 100vw);
	}
	header .linkarea ul li a{
		font-size: calc(14/1200 * 100vw);
	}
	header.fixed{
		/*height: calc(80/1200 * 100vw);*/
	}
	header.fixed h1{
		/*height: calc(50/1200 * 100vw);*/
	}
}
@media (max-width:768px) {
	header{
		z-index: 999;
		font-size: 3.5vw;
		width: 100vw;
		height: 15vw;

		display: block;
	}
	header h1 {
		width: 24vw;
		height: auto;
		padding-top: 2.6vw;
		margin-left: 0vw;
		z-index: 9999;
	}
	header h1 img {
		height: auto;
		width: 100%;
	}
	header.fixed{
		height: 15vw;
	}
	header.fixed h1{
		padding-top: 2.6vw;
		width: 24vw;
		height: auto;
	}
	header .linkarea{
		display: block;
		padding-top: 0;
    	margin-right: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		display: none;
	}
	header .linkarea.panelactive{
		display: flex;
	}
	header .linkarea ul{
		display: block;
	}
	header .linkarea ul li{
		margin-bottom: 10vw;
		text-align: center;
		margin-left: 0;
	}
	header .linkarea ul li:first-child {
		opacity: 1;
		visibility: inherit;
	}
	header .linkarea ul li a{
		font-size: 3.8vw;
	}

	/*========= ナビゲーションのためのCSS ===============*/

	/*アクティブになったエリア*/
	header .linkarea.panelactive{
		/*position:fixed;にし、z-indexの数値を大きくして前面へ*/
		position:fixed;
		z-index: 999;
		top: 0;
		width:100vw;
		height: 100vh;
	}
	header.fixed.open{/*白い帯を消す*/
		background: none;
	}
	/*丸の拡大*/
	.circle-bg{
		position: fixed;
		z-index:3;
		/*丸の形*/
		width: 100px;
		height: 100px;
		border-radius: 50%;
		background: rgba(255,255,255,0.95);
		/*丸のスタート位置と形状*/
		transform: scale(0);/*scaleをはじめは0に*/
		bottom:-50px;
		left:calc(50% - 50px);/*50%から円の半径を引いた値*/
		transition: all .6s;/*0.6秒かけてアニメーション*/
	}
	.circle-bg.circleactive{
		transform: scale(50);/*クラスが付与されたらscaleを拡大*/
	}
	/*ナビゲーションの縦スクロール*/
	#g-nav-list{
		display: none;/*はじめは表示なし*/
		/*ナビの数が増えた場合縦スクロール*/
		position: fixed;
		z-index: 999; 
		width: 100%;
		height: 100vh;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
	}
	header .linkarea.panelactive #g-nav-list{
		 display: block; /*クラスが付与されたら出現*/
	}
	/*ナビゲーション*/
	header .linkarea ul {
		opacity: 0;
	}
	header .linkarea.panelactive ul {
		opacity:1;
	}
	/* 背景が出現後にナビゲーション li を表示※レイアウトによって調整してください。不必要なら削除*/
	header .linkarea.panelactive .globallink,
	header .linkarea.panelactive .mainlink{
		animation-name:gnaviAnime;
		animation-duration:1s;
		animation-delay:.2s;/*0.2 秒遅らせて出現*/
		animation-fill-mode:forwards;
		opacity:0;
	}
	/*========= ボタンのためのCSS ===============*/
	.openbtn{
		position:fixed;
		top:0.8vw;
		right: 10px;
		z-index: 9999;/*ボタンを最前面に*/
		cursor: pointer;
		width: 50px;
		height:50px;
	}
	/*×に変化*/	
	.openbtn span{
		display: inline-block;
		transition: all .3s;
		position: absolute;
		right: 0%;
		height: 3px;
		width: 70%;
		background: #00008B;
	  }
	.openbtn span:nth-of-type(1) {
		top:12px;
	}
	.openbtn span:nth-of-type(2) {
		top:23px;
	}
	.openbtn span:nth-of-type(3) {
		top:34px;
	}
	.openbtn.active span:nth-of-type(1) {
		top: 18px;
		right: 0%;
		transform: translateY(6px) rotate(-45deg);
		width: 60%;
	}
	.openbtn.active span:nth-of-type(2) {
		opacity: 0;
	}
	.openbtn.active span:nth-of-type(3){
		top: 30px;
		right: 0%;
		transform: translateY(-6px) rotate(45deg);
		width: 60%;
	}
}
@keyframes gnaviAnime {
    0% { opacity: 0 ; }
    100% {opacity: 1 ; }
}


/*************************** slogan *********/
#slogan{
	position: relative;
	margin-top: 120px;
	height: 640px;
	overflow: hidden;
	/*background: url(../img/kv-bg.jpg) no-repeat center center;*/
}
#slogan::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0%;
	width: 100%;
	height: 100%;
	background: #FFF;
	z-index: 1;
	animation:slide 0.8s 0.3s forwards;
}
@keyframes slide{
	from {
		transform: translateX(0); /*要素を左の枠外に移動*/
	}
	to {
		transform: translateX(100%);/*要素を元の位置に移動*/
	}
  }
/** loop **/
.loopSlide{
    display: flex;
	align-items: center;
    width: 100vw;
	height: 100%;
    overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
}
.loopSlide .imgbg{
    display: flex;
    height: 100%;
	width: 2400px;
}
.loopSlide img{
	width: 2400px;
	max-width: 2400px;
    height: auto;
}
.loopSlide img:first-child{
	animation: slide1 140s -70s linear infinite;
}
.loopSlide img:last-child{
	animation: slide2 140s linear infinite;
}
.loopSlide .imgbg.is_pc{
	display: flex !important;
}
.loopSlide .imgbg.is_sp{
	display: none !important;
}
@keyframes slide1 {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes slide2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
/** loop END **/
#slogan h2{
	text-align: center;
	position: relative;
	z-index: 1;
	padding-top: 250px;
	opacity: 0;
}
#slogan h2 span{
	position: relative;
	display: inline-block;
}
#slogan h2 span::before{
	content: "";
	position: absolute;
	right: -80px;
	top: 0;
	width: 63px;
	height: 63px;
	background: url(../img/title-bg.png) no-repeat top left / contain;
}
#slogan .kkm{
	position: relative;
	z-index: 3;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	background: rgba(255, 255, 255, 0.6);
	color: #073190;
	border: 1px solid #073190;
	width: 840px;
	margin: 40px auto 0;
	padding: 10px 30px 10px 10px;
	opacity: 0;
}
#slogan .kkm img{
	width: 130px;
}
#slogan .kkm .txtbox{
	margin-left: 40px;
}
#slogan .kkm .txtbox h3{
	font-size: 24px;
	font-weight: bold;
}
#slogan .kkm .txtbox p{
	font-size: 18px;
	line-height: 1.7em;
}
@media (max-width:1200px) {
	#slogan{
		margin-top: calc(120/1200 * 100vw);
		height: calc(640/1200 * 100vw);
	}
	#slogan h2{
		padding-top: calc(250/1200 * 100vw);
	}
	#slogan h2 img{
		width: calc(949/1200 * 100vw);
	}
	#slogan h2 span::before{
		right: calc(-80/1200 * 100vw);
		width: calc(63/1200 * 100vw);
		height: calc(63/1200 * 100vw);
	}
	#slogan .kkm{
		width: calc(840/1200 * 100vw);
		margin: calc(40/1200 * 100vw) auto 0;
		padding: calc(10/1200 * 100vw) calc(30/1200 * 100vw) calc(10/1200 * 100vw) calc(10/1200 * 100vw);
	}
	#slogan .kkm img{
		width: calc(130/1200 * 100vw);
	}
	#slogan .kkm .txtbox{
		margin-left: calc(40/1200 * 100vw);
	}
	#slogan .kkm .txtbox h3{
		font-size: calc(24/1200 * 100vw);
	}
	#slogan .kkm .txtbox p{
		font-size: calc(18/1200 * 100vw);
	}
}
@media (max-width:768px) {
	.loopSlide .imgbg.is_sp{
		height: 100%;
		width: auto;
		display: flex !important;
	}
	.loopSlide .imgbg.is_pc{
		display: none !important;
	}
	.loopSlide img{
		width: auto;
		max-width: auto;
		height: 100%;
	}
	.loopSlide img:first-child{
		animation: slide1 30s -15s linear infinite;
	}
	.loopSlide img:last-child{
		animation: slide2 30s linear infinite;
	}

	#slogan{
		margin-top: 15vw;
		height: 130vw;
	}
	#slogan h2{
		padding-top: 40vw;
	}
	#slogan h2 img{
		width: 70vw;
	}
	#slogan h2 span::before{
		right: -11vw;
		top: auto;
		bottom: 0;
		width: 8.4vw;
		height: 8.4vw;
	}
	#slogan .kkm{
		width: 90vw;
		margin: 6vw auto 0;
		padding: 1.6vw;
	}
	#slogan .kkm img{
		width: 17vw;
	}
	#slogan .kkm .txtbox{
		margin-left: calc(40/1200 * 100vw);
	}
	#slogan .kkm .txtbox h3{
		font-size: 3.5vw;
		line-height: 140%;
	}
	#slogan .kkm .txtbox p{
		font-size: 3vw;
	}
}

/*************************** contents common *********/
main .contents{
	width: 100%;
	z-index: 2;
	padding: 80px 0;
}
.inr{
	width: 1000px;
	margin: 0 auto;
}
main .contents h3{
	font-weight: bold;
	text-align: center;
	line-height: 100%;
	font-size: 30px;
	margin-bottom: 50px;
	color: #DC3D1A;
}
@media (max-width:1200px) {
	main .contents{
		padding: calc(80/1200 * 100vw) 0;
	}
	.inr{
		width: calc(1000/1200 * 100vw);
	}
	main .contents h3{
		font-size: calc(30/1200 * 100vw);
		margin-bottom: calc(50/1200 * 100vw);
	}
}
@media (max-width:768px) {
	main .contents{
		padding: 12vw 0;
	}
	.inr{
		width: 90%;
	}
	main .contents h3{
		font-size: 4.3vw;
		margin-bottom: 10vw;
	}
}

/*************************** contents *********/

/********* about *********/
#about{
	background: #DC3D1A;
	color: #FFFFFF;
}
#about h3{
	color: #FFFFFF;
}
main .contents#about h3 span{
	display: block;
	font-size: 18px;
	margin-top: 10px;
}
#about .inr img{
	margin-bottom: 40px;
}
@media (max-width:1200px) {
	main .contents#about h3 span{
		font-size: calc(18/1200 * 100vw);
		margin-top: calc(10/1200 * 100vw);
	}
	#about .inr img{
		margin-bottom: calc(40/1200 * 100vw);
	}
}
@media (max-width:768px) {
	main .contents#about h3 span{
		font-size: 2.8vw;
		margin-top: 3vw;
	}
	#about .inr img{
		margin-bottom: 5vw;
	}
}

/********* entry *********/
#entry{
	padding: 0;
}
#entry .inr{
	padding-bottom: 80px;
}
#entry h3{
	margin-bottom: 0px;
	cursor: pointer;
	padding: 50px 0;
}
#entry h3 span{
	font-size: 30px;
	position: relative;
}
#entry h3 span::before{
	content: "";
	position: absolute;
	top: 0;
	right: -80px;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #DC3D1A;
}
#entry h3 span::after{
	content: "";
	position: absolute;
	top: calc(50% - 4px);
	right: -70px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 5.5px 0 5.5px;
	border-color: #ffffff transparent transparent transparent;
	transition: all .3s;
}
#entry h3.close span::after{
	transform: rotate(180deg);
}
#entry .inr table{
	width: 100%;
	border-collapse:collapse;
	border-spacing: 0;
}
#entry .inr table th,
#entry .inr table td{
	border-right: 4px solid #FFFFFF;
	border-bottom: 4px solid #FFFFFF;
}
#entry .inr table th{
	background: #FEE6E6;
	text-align: center;
}
#entry .inr table tr td{
	background: #FFF5F5;
	padding: 30px 40px;
}
#entry .inr table tr td ul li{
	text-indent: -1em;
	padding-left: 1em;
}
@media (max-width:1200px) {
	#entry .inr{
		padding-bottom: calc(80/1200 * 100vw);
	}
	#entry h3{
		padding: calc(50/1200 * 100vw) 0;
	}
	#entry h3 span{
		font-size: calc(30/1200 * 100vw);
	}
	#entry h3 span::before{
		right: calc(-80/1200 * 100vw);
		width: calc(30/1200 * 100vw);
		height: calc(30/1200 * 100vw);
	}
	#entry h3 span::after{
		top: calc(50% - (4/1200 * 100vw));
		right: calc(-70/1200 * 100vw);
		border-width: calc(8/1200 * 100vw) calc(5.5/1200 * 100vw) 0 calc(5.5/1200 * 100vw);
	}
	#entry .inr table th,
	#entry .inr table td{
		border-right: calc(4/1200 * 100vw) solid #FFFFFF;
		border-bottom: calc(4/1200 * 100vw) solid #FFFFFF;
	}
	#entry .inr table tr td{
		padding: calc(30/1200 * 100vw) calc(40/1200 * 100vw);
	}
}
@media (max-width:768px) {
	#entry .inr{
		padding-bottom: 12vw;
	}
	#entry h3{
		padding: 5vw 0;
	}
	#entry h3 span{
		font-size: 4.3vw;
	}
	#entry h3 span::before{
		right: -8vw;
		width: 4.4vw;
		height: 4.4vw;
	}
	#entry h3 span::after{
		top: calc(50% - 0.8vw);
		right: -6.7vw;
		border-width: 1.4vw 1vw 0 1vw;
	}
	#entry .inr table th,
	#entry .inr table td{
		border-right: none;
		border-bottom: 1vw solid #FFFFFF;
		display: block;
	}
	#entry .inr table tr th,
	#entry .inr table tr td{
		padding: 3vw;
		font-size: 3.5vw;
		width: 100%;
	}
	#entry .inr table tr:nth-of-type(1) td,
	#entry .inr table tr:nth-of-type(2) td{
		text-align: center;
	}
}

/********* info *********/
#info{
	background: #C73110;
	color: #FFFFFF;
}
#info h3{
	color: #FFFFFF;
}
#info .inr table{
	width: 100%;
	border-collapse:collapse;
	border-spacing: 0;
}
#info .inr table th,
#info .inr table td{
	border-right: 4px solid #C73110;
	border-bottom: 4px solid #C73110;
	font-size: 18px;
}
#info .inr table th{
	background: #A6270B;
	text-align: center;
}
#info .inr table tr td{
	background: #7C1D08;
	padding: 30px 40px;
}
#info .inr table tr td:first-child{
	background: #90240C;
	text-align: center;
	padding: 0px;
}
#info .inr > ul{
	margin: 20px 0 40px;
}
#info .inr > ul > li{
	text-indent: -1em;
	padding-left: 1em;
}
#info .inr .btn{
	display: flex;
	justify-content: space-between;
}
#info .inr .btn span{
	display: block;
	width: calc(50% - 15px);
	height: 80px;
	position: relative;
}
#info .inr .btn span.comingsoon::before{
	content:"coming soon";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: 1;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	padding: 10px;
	box-sizing: border-box;
	line-height: 100%;
}
#info .inr .btn span a{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background: #FFFFFF;
	color: #C73110;
	font-weight: bold;
	transition: all .3s;
	font-size: 20px;
}
#info .inr .btn span a:hover{
	opacity: 0.7;
}
#info .inr .btn span a::before{
	content: "";
	position: absolute;
	right: 4px;
	bottom: 4px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 10px 10px;
	border-color: transparent transparent #C73110 transparent;
}
@media (max-width:1200px) {
	#info .inr table th,
	#info .inr table td{
		border-right: calc(4/1200 * 100vw) solid #C73110;
		border-bottom: calc(4/1200 * 100vw) solid #C73110;
		font-size: calc(18/1200 * 100vw);
	}
	#info .inr table tr td{
		padding: calc(30/1200 * 100vw) calc(40/1200 * 100vw);
	}
	#info .inr > ul{
		margin: calc(20/1200 * 100vw) 0 calc(40/1200 * 100vw);
	}
	#info .inr .btn span{
		width: calc(50% - (15/1200 * 100vw));
		height: calc(80/1200 * 100vw);
	}
	#info .inr .btn span a{
		font-size: calc(20/1200 * 100vw);
	}
	#info .inr .btn span a::before{
		right: calc(4/1200 * 100vw);
		bottom: calc(4/1200 * 100vw);
		border-width: 0 0 calc(10/1200 * 100vw) calc(10/1200 * 100vw);
	}
}
@media (max-width:768px) {
	#info .inr table th,
	#info .inr table td{
		border-right:none;
		border-bottom: 1vw solid #C73110;
		font-size: 3.5vw;
		display: block;
	}
	#info .inr table th{
		width: 100%;
		background: none;
	}
	#info .inr table th span{
		display: inline !important;
	}
	#info .inr table tr td:first-child{
		width: 100%;
		padding: 3vw;
		background: #A6270B;
	}
	#info .inr table tr td{
		padding: 3vw 4vw;
	}
	#info .inr > ul{
		margin: 4vw 0 8vw;
	}
	#info .inr .btn{
		display: block;
	}
	#info .inr .btn span{
		width: 100%;
		height: 14vw;
	}
	#info .inr .btn span:nth-of-type(1){
		margin-bottom: 3vw;
	}
	#info .inr .btn span a{
		font-size: 3.5vw;
	}
	#info .inr .btn span a::before{
		right: 1vw;
		bottom: 1vw;
		border-width: 0 0 3vw 3vw;
	}
}

/********* report *********/
#report{
}
#report .inr > ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#report .inr > ul li{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	position: relative;
	transition: all .3s;
	width: calc(50% - 25px);
	margin-bottom: 30px;
}
#report .inr > ul li:hover{
	opacity: 0.7;
}
#report .inr > ul li a{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#report .inr > ul li .imgbox{
	width: 160px;
}
#report .inr > ul li .txtbox{
	width: calc(100% - 175px);
}
#report .inr > ul li .txtbox .date{
	display: flex;
	justify-content: center;
	align-items: center;
	background: #C73110;
	color: #FFFFFF;
	width: 85px;
	padding: 0 10px;
	font-size: 12px;
	margin-bottom: 10px;
}
#report .inr > ul li .txtbox p{
	font-size: 14px;
	line-height: 1.7em;
}
@media (max-width:1200px) {
	#report .inr > ul li{
		width: calc(50% - (25/1200 * 100vw));
		margin-bottom: calc(30/1200 * 100vw);
	}
	#report .inr > ul li .imgbox{
		width: calc(160/1200 * 100vw);
	}
	#report .inr > ul li .txtbox{
		width: calc(100% - (175/1200 * 100vw));
	}
	#report .inr > ul li .txtbox .date{
		width: calc(85/1200 * 100vw);
		padding: 0 calc(10/1200 * 100vw);
		font-size: calc(12/1200 * 100vw);
		margin-bottom: calc(10/1200 * 100vw);
	}
	#report .inr > ul li .txtbox p{
		font-size: calc(14/1200 * 100vw);
	}
}
@media (max-width:768px) {
	#report .inr > ul{
		display: block;
	}
	#report .inr > ul li{
		width: 100%;
		margin-bottom: 6vw;
	}
	#report .inr > ul li .imgbox{
		width: 24vw;
	}
	#report .inr > ul li .txtbox{
		width: calc(100% - 26vw);
	}
	#report .inr > ul li .txtbox .date{
		width: 20vw;
		padding: 0 2vw;
		font-size: 2.7vw;
		margin-bottom: 1.4vw;
	}
	#report .inr > ul li .txtbox p{
		font-size: 3.3vw;
		line-height: 150%;
	}
}

/********* winner *********/
#winner{
	background: #F7F7F7;
}
#winner .inr.pt1 > ul{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-wrap: wrap;
	background: #FFFFFF;
	padding: 10px;
	height: 700px;
	margin-bottom: 50px;
	overflow: scroll;
}
#winner .inr.pt1 > ul li{
	width: calc(25% - 10px);
	margin-bottom: 20px;
	margin-right: 12px;
	text-align: center;
	position: relative;
}
#winner .inr.pt1 > ul li:nth-of-type(4n){
	margin-right: 0;
}
#winner .inr.pt1 > ul li p{
	font-size: 12px;
	line-height: 1.5em;
	margin-top: 7px;
}
#winner .inr.pt1 > ul li a{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
#winner h3:nth-of-type(2){
	margin-bottom: 30px;
}
#winner .inr.pt2 > ul{
	display: flex;
	justify-content: space-between;
}
#winner .inr.pt2 > ul li{
	width: calc(25% - 9px);
	height: 60px;
}
#winner .inr.pt2 > ul li a{
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 100%;
	height: 100%;
	font-weight: bold;
	background: #DC3D1A;
	color: #FFFFFF;
	transition: all .3s;
	font-size: 18px;
}
#winner .inr.pt2 > ul li a:hover{
	opacity: 0.7;
}
#winner .inr.pt2 > ul li a::before{
	content: "";
	position: absolute;
	right: 4px;
	bottom: 4px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 8px 8px;
	border-color: transparent transparent #FFFFFF transparent;
}
@media (max-width:1200px) {
	#winner .inr.pt1 > ul{
		padding: calc(10/1200 * 100vw);
		height: calc(700/1200 * 100vw);
		margin-bottom: calc(50/1200 * 100vw);
	}
	#winner .inr.pt1 > ul li{
		width: calc(25% - (10/1200 * 100vw));
		margin-bottom: calc(20/1200 * 100vw);
		margin-right: calc(12/1200 * 100vw);
	}
	#winner .inr.pt1 > ul li p{
		font-size: calc(12/1200 * 100vw);
		margin-top: calc(7/1200 * 100vw);
	}
	#winner h3:nth-of-type(2){
		margin-bottom: calc(30/1200 * 100vw);
	}
	#winner .inr.pt2 > ul li{
		width: calc(25% - (9/1200 * 100vw));
		height: calc(60/1200 * 100vw);
	}
	#winner .inr.pt2 > ul li a{
		font-size: calc(18/1200 * 100vw);
	}
	#winner .inr.pt2 > ul li a::before{
		right: calc(4/1200 * 100vw);
		bottom: calc(4/1200 * 100vw);
		border-width: 0 0 calc(8/1200 * 100vw) calc(8/1200 * 100vw);
	}
}
@media (max-width:768px) {
	#winner .inr.pt1 > ul{
		padding: 2vw;
		height: 55vh;
		margin-bottom: 8vw;
	}
	#winner .inr.pt1 > ul li{
		width: calc(50% - 1vw);
		margin-bottom: 5vw;
		margin-right: 2vw;
	}
	#winner .inr.pt1 > ul li:nth-of-type(2n){
		margin-right: 0;
	}
	#winner .inr.pt1 > ul li p{
		font-size: 3vw;
		margin-top: 1vw;
	}
	#winner h3:nth-of-type(2){
		margin-bottom: 5vw;
	}
	#winner .inr.pt2 > ul{
		flex-wrap: wrap;
	}
	#winner .inr.pt2 > ul li{
		width: calc(50% - 1vw);
		height: 12vw;
		margin-bottom: 2vw;
	}
	#winner .inr.pt2 > ul li a{
		font-size: 3.5vw;
	}
	#winner .inr.pt2 > ul li a::before{
		right: 1vw;
		bottom: 1vw;
		border-width: 0 0 2vw 2vw;
	}
}

/********* sponsor *********/
#sponsor{
}
#sponsor .inr > ul{
	display: flex;
	justify-content: center;
	align-items: center;
}
#sponsor .inr > ul li{
	margin: 0 20px;
	transition: all .3s;
}
#sponsor .inr > ul li:hover{
	opacity: 0.7;
}
#sponsor .inr > ul li img{
    zoom: 0.5;
}
@media (max-width:1200px) {
	#sponsor .inr > ul li{
		margin: 0 calc(20/1200 * 100vw);
	}
}
@media (max-width:768px) {
	#sponsor{
		padding-bottom: 6vw;
	}
	#sponsor .inr > ul{
		flex-wrap: wrap;
	}
	#sponsor .inr > ul li{
		margin: 0 3vw 5vw;
	}
	#sponsor .inr > ul li img{
		zoom: 0.34;
	}
}


/*************************** FOOTER *********/
footer{
    position: relative;
	padding: 60px;
	background: #DC3D1A;
	color: #FFFFFF;
	display: flex;
	justify-content: space-between;
}
footer .link{
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
footer .link a{
	font-size: 14px;
	font-weight: bold;
	color: #FFFFFF;
}
footer .link a:nth-of-type(2){
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #FFF;
	width: 200px;
	height: 45px;
	margin-left: 20px;
}
footer p{
	font-size: 12px;
	text-align: right;
}
@media (max-width:1200px) {
	footer{
		padding: calc(60/1200 * 100vw);
	}
	footer .link a{
		font-size: calc(14/1200 * 100vw);
	}
	footer .link a:nth-of-type(1){
		width: calc(170/1200 * 100vw);
		height: auto;
	}
	footer .link a:nth-of-type(2){
		width: calc(200/1200 * 100vw);
		height: calc(45/1200 * 100vw);
		margin-left: calc(20/1200 * 100vw);
	}
	footer p{
		font-size: calc(12/1200 * 100vw);
	}
}
@media (max-width:768px) {
	footer{
		padding: 12vw 0 2vw;
		display: block;
	}
	footer .link{
		display: block;
	}
	footer .link a{
		font-size: 2.8vw;
	}
	footer .link a:nth-of-type(1){
		width: 35vw;
		display: block;
		height: auto;
		margin: 0 auto;
	}
	footer .link a:nth-of-type(2){
		width: 55vw;
		height: 10vw;
		margin-left: auto;
		margin: 5vw auto 10vw;
	}
	footer p{
		font-size: 2.8vw;
		text-align: center;
	}
}






