@charset "utf-8";
section {
		position: relative;
		min-height: 300px;
}
section::before, section::after {
		content: '';
		display: block;
		position: absolute;
		width: 110vw;
		height: 400px;
		background-position: center top;
		background-repeat: no-repeat;
		background-size: 3250px;
		transform: rotate(-6.75deg);
		left: -5vw;
		pointer-events: none
}
/* ================ */
.reason_section {
		padding-top: 100px;
		padding-bottom: 150px;
		margin-bottom: 150px;
}
.theme_section::before {
		background-image: url("../images/separate_upper2_pc.png");
		top: -150px;
		height: 400px;
		z-index: 7
}
.theme_section {
		background: #094DA4;
		position: relative;
		margin-bottom: 150px;
		padding-top: 30px;
		padding-bottom: 100px;
}
.theme_inner {
		z-index: 10;
}
@media(max-width: 960px) {
		.reason_section {
				padding-top: 60px;
				padding-bottom: 150px;
				margin-bottom: 150px;
		}
}
/* ================ */
.exam_section, .exam_bottom_section {
		padding-bottom: 100px;
		margin-bottom: 100px;
}
.exam_section::before, .exam_bottom_section::before {
		background-image: url("../images/separate_upper3_pc.png");
		background-position: 0 0;
		top: -400px;
		height: 500px;
		z-index: 7
}
.exam_bottom_section::before {
		background-image: url("../images/separate_upper5_pc.png");
		z-index: 9
}
.exam_section::after {
		background-image: url("../images/separate_upper4_pc.png");
		background-position: 0 0;
		top: -205px;
		height: 200px;
		z-index: 10
}
.exam_inner.upper::before {
		content: '';
		display: block;
		position: absolute;
		top: -440px;
		right: -340px;
		width: 760px;
		height: 806px;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 760px;
		background-image: url("../images/exam_bg-1_pc2.png");
		mix-blend-mode: multiply
}
.exam_caption, .exam_flex {
		position: relative;
		z-index: 10
}
@media(max-width: 960px) {
		.exam_inner.upper::before {
				top: -180px;
				right: -320px;
				width: 570px;
				height: 488px;
				background-size: 100%;
				background-image: url("../images/exam_bg-1_mid.png")
		}
}
/* =============== */
.schedule_section {
		position: relative;
		padding-top: 30px;
}
.schedule_section::before {
		content: '';
		display: block;
		position: absolute;
		background-image: url(../images/separate_upper6_pc.png);
		background-position: 0 0;
		top: -420px;
		height: 500px;
		z-index: 20;
}
@media(max-width: 767px) {
		.schedule_section::before {
				display: none
		}
}
/* =============== */
.entry_section {
		position: relative;
		background: #094DA4;
		padding-top: 30px;
		margin-bottom: 150px;
		padding-bottom: 80px;
}
.entry_section::before {
		background-image: url("../images/separate_upper2_pc.png");
		top: -150px;
		height: 400px;
		z-index: 7
}
.entry_inner {
		position: relative;
		z-index: 20;
		padding: 0 20px;
}
.entry_bg {
		position: relative;
		z-index: 7;
		max-width: 920px;
		margin: 0 auto;
}
.entry_bg::before {
		content: '';
		display: block;
		position: absolute;
		top: -140px;
		right: -250px;
		width: 568px;
		height: 1125px;
		height: 770px;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 100%;
		background-image: url("../images/entry_bg_pc.png");
		z-index: 5
}
@media(max-width: 960px) {
		.entry_bg::before {
				top: -90px;
				right: -180px;
				width: 460px;
				height: 690px;
		}
}
@media(max-width: 767px) {
		.entry_bg::before {
				top: 90px;
				right: 0;
				width: 246px;
				height: 590px;
				background-image: url(../images/entry_bg_sp.png);
		}
		.exam_inner.upper::before {
				top: -180px;
				right: -150px;
				width: 370px;
				height: 390px;
				background-size: 370px;
				background-image: url(../images/exam_bg-1_sp.png);
				background-image: url(../images/exam_bg-1_sp2.png);
				mix-blend-mode: multiply;
		}
}
/* =========  */
.movie_section {
		padding-bottom: 0;
		margin-bottom: 100px;
		position: relative;
}
.movie_section::before {
		background-image: url("../images/separate_upper5_pc.png");
		background-position: 0 0;
		top: -410px;
		height: 500px;
		z-index: 20;
}
.movie_inner {
		position: relative;
		z-index: 20;
		padding: 0 20px;
		max-width: 920px;
		margin: 0 auto;
}
.movie_inner::before {
		content: '';
		display: block;
		position: absolute;
		top: -60px;
		left: -190px;
		width: 350px;
		height: 530px;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		background-image: url("../images/movie_bg_pc.png")
}
@media(max-width: 767px) {
		.movie_section {
				padding-bottom: 0;
				margin-bottom: 100px;
				position: relative;
		}
}
/* =============== */
.terms_section {
		margin-bottom: 50px;
}
.term_section {
		position: relative;
		background: #094DA4;
		margin-bottom: 150px;
		padding-bottom: 80px;
}
.term_section::before {
		background-image: url(../images/separate_upper2_pc.png);
		top: -150px;
		height: 400px;
		z-index: 20;
}
.term_inner {
		position: relative;
		z-index: 20;
}
.term_inner::before {
		content: '';
		display: block;
		position: absolute;
		top: 50px;
		left: -290px;
		width: 490px;
		height: 600px;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 100%;
		background-image: url("../images/term_bg_pc.png");
		z-index: -1
}
/* ========== */
.award_section::before {
		background-image: url("../images/separate_upper3_pc.png");
		background-position: 0 0;
		top: -400px;
		height: 500px;
		z-index: 0
}
.award_section::after {
		background-image: url("../images/separate_upper4_pc.png");
		background-position: 0 0;
		top: -205px;
		height: 200px;
		z-index: 15
}
@media(min-width: 768px) {
		.separete_sp {
				display: none
		}
}
@media(max-width: 767px) {
		.theme_section::before, .exam_section::before, .exam_bottom_section::before, .exam_section::after, .entry_section::before, .movie_section::before, .movie_section::after, .term_section::before, .award_section::before, .award_section::after {
				display: none;
		}
		.reason_section {
				padding-top: 80px;
				padding-bottom: 0;
				margin-bottom: 0;
		}
		.theme_section {
				margin-bottom: 0;
				padding-top: 30px;
				padding-bottom: 0;
		}
		.entry_section {
				padding-top: 30px;
				margin-bottom: 0;
				padding-bottom: 0;
		}
		.exam_section, .exam_bottom_section {
				padding-top: 30px;
				margin-bottom: 0;
				padding-bottom: 0;
		}
		.exam_section {
				padding-bottom: 180px;
		}
		.movie_section {
				margin-bottom: 0;
				padding-bottom: 0;
				padding-top: 30px;
		}
		.movie_inner::before {
				top: -40px;
				left: 0;
				width: 140px;
				height: 252px;
				background-position: 0 0;
				background-size: 100%;
				background-image: url(../images/movie_bg_sp.png);
		}
		.term_section {
				margin-bottom: 0;
				padding-bottom: 0;
		}
		.term_inner {
				z-index: 1;
		}
		.term_inner::before {
				top: inherit;
				bottom: -80px;
				left: 0;
				width: 190px;
				height: 330px;
				background-size: 100%;
				background-image: url("../images/term_bg_sp_reverse.png");
				z-index: -1;
		}
		.separete_sp {
				background-repeat: no-repeat;
				background-position: center center;
				background-size: 770px;
				height: 170px;
				position: relative;
				pointer-events: none;
		}
		.separete_sp.upper {
				background-image: url("../images/separate_upper_sp.png");
				margin-bottom: -2px;
		}
		.separete_sp.bottom {
				background-image: url("../images/separate_bottom_sp.png");
				margin-top: -2px;
		}
}
/* ================== */
.judge_section {
		position: relative;
		background: #094DA4;
		color: #fff;
		padding-top: 30px;
		margin-bottom: 120px;
		padding-bottom: 60px;
}
.judge_section::before {
		background-image: url(../images/separate_upper2_pc.png);
		top: -150px;
		height: 400px;
		z-index: 5;
}
.judge_inner {
		max-width: 1140px;
		margin: 0 auto;
		position: relative;
		z-index: 10;
		padding: 0 40px;
}
.judge_inner::before {
		content: '';
		display: block;
		position: absolute;
		top: -60px;
		right: -180px;
		width: 515px;
		height: 750px;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 100%;
		background-image: url("../images/judge_bg_pc.png");
}
.judge_member {
		display: flex;
		margin: 0 0 60px;
		position: relative;
		z-index: 15;
}
.judge_member_gr .judge_member:last-child {
		margin-bottom: 0;
}
.judge_photo {
		width: 445px;
		margin-right: 50px;
}
.judge_photo img {
		width: 100%;
		height: auto;
}
.judge_caption {
		flex: 1
}
.judge_caption p {
		line-height: 1.8;
		font-size: 16px;
}
.judge_name_hdr {
		display: flex;
		justify-content: space-between;
		align-items: center;
		position: relative;
		margin-bottom: 35px;
}
.judge_name strong {
	display: block;
		font-size: 26px;
		font-weight: 600;
		margin: 0 0 20px;
}
.judge_name h3 {
		font-size: 32px;
		font-weight: 600;
		margin: 0 0 10px;
}
.judge_caption .judge_name p.en {
		font-family: 'Roboto', sans-serif;
		font-size: 12px;
		font-weight: 400;
}
.judge_name_hdr .judge_link a {
		display: flex;
		align-items: center;
		color: #fff;
		text-decoration: none;
}
.judge_link div.txt {
		font-family: 'Roboto', sans-serif;
		font-size: 12px !important;
		font-weight: 400;
		margin-right: 10px;
}
.judge_link_btn {
		width: 40px;
		height: 40px;
		position: relative;
}
.judge_link_btn::before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 40px;
		height: 40px;
		border-radius: 50%;
		transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
		background: #fff;
}
.judge_link_btn_in {
		position: relative;
		width: 40px;
		height: 40px;
}
@media (hover: hover) {
		.judge_link a:hover .judge_link_btn::before {
				transform: scale(1.2)
		}
}
.judge_link_btn_in::before, .judge_link_btn_in::after {
		content: '';
		display: block;
		position: absolute;
		width: 8px;
		height: 8px;
}
.judge_link_btn_in::before {
		top: 17px;
		left: 14px;
		border: 1px solid #094DA4;
}
.judge_link_btn_in::after {
		top: 14px;
		left: 18px;
		border-top: 1px solid #094DA4;
		border-right: 1px solid #094DA4;
}
@media(max-width: 1200px) {
		.judge_photo {
				width: calc(40% - 30px);
				margin-right: 30px;
		}
		.judge_name_hdr {
				margin-bottom: 20px;
		}
		.judge_name strong {
			font-size: 22px;
		}
		.judge_name h3 {
				font-size: 26px;
		}
}
@media(max-width: 840px) {
		.judge_name_hdr {
				margin-bottom: 15px;
		}
		.judge_name strong {
			font-size: 18px;
		}
		.judge_name h3 {
				font-size: 22px;
		}
		.judge_caption p {
				font-size: 15px;
		}
}
@media(max-width: 767px) {
		.judge_inner::before {
				top: -60px;
				right: -2px;
				width: 100%;
				height: 96.5vw;
				background-repeat: no-repeat;
				background-position: 0 0;
				background-size: 100%;
				background-image: url("../images/judge_bg_sp.png");
		}
		.judge_inner {
				padding: 0 20px;
		}
		.judge_section {
				padding-top: 30px;
				margin-bottom: 0;
				padding-bottom: 0;
		}
		.judge_member {
				display: block;
				margin: 0 0 120px;
		}
		.judge_photo {
				width: 100%;
				margin: 0 0 40px;
		}
		.judge_name_hdr {
				margin-bottom: 40px;
		}
		.judge_name strong {
			font-size: 20px;
		}
		.judge_name h3 {
				font-size: 26px;
				margin: 0 0 10px;
		}
		.judge_link a {
				display: flex;
				flex-direction: column-reverse;
				text-align: center;
		}
		.judge_link div.txt {
				margin: 0;
				text-align: center;
				position: relative;
				top: 5px;
		}
}