@charset "utf-8";
/* CSS Document */


/* ##### GRAND head ##### */
#header_grandhead {
  height:40px;
  background: #30353a;
  border-bottom: 2px #bf9b46 solid;
}
#header_grandhead_logo {
  float: left;
  display:block;
  height:40px;
  position: relative;
}
#header_grandhead_logo span#header_grandhead_logoimg {
  display: inline-block;
  width: 114px;
  height: 40px;
  vertical-align: middle;
  overflow: hidden;
}
#header_grandhead_logo span#header_grandhead_logotext {
  display: inline-block;
  line-height: 38px;
  padding-top: 2px;
  vertical-align: middle;
  color: #ffffff;
  font-size: 13px;
  padding-right: 1em;
}
#header_grandhead_logo img {
  height: 40px;
  width: 127px;
  position: relative;
  float: left;
}
.header_grandhead_link {
  display: block;
  height: 40px;
  line-height: 40px;
  font-size: 13px;
  color: #ffffff;
  white-space: nowrap;
}
.header_grandhead_link a {
  color: #ffffff;
}
.header_grandhead_generallink {
  float: left;
  margin-left: 10px;
  padding: 0 10px;
}
.header_grandhead_additionallink {
  float: right;
  margin-right: 10px;
}
/* grand head float */
span.header_grandhead_link nav {
  display: none;
}
span.header_grandhead_link.hover_menu_grand_active {
  background: #ffffff;
}
span.header_grandhead_link.hover_menu_grand_active a {
  color: #111111;
}
span.header_grandhead_link.hover_menu_grand_active nav {
  display: block;
}
#hover_menu_grand {
  position: fixed;
  top: 40px;
  left: 50%;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width:100%;
  background: #ffffff;
  z-index: 10012;
  overflow-y: auto;
  white-space: normal;
  max-height: calc(100vh - 40px);
}
#hover_menu_grand_close {
  position: fixed;
  top: 40px;
  left: 50%;
  -ms-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width:100%;
  z-index: 15000;
  display: none;
}
.float_menu_closebtn {
	display:block;
	position:absolute;
	width:50px;
	height:50px;
	top:0;
	right:0;
}
.float_menu_closebtn span {
	display:block;
	position:absolute;
	width:24px;
	height:3px;
	background:#ffffff;
	left:13px;
	top:20px;
}
.float_menu_closebtn span:nth-child(1) {
	-ms-transform: rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
.float_menu_closebtn span:nth-child(2) {
	-ms-transform: rotate(45deg);
	-webkit-transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	transform:rotate(45deg);
}
#float_menu_grand .float_menu_closebtn span, #hover_menu_grand .float_menu_closebtn span, #hover_menu_grand_close .float_menu_closebtn span {
	background:#111111;
}
/* ## common_courselist ## */
#common_courselist {
  padding: 50px 20px 20px 20px;
}
#common_courselistbox_wrapper {
	font-size: 0;
	vertical-align: top;
	text-align: left;
	width:100%;
}
.common_courselistbox {
	display: inline-block;
	width:16%;
	vertical-align: top;
	margin-bottom: 15px;
	margin-left: 0.6%;
	font-size: max(min(0.95vw,15px),11px);
	line-height: 15px;
  background: #4d5357;
  padding-top: 8px;
  color: #ffffff!important;
  text-align: center;
}
.common_courselistbox:nth-child(6n+1){
	margin-left: 0;
}
.common_courselistbox small { font-size:70%; display: block; }
.common_courselist_photobox {
	display: block;
	width: 100%;
	height: 100px;
	position:relative;
	margin-top: 5px;
	background: center no-repeat;
	background-size: cover;
}

.modal_mask.modal_mask_grand {
	background:rgba(255,255,255,0.01);
}

@media (max-width: 1099px) {
  /* ##### GRAND head ##### */
	/* grand logo */
	#header_grand_logo_outer {
		position:relative;
		float:left;
		background:#30353a;
		width:150px;
		height:50px;
	}
	#header_grand_logo_outer img {
		width:150px;
		height:48px;
		top:0;
		left:0;
		bottom:0;
		right:0;
		margin:auto;
	}
}
@media (max-width: 1199px) {
  /* ## common_courselist ## */
  .common_courselistbox {
  	font-size: 14px;
  	line-height: 14px;
  }
  .common_courselistbox {
		width:24.5%;
		margin-left:0.5%;
	}
	.common_courselistbox:nth-child(6n+1){
		margin-left: 0.5%;
	}
	.common_courselistbox:nth-child(4n+1){
		margin-left: 0;
	}
	
	.common_courselist_photobox {
		height:80px;
	}
}
@media (max-width: 999px) {
  /* ## common_courselist ## */
  .common_courselistbox {
  	font-size: 13px;
  	line-height: 13px;
  }
}
@media (max-width: 899px) {
  /* ## common_courselist ## */
  #common_courselistbox_wrapper {
    text-align: left;
  }
  .common_courselistbox {
    width: 49%;
    margin-left: 2%;
    font-size: 17px;
    line-height: 17px;
  }
	.common_courselistbox:nth-child(4n+3){
		margin-left: 0;
	}
  .common_courselist_photobox {
    height: 80px;
  }
}
@media (max-width: 799px) {
  /* ## grand ## */
  #float_menu_grand {
    padding-top: 20px;
    background: #ffffff;
  }
  /* ## common_courselist ## */
  #common_courselist {
    padding-top: 20px;
    padding-left: 10px;
    padding-right: 10px;
  }
  .common_courselistbox {
    margin-left: 2%;
    font-size: 13px;
    line-height: 13px;
  }
}
@media (max-width: 699px) {
  /* grand head */
    .header_grandhead_generallink {
    margin-left: 0px;
  }
	/* grand head */
	.header_grandhead_generallink {
	  margin-left: 0px;
	}
  #header_grandhead_logo span#header_grandhead_logotext { font-size: 11px; }
  .header_grandhead_link {
    font-size: 11px;
  }
  /* ## common_courselist ## */
  #common_courselist {
    padding-left: 5px;
    padding-right: 5px;
  }
  .common_courselistbox {
    margin-left: 2%;
    font-size: 11.5px;
    line-height: 11.5px;
  }
}
@media (max-width: 374px) {
  /* grand logo */
  .header_grandhead_link {
    font-size: 10px;
  }
  /* ## common_courselist ## */
  #common_courselist {
    padding-left: 3px;
    padding-right: 3px;
  }
  .common_courselistbox {
    margin-left: 2%;
    font-size: 10.5px;
    line-height: 10.5px;
  }
}


/* ---------------------------------------------------------------- */
/* 注釈のスタイル（ul.note)
/* ---------------------------------------------------------------- */

ul.note{
	padding-left:0;
}
ul.note li{
	font-size:85%;
	margin-bottom:0.3em;
	padding-left:1.0em;
	text-indent:-1.0em;
}
ul.note li.red{
	color:#DD0000;
}