@charset "utf-8";

	body{
		font-size: 1em;
	}
	body:lang(en){
		font-family: Verdana, Helvetica, Arial, sans-serif;
	}
	img{
		max-width: 100%;
		vertical-align: bottom;
		margin: auto;
	}
@media screen and (max-width:767px){
	body{	
		font-size: .85em;
	}
}
	a{
		color: #ffd800;
		text-decoration: none;
	}
		a:hover{
			color: #fff;
			transition: .4s;
		}
	a.box-btn{
		border: 1px solid  #ffd800;
		background: rgba(0,0,0,.5);
		display: inline-block;
		font-size: .8rem;
		line-height: 1em;
		padding: .5em 2em .4em;
		box-shadow: 0 0 .1em 0 rgba(0,0,0,.5);
	}
		a.box-btn:hover{
			border-color: #fff;
			transition: .2s;
		}
		a.box-btn.block{
			display: block;
		}
	

	.guide-width{
		max-width: 980px;
		margin: auto;
	}
	a.cbox-movie{
		display: block;
		position: relative;
	}
	a.cbox-movie img{
		vertical-align: bottom;
		width: 100%;
	}
		a.cbox-movie::after{
			content: "";
			position: absolute;
			display: block;
			top: 0; right: 0; bottom: 0; left: 0;
			margin: auto;
			height: 5em;
			width: 5em;
			background: rgba(0,0,0,.6);
			border: 2px solid #fff;
			border-radius: 50%;
			box-shadow: 0 0 3px 0 #000;
		}
		a.cbox-movie::before{
			z-index: 5;
			content: "";
			position: absolute;
			display: block;
			top: 0; right: 0; bottom: 0; left: 2em;
			margin: auto auto auto auto;
			height: 0;
			width: 0;
			border-width: 1em 1.8em;
			border-style: solid;
			border-color: transparent transparent transparent #fff;
		}
	a.cbox-movie:hover::after , a.cbox-movie:hover::before{
		opacity: .2;
		transition: .3s;
	}
	.shade{
		width: 200px;
		height: 200px;
		/*background: repeating-linear-gradient(-45deg, rgba(0,0,0,.2), rgba(0,0,0,.2) 2px, rgba(0,0,0,0) 3px, rgba(0,0,0,0) 5px);*/
		background: repeating-linear-gradient(-45deg, rgba(0,0,0,.25), rgba(0,0,0,.25) 1px, rgba(0,0,0,.1) 2px, rgba(0,0,0,.25) 3px) , repeating-linear-gradient(45deg, rgba(0,0,0,.25), rgba(0,0,0,.25) 1px, rgba(0,0,0,.1) 2px, rgba(0,0,0,.25) 3px);
	}
	.sshade{
		width: 200px;
		height: 200px;
		background: url(images/shaded.png);
		
	}
	.lightgray-stripe{
		background: repeating-linear-gradient(-45deg, #f1f1f1, #f1f1f1 3px, #f0e8e8 0, #f0e8e8 4px);
		padding: 2.5em 0;
	}
	.yellow-stripe{
		background: repeating-linear-gradient(-45deg, #ffd800, #ffd800 3px, #ffcb00 0, #ffcb00 4px);
		padding: .5em 0;
	}
	.darkgray-fill{
		border-top: #f7ac1d 3px solid;
		background: #252525;
		padding: 2.5em 0;
	}



/*-#konami_header-*/
		.language{
			padding-right: .5em;
			float: right;
		}
		.language a{
			color: #666;
			margin: auto .5em;
			font-size: 90%;
			line-height: 37px;
		}
		.language a.now{color: #2484cb;}
		.language a:hover{
			color: #FE9B00;
			text-decoration: underline;
			transition: .2s;
		}

/*-.header-bk-*/
	body > header{
		display: block;
		overflow: hidden;
		padding-bottom: 1em;
	}
	.main-visual{
		background: #000;
		position: relative;
		text-align: center;
		overflow: hidden;
		border-radius: 0 0 100% 100% / 0 0 15em 15em;
		box-shadow: 0 .2em .5em 0 rgba(0,0,0,.3);
		width: 120%;
		margin-left: -10%;
		padding: 4.5em 0 4em;
		background-position: center center;
		background-size: 100% auto;
	}
		.main-visual.shaded::after{
			content: "";
			position:absolute;
			width: 100%;
			height: 100%;
			top: 0; left: 0;
			background: repeating-linear-gradient(-45deg, rgba(0,0,0,.4), rgba(0,0,0,.4) 1px, rgba(0,0,0,.1) 2px, rgba(0,0,0,.4) 3px) , repeating-linear-gradient(45deg, rgba(0,0,0,.4), rgba(0,0,0,.4) 1px, rgba(0,0,0,.1) 2px, rgba(0,0,0,.4) 3px);
			z-index: 2;
		}
		.main-visual .main-bk{
			position:absolute;
			width: 100%;
			height: 100%;
			top: 0; left: 0;
			background-position: center center;
			background-repeat: no-repeat;
			background-size: cover;	
			z-index: 1;
		}
		
		.main-visual h1{
			margin: auto;
			width: 100%;
			position: relative;
		}
		.main-visual img{
			max-width: 80%;
			position: relative;
			z-index: 5;
		}
@media screen and (max-width:767px){
	.main-visual{
		background-size: auto 100%;
	}
		.main-visual h1{
			
			transition: .2s;
		}
		.main-visual h1 img{
			
			transition: .2s;
		}
}

main>section{
	text-align: center;
}

#overview{}
	.overview{
		padding: 3.5em .5em 2.5em;
		position: relative;
	}
		.overview > p{
			max-width: 750px;
			padding: 0 1em;
			box-sizing: border-box;
			margin: auto auto 2.5em;
			font-weight: bold;
			color: #222;
		}
		.overview > p:lang(ja){font-size: 1.2em;}
		.overview > p:lang(en){font-size: 1.2em;}
		.overview > p span{
			display: inline-block;
		}
		.overview div{
			max-width: 750px;
			margin: auto;
		}
			.overview div img{
				display: block;
				margin-bottom: 2em;
			}
			
			.overview div small{
				color: #777;
				font-size: .8em;
				padding-top: .5em;
				display: inline-block;
			}
			.overview div small:lang(ja)::before{content: "※";}
			.overview div small:lang(en)::before{content: "*";}
	.cm-movie{
		max-width: 390px;
		margin: auto;
		position: absolute;
		top: -10em;
		left: 0;
		right: 0;
		border: 2px solid #fff;
		box-shadow: 2px 1px 1px 0 rgba(0,0,0,.5);
	}
@media screen and (max-width:767px){
	.overview{
		padding: 2em .5em 2em;
		position: relative;
	}
	.overview br{
		display: none;
	}
	.cm-movie{
		position: static;
		width: auto 90%;
		margin-bottom: 2em;
	}
}

/*- スケジュール -*/
	.schedule{
		padding: 2em 1em;
	}
	
	.schedule h1{
		margin-bottom: .5em;
	}
	
	.schedule p{
		padding: 0;
		font-size: .9em;
		color: #555;
	}
		.schedule p small{
			display: inline-block;
			background: #ddd;
			line-height: 1em;
			padding: .7em 1em .5em;
			border-radius: 10em;
		}
	.schedule h1 + p{
		margin-bottom: 1em;
	}
	
	.final-schedule{
		padding: 1.5em 0;
		max-width: 1100px;
		margin: auto;
		display: flex;
		align-items: center;
		border-bottom: 1px solid #d4d4d4;
		background: rgba(255,255,255,.4);
	}
	.final-schedule:nth-child(2){
		border-top: 1px solid #d4d4d4;
	}
	.final-schedule+.final-schedule{
		margin-bottom: 1.5em;
	}
	

		.final-schedule > div.day{
			width: 28%;
			box-sizing: border-box;
			padding: 0 1.5%;
		}
			.final-schedule > div.day h3{
				color: #fff;
				font-size: 1.2em;
				font-weight: bold;
				background-image: url(/yugioh/worldchampionship/2024/images/diagonal-bk.png);
				background-size: 100% 100%;
				margin-bottom: .3em;
			}
			.final-schedule.day0805 div.day h3{ background-color: #0c88ff;}
			.final-schedule.day0806 div.day h3{ background-color: #ff2c39;}
				.final-schedule div.day h3 span{
					font-weight: bold;
					display: inline-block;
					opacity: .8;
					font-size: .8em;
					padding-left: .5em;
				}
			.final-schedule > div.day > time{
				display: block;
				font-size: 1.7em;
				font-weight: bold;
				
			}
			
		.final-schedule div.content{
			width: 72%;
		}
		.final-schedule div.content ul{
			text-align: left;
			color: #444;
			box-sizing: border-box;
			padding-left: 1.2em;
			border-left: 5px solid #000;
		}
			.final-schedule.day0805 div.content ul{ border-color: #0c88ff;	}
			.final-schedule.day0806 div.content ul{ border-color: #ff2c39;	}
			
		.final-schedule div.content ul li{
			padding: .5em 0;
			font-size: .9em;
		}
		.final-schedule div.content ul li em{
			font-weight: bold;
			font-size: 1.1em;
			display: block;
			color: #111;
		}
		
		
		.final-schedule div.content ul li > div.stream{
			margin-right: 1em;
			padding-bottom: 1em;
		}
		.final-schedule div.content ul li > div.stream.border{
			border-bottom: 1px solid rgba(0,0,0,.1);
		}
		.final-schedule div.content ul li > div.stream time{
			display: block;
			position: relative;
			font-weight: bold;
			padding: 1em 0 .8em;
			font-size: 1.2em;
		}
			.final-schedule div.content ul li > div.stream time::before{
				display: inline-block;
				color: #5b5b5b;
				background: #e1e1e1;
				padding: .2em 1em;
				margin-right: 1em;
				font-size: .8em;
			}
			.final-schedule div.content ul li > div.stream time:lang(ja)::before{
				content: "実況配信";
			}
			.final-schedule div.content ul li > div.stream time:lang(en)::before{
				content: "Livestream";
			}
			
			
		.final-schedule div.content ul li > div.stream p{
			padding: 0 0 .6em;
		}
		.final-schedule div.content ul li > div.stream a{
			background: #fff;
			line-height: 1em;
			font-size: 1.1em;
			display: inline-block;
			color: #cb1212;
			border: 2px solid #fd3939;
			box-shadow: .1em .1em .2em 0 rgba(0,0,0,.4);
			padding: .6em 1em .4em 2.5em;
			position: relative;
		}
			
			.final-schedule div.content ul li > div.stream a::after{
				content: "▼";
				position: absolute;
				left: .5em;
				top: 50%;
				width: 1.4em;
				height: 1.4em;
				line-height: 1.5em;
				text-align: center;
				color: #fff;
				background: #fd3939;
				border-radius: 10em;
				transform: rotate(-90deg) translate(50%,0);
			}
			
		.final-schedule div.content ul li > div.stream a:hover{
			background: #fd3939;
			color: #fff;
			border: 2px solid #fd3939;
		}
		
		
			.final-schedule div.content > div.guest{
				border: 1px solid #d4d4d4;
				padding: 1em .5em 0;
				box-sizing: border-box;
				margin: 1em .5em 1em auto;
				position: relative;
				text-align: left;
				background: rgba(255,255,255,.3);
				border-radius: .2em;
			}
				.final-schedule div.content > div.guest > p{
					padding: 0 .5em 1em;
				}					
				.final-schedule div.content > div.guest > p em{	
					font-weight: bold;
				}
				.final-schedule div.content > div.guest > p span{	
					
				}
				
				.final-schedule div.content > div.guest div.guest-image{
					display: flex;
					flex-wrap: wrap;
				}
				
				div.guest-image figure{
					width: 20%;
					box-sizing: border-box;
					padding: 0 .5em 0;
					overflow: hidden;
				}
				div.guest-image figure img{
					width: 100%;
					height: 70%;
					object-fit: cover;
					border: 1px solid #eee;
				}
				div.guest-image figure figcaption{
					font-size: .6em;
					color: #777;
					text-align: center;
					padding: .3em 0 .5em;
					
				}
				div.guest-image figure figcaption span{
					display: block;
				}
				div.guest-image figure figcaption span::before{
					content: "(";
				}
				div.guest-image figure figcaption span::after{
					content: ")";
				}
@media screen and (max-width:767px){
				div.guest-image figure figcaption{
					line-height: 1em;
				}
}



@media screen and (max-width:767px){
	.final-schedule{
		display: block;
		margin-left: -1em;
		margin-right: -1em;
	}
	
	.final-schedule > div.day{
		width: 100%;
		margin-bottom: 1em;
	}
	.final-schedule > div.content{
		width: auto;
		margin: auto .5em;
		padding: 0;
	}
	
	.final-schedule div.content > div.guest{
		margin: 1em auto auto;
	}
		div.guest-image figure{
			width: 25%;
		}
	
	
		.final-schedule div.content ul li > div.stream a{
			display: block;
		}
}





a.campaign-banner{
	max-width: 800px;
	box-sizing: border-box;
	padding: 1em;
	box-shadow: .1em .1em  .2em 0 #000;
	margin: 1em auto auto;
	border: 2px solid #ffc600;
	border-radius: .5em;
	display: block;
	background: url(/yugioh/worldchampionship/2024/specialevent/images/main-bk.jpg) center center;
	background-size: 100% auto;
}
	a.campaign-banner:hover{
		border: 2px solid #fff;	
		transition: .2s;
	}
	a.campaign-banner img{
		margin-bottom: 1em;
	}
	a.campaign-banner p{
		display: inline-block;
		border: 1px solid #fff;
		line-height: 1em;
		padding: .4em 2em .3em;
		color: #fff;	
		border-radius: 10em;
		background: rgba(0,0,0,.5);
		
	}

		
		
/*- specialevent-banner -*/
.specialevent-banner{
	background: url(/yugioh/worldchampionship/2024/specialevent/images/banner-bk.jpg) center center;
	background-size: 100% auto;
	padding: 1em;
	box-shadow: 0 0 1em 0 #000 inset;
	text-align: center;
}
	.specialevent-banner a{
		display: inline-block;
		max-width: 670px;
		box-shadow: .1em .1em  .2em 0 #000;
	}



/*- 動画でチェック！ -*/
	.result:lang(en){
		padding: 0;
	}
	.result:lang(ja){
		padding-bottom: 0;
	}
	.result > h1{
		margin-bottom: 2em;
	}
	.result-images{
		background: #000;
	}
	.result-images img{
		vertical-align: bottom;
		max-width: 100%;
	}
	.result-movie{}
		.result-movie > a{
			width: 33.33333333%;
			position: relative;
		}
			.result-movie a::before{
				position: absolute;
				content: "";
				display: block;
				width: 6em;
				height: 6em;
				top:0; right: 0; bottom:0; left:0;
				text-align: center;
				border: 2px solid rgba(255,255,255,.7);
				margin: auto;
				border-radius: 100%;
				z-index: 5;
				background: rgba(0,0,0,.5);
			}
			.result-movie a::after{
				position: absolute;
				content: "";
				display: block;
				width: 0; height: 0;
				top:0; ; bottom:0; left:48%;
				text-align: center;
				border-style: solid;
				border-width: .8em 1.2em;
				border-color: transparent transparent transparent #fff;
				margin: auto;
				z-index: 5;
			}
			.result-movie > a img{
				position: relative;
				z-index: 1;
				opacity: .6;
			}
			.result-movie a:hover::before , .result-movie a:hover::after{
				opacity: .1;
				transition: .2s;
			}
			.result-movie > a:hover img{
				opacity: 1;
				transition: .2s;
			}
@media screen and (max-width:767px){
		.result-movie > a{
			width: 96%;
			margin: .3em auto;
		}
		.result-movie > a:first-child{margin-top: .6em;}
		.result-movie > a:last-child{margin-bottom: .6em;}
}
	.result-photo{}
		.result-photo > *{
			width: 25%;
		}
		.result-photo .photo9{display: none;}
@media screen and (max-width:767px){
		.result-photo > *{
			width: 33.3333333%;
		}
		.result-photo .photo9{display: inline-block;}
}
		
	.result-expedition-link{
		background: #252525;
		/*background: repeating-linear-gradient(-45deg, #252525, #252525 3px, #333 0, #333 4px);*/
		padding: 2.5em 1em 0;
		box-shadow: 0 1em 1em -1em rgba(0,0,0,.5) inset;
	}
		.result-expedition-link a{
			display: inline-block;
			border: 3px solid #ffd800;
			border-radius: .5em;
			overflow: hidden;
			box-shadow: .3em .3em .5em 0 rgba(0,0,0,.5);
			margin: auto;
		}



/*- ファイナリスト -*/
:root{
	--key-blue: #0085f6;
	--key-red: #fc0119;
}
	.finalist{
		background: #111 url(images/deck-recipe_bk.jpg) center center repeat-y fixed;
		background-size: 100% auto;
		padding: 0 0 1em;
	}
	.match{
		background: linear-gradient(to right , rgba(0,36,67,.75) , rgba(0,36,67,.75) 49.9% , rgba(68,0,7,.75) 50% , rgba(68,0,7,.75) 100%);
		position: relative;
		box-shadow: 0 0 .3em 0 #000;
		margin: 1.5em auto;
		padding: 4px 0 1em;
		overflow: hidden;
	}
		.match::before , .match::after{
			content: "";
			display: block;
			position: absolute;
			background: linear-gradient(to right , var(--key-blue) , var(--key-blue) 49.9% , var(--key-red) 50% , var(--key-red) 100%);
			left: 0;
			height: 4px;
			width: 100%;
		}
		.match::before{top: 0;}
		.match::after{bottom: 0;}
		
		.match h2{
			width: 100%;
			display: block;
			padding: .8em 0 .6em;
			background: rgba(0,0,0,.5);
			color: #ff0;
			font-weight: bold;
			font-size: 1.1em;
			text-shadow: 0 0 .2em #aa0;
			margin-bottom: 1.5em;
		}
			.match h2::after{
				position: absolute;
				content: "";
				width: 60px;
				height: 40px;
				background: url(images/vs.png);
				top: 7.5em;
				left: 0; right: 0;
				margin: auto;
				z-index: 50;
			}
			.match.md h2::after{
				position: absolute;
				content: "";
				top: 5.4em;
			}
		
	div.duelist{
		width: 50%;
		max-width: 490px;
		margin: auto;
		position: relative;
	}
		div.duelist.red-side{	--key-color: var(--key-red);   text-align: right;	/*background: rgba(150,0,0,.4);*/}
		div.duelist.blue-side{	--key-color: var(--key-blue);  text-align: left;	/*background: rgba(0,0,150,.4);*/}
	
		div.duelist h3{/*team*/
			margin: auto .7em 1em;
			color: #eee;
			font-weight: bold;
			font-size: 1.3em;
			padding: 0 0 .5em;
			line-height: 1em;
			border-bottom: 2px solid var(--key-color);
		}
			div.duelist.blue-side h3{	margin-right: 2em;}
			div.duelist.red-side h3{ 	margin-left: 2em;}
	
	
	.duelist::before{
		position: absolute;
		top: -5em;
		color: #ffffffcc;
		font-weight: bold;
		width: 500%;
		background: var(--key-color);
		padding: .2em 0;
		box-sizing: border-box;
	}
		.duelist.blue-side::before{
			content: "BLUE SIDE";
			right: 62%;
			padding-right: 14%;
			text-align: right;
		}
		.duelist.red-side::before{
			content: "RED SIDE";
			left: 62%;
			padding-left: 14%;
			text-align: left;
		}
	.duelist::after{
		content: "";
		position: absolute;
		top: -4.9em;
		width: 3em;
		height: 1.8em;
		background: var(--key-color);
	}
		.duelist.blue-side::after{
			transform: skew(-45deg,0);
			right: 58%;
		}
		.duelist.red-side::after{
			transform: skew(45deg,0);
			left: 58%;
		}
	
		
	
		.duelist dl{
			margin-bottom: 1em;
		}
		
		/*blueは.cfix redｈはfloat*/
		.duelist.red-side dl dt{float: right;}
		.duelist.red-side dl::after{
			content: ".";
			display: block;
			height: 0;
			clear: both;
			visibility: hidden;
			overflow: hidden;
			font-size: 0.1em;
			line-height: 0;
		}
		
		.duelist dl dt{
			width: 40%;
			text-align: center;
			box-sizing: border-box;
		}
			.duelist dl dt img{
				width: 84%;
				margin: auto;
				border: 3px solid var(--key-color);
				background: rgba(255,255,255,.4);
				background: repeating-linear-gradient(-45deg, rgba(0,0,0,.5), rgba(0,0,0,.5) 3px, rgba(10,10,10,.3) 0, rgba(10,10,10,.3) 4px);
			}
			
		.duelist dl dd{
			width: 60%;
			box-sizing: border-box;
			position: relative;
			padding: 2.3em .3em 0;	
		}
			.duelist dl dd > span{
				color: rgba(255,255,255,.6);
				font-size: .95em;
				display: block;
				line-height: 1.5em;
			}
			.duelist dl dd > strong{
				color: #fff;
				font-size: 1.2em;
				display: block;
				font-weight: bold;
				line-height: 1.2em;
				min-height: 3em;
				margin-bottom: 1em;
				display: block;
				border-bottom: 1px solid var(--key-color);
			}
			.duelist dl dd strong > span{
				font-size: .85em;
				color: rgba(255,255,255,.7);
				display: block;
			}
			
			
			.duelist dl.win dt img{
				box-shadow: 0 0 0 1px #fff ,  0 0 1em 0 #ff0;
				animation: blink 5s infinite linear;
			}
				@keyframes blink{
					0%    { box-shadow: 0 0 0 1px #fff ,  0 0 1.2em 0 #ff0; }
					50%    { box-shadow: 0 0 0 1px #fff ,  0 0 .5em 0 #ff0; }
					100%  { box-shadow: 0 0 0 1px #fff ,  0 0 1.2em 0 #ff0; }
				}
				
				.duelist dl.win dd::before{
					content: "";
					position: absolute;
					top: 0;
					display: inline-block;
					height: 1.4em;
					width: 7em;
					border-radius: 10em;
					border: 1px solid #c00;
					background: url(images/winner.png) center center;
					background-size: auto 100%;
					
				}
				.duelist.blue-side dl.win dd::before{	left: .5em;}
				.duelist.red-side dl.win dd::before{	right: .5em;}
			
			.duelist dl dd > a.box-btn{
				font-size: .7em;
				box-shadow: 1px 1px 0 0 rgba(0,0,0,.5);
			}
			.duelist dl dd ul{
				padding: 0;
				font-size: .9em;
				margin-top: -.5em;
			}
			.duelist dl dd ul::before{
				background: rgba(100,100,100,.4);
				display: block;
				color: #bbb;
				border-radius: .2em;
				font-size: .9em;
				line-height: 1em;
				padding: .4em .5em .3em;
				margin-bottom: .4em;
			}
			.duelist dl dd ul:lang(ja)::before{content: "使用キャラクター（スキル）";}
			.duelist dl dd ul:lang(en)::before{content: "Character (Skill)";}
			.duelist dl dd ul li{
				padding: 0;
			}
			.duelist dl dd ul li a{
				font-size: .8em;
			}
			.duelist dl dd ul li a span{
				
			}
			.duelist dl dd ul li a span::before{
				content: " (";
			}
			.duelist dl dd ul li a span::after{
				content: ")";
			}
			.duelist dl dd ul li a:hover{
				text-decoration: underline;
			}

		
			.duelist p.share{
				color: #eee;
				font-size: .95em;
				margin: auto .95em;
				box-sizing: border-box;
				padding: 0 0 1em;
			}
			.duelist.blue-side p.share{ margin-right: 2.8em;}
			.duelist.red-side p.share{ margin-left: 2.8em;}
				
			.duelist p.share::before{
				content: "";
				display: block;
				padding: .3em .5em .2em;
				margin-bottom: .5em;
				font-size: .9em;
				color: rgba(255,255,255,.7);
				font-weight: bold;
			}
			
			.duelist.blue-side p.share::before{ background: rgba(0,150,250,.3);}
			.duelist.red-side p.share::before{ background: rgba(250,50,0,.3);  }
			.duelist p:lang(ja).share::before{ content:"シェアカード";}
			.duelist p:lang(en).share::before{ content:"shared cards";}
			.duelist p.share li{
				display: inline-block;
			}


@media screen and (max-width:767px){			
			.duelist p.share{
				text-align: center;
			}
}
		
@media screen and (max-width:767px){
	
	.finalist{
		background-size: auto 100%;
	}
	
	.match h2{
		width: 100%;
		display: block;
		margin-left: auto !important;
		margin-right: auto !important;
	}
		.match h2::after{
			display: none;
			position: absolute;
			content: "";
			width: 60px;
			height: 40px;
			background-size: 100% auto;
			top: 11.5em;
			left: 0; right: 0;
			margin: auto;
			z-index: 50;
		}
		
		
		
		.duelist::before{
			position: absolute;
			top: -5em;
			color: #ffffffcc;
			font-weight: normal;
			font-size: .8em;
			width: auto;
			background: var(--key-color);
			padding: .2em;
			box-sizing: border-box;
		}
			.duelist.blue-side::before{
				content: "BLUE SIDE";
				left: 0;
				padding-right: 0;
				text-align: center;
				border-radius: 0 10em 10em 0;
			}
			.duelist.red-side::before{
				content: "RED SIDE";
				right: 0;
				padding-left: 0;
				text-align: center;
				border-radius: 10em 0 0 10em;
			}
		.duelist::after{
			content: none;
			position: absolute;
			top: -4.9em;
			width: 3em;
			height: 1.8em;
			background: var(--key-color);
		}
			.duelist.blue-side::after{
				transform: skew(-45deg,0);
				right: 58%;
			}
			.duelist.red-side::after{
				transform: skew(45deg,0);
				left: 58%;
			}
			
		
		.duelist dl{
			
		}
		.duelist dl dt{
			float: none !important;
			clear: both; 
			width: 100%;
		}
			.duelist dl dt img{
				width: 70%;
				margin: auto;
			}
				
				
		.duelist dl.win dd::before{
			position: absolute;
			top: -1.7em;
			width: 70%;
			height: 1.5em;
			border-radius: 0;
		}
		.duelist.blue-side dl.win dd::before{	left: 15%;}
		.duelist.red-side dl.win dd::before{	right: 15%;}
		
		.duelist dl dd{
			width: 100%;
			padding: 1em;
			margin: auto;
		}
		
			.duelist dl dd>span{
				font-size: .9em;
				text-align: center;
			}
			.duelist dl dd>strong{
				font-size: 1.2em;
				min-height: 2.5em;
				text-align: center;
				border: none;
			}
			.duelist.blue-side dl dd strong{ margin-right: auto;}
			.duelist.red-side dl dd strong{ margin-left: auto;}
			
			.duelist dl dd strong>span{
				font-size: .8em;
				color: rgba(255,255,255,.8);
				display: block;
				text-align: center;
			}
			.duelist dl dd > a{
				display: block;
				text-align: center;
				margin-bottom: 1em;
				padding: .5em 0;
			}
			.duelist dl dd.win::before{
				left: 4%;
			}
			
		.duelist dl dd ul{
			margin: auto;
			text-align: center;
		}
		.duelist dl dd ul::before{
			
		}
		.duelist.blue-side dl dd ul {
			margin: auto;
		}
		.duelist.red-side dl dd ul {
			margin: auto;
		}
		.duelist dl dd ul li{
			border-bottom :1px solid rgba(100,100,100,.6);
			padding: .4em 0;
		}
			.duelist dl dd ul li a span{
				font-size: 1.1em;
			}
			.duelist dl dd ul li a span{
				display: block;
			}
			
}





/*- 配信スケジュール -*/
	.live>h1{
		display: block;
		width: auto;
		margin-bottom: 1.5em;
	}
		.live>h1 img{
			max-width: 100%;
		}
	div.live-image{
		width: 40%;
		max-width: 410px;
	}
		div.live-image img{
			width: 95%;
			margin: auto 2.5%;
			border: 1px solid #444;
			box-shadow: .2em .2em .5em 0 rgba(0,0,0,.5);
		}
	ul.live-schedule{
		width: 60%;
		max-width: 550px;
		margin: auto;
	}
		.live-schedule>li{
			border-left: 5px solid #f7a61c;
			text-align: left;
			padding: .3em 0;
			margin: auto .5em 1em;
		}
		.live-schedule li{
			text-align:left;
			padding: .4em 0 .3em 1.5em;
			box-sizing: border-box;
			color: #999;
		}
			.live-schedule li>*{
				line-height: 1em;
				display: block;
			}
			.live-schedule time{
				font-weight: bold;
				font-size: .95em;
				color: #bbb;
			}
			.live-schedule strong{
				font-size: 2em;
				color: #fff;
				padding: .3em 0 .2em;
			}
			.live-schedule p{
				font-size: .9em;
				line-height: 1.2em;
			}
			.live-schedule ul{
				padding-top: 1em;
			}
			.live-schedule ul li{
				color: #ccc;
				font-weight: bold;
				padding: .7em 0;
				border-top: 1px dashed #555;
			}
			.live-schedule ul li>span{
				display: block;
				padding: .5em 0 0;
				font-size: .8em;
				color: #999;
			}
			.live-schedule li div{
				padding: 0;
			}
			.live-schedule li div:lang(ja){
				/*padding: .7em 0 0;*/
			}
			
@media screen and (max-width:767px){
	div.live-image{
		width: 100%;
		max-width: 100%;
		margin-bottom: 1em;
	}
		div.live-image img{
			width: 90%;
			margin: auto;
		}
	ul.live-schedule{
		width: 95%;
		max-width: 95%;
	}
	
}



/*- 出場デュエリスト -*/
#contestant{}
		.contestant h1{
			padding: 0;
			margin-bottom: 2em;
		}
		.contestant h1 img{
			max-width: 100%;
		}
		.contestant h2{
			border-top: 4px solid #f7ac1d;
			background: #252525;
			color: #fff;
			font-weight: bold;
			padding: 0.6em 0 0.4em;
			margin: auto auto .5em;
			max-width: 980px;
		}
		
		.contestant h3{
			background: #777;
			
			margin: auto auto .3em;
			max-width: 980px;
			text-align: left;
			display: flex;
			align-items: center;
			justify-content: center;
			line-height: 1em;
			color: #fff;
			font-weight: bold;
			overflow: hidden;
		}
		.contestant h3::before{
			content: "Team";
			opacity: .7;
			font-size: .9em;
			line-height: 1em;
			padding: 0 1em;
			font-weight: normal;
		}
		.contestant h3::after{
			content: " .";
			background: #fafafa;
			flex-grow: 1.5;
			height: 2em;
			margin-left: 2em;
			border-bottom: 5px #777 solid;
			transform: skew(45deg, 0);
			margin-right: -2em;
		}

		.regulation-style > em{
			display: block;
			max-width: 980px;
			text-align: center;
			display: flex;
			align-items: center;
			justify-content: center;
			font-weight: bold;
		}
			.regulation-style > em::after,
			.regulation-style > em::before{
				content: "";
				flex-grow: .5;
				height: 1px;
				background: #bbb;
			}
			
			
			


		
	.contestant section{
		
	}
	
	.contestant > em{
			display: block;
			max-width: 980px;
			text-align: center;
			display: flex;
			align-items: center;
			justify-content: center;
			font-weight: bold;
			margin: auto auto 1em;
		}
			.contestant > em::after,
			.contestant > em::before{
				content: "";
				flex-grow: .5;
				height: 1px;
				background: #bbb;
			}
			.contestant > em::after{margin-left: 1em;}
			.contestant > em::before{margin-right: 1em;}
	
	.contestant section h2{
		background: #252525;
		text-align: center;
		border-top-width: 5px;
		border-top-style: solid;
		padding: .8em 0 .9em;
		margin-bottom: 5px;
	}
	.contestant section h2>img{
		height: 24px;
	}
	
	
	
	
	ul.contestant-list{
		text-align:left;
		margin-bottom: 1em;
		display: flex;
		flex-wrap: wrap;
		max-width: 980px;
		margin: auto auto 2em;
	}
	
	.contestant h3 + ul.contestant-list{
		margin: auto auto .5em;
	}
	
	.contestant-list li{
		width: calc(100% / 3);
		margin-bottom: .5%;
	}
	a.contestant-thumb.leader::before{
		content: "";
		position: absolute;
		right: .5em;
		top: .5em;
		width: 20px;
		height: 20px;
		background: url(/yugioh/worldchampionship/2024/images/leader.png);
		background-size: 100% auto;
	}
	a.contestant-thumb{
		position: relative;
		margin: auto 1%;
		display: flex;
		box-shadow: 1px 1px 1px 0 rgba(120,120,120,0.3);
		background: #fff;
		justify-content: center;
		align-items: center;
	}
	.contestant-thumb:hover{
		box-shadow: 0px 0px 2px 2px rgba(120,120,120,0.5);
		transition: .2s;
	}
		.contestant-thumb figure{
			width: 30%;
			overflow: hidden;
		}
		.contestant-thumb figure img{
			transform: scale(140%,140%);
		}
		.contestant-thumb p{
			width: 70%;
			color: #888;
			text-align: left;
			padding: 0 .5em;
			font-size: .9em;
			line-height: 1.3em;
			box-sizing: border-box;
			font-weight: bold;
		}
			.contestant-thumb p em{
				display: block;
				font-weight: bold;
				color: #333;
				font-size: 1.2em;
			}
			.contestant-thumb p span{
				display: block;
				font-size: .8em;
				color: #333;
			}
		

@media screen and (max-width:767px){
		
	.contestant-list{
		text-align:left;
		margin-bottom: 1em;
		display: block;
	}
	.contestant-list li{
		width: 100%;
		margin-bottom: .5%;
	}
	a.contestant-thumb{
		
	}
		.contestant-thumb figure{
			width: 20%;
			overflow: hidden;
		}
		.contestant-thumb p{
			width: 80%;
			font-size: 1.1em;
		}
}

	.contestant-detail-area{display:none;}
	/*.contestant-detail-area{display:block !important;}*/
	
		.contestant-detail{
			text-align: center;
			background-color: #fff;
			padding: 0;
			border-top: 4px solid #f7ac1d;
			overflow: hidden;
			box-shadow: 0 0 0 1px #ccc;
		}
		.contestant-detail h5{
			background: #252525;
			color: #fff;
			font-weight: bold;
			padding: .6em 0 .4em;
		}
		
		.contestant-detail div{
			padding: 1em 1.5em;
			color: #888;
			font-weight:bold;
		}
			.contestant-detail figure{
				
			}
				.contestant-detail figure img{
					border-radius: .5em;
					border: 1px solid #eee;
				}
			.contestant-detail em{
				display: block;
				font-weight: bold;
				color: #333;
				font-size: 1.3em;
				padding: .3em 0 0;
			}
			.contestant-detail span.from{
				border-top: 1px solid #bbb;
				/*border-bottom: 1px solid #bbb;*/
				line-height: 1em;
				padding: .7em 0 .5em;
				margin: .7em auto auto;
				display: block;
				font-size: .85em;
				color: #333;
			}
			.contestant-detail span.team{
				font-weight: bold;
				display: block;
				position: relative;
			}
			.contestant-detail span.team.leader:after{
				content: "";
				position: absolute;
				right: 0;
				top: 0;
				width: 20px;
				height: 20px;
				background: url(/yugioh/worldchampionship/2024/images/leader.png);
				background-size: 100% auto;
			}
			
			.contestant-detail span.team::before{
				font-weight: normal;
				content: "Team";
				opacity: .5;
			}
			.contestant-detail p{
				padding: .4em 0;
				font-size: .8em;
				display: block;
				color: #888;
			}


	
@media screen and (max-width:767px){
	.contestant section>h2{
		margin: auto;
	}
	.contestant-list{
		margin: auto;
	}
		.contestant-detail{
			border-radius: 0;
			box-shadow: 0px 8px 5px -5px #999 inset , 0px -8px 5px -5px #999 inset;
			font-size: 1.1em;
		}
		.contestant-detail h5{}
}
		
	
	
	
	

/*- 予選情報 -*/
#qualifying{}
		.qualifying h1{margin-bottom: 2em;}
			.qualifying h1 img{max-width: 100%;}
			
/*-  -*/				
	ul.qualifying-type{
		margin: auto auto 1.5em;
		max-width: 1100px;
		color: #ccc;
		display: flex;
		align-items: top;
		padding: 1em 1em 0;
	}
		ul.qualifying-type li{
			width: calc(100% / 4);
			box-sizing: border-box;
			padding: 0 .3em;
			margin-top: 0;
		}
		ul.qualifying-type li dl{
			
		}
		ul.qualifying-type li dl dt{
			padding-top: .7em;
			font-weight: bold;
		}		
		ul.qualifying-type li dl dt span{
			display: block;
			font-size: .9em;
			opacity: .5;
		}
		ul.qualifying-type li dl dd{
			background: #000;
			border-radius: .2em;
			background-size: 120% auto;
			background-position: center center;
			box-shadow: .2em .2em .1em 0 rgba(0,0,0,.2);
			position: relative;
		}	
		ul.qualifying-type li dl.duellinks dd{
			background-image:url(/yugioh/worldchampionship/2024/images/bk-duellinks.jpg);
		}
		ul.qualifying-type li dl.duellinks-rush dd{
			background-image:url(/yugioh/worldchampionship/2024/images/bk-duellinksrush.jpg);
		}
		ul.qualifying-type li dl.ocg dd{background-image:url(/yugioh/worldchampionship/2024/images/bk-ocg.jpg);}
		ul.qualifying-type li dl.masterduel dd{background-image:url(/yugioh/worldchampionship/2024/images/bk-masterduel.jpg);}
			ul.qualifying-type li dl dd a{
				display: block;
				padding: 1.7em 0;
				border-radius: .2em;
				position:relative;
				z-index: 5;
			}
			ul.qualifying-type li dl dd:hover{
				background-size: 130% auto;	
				transition: .4s;
			}
			ul.qualifying-type li dl dd img{
				max-width: 80%;
			}		
		p.qualifying-txt{
			color: #b6b6b6;
			max-width: 980px;
			margin: auto;
			box-sizing: border-box;
			padding: 1em;
			line-height: 1.7em;
		}
		p.qualifying-txt + p.qualifying-txt{
			border-top: 1px solid #3a3a3a;
			padding-top: 2em;
		}
			p.qualifying-txt i{
				font-style: italic;
				display: inline-block;
			}
			p.qualifying-txt em{
				display: block;
				color: #ccc;
				font-weight: bold;
				padding-bottom: 1.3em;
			}
			p.qualifying-txt small{
				opacity: .7;
				display: block;
				font-size: .8em;
				padding: 1em;
			}
			
@media screen and (max-width:767px){
	.qualifying.darkgray-fill{
		padding: 0 0 1em;
	}
	ul.qualifying-type{
		padding: 0;
	}
	ul.qualifying-type li{
		padding: 0;
	}
		ul.qualifying-type li dl dt{
			display: none;
		}
		ul.qualifying-type li dl dd{
			border-radius: 0;
			padding: 0;
		}
			ul.qualifying-type li dl dd img{
				max-width: 95%;
			}
	p.qualifying-txt{
		padding: .5em;
		text-align: left;
	}
	p.qualifying-txt br{
		display: none;
	}
}



/*- 前回の優勝者 -*/
#last-champion{}
	.last-champion p{
		max-width: 980px;
		margin: 4em auto auto;
	}
	.last-champion p img{
		max-width: 100%;
		vertical-align: bottom;
	}
	.last-champion-image{
		max-width: 980px;
		margin: 2em auto;
		padding: 0 1em;
		box-sizing: border-box;
	}
		.last-champion-image > li{
			width: 31%;
			margin: auto 1%;
		}
		.last-champion-image > li dl{
			border: 6px solid #222;
			background: #222;
		}
		.last-champion-image > li dl dt{
			/*background: url(images/deck-recipe_bk.jpg) center center;*/
			background-size: 200% auto;
		}
		.last-champion-image > li dl dd{
			
		}
		.last-champion-image > li dl dd span{
			display: block;
			font-weight: bold;
			color: #fc0;
			padding: .7em 0 .5em;
			font-size: .9em;
			line-height: 1.2em;
		}
		.last-champion-image > li dl dd div{
			color: #111;
			background: #fff;
			font-weight: bold;
			padding: .3em 0;
		}
@media screen and (max-width:767px){
	.last-champion-image{
		background: #222;
		border-right: 3px solid #222;
		padding: 0;
	}
		.last-champion-image > li{
			width: 33.333333%;
			margin: auto;
		}
		.last-champion-image > li.dragonduel{
			margin: auto;
		}
		.last-champion-image > li dl{
			border-color: #222;
			border-style: solid;
			border-width: 3px 0 3px 3px;
		}
		.last-champion-image > li dl dd span{
			font-size: .8em;
		}
}


/*-WCSとは-*/
#wcs-description{}
	.wcs-description{
		background: #000 center center no-repeat url(/yugioh/worldchampionship/2024/images/main-bk1.jpg);
		background-size: 100% auto;
		text-align: center;
		position: relative;
		padding: 1.5em 1em;
		border-top: solid #222 5px;
		border-bottom: solid #222 1px;
		letter-spacing: -.40em;
	}
		.wcs-description::after{
			content: "";
			background: repeating-linear-gradient(-45deg, rgba(0,0,0,.5), rgba(0,0,0,.5) 1px, rgba(0,0,0,.4) 2px, rgba(0,0,0,.5) 3px) , repeating-linear-gradient(45deg, rgba(0,0,0,.5), rgba(0,0,0,.5) 1px, rgba(0,0,0,.4) 2px, rgba(0,0,0,.5) 3px);
			position: absolute;
			width: 100%; height: 100%;
			left: 0; top: 0;
			z-index: 5;
		}
		.wcs-description > *{
			position: relative;
			z-index: 15;
			display: inline-block;
			letter-spacing: normal;
		}
		.wcs-description > h1{
			font-size: 1.8em;
			padding: 0 0 1em;
			line-height: 1em;
			color: #fff;
			display: block;
		}
		.wcs-description > div figure{
			display: inline-block;
			width: 40%;
			margin: auto 2% auto auto;
			vertical-align: top;
		}
		.wcs-description > div figure span{
			font-size: .8em;
			line-heigqualifying-tht: 1.4em;
			display: block;
			padding: .7em 0 .2em;
			color: #ccc;
			background: #000;
		}
		.wcs-description > div div{
			display: inline-block;
			width: 57%;
			box-sizing: border-box;
			padding-left: 0;
		}
			.wcs-description > div div p{
				margin-bottom: 1em;
				text-align: left;
				font-size: .9em;
				color: #ccc;
			}
			.wcs-description > div div p span{
				display: block;
			}
			.wcs-description > div div p i{
				display: inline-block;
			}
			.wcs-description > div div p a{
				display: inline-block;
			}
				.wcs-description > div div p a::before{
					content: "≫ ";
				}
			
			
@media screen and (max-width:767px){
		.wcs-description{
			background-size: auto 100%;
		}
		.wcs-description h1{
			font-size: 4vw;
			font-weight: bold;
		}
		.wcs-description > div figure{
			width: auto;
			margin: auto auto 1em auto;
		}
			.wcs-description > div figure a img{
				width: 100%;
			}
		.wcs-description > div div{
			width: auto;
			margin: auto;
		}
			.wcs-description > div div p{
				line-height: 1.3em;
			}
			.wcs-description > div div p a{
				padding-left: 1.2em;
			}
			.wcs-description > div div p a::before{
				margin-left: -1em;
			}

}


/*- セレブレーションイベント -*/
		.celebration{
			background: url(../images/celebration-bk.jpg) center center no-repeat;
			position: relative;
			padding-left: 1em;
			padding-right: 1em;
		}
		.celebration::after{
			content: "";
			display: block;
			position: absolute;
			width: 100%;
			height: 100%;
			top: 0; left: 0;
			z-index: 0;
			background: repeating-linear-gradient(-45deg, rgba(255,255,255,0), rgba(255,255,255,0) 3px, rgba(255,255,255,.5) 0, rgba(255,255,255,.5) 4px);
		}
		.celebration > h1 , .celebration > div{
			position: relative;
			z-index: 50;
		}
		.celebration > h1{
			margin-bottom: 2em;
		}
		.celebration-img{
			width: 48%;
		}
			.celebration img{
				max-width: 90%;
			}
		.celebration-txt{
			width: 52%;
			text-align: left;
		}
			.celebration-txt>*{
				padding-top: 1.2em;
			}
			.celebration-txt h2{
				font-size: 1.3em;
			}
			.celebration-txt p{
				font-size: .9em;
				color: #555;
			}
			.celebration-txt p strong{
				font-size: 1.2em;
			}
			.celebration-txt p a{
				
			}
@media screen and (min-width:1300px){
		.celebration{
			background-size: 100% auto;
		}
}
@media screen and (max-width:767px){
		.celebration{
			background-size: auto 100%;
		}
		.celebration-img{
			width: 100%;
			display: block;
		}
		.celebration-txt{
			width: auto;
			display: block;
			padding: 0 1em;
		}
			.celebration-txt>*{
				padding-top: 1em;
			}
}


.regulation{
	padding: 2em 0 1em;
	background: #ddd;
}

	.regulation > h2{
		max-width: 980px;
		text-align: center;
		margin: auto auto 2em;
	}

	ul.regulation-nav{
		max-width: 1100px;
		padding: .5em 1em 0;
		display: flex;
		align-items: stretch;
		margin: auto;
		overflow: hidden;
		text-align: center;
	}
		ul.regulation-nav li{
			width: calc(100% / 3);
			padding: 0 .1em;
			margin: auto;
		}
		ul.regulation-nav li span{
			display: block;
			height: 100%;
			border-radius: .5em .5em 0 0;
			font-weight: bold;
			padding: 1.2em .5em 1em;
			box-shadow: 0 0 .3em 0 #000;
			background: #bbb;
			color: #888;
		}
		ul.regulation-nav li.now span{
			background: #f1f1f1;
			color: #555;
		}
		ul.regulation-nav li.soon span{
			opacity: .4;
		}
		ul.regulation-nav li:not(.now):not(.soon) span{
			cursor: pointer;
		}
		ul.regulation-nav li:not(.now):not(.soon) span:hover{
			color: #ddd;
			transition: .2s;
		}
		




	.regulation-style{
			background: #ddd;
			background: linear-gradient(to bottom , #f1f1f1 0, #ddd 10em);
			color: #555;
			/*margin-bottom: -2.6em;*/
			padding: 0 1em;
			text-align: center;
			font-size: .95em;
	}
		.regulation-style > *{
			margin: auto;
			text-align: left;
		}

		.regulation-style > em{
			display: block;
			max-width: 980px;
			text-align: center;
			display: flex;
			align-items: center;
			justify-content: center;
			font-weight: bold;
		}
			.regulation-style > em::after,
			.regulation-style > em::before{
				content: "";
				flex-grow: .5;
				height: 1px;
				background: #bbb;
			}
			.regulation-style > em::after{margin-left: 1em;}
			.regulation-style > em::before{margin-right: 1em;}
			
		.regulation-style > section{
			max-width: 980px;
			border-top: 1px solid #bbb;
			padding: 1.3em 0 1em 14em;
			position: relative;
			box-sizing: border-box;
		}		
		.regulation-style > section.fullwide{
			padding: 1.5em 0;
		}
		.regulation-style > section.fullwide.summary{
			border-top: none;
			padding: 1em 0;
			display: flex;
			align-items: center;
		}
			.regulation-style > section.fullwide.summary div{
				width: 70%;
				box-sizing: border-box;
				padding-right: 1em;
			}
			.regulation-style > section.fullwide.summary figure{
				width: 30%;
			}
			.regulation-style > section h3{
				margin-bottom: auto;
				position: absolute;
				left: 0; top: 1em;
				font-weight: bold;
				border-left: 5px solid #f7ac1d;
				padding: .3em 0 .2em 1em;
				box-sizing: border-box;
				max-width: 13em;
			}
@media screen and (max-width:767px){
		.regulation-style > section h3{
			position: relative;
			top: 0;
			margin-bottom: .5em;
			font-size: 1.1em;
			background: rgba(250,250,250,.3);
			max-width: 100%;
		}
		.regulation-style > section{
			padding-left: 0;
		}
}
			
			.regulation-style > section h4{
				font-weight: bold;
				border-radius: .2em;
				background: #c5c5c5;
				padding: .4em .5em .2em;
				margin-bottom: .5em;
			}
			.regulation-style > section h5{
				font-weight: bold;
			}
			.regulation-style > section h4 + h5{
				margin-top: 1em;
			}
			.regulation-style > section p:not(:last-child){
				margin-bottom: 1.5em;
			}
			.regulation-style > section small{
				display: block;
				padding-left: 1.2em;
				position: relative;
				font-size: .9em;
				opacity: .7;
			}
				.regulation-style > section small::before{
					position: absolute;
					left: 0; top: 0;
					content: "※";
				}
				.regulation-style > section:lang(en) small::before{
					content: "*";
				}
			.regulation-style > section a.btn{
				background: #ffd71f;
				color: #b55f2b;
				border: 2px solid #e4bc04;
				display: inline-block;
				font-size: .9em;
				font-weight: bold;
				padding: .5em 1em .4em 2em;
				position: relative;
			}
				.regulation-style > section a.btn::before{
					content: "≫ ";
					position: absolute;
					left: .5em;
					top: 50%;
					transform: translate(0,-50%);
				}
				.regulation-style > section a.btn:hover{
					color: #fff;
					border: 2px solid #fff;	
					transition: .2s;
				}
			.regulation-style > section div.example{
				padding-left: 2em;
			}
			.regulation-style > section time{
				font-weight: bold;
			}
			.regulation-style > section:lang(en) time::after{
				content: " *JST";
			}
				
			.regulation-style > section ol,
			.regulation-style > section ul{
				margin-bottom: 1em;
				counter-reset: num;
			}
			.regulation-style > section ol:last-child,
			.regulation-style > section ul:last-child{
				margin-bottom: auto;
			}
			.regulation-style > section ul > li{
				padding-left: 1.4em;
				position: relative;
			}
				.regulation-style > section ul > li::before{
					content: "■";
					position: absolute;
					left: 0; top: 0;
					opacity: .7;
				}
			.regulation-style > section ol > li{
				padding-left: 1.3em;
				position: relative;
			}
				.regulation-style > section ol > li::before{
					counter-increment: num;
					content: counter(num) ".";
					position: absolute;
					left: 0; top: 0;		
					color: #777;
					font-weight: bold;
				}







.series-banner{
	border: none !important;
}


.share_and_top.cfix{
	border-top-color: #c5c5c5 !important;
}


.konami-footer{
	border-top-color: #c5c5c5 !important;
}
.footer-wrapper{
	/*background: #555;*/
}
.footer-wrapper * {
    /*border-color: #c5c5c5 !important;*/
}



ul.konami-link > li button#ot-sdk-btn.ot-sdk-show-settings:hover,
ul.konami-link > li button#ot-sdk-btn.optanon-show-settings:hover{
	padding: 1em 0;
    margin: auto auto 0.4em;
    background: rgba(255,255,255,.2);
    border: 1px solid rgba(10,10,10,.1);
    border-radius: 3px;
    dislay: block;
    width: 100%;
}


.footer-card{
	padding: 2.5em 0 3em;
	margin: auto;
	text-align: center;
}



