h1,h2,h3,p{
	margin: 0;
	padding: 0;}

#contents {
  margin: 0;
  padding: 0; 
}
  #contents * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box; 
}

#contents-inner {
	width: 100%;
	margin: 2vw 0 0 0;
	padding: 0 0 5vw 0 ;
	background-color: #fff;
}
  #contents-inner p.link {
    text-align: center;
}
  #contents-inner img {
    max-width: 100%; 
}

/*********** ***********/

.left {
  display: table-cell;
  *display: inline;  
  *zoom: 1;
	vertical-align: top;
}
.link{
	width: 94.13333333333333vw;
	margin: 0 auto;
}
#contents a{
	transition: 0.3s ;
}
#contents a:hover {
	opacity: 0.5 ;
}
/**********************************************************************************************************************************/
#mv{
	background-image: url("../img/mv_02.png");
	background-size: contain;
	background-repeat: no-repeat;
	height: 90vw;
	text-align: center;
	position: relative;
}
#mv_menu{
	position: absolute;
	right: 0;
	padding: 30px 0 0 0 ;
}
#mv_menu ul li{
	float: left;
	margin: 0 20px 0 0;
}
#mv h1{
    position: absolute;
	width: 92vw;
    top: 16%;
    left: 3%;
}

#mv .touroku{
	 width: 27.4vw;
	padding: 3vw 0 0 0;
	margin: 0 0 0 15vw;
}


/**********************************************************************************************************************************/

 .sp_nav {
	 position: fixed;
	 z-index: 999;
}
 .sp_nav.m_fixed {
	left: 0;
	position: fixed;
	top: 0;
}

.sidemenu {
  height: 100vh;
  padding-top: 100px;
  position: fixed;
  left: -60%;
  transition: all 0.6s;
  top: 0;
  width: 30%;
  z-index: 2;
  background-color: #fff;
}
.sidemenu nav ul {
  padding: 18vw 3vw;
}
.sidemenu nav ul li {
  padding: 0 0  5vw 0;
}
.hamburger {
	cursor: pointer;
	width: 12vw;
	height: 12vw;
	position: absolute;
	left: 0;
	top: 0;
	 z-index: 3;
	background-color: #606060;

}
.hamburger span {
  background-color: #fff;
  height: 2px;
  left: 3vw;
  position: absolute;
  transition: all 0.3s;
  width: 6vw;
}
.hamburger_linetop {
  top: 3vw;
}
.hamburger_linecenter {
  top: 6vw;
}
.hamburger_linebottom {
  top: 9vw;
}
/*--------------------------------*/
.nav_open .sidemenu {
  left: 0;
}
.nav_open .hamburger  {
  background-color: #fff;
}
.nav_open .hamburger span {
  background-color: #606060;
}

.nav_open .hamburger_linetop {
  top: 5vw;
  transform: rotate(45deg);
}
.nav_open .hamburger_linecenter {
  left: 50%;
  width: 0;
}
.nav_open .hamburger_linebottom {
  top: 5vw;
  transform: rotate(-45deg);
}
.nav_open .overlay {
  opacity: 0.5;
  visibility: visible;
}
/*--------------------------------*/
.overlay {
  background-color: #000;
  cursor: pointer;
  height: 100vh;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  transition: all 0.6s;
  visibility: hidden;
  width: 100vw;
  z-index: 1;
}
/*--------------------------------*/
@media screen and (max-width: 1000px) {
  .sp_no {
    display: none;
  }
  .sidemenu {
    right: -50%; /*メニュー幅*/
    width: 50%; /*メニュー幅*/
  }
}
@media screen and (min-width: 999px) {
  .pc_no {
    display: none;
  }
}
/**********************************************************************************************************************************/

#about{
	background-image: url("../img/about_back.jpg");
	background-size: contain;
	background-repeat: no-repeat;
	text-align: right;
	margin: 4vw 0 0 0;
	padding: 4vw 0 ;
}
.about01 img{
	width: 88vw;
}

/**********************************************************************************************************************************/

#menu{
	margin: 6.1vw 0;
}

/**********************************************************************************************************************************/

#program {
	position: relative;
	padding: 0 0 10vw 0;
}
#program h2,#skill h2,#community h2{
	width: 48vw;
	margin: 0 0 0 3vw ;
}

/**********************************************************************************************************************************/

.ac {
	margin: 2.1vw 3vw ;
	border-top: 4px solid #9B9EA3;
}
#qa .ac {  
	margin: 2.1vw 3vw 2.1vw 12vw;
}

.ac li {
  list-style: none;
}
.ac-label  {  padding: 10px 0;
  cursor: pointer;
  position: relative;
}
.ac-label p img  {  
	width: 81.3vw;
}

#qa .ac-label p img  {  
	width: 73vw;
}

.border01{
	  border-bottom: 2px solid #9B9EA3;
}
.border02{
	  border-bottom: 2px dotted #9B9EA3;
}
.ac-content {
  display: none;
	margin: 0 0 20px 0 ;
}
/*******************/
#program .ac-content,#skill .ac-content,#community .ac-content {
	background-color: #f8f8f8;
	padding: 4vw 4vw 5vw 4vw;
}

#qa .ac-content {
	background-image: url("../img/qa_menu_back.jpg");
	background-size: 6vw;
	background-color: #f8f8f8;
	background-repeat: no-repeat;
	background-position: 4vw 4vw;
	padding: 4vw 0 6vw 14vw;
	font-size: 3vw;
}
/*******************/

.icon-wrap {
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translatey(-50%);
  width: 38px;
  height: 30px;
  background: #E3E4E6;
}

.icon {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
}
.icon:before,
.icon:after {
  position: absolute;
  content: "";
  display: block;
  transition: all 0.4s;
  left: 50%;
  top: 50%;
  width: 50%;
  height: 2px;
  transform: translate(-50%, -50%);
}
/*******************/
#program .icon:before,#program .icon:after {
  background: #A25855;
}
#skill .icon:before,#skill .icon:after {
  background: #70909B;
}
#community .icon:before,#community .icon:after {
  background: #D78F23;
}
#qa .icon:before,#qa .icon:after {
  background: #454545;
}
/*******************/

.icon:before {
  transform: translate(-50%, -50%) rotate(90deg);
}
/*＋、－切り替え*/
.icon.open:before {
  transform: translate(-50%, -50%) rotate(0deg);
}
.more{
	position: absolute;
	right: 0;
	margin: 0 3vw;
	width: 9.3vw;
}
/**********************************************************************************************************************************/

#skill,#community {
	position: relative;
	margin: 6.1vw 0 20vw 0;
}

#menu01{
	background-color: #F5D9CD;
}
#skill01{
	margin: 0 0 5vw 0 ;width: 100%;
	background-color: #CDDCDF;
}
#community01{
	margin: 0 0 5vw 0 ;width: 100%;
	background-color: #F8EEBD;
}



/**********************************************************************************************************************************/

#room{
	margin: 10vw 0 0 0;
}

/**********************************************************************************************************************************/

#access{
	background-color: #F2E9E0;
	padding: 4vw 4vw;
}
.access01{
}
.access01 dt{
  display: table-cell;
  *display: inline;  
  *zoom: 1;
	vertical-align: top;
}
.access01 dd{
  display: table-cell;
  *display: inline;  
  *zoom: 1;
	vertical-align: top;
}
.access01 dd p{
	padding: 0 0 1.2vw 0;
}
/**********************************************************************************************************************************/

#qa{
	background-image: url("../img/qa_back.jpg");
	background-size: contain;
	background-repeat: no-repeat;
	margin: 6.1vw 0;
}

/**********************************************************************************************************************************/

#pagetop{
	position: relative;
	padding: 0 0 22vw 0 ;

}
#pagetop p{
	position:absolute;
	right: 3vw;
	width: 14.6vw;
}
/**********************************************************************************************************************************/

#inquire{
	background-color: #558C93;
	padding: 2.6vw 0 ;
}
#inquire p{
	margin: 0 auto;
	width: 70vw;
}





