@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;700&display=swap');

/* MATERIALS */

a:link{
	color:#003bb2;
	text-decoration:none;
}

a:visited{
	color:#003bb2;
	text-decoration:none;
}

a:hover{
	color:#0047d8;
	text-decoration:underline;
}

a:active{
	color:#0047d8;
	text-decoration:underline;
}

a.btn_a,
span.btn_a{
	display:table;
	padding:24px 80px 28px 40px;
	font-size:22px;
	font-weight:600;
	line-height:1;
	color:#fed400;
	background-color:#000;
	border-radius:50px;
	background-image:url("../img/interface/ico_arrow_right.png");
	background-repeat:no-repeat;
	background-size:16px;
	background-position:right 30px center;
}

@media only screen and (max-width:767px){
	a.btn_a,
	span.btn_a{
		padding:22px 70px 24px 30px;
		font-size:18px;
		background-size:12px;
		background-position:right 25px center;
	}
}


/* INTERFACE */


body{
	-webkit-text-size-adjust:100%;
	margin:0;
	padding:0;
	background-color:#fff;
	color:#000;
	font-family:"Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
}

body>footer>div small a:link,
body>footer>div small a:visited{
	color:#fff;
}



#home_key_area img{
	width:100%;
}

#home_flow_area{
	padding:100px 40px 120px;
	background-image:url("../img/interface/bg_shape01.png");
	background-repeat:no-repeat;
	background-size:cover;
	background-position:top center;
}

#home_flow_area a.btn_a,
#home_flow_area span.btn_a{
	margin:0 auto;
}

#home_flow_area h2{
	margin:0 0 60px;
	padding:0 0 70px;
	text-align:center;
	font-size:35px;
	font-weight:700;
	line-height:1.2;
	background-image:url("../img/interface/ico_circle.png");
	background-repeat:no-repeat;
	background-size:35px;
	background-position:bottom center;
}

#home_flow_area .flex{
	max-width:1050px;
	margin:0 auto 60px;
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
}

#home_flow_area .flex img{
	width:34%;
}

#home_flow_area .flex p{
	width:66%;
	box-sizing:border-box;
	margin:0;
	padding:0 50px 0 0;
	text-align:justify;
	font-size:18px;
	line-height:1.9;
}

#home_flow_area .flex p em{
	display:block;
	margin:0 0 40px;
	font-style:normal;
	font-size:40px;
	font-weight:600;
	line-height:1.3;
}

#home_flow_area .video{
	max-width:680px;
	margin:0 auto 40px;
}

#home_flow_area .video div{
	width:100%;
	height:0;
	padding:56% 0 0;
	position:relative;
}

#home_flow_area .video div iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}

#home_flow_area .box{
	max-width:600px;
	margin:0 auto 50px;
	padding:40px 30px;
	background-color:#fff;
	border:6px solid #fed400;
	border-radius:20px;
}

#home_flow_area .box p{
	margin:0;
	text-align:center;
	font-size:30px;
	font-weight:600;
	line-height:1.3;
}

@media only screen and (max-width:1000px){
	#home_flow_area .flex p{
		padding:0 30px 0 0;
	}
	
	#home_flow_area .flex p em{
		font-size:33px;
	}
}

@media only screen and (max-width:767px){
	#home_flow_area{
		padding:60px 20px;
	}
	
	#home_flow_area h2{
		margin:0 0 40px;
		padding:0 0 50px;
		font-size:28px;
		background-size:25px;
	}
	
	#home_flow_area .flex{
		margin:0 0 30px;
		justify-content:center;
	}
	
	#home_flow_area .flex img{
		width:80%;
	}
	
	#home_flow_area .flex p{
		width:100%;
		padding:0 0 40px;
		font-size:15px;
		line-height:1.7;
	}
	
	#home_flow_area .flex p em{
		margin:0 0 20px;
		font-size:25px;
		line-height:1.4;
	}
	
	#home_flow_area .box{
		padding:30px 25px;
		border:5px solid #fed400;
	}
	
	#home_flow_area .box p{
		text-align:justify;
		font-size:25px;
	}

}

#home_support_area{
	padding:100px 20px 120px;
	background-color:#f5f5f5;
}

#home_support_area h2{
	margin:0 0 70px;
	padding:0 0 70px;
	text-align:center;
	font-size:35px;
	font-weight:700;
	line-height:1.2;
	background-image:url("../img/interface/ico_circle.png");
	background-repeat:no-repeat;
	background-size:35px;
	background-position:bottom center;
}

#home_support_area .flex{
	max-width:1250px;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
}

#home_support_area .flex>div{
	display:flex;
	width:33.333333333%;
	box-sizing:border-box;
	padding:0 20px;
}

#home_support_area .flex>div>div{
	padding:0 25px 35px;
	text-align:center;
	background-color:#fff;
	border:6px solid #fed400;
}

#home_support_area .flex>div>div img{
	width:90px;
	position:relative;
	top:-20px;
}

#home_support_area .flex>div>div h3{
	margin:0 0 20px;
	font-size:24px;
	font-weight:700;
	line-height:1.3;
}

#home_support_area .flex>div>div h3 span{
	background:linear-gradient(transparent 65%, #fed400 65%);
}

#home_support_area .flex>div>div p{
	margin:0;
	text-align:justify;
	font-size:18px;
	font-weight:300;
	line-height:1.4;
}

@media only screen and (max-width:767px){
	#home_support_area{
		padding:60px 20px;
	}
	
	#home_support_area h2{
		margin:0 0 60px;
		padding:0 0 50px;
		font-size:28px;
		background-size:25px;
	}
	
	#home_support_area .flex>div{
		width:100%;
		padding:0 0 40px;
	}
	
	#home_support_area .flex>div>div{
		padding:0 20px 30px;
		border:5px solid #fed400;
	}
	
	#home_support_area .flex>div>div img{
		width:70px;
	}
	
	#home_support_area .flex>div>div h3{
		font-size:22px;
	}
	
	#home_support_area .flex>div>div p{
		font-size:16px;
	}
}

#home_entry_area{
	max-width:1050px;
	margin:0 auto;
	padding:100px 40px 120px;
}

#home_entry_area a.btn_a,
#home_entry_area span.btn_a{
	margin:0 auto;
}

#home_entry_area h2{
	margin:0 0 70px;
	padding:0 0 70px;
	text-align:center;
	font-size:35px;
	font-weight:700;
	line-height:1.2;
	background-image:url("../img/interface/ico_circle.png");
	background-repeat:no-repeat;
	background-size:35px;
	background-position:bottom center;
}

#home_entry_area .flex{
	max-width:1050px;
	margin:0 auto 80px;
	display:flex;
	flex-direction: column;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
}

#home_entry_area .flex>div{
	width:65%;
	box-sizing:border-box;
	padding:0 15px 40px;
}

#home_entry_area .flex>div h3{
	margin:5px 0 0;
	font-size:18px;
	font-weight:500;
}

#home_entry_area .link div img{
	width:100%;
}

#home_entry_area .flyer{
	width:40% !important;
}

#home_entry_area .flyer img{
	width:100%;
	border:1px solid #ddd;
}

#home_entry_area .video div{
	width:100%;
	height:0;
	padding:56% 0 0;
	position:relative;
}

#home_entry_area .video div iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}

#home_entry_area>p{
	margin:0;
	text-align:justify;
	font-size:18px;
	line-height:1.9;
}

#home_entry_area>p em{
	display:table;
	margin:0 auto 20px;
	font-style:italic;
	font-size:40px;
	font-weight:600;
	line-height:1.3;
}

#home_entry_area>p.note{
	display:table;
	margin:0 auto 60px;
	padding:3px 20px 5px;
	text-align:center;
	color:#e60012;
	border:2px solid #000;
}

#home_entry_area .download h3{
	margin:0 0 30px;
	padding:0 0 0 60px;
	font-size:25px;
	background-image:url("../img/interface/ico_download.png");
	background-repeat:no-repeat;
	background-size:50px;
	background-position:left center;
}

#home_entry_area .download ul{
	margin:0 0 100px;
	padding:0 60px;
	list-style-type:none;
	font-size:18px;
}

#home_entry_area .download ul li{
	padding:15px 0 15px 40px;
	background-image:url("../img/interface/ico_pdf.png");
	background-repeat:no-repeat;
	background-size:30px;
	background-position:left center;
}

#home_entry_area .download ul li a{
	text-decoration:underline;
}

#home_entry_area .schedule{
	margin:0 0 80px;
}

#home_entry_area .schedule h3{
	margin:0 0 60px;
	text-align:center;
	font-size:24px;
	font-weight:700;
	line-height:1.3;
}

#home_entry_area .schedule h3 span{
	background:linear-gradient(transparent 65%, #fed400 65%);
}

#home_entry_area .schedule p{
	margin:0 0 15px;
	font-size:14px;
	line-height:1.4;
}

#schedule_table{
	width:100%;
	border-collapse:collapse;
	border-left:1px solid #ddd;
	border-right:1px solid #ddd;
}

#schedule_table td{
	padding:15px;
	font-size:15px;
	border-bottom:1px solid #ddd;
}

#schedule_table thead td:last-child{
	background-color:#cc0a11;
}

#schedule_table tbody td:last-child{
	text-align:center;
	color:#cc0a11;
	border-left:1px dotted #ddd;
}

#schedule_table td:nth-of-type(2),
#schedule_table td:nth-of-type(3){
	white-space:nowrap;
}

#schedule_table tbody tr:nth-of-type(even) td{
	background-color:#f5f5f5;
}

#schedule_table thead td{
	color:#fff;
	background-color:#2ac6cc;
	border-bottom:none;
}


@media only screen and (max-width:767px){
	#home_entry_area{
		padding:60px 20px;
	}
	
	#home_entry_area h2{
		margin:0 0 40px;
		padding:0 0 50px;
		font-size:28px;
		background-size:25px;
	}
	
	#home_entry_area .flex .video{
		width:100%;
	}
	
	#home_entry_area .flex>div{
		width:100%;
		padding:0 0 30px;
	}
	
	#home_entry_area .flex>div h3{
		text-align:center;
	}
	
	#home_entry_area .link div img{
		width:100%;
	}

	#home_entry_area .flyer{
		width:80% !important;
	}

	#home_entry_area .flex p{
		width:100%;
		padding:0 0 30px;
		font-size:15px;
		line-height:1.7;
	}
	
	#home_entry_area .flex p em{
		margin:0 0 20px;
		font-size:25px;
		line-height:1.4;
	}
	
	#home_entry_area .download h3{
		padding:0 0 0 50px;
		font-size:22px;
		background-size:40px;
	}
	
	#home_entry_area .download ul{
		margin:0 0 60px;
		padding:0 0 0 20px;
		list-style-type:none;
		font-size:15px;
	}
	
	#home_entry_area .download ul li{
		padding:10px 0 10px 35px;
		background-size:25px;
	}
	
	#home_entry_area .schedule{
		margin:0 0 60px;
	}
	
	#home_entry_area .schedule h3{
		margin:0 0 30px;
		font-size:23px;
	}
	
	#schedule_table td{
		padding:10px 5px;
		font-size:13px;
	}
	#schedule_table td:nth-of-type(2),
	#schedule_table td:nth-of-type(3){
		
	}

}

#home_news_area{
	padding:100px 20px 20px;
	background-color:#f5f5f5;
}

#home_news_area>p{
	text-align:center;
	font-size:14px;
}

#home_news_area h2{
	margin:0 0 70px;
	padding:0 0 70px;
	text-align:center;
	font-size:35px;
	font-weight:700;
	line-height:1.2;
	background-image:url("../img/interface/ico_circle.png");
	background-repeat:no-repeat;
	background-size:35px;
	background-position:bottom center;
}

#home_news_area table.news{
	max-width:800px;
	width:100%;
	margin:0 auto 150px;
	border-bottom:1px solid #8cdadd;
	border-collapse:collapse;
}

#home_news_area table.news th{
	padding:15px;
	border-top:1px solid #8cdadd;
	text-align:left;
	vertical-align:top;
	font-size:14px;
}

#home_news_area table.news td{
	padding:15px;
	border-top:1px solid #8cdadd;
	font-size:15px;
}

#home_news_area table.news h3{
	margin:0 0 20px;
	font-size:17px;
	font-weight:700;
	line-height:1.3;
}


@media only screen and (max-width:767px){
	#home_news_area{
		padding:60px 20px 20px;
	}
	
	#home_news_area h2{
		margin:0 0 60px;
		padding:0 0 50px;
		font-size:28px;
		background-size:25px;
	}
	#home_news_area table.news th{
		display:block;
		padding:15px 0 5px;
		font-size:13px;
	}
	
	#home_news_area table.news td{
		display:block;
		padding:0 0 20px;
		border-top:none;
		font-size:14px;
	}
}

/* SUB */

#sub_key_area{
	padding:70px 40px 90px;
	background-color:#fed400;
	background-image:url("../img/interface/bg_shape02.png");
	background-repeat:no-repeat;
	background-size:cover;
	background-position:top left;
}

#sub_key_area h1{
	max-width:1050px;
	margin:0 auto;
	font-size:36px;
	font-weight:700;
	line-height:1.2;
}

#sub_key_area h1 span{
	display:table;
	margin:0 0 5px;
	padding:5px 10px 7px;
	font-size:18px;
	color:#fed400;
	background-color:#000;
	border-radius:3px;
}

#project_world_area{
	max-width:1050px;
	margin:0 auto;
	padding:100px 40px 120px;
}

#project_world_area h2{
	margin:0 0 70px;
	padding:0 0 70px;
	text-align:center;
	font-size:35px;
	font-weight:700;
	line-height:1.2;
	background-image:url("../img/interface/ico_circle.png");
	background-repeat:no-repeat;
	background-size:35px;
	background-position:bottom center;
}

#project_world_area img{
	width:100%;
	margin:0 0 70px;
}

#project_world_area p{
	max-width:750px;
	margin:0 auto;
	text-align:justify;
	font-size:18px;
	line-height:1.9;
}

#project_chance_area{
	padding:100px 40px 120px;
	background-color:#f5f5f5;
	text-align:center;
}

#project_chance_area a.btn_a{
	margin:0 auto;
}

#project_chance_area h2{
	margin:0 0 70px;
	padding:0 0 70px;
	font-size:35px;
	font-weight:700;
	line-height:1.2;
	background-image:url("../img/interface/ico_circle.png");
	background-repeat:no-repeat;
	background-size:35px;
	background-position:bottom center;
}

#project_chance_area img{
	max-width:750px;
	width:100%;
	margin:0 0 70px;
}

#project_chance_area p{
	max-width:700px;
	margin:0 auto 70px;
	text-align:justify;
	font-size:18px;
	line-height:1.9;
}

@media only screen and (max-width:767px){
	#sub_key_area{
		padding:50px 20px 80px;
	}
	
	#sub_key_area h1{
		font-size:32px;
	}
	
	#sub_key_area h1 span{
		font-size:16px;
	}

	#project_world_area{
		padding:60px 20px 80px;
	}
	
	#project_world_area h2{
		margin:0 0 40px;
		padding:0 0 40px;
		font-size:28px;
		background-size:25px;
	}
	
	#project_world_area img{
		margin:0 0 30px;
	}
	
	#project_world_area p{
		font-size:15px;
		line-height:1.7;
	}
	
	#project_chance_area{
		padding:60px 20px 80px;
	}
	
	#project_chance_area h2{
		margin:0 0 40px;
		padding:0 0 40px;
		font-size:28px;
		background-size:25px;
	}
	
	#project_chance_area img{
		margin:0 0 30px;
	}
	
	#project_chance_area p{
		margin:0 auto 40px;
		font-size:15px;
		line-height:1.7;
	}

}

#sub_title_area{
	padding:30px 40px;
	background-color:#fed400;
}

#sub_title_area p{
	max-width:1050px;
	margin:0 auto;
	font-size:24px;
	font-weight:700;
	line-height:1.2;
}

#project_flow_area{
	max-width:1050px;
	margin:0 auto;
	padding:100px 40px 120px;
}

#project_flow_area a.btn_a{
	margin:0 auto;
}

#project_flow_area h1{
	margin:0 0 70px;
	padding:0 0 70px;
	text-align:center;
	font-size:35px;
	font-weight:700;
	line-height:1.2;
	background-image:url("../img/interface/ico_circle.png");
	background-repeat:no-repeat;
	background-size:35px;
	background-position:bottom center;
}

#project_flow_area>p{
	max-width:700px;
	margin:0 auto 70px;
	text-align:justify;
	font-size:18px;
	line-height:1.9;
}

#flow_table{
	width:100%;
	margin:0 0 60px;
	border-collapse:collapse;
}

#flow_table th{
	width:70px;
	padding:25px;
	box-sizing:border-box;
	border-top:1px solid #e9e9e9;
}

#flow_table tr:first-of-type th{
	background-color:#e4e4e4;
}

#flow_table tr:nth-of-type(2) th{
	background-color:#8cdadd;
	vertical-align:top;
}

#flow_table tr:nth-of-type(3) th{
	background-color:#fff339;
	vertical-align:bottom;
}

#flow_table tr:nth-of-type(4) th{
	background-color:#ffe139;
	vertical-align:bottom;
}

#flow_table tr:nth-of-type(5) th{
	background-color:#ffb739;
}


#flow_table th img{
	width:22px;
}

#flow_table td{
	box-sizing:border-box;
	padding:25px 50px;
	border-top:1px solid #e9e9e9;
}

#flow_table td h2{
	margin:0 0 30px;
	font-size:40px;
	line-height:1.2;
	font-weight:600;
}

#flow_table td h3{
	margin:0 0 15px;
	font-size:28px;
	line-height:1.2;
	font-weight:600;
}

#flow_table td h3.small{
	font-size:18px;
}

#flow_table td p{
	margin:0 0 30px;
	text-align:justify;
	font-size:18px;
	line-height:1.5;
}

#flow_table td p.small{
	font-size:15px;
	font-weight:300;
	line-height:1.3;
}

#flow_table td .bg{
	padding:80px 0 0;
	background-image:url("../img/interface/ico_arrow_down.png");
	background-repeat:no-repeat;
	background-size:50px;
	background-position:top left 80px;
}

#flow_table td ul.icon{
	margin:0 0 40px;
	padding:0;
	list-style-type:none;
	font-size:16px;
	font-weight:500;
	color:#2a374a;
	overflow:hidden;
}

#flow_table td ul.icon li{
	float:left;
	margin:0 30px 0 0;
}

#flow_table td ul.icon li img{
	width:100px;
	margin:0 0 10px;
}

#flow_table td .point{
	display:flex;
}

#flow_table td .point p{
	width:160px;
	height:160px;
	box-sizing:border-box;
	margin:0 20px 20px 0;
	padding:40px 20px;
	text-align:center;
	font-size:16px;
	font-weight:500;
	border:4px solid #ffe139;
	border-radius:50%;
}


@media only screen and (max-width:767px){
	#sub_title_area{
		padding:25px 20px;
	}
	
	#sub_title_area p{
		font-size:20px;
	}
	
	#project_flow_area{
		padding:60px 20px 70px;
	}
	
	#project_flow_area h1{
		margin:0 0 40px;
		padding:0 0 40px;
		font-size:28px;
		background-size:25px;
	}
	
	#project_flow_area>p{
		margin:0 auto 40px;
		font-size:15px;
		line-height:1.7;
	}
	
	#flow_table{
		margin:0 0 40px;
	}
	
	#flow_table th{
		width:40px;
		padding:20px 10px;
	}
	
	#flow_table th img{
		width:15px;
	}
	
	#flow_table td{
		padding:20px 0 20px 20px;
	}
	
	#flow_table td h2{
		font-size:30px;
	}
	
	#flow_table td h3{
		font-size:22px;
	}
	
	#flow_table td h3.small{
		font-size:18px;
	}
	
	#flow_table td p{
		font-size:15px;
		line-height:1.5;
	}
	
	#flow_table td p.small{
		font-size:14px;
	}
	
	#flow_table td .bg{
		padding:60px 0 0;
		background-size:40px;
		background-position:top left 60px;
	}
	
	#flow_table td ul.icon{
		margin:0 0 30px;
		font-size:14px;
	}
	
	#flow_table td ul.icon li{
		width:49%;
		margin:0 1% 0 0;
		text-align:left;
	}
	
	#flow_table td ul.icon li img{
		width:90px;
	}
	
	#flow_table td .point{
		flex-wrap:wrap;
		justify-content:center;
	}
	
	#flow_table td .point p{
		width:140px;
		height:140px;
		margin:0 10px 10px 0;
		padding:35px 10px;
		font-size:14px;
	}
}

#competitions_contents_area{
	max-width:1050px;
	margin:0 auto;
	padding:100px 40px 20px;
}

#competitions_contents_area a.btn_a{
	margin:0 auto;
}

#competitions_contents_area h2{
	margin:0 0 70px;
	padding:0 0 70px;
	text-align:center;
	font-size:35px;
	font-weight:700;
	line-height:1.2;
	background-image:url("../img/interface/ico_circle.png");
	background-repeat:no-repeat;
	background-size:35px;
	background-position:bottom center;
}

#competitions_contents_area img{
	width:100%;
	margin:0 0 70px;
}

#competitions_contents_area p{
	max-width:750px;
	margin:0 auto 50px;
	text-align:justify;
	font-size:18px;
	line-height:1.9;
}

#competitions_class_area{
	max-width:1050px;
	margin:0 auto;
	padding:100px 40px 120px;
}

#competitions_class_area a.btn_a{
	margin:0 auto 30px;
}

#competitions_class_area a.text{
	display:table;
	margin:0 auto;
	font-size:15px;
}

#competitions_class_area h2{
	margin:0 0 70px;
	padding:0 0 70px;
	text-align:center;
	font-size:35px;
	font-weight:700;
	line-height:1.2;
	background-image:url("../img/interface/ico_circle.png");
	background-repeat:no-repeat;
	background-size:35px;
	background-position:bottom center;
}

#competitions_class_area h3{
	margin:0 0 50px;
	text-align:center;
	font-size:24px;
	font-weight:700;
	line-height:1.3;
}

#competitions_class_area h3 span{
	background:linear-gradient(transparent 65%, #fed400 65%);
}

#competitions_class_area p{
	max-width:750px;
	margin:0 auto 70px;
	text-align:justify;
	font-size:18px;
	line-height:1.9;
}

#competitions_class_area .video{
	max-width:750px;
	margin:0 auto 60px;
	width:100%;
	height:0;
	padding:56% 0 0;
	position:relative;
}

#competitions_class_area .video iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}

@media only screen and (max-width:767px){
	#competitions_contents_area{
		padding:60px 20px 20px;
	}
	
	#competitions_contents_area h2{
		margin:0 0 40px;
		padding:0 0 40px;
		font-size:27px;
		background-size:25px;
	}
	
	#competitions_contents_area img{
		margin:0 0 30px;
	}
	
	#competitions_contents_area p{
		margin:0 auto 40px;
		font-size:15px;
		line-height:1.7;
	}
	
	#competitions_class_area{
		padding:60px 20px 120px;
	}
	
	#competitions_class_area a.btn_a{
		margin:0 auto 20px;
	}
	
	#competitions_class_area h2{
		margin:0 0 40px;
		padding:0 0 40px;
		font-size:28px;
		background-size:25px;
	}
	
	#competitions_class_area h3{
		margin:0 0 40px;
		font-size:20px;
	}

	#competitions_class_area p{
		margin:0 auto 40px;
		font-size:15px;
		line-height:1.7;
	}
}

#movies_contents_area{
	display:flex;
	flex-wrap:wrap;
	max-width:1200px;
	margin:0 auto;
	padding:100px 20px 150px;
}

#movies_contents_area div{
	width:33.33333333%;
	box-sizing:border-box;
	padding:0 20px 60px;
}

#movies_contents_area div img{
	width:100%;
	border-top:10px solid #000;
	border-bottom:10px solid #000;
}

#movies_contents_area div h2{
	margin:5px 0 0;
	padding:0 20px 0 0;
	font-size:17px;
	font-weight:500;
	line-height:1.3;
	color:#000;
	background-image:url("../img/interface/ico_arrow_right.png");
	background-repeat:no-repeat;
	background-size:15px;
	background-position:right center;
}

#movies_contents_area div a:hover{
	text-decoration:none;
}

@media only screen and (max-width:767px){
	#movies_contents_area{
		padding:60px 20px 120px;
	}
	
	#movies_contents_area div{
		width:100%;
		padding:0 0 30px;
	}
}


#entry_contents_area{
	max-width:900px;
	margin:0 auto;
	padding:100px 40px 150px;
}

#entry_contents_area h2{
	margin:50px 0 20px;
	font-size:24px;
	line-height:1.3;
}

#entry_contents_area h2 em{
	font-size:18px;
	font-style:normal;
	font-weight:400;
}

#entry_contents_area h3{
	margin:30px 0 15px;
	font-size:20px;
	font-weight:500;
	line-height:1.3;
}

#entry_contents_area p{
	text-align:justify;
	font-size:15px;
	line-height:1.7;
}

#entry_contents_area ul{
	margin:0;
	padding:0 0 0 25px;
	font-size:15px;
	line-height:1.7;
}

#entry_contents_area ul li{
	margin:0 0 5px;
}

#entry_contents_area ol{
	margin:0;
	padding:0 0 0 25px;
	font-size:15px;
	line-height:1.7;
}

#entry_contents_area ol li{
	margin:0 0 5px;
}

#entry_input_area{
	margin:50px 0 0;
	padding:10px 30px 30px;
	border:2px solid #fed400;
	border-radius:10px;
}

#entry_input_area .agreement p{
	text-align:center;
}

#entry_form_area.disable{
	opacity:0.5;
}

#entry_form_area.disable input,
#entry_form_area.disable select{
	pointer-events:none;
}

#entry_form_area table.form{
	width:100%;
	box-sizing:border-box;
	border-collapse:collapse;
}

#entry_form_area table.form th{
	display:block;
	padding:20px 0 5px;
	text-align:left;
	font-size:15px;
	font-weight:500;
}

#entry_form_area table.form th span,
#entry_contents_area .agreement span{
	display:inline-block;
	margin:0 0 0 5px;
	padding:3px 6px 5px;
	font-size:12px;
	line-height:1;
	color:#fff;
	background-color:#dd020b;
	border-radius:5px;
}

#entry_form_area span.required{
	display:inline-block;
	margin:0 0 0 5px;
	padding:3px 6px 5px;
	font-size:12px;
	line-height:1;
	color:#fff;
	background-color:#dd020b;
	border-radius:5px;
}

#entry_form_area table.form td{
	display:block;
	padding:0 0 20px;
	font-size:15px;
	font-weight:400;
	border-bottom:1px solid #e9e9e9;
}

#entry_form_area table.form td p{
	margin:15px 0 5px;
}

#entry_form_area .description{
	margin:0;
	font-size:15px;
	font-weight:400;
	line-height:1.6;
	color:#0095b3;
	word-break:break-all;
}

#entry_form_area .description.red{
	padding:5px 10px;
	color:#fff;
	background-color:#cc0a11;
}

#entry_form_area .description.red.margin{
	margin:5px 0;
}

#entry_form_area span.description{
	display:inline-block;
}

#entry_form_area b.description{
	display:inline-block;
}

#entry_lead_area .description.red{
	display:inline-block;
	margin:5px 0 0;
	padding:5px 10px;
	color:#fff;
	background-color:#cc0a11;
}

#entry_contents_area .btn_area .description{
	margin:0;
	font-size:15px;
	font-weight:400;
	line-height:1.6;
	color:#0095b3;
	word-break:break-all;
}

#entry_contents_area .btn_area span.description{
	display:inline-block;
}

input,
button,
select,
textarea{
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}

input[type='submit'],
input[type='button'],
label,
button,
select {
	cursor: pointer;
}

#entry_form_area table.form input[type='text']{
	width:50%;
	box-sizing:border-box;
	padding:10px;
	border:1px solid #ddd;
	font-size:15px;
}

#entry_form_area table.form input.wide{
	box-sizing:border-box;
	width:100%;
}

#entry_form_area table.form input.narrow{
	max-width:200px;
}

#entry_form_area input[type='checkbox']{
	width:20px;
	height:20px;
	border:1px solid #ddd;
	vertical-align:-4px;
}

#entry_input_area input[type='checkbox']{
	width:20px;
	height:20px;
	border:1px solid #ddd;
	vertical-align:-4px;
}

#entry_form_area input[type='radio']{
	width:20px;
	height:20px;
	border:1px solid #ddd;
	vertical-align:-2px;
}

#entry_form_area table.form textarea{
	box-sizing:border-box;
	width:100%;
	padding:10px;
	border:1px solid #ddd;
	font-size:15px;
	background-color:#fff;
}

#entry_form_area table.form select{
	width:100%;
	box-sizing:border-box;
	padding:5px;
	vertical-align:middle;
	font-size:15px;
	border:1px solid #ddd;
}


#entry_form_area table.form .margin input[type='text']{
	width:49%;
	margin:0 1% 0 0;
}

#entry_form_area .toggle_title{
	margin:30px 0 15px;
	padding:0 0 15px 25px;
	font-size:17px;
	font-weight:400;
	line-height:1.4;
	border-bottom:1px solid #ccc;
	background-image:url("../img/interface/ico_arrow_down2.png");
	background-repeat:no-repeat;
	background-size:15px;
	background-position:left top 10px;
}

#entry_form_area .toggle_title.open{
	background-image:url("../img/interface/ico_arrow_up.png");
}

#entry_form_area .toggle_title_contents{
	margin:0 0 80px;
}

#entry_form_area .toggle_check_contents{
	margin:0 0 50px;
	padding:20px;
	background-color:#f5f5f5;
	border-radius:5px;
}

#entry_form_area .list_radio{
	margin:0;
	padding:0;
	list-style-type:none;
}

#entry_form_area .list_radio li{
	margin:0 0 1em;
	overflow:hidden;
}

#entry_form_area .list_radio li .radio{
	float:left;
}

#entry_form_area .list_radio li label{
	float:right;
	width:calc(100% - 30px);
}


#entry_contents_area .btn_area{
	margin:50px 0 0;
	text-align:center;
}

#entry_contents_area .btn_area .btn_go{
	margin:0 0 20px;
	padding:15px 40px 17px;
	font-size:18px;
	color:#fff;
	background-color:#003bb2;
	border-radius:10px;
}

#entry_contents_area .btn_area .btn_back{
	margin:0 0 20px;
	padding:15px 40px 17px;
	font-size:18px;
	background-color:#ddd;
	border-radius:10px;
}

#entry_contents_area .btn_add{
	box-sizing:border-box;
	margin:0 0 15px;
	padding:15px 15px 17px;
	font-size:15px;
	color:#003bb2;
	border-radius:3px;
	border:1px solid #ccc;
}

#entry_contents_area .uploaded{
	display:inline-block;
	margin:15px 0 0;
	padding:12px 40px 15px;
	font-size:15px;
	border:1px solid #003bb2;
	border-radius:3px;
}

#entry_contents_area .uploaded button img{
	width:14px;
	margin:0 0 0 10px;
}


@media only screen and (max-width:767px){
	#entry_contents_area{
		padding:40px 20px 120px;
	}
	#entry_contents_area h2{
		margin:40px 0 20px;
		font-size:22px;
	}
	
	#entry_contents_area h2 em{
		font-size:16px;
	}
	
	#entry_contents_area h3{
		font-size:18px;
	}
	
	#entry_contents_area p{
		font-size:14px;
		line-height:1.6;
	}
	
	#entry_contents_area ul{
		font-size:14px;
		line-height:1.6;
		word-break:break-all;
	}
	
	#entry_contents_area ol{
		font-size:14px;
		line-height:1.6;
	}
	
	#entry_input_area{
		margin:40px 0 0;
		padding:0 20px 30px;
	}
	
	#entry_form_area table.form input[type='text']{
		width:100%;
		font-size:14px;
	}

	#entry_form_area table.form input.narrow{
		width:50%;
	}

	#entry_form_area .btn_area span{
		text-align:justify;
	}
#entry_form_area table.form select.wide{
	width:90%;
}

}



/* #class_flow_area */

#class_flow_area{
	max-width:1050px;
	margin:0 auto;
	padding:100px 40px 120px;
}

#class_flow_area h2{
	margin:0 0 70px;
	padding:0 0 70px;
	text-align:center;
	font-size:35px;
	font-weight:700;
	line-height:1.2;
	background-image:url("../img/interface/ico_circle.png");
	background-repeat:no-repeat;
	background-size:35px;
	background-position:bottom center;
}

#class_flow_area p{
	font-size:18px;
	line-height:1.5;
	margin:0 0 30px;
	text-align:justify;
}

#class_flow_area>p{
	line-height:1.9;
	max-width:700px;
	margin:0 auto 70px;
}

#class_flow_area .img_right{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#class_flow_area ul{
	margin: 0px;
	padding: 0 0 30px 20px;
	text-align:justify;
	font-size:18px;
	line-height:1.5;
}

#class_flow_area ul li::marker {
  color: #0666A8;
}

#class_table{
	width:100%;
	margin:0 0 60px;
	border-collapse:collapse;
	border-bottom:1px solid #e9e9e9;
}

#class_table th{
	padding:30px 20px;
	font-size: 25px;
	box-sizing:border-box;
	border-top:1px solid #e9e9e9;
	vertical-align: top;
	white-space:nowrap;
}

#class_table th span{
	display: block;
	font-size:55px;
	color: #0666a8;
}

#class_table tr:first-of-type th{
	background-color:#ddf7fa;
}

#class_table tr:nth-of-type(2) th{
	background-color:#b2ebf2;
}

#class_table tr:nth-of-type(3) th{
	background-color:#80deea;
}

#class_table tr:nth-of-type(4) th{
	background-color:#71c8e0;
}

#class_table tr:nth-of-type(5) th{
	background-color:#FFB80D;
}

#class_table td{
	box-sizing:border-box;
	padding:30px 40px 80px;
	border-top:1px solid #e9e9e9;
}

#class_table tr:nth-of-type(5) td {
	padding:25px 40px;
}

#class_table td.bg {
	background-image: url(../img/interface/ico_arrow_down.png);
	background-repeat: no-repeat;
	background-size: 50px;
	background-position: bottom 25px left 130px;
}

#class_table td h3{
	margin:0 0 30px;
	font-size: 36px;
	line-height:1.2;
	font-weight:600;
}

#class_table tr:nth-of-type(5) h3{
	color: #0063a4;
	font-weight: 800;
	margin: 0;
}

#class_table tr:first-of-type td p:last-child{
	padding: 20px;
	border: 3px solid #FFD400;
	border-radius: 10px;
	background-color: #fff8ed;
}

#class_table tr:nth-of-type(2) td>div{
	margin: 0 0 30px;
}

#class_flow_area img{
	width: 220px;
	margin: 0 0 0 25px;
}

#class_flow_area img.img_height{
	width: auto;
	height: 190px;
}

#class_flow_area #class_table tr:first-of-type img{
	width: 170px;
}

#class_flow_area #class_table tr:nth-of-type(5) img{
	width: 330px;
}

#class_flow_area aside{
	max-width: 800px;
	margin:0 0 50px;
	font-size: 18px;
	line-height: 1.5;
}

#classifier{
	padding:40px;
	background-color:#FFF4DF;
	border:2px solid #0666a8;
	border-radius:10px;
	overflow:hidden;
}

#classifier h4{
	font-size: 28px;
	line-height: 1.4;
	font-weight: 800;
	color: #0063a4;
	margin:0 0 20px;
}

#classifier h4 span{
	background:linear-gradient(transparent 60%, #FFD400 40%);
}

#classifier>div{
	width:calc(100% - 200px);
	float: left;
}

#classifier img{
	width: 170px;
	float:right;
}


@media only screen and (max-width:1000px){
	#class_table td.bg {
		background-position: bottom 25px center;
	}

	#class_table th{
		display: flex;
		align-items: center;
		padding: 24px 50px;
		border-top:none;
	}

	#class_table td{
		display: block;
		width: 100%;
		border-top:none;
	}

	#class_table th span{
		margin:0 15px 0 0;
	}

	#class_table tr:first-of-type td p:last-child{
		margin: 20px 0 30px;
	}

}

@media only screen and (max-width:767px){
	#sub_key_area{
		padding:50px 20px 80px;
	}
	
	#sub_key_area h1{
		font-size:32px;
	}

	#class_flow_area{
		padding: 60px 20px 70px;
	}
	
	#class_flow_area h2{
		margin: 0 0 40px;
		padding: 0 0 40px;
		font-size: 28px;
		background-size: 25px;
	}

	#class_flow_area p{
		font-size:15px;
		line-height:1.5;
	}

	#class_flow_area>p{
		margin: 0 auto 40px;
		line-height: 1.7;
	}

	#class_flow_area .img_right{
		display: block;
	}

	#class_flow_area ul{
		font-size: 15px;
	}

	#class_table{
		margin: 0 0 40px;
	}

	#class_table th{
		font-size: 20px;
		padding: 20px 20px;
		border-top:none;
	}

	#class_table th span{
		margin:0 10px 0 0;
		font-size:45px;
	}

	#class_table td{
		padding: 20px 10px 100px;
		text-align:center;
		border-top:none;
	}

	#class_table td.bg {
		background-position: bottom 25px center;
	}

	#class_table tr:first-of-type td p:last-child{
		margin: 20px 0 0px;
	}
	#class_table tr:nth-of-type(5) td {
		padding: 20px;
	}

	#class_table td h3{
		font-size: 24px;
		margin: 0 0 20px;
	}

	#class_table td img{
		margin:0;
	}

	#class_table td div img.img_height{
		height: 170px;
		margin: 0 10px 10px;
	}
	
	#class_table tr:nth-of-type(2)>td>div:last-of-type{
		margin:0;
	}

	#class_flow_area #class_table tr:nth-of-type(5) img{
		width: 300px;
		margin: 30px 0 0;
	}
	
	#class_flow_area aside{
		margin:0 0 30px;
	}

	#classifier{
		padding:30px;
		text-align:center;
	}

	#classifier h4{
		text-align:left;
		font-size: 24px;
		line-height: 1.2;
	}

	#classifier>div{
		width: 100%;
		float: none;
	}

	#classifier img{
		width: 150px;
		float: none;
	}
}


#class_im_area {
	clear: both;
	max-width:1050px;
	margin:0 auto;
	padding:0px 40px 120px;
}

#class_im_area>div{
	max-width:1050px;
	margin:0 auto;
	padding: 0 30px 30px;
	border: solid 4px #b8241e;
	border-radius: 15px;
	text-align: center;
}

#class_im_area>div h3{
	display: inline-block;
	margin:0 0 30px;
	padding: 15px;
	font-size: 30px;
	line-height:1.5;
	font-weight:600;
	color: #fff;
	background-color: #b8241e;
	border-radius: 0 0 15px 15px;
}

#class_im_area>div p{
	max-width: 930px;
	margin:0 auto 30px;
	text-align:justify;
	font-size:18px;
	line-height:1.5;
}

#class_im_area div div {
	padding: 15px 0;
	background-color: #b8241e;
}

#class_im_area div div p{
	font-size:24px;
	font-weight: 600;
	line-height:1.5;
	color: #ffee34;
	margin: 0;
	text-align: center;
}

#class_im_area>div ul{
	max-width: 950px;
	margin: 30px auto;
	padding: 0;
	gap: 10px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	list-style-type: none;
	text-align: center;
}

#class_im_area>div ul li{ 
	width: 32%;
	box-sizing: border-box;
	padding: 20px;
	border: solid 2px #ccc;
	border-radius: 15px;
	font-size:18px;
	line-height:1.9;
}

#class_im_area>div ul li img{
	height: 100px;
} 

#class_im_area>div ul li p{
	margin:20px 0 0;
	text-align: center;
	font-size:16px;
	line-height:1.2;
}

@media only screen and (max-width:767px){
	#class_im_area {
		padding: 0 20px 70px;
	}
	
	#class_im_area>div{
		padding: 0px;
	}
	
	#class_im_area>div h3{
		width: 100%;
		border-radius: 0;
		font-size:24px;
		padding: 15px 0;
	}
	
	#class_im_area>div p{
		font-size:15px;
		padding: 0 15px;
	}
	
	#class_im_area>div ul{
		padding: 0px 10px;
	}
	
	#class_im_area>div ul li{ 
		width: 100%;
	}
	
	#class_im_area>div ul li p{
		font-size:15px;
	}

	#class_im_area div div p {
    font-size: 22px;
	}
}

#class_message_area {
	max-width:1050px;
	margin:0 auto;
	padding:0px 40px 120px;
}

#class_message_area h3{
	margin: 0 0 50px;
	padding: 0 0 70px;
	text-align: center;
	font-size: 35px;
	font-weight: 700;
	line-height: 1.2;
	background-image: url(../img/interface/ico_circle.png);
	background-repeat: no-repeat;
	background-size: 35px;
	background-position: bottom center;
}

#class_message_area>div>div>p{
	font-size: 18px;
	line-height: 1.9;
	text-align: justify;
}

#class_message_area>div>div:first-child{
	float: right;
	text-align: center;
}

#class_message_area>div>div:first-child p{
	font-size: 18px;
	font-weight: 600;
	line-height: 1.5;
	margin: 0px;
	text-align: center;
	color: #ffae00;
}

#class_message_area div img{
	width: 280px;
	margin: 0 0px 10px 40px;
}


@media only screen and (max-width:767px){
	#class_message_area {
		padding: 0 20px 70px;
	}
	
	#class_message_area h3{
		margin: 0 0 40px;
		padding: 0 0 40px;
		font-size: 28px;
		background-size: 25px;
	}
	
	#class_message_area>div>div>p{
		font-size: 15px;
		line-height: 1.5;
	}
	
	#class_message_area>div>div:first-child{
		float: none;
	}
	
	#class_message_area>div>div:first-child p{
		font-size: 16px;
	}
	
	#class_message_area div img{
		width: 240px;
		margin: 0 0px 10px 0px;
	}
}

#class_flyer_area{
	margin:0 0 150px;
	padding:0 20px;
	text-align:center;
}

#class_flyer_area a{
	font-size:15px;
	color:#0063a4;
	text-decoration:none;
}

#class_flyer_area img{
	width:300px;
	border:1px solid #ddd;
}
