@charset "utf-8";
/* CSS Document */
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

html{
	font-size:62.5%;
}

body{
	font-family: 'Noto Sans Japanese', sans-serif;
	font-size:1.0rem;
	color:#666666;
	-webkit-text-size-adjust: 100%;
}

.pc_obj{
	display:none;
}

.sp_obj{
	display:block;
}

.cf:after {
	content: "";
	clear: both;
	display: block;
}

a{
	text-decoration:none;
}

a:hover{
	opacity:0.7;
}

img{
	width:100%;
	height:auto;
	vertical-align:bottom;
}

.inner{
	width:92%;
	margin:auto;
}

/* header */
header{
	width: 100%;
	padding: 0;
	top: 0;
	height:50px;
	position: fixed;
	margin-top: 0;
	line-height: 1;
	z-index: 9999;
}

header a,
header {
	color: #fff;
	text-decoration: none;
}
header .inner {
	position: relative;
	width:100%;
}

#mobile-head {
	background: #fff;
	width: 100%;
	height: 50px;
	z-index: 999;
	position: relative;
}

/* 2020.06.04 スマホ表示の時にヘッダに体験・問い合わせボタン表示 */
#mobile-head .menu_btn{
	width:92%;
	margin:0 auto;
	text-align:center;
	display: block;
	position: absolute;
	left: 15px;
	top: 50px;
}

#mobile-head .menu_btn p{
	width:48.4%;
}

#mobile-head .menu_btn p a{
	display:block;
	color:#fff;
	font-size:1.3rem;
	padding:6% 2%;
	letter-spacing:0.1rem;
}

#mobile-head .menu_btn .btn01{
	float:left;
	background:#17aaec;
}

#mobile-head .menu_btn .btn02{
	float:right;
	background:#aacd06;
}

/* 2020.06.04 ここまで */

#top-head.fixed {
	padding-top: 0;
	background: transparent;
}

#top-head.fixed .logo,
header .logo {
	position: absolute;
	left: 15px;
	top: 9px;
	width:80%;
}

header .logo img,#top-head.fixed .logo img{
	max-width:300px;
}
#mobile-head #topNewsAdd{
  font-size: 0;
  line-height: 0;
  text-align: center;
  padding-top: 50px;
}
#mobile-head #topNewsAdd a{
  display: inline-block;
  margin: 0 auto;
}
#mobile-head #topNewsAdd a img{
  max-width: 100%;
  height: auto;
}






#global-nav {
	position: absolute;
	/* 開いてないときは画面外に配置 */
	top: -600px;
	background: #fff;
	width: 100%;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}

#global-nav ul li {
	background:#e61874;
	border-bottom:2px solid #fff;
	font-size: 1.4rem;
	line-height:1.8;
}
#global-nav ul li:nth-child(even){
	background:#d01669;
}

#global-nav ul li:last-child{
	border-bottom:none;
}

header #global-nav ul li a,#top-head.fixed #global-nav ul li a {
	width: 92%;
	display: block;
	color: #fff;
	padding: 3% 4%;
	letter-spacing:0.2rem;
}
#nav-toggle {
	display: block;
}

/* #global-nav スライドアニメーション */
.open #global-nav {
/* #global-nav top + #mobile-head height */
	-moz-transform: translateY(650px);
	-webkit-transform: translateY(650px);
	transform: translateY(650px);
}

#global-nav .menu_btn{
	width:92%;
	margin:3% auto;
	text-align:center;
}

#global-nav .menu_btn p{
	width:48.4%;
}

#global-nav .menu_btn p a{
	display:block;
	color:#fff;
	font-size:1.3rem;
	padding:7% 2%;
	letter-spacing:0.1rem;
}

#global-nav .menu_btn .btn01{
	float:left;
	background:#17aaec;
}

#global-nav .menu_btn .btn02{
	float:right;
	background:#aacd06;
}

/* Toggle Button */
#nav-toggle {
    display: block;
	position: absolute;
	right: 0;
	top: 9px;
	width: 45px;
	height: 30px;
	cursor: pointer;
	z-index: 101;
	background:url(../img/menu_open.png) no-repeat center top;
	background-size:45px 30px;
}

.open #nav-toggle {
	background:url(../img/menu_close.png) no-repeat center top;
	background-size:45px 30px;
}

.snsCounter ul {
    padding:10px 0 5px;
	text-align: right;

}
.snsCounter ul li {
    display: inline-block;
    vertical-align: top;
    line-height: 1;
	padding-bottom:5px;
	padding-left:3px;
}

/*--------------------------
footer
----------------------------*/

footer{
	background:#999999;
	position:relative;
}

footer ul{
	padding:4% 0;
}

footer ul li{
	width:48%;
	float:left;
}

footer ul li:last-child{
	float:right;
}

footer ul li a{
	display:block;
	margin:auto;
	padding:5% 0;
	color:#fff;
	font-size:1.0rem;
	text-align:center;
	border:1px solid #fff;
	letter-spacing:0.1rem;
}


footer #copy{
	padding:4% 0 6%;
	background:#fff;
	color:#999999;
	font-size:1rem;
	text-align:center;
}

footer #btnTop{
	position:absolute;
	right:4%;
	bottom:10%;
	width:11%;
	cursor:pointer;
}

footer #btnTop:hover{
	opacity:0.8;
}

/*-----------------------------------------
contents
-------------------------------------------*/
.contents {
	margin-top:50px;
}

.contents.top {
	margin-top:0px;
}

.mainContainer{
	background:url(../img/bg_proglab.png) repeat center top;
	background-size:50% auto;
}

header.open{
	height:100%;
	overflow-y:auto;
}





@media screen and (max-width: 767px) {
/*767pxまで*/
#top-head {
	top: 0 !important;
}
.open #mobile-head #topNewsAdd{
  display: none;
}
.contents.top {
	margin-top:0px !important;
}
}




@media screen and (min-width: 768px) {
/*768px以上*/
header{
	position:static;
}

.pc_obj{
	display:block;
}

.sp_obj{
	display:none;
}

img{
	width:auto;
}

.inner {
	width: 1000px;
	margin: 0 auto;
}

/* header */
header{
	height:auto;
}

header .inner{
	width:1000px;
	position:relative;
}

#top-head {
	top: 573px;
	position: absolute;
}

/* Fixed */
#top-head.fixed {
	margin-top: 0;
	/*top: 0 !important;*/
	/*position: fixed;*/
	background: #fff;
}


#mobile-head {
	width: 100%;
	height:80px;
	display:table;
}

#mobile-head .inner{
	height: 100px;
	display:table;
}

header .logo,#top-head.fixed .logo{
	position: static;
	width:100%;
	display:table-cell;
	vertical-align:middle;
}

header .logo img,#top-head.fixed .logo img{
	max-width:606px;
}
#mobile-head #topNewsAdd{
padding-top: 0 !important;
}
#top-head.fixed #global-nav ul li a {
	color: #fff;
	padding: 0 30px;
}

#global-nav {
	position: static;
	background:url(../../img/bg_gnav.gif) repeat-x center top;
}

#global-nav ul li {
	height:46px;
    float: left;
	font-size:1.6rem;
	background:none;
	border:none;
	display:table;
  text-align: left;
}

#global-nav ul li:nth-child(even){
	background:none;
}

#global-nav ul li:nth-child(1){
	width:202px;
}
#global-nav ul li:nth-child(2){
	width:117px;
}

#global-nav ul li:nth-child(3){
	width:153px;
}
#global-nav ul li:nth-child(5){
	width:205px;
}
#global-nav ul li:nth-child(6){
	width:125px;
}

#global-nav ul li:nth-child(7){
	width:40px;
	text-align:right;
}



#global-nav ul li.about.current a{
	background:url(../img/nav_current_01.gif) no-repeat center left;
}

#global-nav ul li.school.current a{
	background:url(../img/nav_current_02.gif) no-repeat center left;
}

#global-nav ul li.course.current a{
	background:url(../img/nav_current_03.gif) no-repeat center left;
}

#global-nav ul li.convention.current a{
	background:url(../img/nav_current_04.gif) no-repeat center left;
}

#global-nav ul li.message.current a{
	background:url(../img/nav_current_05.gif) no-repeat center left;
}

#global-nav ul li.qa.current a{
	background:url(../img/nav_current_06.gif) no-repeat center right;
}

#global-nav ul li.classwork.current a{
	background:url(../img/nav_current_07.gif) no-repeat center left;
}

header #global-nav ul li a,#top-head.fixed #global-nav ul li a {
	width:auto;
	color: #fff;
	display:table-cell;
	vertical-align:middle;
	padding:0 28px 0 0;
}

header #global-nav ul li:last-child a,#top-head.fixed #global-nav ul li:last-child a{
	text-align:right;
	padding:0;
}


#global-nav .menu_btn{
	width:410px;
	margin:0;
	position:absolute;
	top:-70px;
	right:0;
	z-index:10000;
}

#global-nav .menu_btn p{
	width:200px;
}

#global-nav .menu_btn p a{
	font-size:1.6rem;
	padding:0;
	line-height:40px;
}

#nav-toggle {
    display:none;
}

/* 2020.06.04 スマホ表示の時にヘッダに体験・問い合わせボタン表示 */
#mobile-head .menu_btn{
	display:none;
}
/* 2020.06.04 ここまで */

.snsCounter{
	margin:10px 0;
overflow: hidden;
}

.snsCounter ul{
	padding:0;
	margin:0 0 10px;
}

.snsCounter ul li {
	padding-bottom:0;
}

footer .inner{
	position:relative;
}

footer ul{
	width:468px;
	margin:auto;
	padding:15px 0;
}

footer ul li{
	width:226px;
}

footer ul li a{
	padding:0;
	font-size:1.4rem;
	line-height:30px;
	font-weight:200;
}


footer #copy{
	padding:20px 0;
	font-size:1.4rem;
}

footer #btnTop{
	position:absolute;
	right:0;
	top:-70px;
	width:54px;
}

footer #btnTop img{
	width:100%;
}

/*-----------------------------------------
contents
-------------------------------------------*/
.contents {
	margin-top:0;
}

.contents.top {
	margin-top:0;
}

.breadcrumb ol li {
	display: inline;
	list-style-type: none;
	color:#666;
	font-size:1.4rem;
	line-height:50px;
}

.breadcrumb ol li:after {
	content: " > ";
	padding:0 5px;
}

.breadcrumb ol li:last-child:after {
	content: none;
}

.breadcrumb ol li a{
	text-decoration:underline;
	color:#666;
}

.mainContainer{
	background:url(../img/bg_proglab.png) repeat center top;
	background-size:auto;
}

}