@charset "utf-8";


#header.sub .container{
	background-size: 240px ;
	background-position: left 80px bottom , right 80px bottom ;
}
.maincontents{
	position: relative ;
	min-height: 500px ;
}
.maincontents::before{
	position: absolute ;
	content: " " ;
	height: 130px ;
	width: 100% ;
	z-index: -1 ;
	top: -60px ;
	left: 0 ;
}
/* eng */
.maincontents.eng::before{
	background: url(../images/bg_eng.jpg) repeat center ;
}
/* math */
.maincontents.math::before{
	background: url(../images/bg_math.jpg) repeat center ;
}
/* sci */
.maincontents.sci::before{
	background: url(../images/bg_sci.jpg) repeat center ;
}
/* so */
.maincontents.so::before{
	background: url(../images/bg_so.jpg) repeat center ;
}
/* jpn */
.maincontents.jpn::before{
	background: url(../images/bg_jpn.jpg) repeat center ;
}

/*==============================================================

h2

=================================================================*/
.h2.sub{
	width: 100% ;
	padding-top: 30px ;
	margin-bottom: 30px ;
}
.h2.sub h2{
	position: relative ;
	display: inline-block ;
}
.maincontents .h2.sub h2::after{
	position: absolute ;
	content: " " ;
	width: 122px ;
	height: 63px ;
	right: -118px ;
	top: 10px ;
	background-repeat: no-repeat ;
	background-position: center ;
}
/* eng */
.maincontents.eng .h2.sub h2::after{
	background-image: url(../images/h2_eng_af.png) ;
}
/* math */
.maincontents.math .h2.sub h2::after{
	background-image: url(../images/h2_math_af.png) ;
}
/* sci */
.maincontents.sci .h2.sub h2::after{
	background-image: url(../images/h2_sci_af.png) ;
}
/* so */
.maincontents.so .h2.sub h2::after{
	background-image: url(../images/h2_so_af.png) ;
}
/* jpn */
.maincontents.jpn .h2.sub h2::after{
	background-image: url(../images/h2_jpn_af.png) ;
}

@media (max-width: 991px){
	#header.sub .container{
		background-size: 32% ;
		background-position: left bottom , right bottom ;
	}
}
@media (max-width: 767px){
	#header.sub .container{
		background-size: 160px ;
	}
	.maincontents::before{
		height: 100px ;
	}
	.maincontents .h2.sub{
		text-align: center ;
		padding-top: 15px ;
		margin-bottom: 20px ;
	}
	.maincontents .h2.sub img{
		width: 70% ;
		max-width: 100% ;
	}
	.maincontents .h2.sub h2::after{
		content: none ;
	}
}

/* contents table */

.movie_contents{
	padding-bottom: 30px ;
}
.movie_contents table{
	width: 100% ;
	margin-bottom: 30px ;
	max-width: 1000px ;
	margin-left: auto ;
	margin-right: auto ;
}
.movie_contents table tr{
	position: relative ;
	z-index: 1 ;
	transition: all 0.3s ;
	border-bottom: #c2f1ff dashed 2px ;
}
/*.movie_contents table tr:hover{
	position: relative ;
	z-index: 100 ;
	box-shadow: 0px 3px 10px rgba(0, 0, 0, 0.15) ;
	background-color: #fff ;
}*/
.movie_contents table tr.head th{
	padding: 13px 15px ;
	background-color: #f3f8e4 ;
	border-bottom: #4cb848 2px solid ;
	font-size: 1.2em ;
	color: #116e28 ;
	line-height: 1em ;
}
.movie_contents table tr.head:hover{
	box-shadow: none ;
}
.movie_contents table tr td{
	padding: 15px ;
	transition: all 0.3s ;
	vertical-align: middle ;
}
.movie_contents table tr td:first-child{
	width: 35px ;
	color: #f45e1f ;
	padding-right: 0px ;
	text-shadow: 2px 2px 0px rgba(0, 0, 0, 0.13) ;
	text-align: center ;
}
.movie_contents table tr.kakunin{
	background-color: #fef2da ;
	border-bottom: 0 ;
}
.movie_contents table tr.kakunin td:first-child{
	width: inherit ;
	color: #000 ;
	text-shadow: none ;
	position: relative ;
	padding: 15px ;
	padding-left: 120px ;
	text-align: left ;
}
.movie_contents table tr.kakunin td:first-child::before{
	position: absolute ;
	background: url(../images/kakunintest.png) no-repeat center ;
	height: 22px ;
	width: 95px ;
	margin-right: 10px ;
	left: 15px ;
	top: 13px ;
	content: " " ;
}
.movie_contents table tr td.tb{
	width: 140px ;
	position: relative ;
}
.movie_contents table tr td.yt{
	width: 120px ;
	position: relative ;
}
.movie_contents table tr td.tb a,
.movie_contents table tr td.yt a{
	position: absolute ;
	top: 0 ;
	left: 0 ;
	width: 100% ;
	text-align: center ;
	padding: 15px ;
	display: block ;
}
.movie_contents table tr td.tb a{
	color: #32aff0 ;
}
.movie_contents table tr td.yt a{
	color: #ff6161 ;
}
.movie_contents table tr td.tb a::after{
	content: "Thinkborad" ;
	margin-left: 3px ;
}
.movie_contents table tr td.yt a::after{
	content: "Youtube" ;
	margin-left: 3px ;
}
.movie_contents table tr td.tb a::before{
	content: "\f019" ;
	font-family: 'Font Awesome 5 Free' ;
}
.movie_contents table tr td.yt a::before{
	content: "\f167" ;
	font-family: 'Font Awesome 5 Brands' ;
}
.movie_contents table tr td.tb a:hover{
	background-color: rgba(50, 175, 240, 0.10) ;
}
.movie_contents table tr td.yt a:hover{
	background-color: rgba(255, 97, 97, 0.10) ;
}
.movie_contents table tr td span.img img,
.movie_contents table tr th span.img img{
	margin-top: -5px ;
}
@media (max-width: 767px){
	.maincontents .container{
		padding-left: 0 ;
		padding-right: 0 ;
	}
	.movie_contents table tr td{
		padding: 15px 5px ;
	}
	.movie_contents table tr td:first-child{
		width: 30px ;
	}
	.movie_contents table tr td.tb,
	.movie_contents table tr td.yt{
		width: 40px ;
	}
	.movie_contents table tr td.tb a,
	.movie_contents table tr td.yt a{
		padding: 13px ;
	}
	.movie_contents table tr td.tb a::after,
	.movie_contents table tr td.yt a::after{
		content: none ;
	}
	.movie_contents table tr.kakunin td:first-child{
		padding: 15px 5px ;
		padding-left: 85px ;
	}
	.movie_contents table tr.kakunin td:first-child::before{
		width: 70px ;
		background-size: 100% ;
		top: 10px ;
		left: 10px ;
	}
	.movie_contents table tr th span.img img{
		height: 20px ;
	}
	.movie_contents table tr td span.img img{
		height: 17px ;
	}
}

/* disc */

.disc_movie{
	margin-bottom: 40px ;
	max-width: 900px ;
	margin-left: auto ;
	margin-right: auto ;
}
.disc_movie .in{
	display: flex ;
}
.disc_movie .in .img{
	width: 240px ;
	text-align: center ;
}
.disc_movie .in .text{
	line-height: 1.7em ;
	padding-top: 20px ;
	color: #888 ;
	padding: 10px ;
}
.disc_movie .in .text .tb{
	color: #32aff0 ;
}
.disc_movie .in .text .yt{
	color: #ff6161 ;
}
.disc_movie .in .text a{
	color: #2379c9 ;
	text-decoration: underline ;
}
@media (max-width: 767px){
	.disc_movie{
		margin-bottom: 20px ;
	}
	.disc_movie .in .img{
		display: none ;
	}
	.disc_movie .text{
		font-size: 0.9em ;
	}
}

/* attention */

.attention{
	padding-top: 30px ;
}
.attention p{
	width: 100% ;
	text-align: center ;
	line-height: 2em ;
}
.attention p a{
	text-decoration: underline ;
	color: #2379c9 ;
}

/* 団体用================================================================= */

.maincontents.dantai::before{
	height: 90px ;
	top: 0px ;
}
.dantai .h2.sub{
	padding-top: 50px ;
}
@media (max-width: 767px){
	.maincontents.dantai::before{
		height: 75px ;
		}
}
#header .btn_smalc.dantai a{
	background-color: #ffe63e ;
	color: #000 ;
}


