@charset "UTF-8";

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

.showpc {
	display: block !important;
}

.showsp {
	display: none !important; 
}

.brsp {
	display: none; 
}

.brpc {
	display: inherit; 
}

@media screen and (max-width:768px){
	body{
		min-width: 100%;
	}
	.showpc {
		display: none !important; }
	.showsp {
		display: block !important; }
	.brsp {
		display: inherit; }
	.brpc {
		display: none; }
}


/* cmn layout
---------------------------------------------------------- */
#spheader {
	display:none;
}

@media screen and (max-width:768px){
	#header {
		display:none;
	}

	#container {
		padding-bottom:0px;
	}

	#container,#content {
		width:100%;
	}

	#spheader {
		display:block;
		height:42px;
		width:100%;
		box-sizing:border-box;
		padding:7.5px 5% 5.5px 3%; 
	}

	#spheader h1 {
		float:left;
	}
	#spheader h1 img{
		width:88.5px;
	}

	#spheader .navi_btn {
		float:right;
		padding:3.5px 0 0;
		position:relative;
		z-index:200;
	}

	#sp_header_menu {}
	#sp_header_menu ul {
			background: rgba(0, 0, 0, 0.8);
		overflow:hidden;
		width:100%;
		padding:17px 7% 13px;
		box-sizing:border-box;
		}
		
	#sp_header_menu ul li {
		color:#ffffff;
		text-align:left;
		float:left;
		width:50%;
		font-size:3.0vw;
		margin-bottom:10px;
		white-space:nowrap;
	}

	#sp_header_menu ul li a {
		color:#ffffff;
	}

}


/* curriculum
---------------------------------------------------------*/
#curriculum{
	width: 960px;
	margin: 20px auto 0;
}

.cnav_bg{
	position: relative;
}

@media (max-width: 768px) {
	#curriculum{
		width: 100%;
		margin-top: 0px;
	}
}	

.crclm_nav_all{
	position: absolute;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: -58% 3%;
	width: 94%;
}

.crclm_nav_up{
	display: flex;
	justify-content: center;
}

.crclm_nav_up{
	width: 100%;
}

.crclm_nav_dw{
	display: flex;
	justify-content: center;
	margin: 0 auto;
}

.crclm_nav_dw{
	width: 100%;
}

.crclm_nav_all .nav01{
	padding-right: 15px;
}

.crclm_nav_all .nav02{
	padding-right: 15px;
}

.crclm_nav_all .nav04{
	padding-right: 25px;
}

.nav04, .nav05{
	padding-top: 25px;
}

.class01 img{
	margin-top: 0px;
}

.class02 img{
	margin-top: 0px;
}

.class03 img{
	margin-top: 0px;
}

.class04 img{
	margin-top: 0px;
}

.class05 img{
	margin-top: 0px;
}

.nav_bk{
	margin-top: 0px;
}

.sub img{
	margin-top: 0px;
}

@media screen and (max-width:768px){
	.nav_bk{
		margin-top: -1px;
	}

	.sub img{
		margin-top: -1px;
	}
}


@media screen and (max-width:768px){
	.crclm_nav_all{
		display: block;
		width: 74%;
		margin: -58% 13%;
}

	.crclm_nav_up{
		display: flex;
		justify-content: center;
	}
	
	.crclm_nav_up{
		width: 100%;
	}
	
	.crclm_nav_dw{
		display: flex;
		justify-content: center;
		margin: 0 auto;
	}
	
	.crclm_nav_dw{
		width: 66%;
	}

	.crclm_nav_all .nav01{
		padding-right: 0px;
	}
	
	.crclm_nav_all .nav02{
		padding-right: 0px;
	}
	
	.crclm_nav_all .nav04{
		padding-right: 0px;
	}
	
	.nav04, .nav05{
		padding-top: 20px;
	}
}


/* class01
---------------------------------------------------------*/
.class01 {
	position: relative;
	width: 960px;
}

.class01 .class01_mov {
	width: 680px;
	position: absolute;
	left: 145px;
	top: 274px;
}

.class01 .class01_mov .inner {
  position: relative;
  height: 0;
  padding: 0 0 56.25%;
  overflow: hidden;
}

.class01 .class01_mov iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
}

@media screen and (max-width:768px){
	.class01 {
		position: relative;
		width: 100%;
	}

	.class01 img{
		margin-left: 0px;
		margin-top: -1px;
	}

	.class01 .class01_mov {
		width: 70%;
		position: absolute;
		left: 16%;
		top: auto;
		bottom: 21%;
	}
}

/* class02
---------------------------------------------------------*/
.class02 {
	position: relative;
	width: 960px;
}

.class02 .class02_mov {
	width: 680px;
	position: absolute;
	left: 145px;
	top: 274px;
}

.class02 .class02_mov .inner {
  position: relative;
  height: 0;
  padding: 0 0 56.25%;
  overflow: hidden;
}

.class02 .class02_mov iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
}

@media screen and (max-width:768px){
	.class02 {
		position: relative;
		width: 100%;
	}

	.class02 img{
		margin-left: 0px;
		margin-top: -1px;
	}

	.class02 .class02_mov {
		width: 70%;
		position: absolute;
		left: 16%;
		top: auto;
		bottom: 21%;
	}
}

/* class03
---------------------------------------------------------*/
.class03 {
	position: relative;
	width: 960px;
}

.class03 .class03_mov {
	width: 680px;
	position: absolute;
	left: 145px;
	top: 274px;
}

.class03 .class03_mov .inner {
  position: relative;
  height: 0;
  padding: 0 0 56.25%;
  overflow: hidden;
}

.class03 .class03_mov iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
}

@media screen and (max-width:768px){
	.class03 {
		position: relative;
		width: 100%;
	}

	.class03 img{
		margin-left: 0px;
		margin-top: -1px;
	}

	.class03 .class03_mov {
		width: 70%;
		position: absolute;
		left: 16%;
		top: auto;
		bottom: 21%;
	}
}

/* class04
---------------------------------------------------------*/
.class04 {
	position: relative;
	width: 960px;
}

.class04 .class04_mov {
	width: 680px;
	position: absolute;
	left: 145px;
	top: 274px;
}

.class04 .class04_mov .inner {
  position: relative;
  height: 0;
  padding: 0 0 56.25%;
  overflow: hidden;
}

.class04 .class04_mov iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
}

@media screen and (max-width:768px){
	.class04 {
		position: relative;
		width: 100%;
	}

	.class04 img{
		margin-left: 0px;
		margin-top: -1px;
	}

	.class04 .class04_mov {
		width: 70%;
		position: absolute;
		left: 16%;
		top: auto;
		bottom: 21%;
	}
}

/* class05
---------------------------------------------------------*/
.class05 {
	position: relative;
	width: 960px;
}

.class05 .class05_mov {
	width: 680px;
	position: absolute;
	left: 145px;
	top: 274px;
}

.class05 .class05_mov .inner {
  position: relative;
  height: 0;
  padding: 0 0 56.25%;
  overflow: hidden;
}

.class05 .class05_mov iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
}

@media screen and (max-width:768px){
	.class05 {
		position: relative;
		width: 100%;
	}

	.class05 img{
		margin-left: 0px;
		margin-top: -1px;
	}

	.class05 .class05_mov {
		width: 70%;
		position: absolute;
		left: 16%;
		top: auto;
		bottom: 2%;
	}
}


/* common
---------------------------------------------------------*/
a:hover img{
	filter: alpha(opacity=70);
	-moz-opacity:0.5;
	opacity:0.5;
}

img {
	vertical-align:bottom;
}

@media screen and (max-width:768px){
	img {
		vertical-align:bottom;
	}
}