@charset "utf-8";
body{
	overflow-x: hidden;
}
.rule > p{
	margin-top: 0;
}
.program section#mainvisual{
	border-bottom: 0;
	padding-bottom: 0;
}
.program section#mainvisual .ttl {
	background-image: url(../img/prog_main_visual_bg.png);
}
section h3,
section div h3 {
	height: 2.52em;
	background-image: url(../img/sub_ttl_prog_lis.png);
	background-size: 24.48em auto;
	background-position-y: 0;
}
section#contents h3 {
	background-position-y: -2.68em;
}
section#specialview h3 {
	background-position-y: -5.36em;
}

section#timeschedule{
	padding-left: 1.6em;
	padding-right: 1.6em;
}
section#timeschedule > ul{
	margin-top: 1.6em;
    padding: 0 0.8em;
    background-color: #fff;
    border: solid 0.16em #b0b0b0;
}
section#timeschedule > ul > li {
	flex-basis: 100%;
    padding: 0.48em 0;
}
section#timeschedule > ul > li:not(:nth-of-type(1)) {
	border-top: dashed 0.08em #b0b0b0;
}
section#timeschedule > ul > li > dl{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
section#timeschedule > ul > li > dl > dt{
background-image: url(../img/prog_timeschedule_text.png);
	background-color: #3e3e3e;
    width: 3.6em;
    height: 1.2em;
	background-size: 2.56em auto;
    display: block;
    text-indent: -9999px;
    background-repeat: no-repeat;
    background-position-x: center;
    background-position-y: 0.2em;
}
section#timeschedule > ul > li:nth-of-type(2) > dl > dt{
    background-position-y: -0.8em;
}
section#timeschedule > ul > li:nth-of-type(3) > dl > dt{
    background-position-y: -1.8em;
}
section#timeschedule > ul > li:nth-of-type(4) > dl > dt{
    background-position-y: -2.8em;
}
section#timeschedule > ul > li:nth-of-type(5) > dl > dt{
    background-position-y: -3.8em;
}
section#timeschedule > ul > li:nth-of-type(6) > dl > dt{
    background-position-y: -4.8em;
}
section#timeschedule > ul > li:nth-of-type(7) > dl > dt{
    background-position-y: -5.8em;
}
section#timeschedule > ul > li:nth-of-type(8) > dl > dt{
    background-position-y: -6.8em;
}
section#timeschedule > ul > li:nth-of-type(9) > dl > dt{
    background-position-y: -7.8em;
}
section#timeschedule > ul > li:nth-of-type(10) > dl > dt{
    background-position-y: -8.8em;
}
section#timeschedule > ul > li:nth-of-type(11) > dl > dt{
    background-position-y: -9.8em;
}
section#timeschedule > ul > li:nth-of-type(12) > dl > dt{
    background-position-y: -10.8em;
}
section#timeschedule > ul > li:nth-of-type(13) > dl > dt{
    background-position-y: -11.8em;
}
section#timeschedule > ul > li > dl > dd{
	padding-left: 0.8em;
    font-weight: bold;
    font-size: 0.9em;
}
section#timeschedule small {
	display: block;
	margin-top: 0.8em;
	padding: 0;
	color: #5b5b5b;
}
section#timeschedule small span {
	font-size: 0.8em;
}
@media screen and ( min-width : 960px ) {
	section#timeschedule > ul{
		margin: 0.88em 1.64em 0;
		padding: 0 0.8em;
		font-size: 2em;
	}
	section#timeschedule small {
		margin-top: 1.6em;
		padding: 0 3.2em;
	}
	section#timeschedule small span {
		font-size: 1.6em;
	}
}

section#contents .rule.rule-prediction h4::after{
    background-position-y: -20.78em;
}
@media screen and ( min-width : 960px ) {
	section .rule figure figcaption {
		font-size: 1.8em;
	}
}
section .rule > ul.annotation {
	display: block;
	margin: 0.8em 0.8em 0;
	color: #5b5b5b;
}
section .rule > ul.annotation > li {
	font-size: 0.8em;
	text-indent: -1em;
	margin-top: 0.4em;
	padding-left: 1em;
}
@media screen and ( min-width : 960px ) {
	section .rule > ul.annotation {
		margin: 0.8em 4em 0;
	}
	section .rule > ul.annotation > li {
		font-size: 1.6em;
	}
}
section#contents .rule.rule-lottery h4::after{
	background-position-y: -20.88em;
}
section#contents .rule.rule-senryu h4::after{
	background-position-y: -22.28em;
}
section#contents .rule.rule-short h4::after,
section#contents .rule.rule-quiz h4::after{
	background-position-y: -28.20em;
}
section#contents .rule.rule-participate h4::after{
	background-position-y: -23.72em;
}
section#contents .rule.rule-kentei h4::after{
	background-position-y: -25.2em;
}
section#contents .rule.rule-pecialview h4::after{
	background-position-y: -26.7em;
}
section .rule.step{
	display: flex;
	flex-wrap: wrap;
}
section .rule.step h4{
	flex: 1 0 100%;
}
section .rule.step .full{
	flex: 1 0 100%;
}
section .rule.step h5{
	text-indent: -9999px;
	margin: 0 auto;
	width: 26.8em;
	background-color: #3e3e3e;
	background-image: url(../img/prog_subttl.png);
	background-size: 10.2em auto;
	background-repeat: no-repeat;
	background-position-x: center;
	background-position-y: 0.2em;
	height: 1.6em;
}
section .rule.step figure{
	flex: 1 0;
}
section .rule.step figure:nth-of-type(1){
	padding-right: 0;
}
section .rule.step figure:nth-of-type(3){
	padding-left: 0;
}
section .rule.step small{
	flex: 1 0 100%;
}
@media screen and ( min-width : 960px ) {
	section .rule.step figure{
		padding: 0 4.24em;
	}
	section .rule.step figure:nth-of-type(2){
		padding: 0 1.88em;
	}
	section .rule.step figure figcaption{
		font-size: 100%;
	}
	section .rule.step h5{
		font-size: 2em;
		width: 27.1em;
	}
}
section#specialview .rule.rule-application h4::after{
	background-position-y: -27.28em;
}
section#specialview .rule.rule-videobg h4::after{
	background-position-y: -28.88em;
}
@media screen and ( min-width : 960px ) {
	section#specialview .rule.rule-videobg > p {
		padding: 0 2.2em 0;
	}
	section#specialview .rule.rule-videobg > p > span {
		font-size: 0.98em;
	}
}
section#specialview .rule.rule-videobg ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 1.2em;
	padding: 0 0.8em;
}
section#specialview .rule.rule-videobg ul li{
	flex: 0 1 13em;
}
section#specialview .rule.rule-videobg ul li:nth-of-type(even){
	margin-left: 0.8em;
}
section#specialview .rule.rule-videobg ul li:nth-of-type(n+3){
	margin-top: 0.8em;
}
@media screen and ( min-width : 960px ) {
	section#specialview .rule.rule-videobg ul li,
	section#specialview .rule.rule-videobg ul li:nth-of-type(1){
		flex: 0 1 17.04em;
	}
	section#specialview .rule.rule-videobg ul li:nth-of-type(2n){
		margin-left: 0;
	}
	section#specialview .rule.rule-videobg ul li:not(:nth-of-type(3n+1)){
		margin-left: 1.6em;
	}
	section#specialview .rule.rule-videobg ul li:nth-of-type(n+2){
		margin-top: 0;
	}
	section#specialview .rule.rule-videobg ul li:nth-of-type(n+4){
		margin-top: 1.6em;
	}
}
.rule.rule-test h4::after,
section#contents .rule.rule-yosou h4::after{
    background-position-y: -20.9em;
}
