@charset "utf-8";


/* -- #menu -------------------------------------------------------------------------------- */
@media all and (max-width: 767px) {
	html.is-fixed,
	html.is-fixed body {
		height: 100%;
		overflow: hidden;
	}
}
.spHeadMenu {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	max-height: 73px;
	position: fixed;
    z-index: 1000;
    background: #fff;
	width: 100%;
}
#menu {
	list-style-type: none;
	width: 100%;
	/*height: 100%;*/
	background: #00000087;
	left: 0px;
	top: 0;
	z-index: 990;
	display: none;
	position: fixed;
    height: calc(100vh);
    overflow-y: scroll;
}
#menu ul {
	background: #F5F3EC;
	padding: 15vw 0 20vw;
}

#menu li {
	margin: 0 7%;
	border-top: 1px solid #005C3F;
}
#menu li:last-of-type {
	border-bottom: 1px solid #005C3F;
}

#menu li a {
	text-decoration: none;
	display: block;
	position: relative;
	padding: 21px 0;
	font-size: 18px;
	color: #005C3F;
	font-weight: 700;
}
#menu li span.noLink{
	text-decoration: none;
	display: block;
	position: relative;
	padding: 15px 0;
	font-size: 18px;
	color: #005C3F;
	font-weight: 700;
}
#menu li a span{
	position: relative;
}
#menu li a span:after {
    content: '';
    width: 14px;
    width: 2vw;
    height: 14px;
    height: 2vw;
    border: 0px;
    border-top: solid 1px #005C3F;
    border-right: solid 1px #005C3F;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: -13px;
    bottom: 31%;
}

#menu li a:hover {
	background: #a9a9a9;
	opacity: 0.7;
}

/* menu_university
--------------------------------------------------*/
#menu li.menu_university {
	padding-bottom: 5%;
}
#menu li.menu_university a {
	padding-bottom: 2%;
}
#menu li.menu_university .menu_university_btn {
}
#menu li.menu_university .menu_university_btn a {
    margin-bottom: 2%;
    padding: 3%;
	position: relative;
	line-height: 1.38;
	background: #fff url(../../../assets/img/student/sp_menu_university_icon.png) no-repeat 5% 49%;
	background-size: 8%;
	-moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
	padding-left: 15%;
}
#menu li.menu_university .menu_university_btn a:after {
	content: '';
    width: 14px;
    width: 2vw;
    height: 14px;
    height: 2vw;
    border: 0px;
    border-top: solid 1px #005C3F;
    border-right: solid 1px #005C3F;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: 13px;
    bottom: 43%;
}

/* menu_qa
--------------------------------------------------*/
#menu li.menu_qa {
	padding-bottom: 5%;
}
#menu li.menu_qa a {
	padding-bottom: 2%;
}
#menu li.menu_qa .menu_qa_btn:not(:last-of-type) {
	margin-bottom: 2%;
}
#menu li.menu_qa .menu_qa_btn a {
	font-weight: 400;
	padding: 0;
}
#menu li.menu_qa .menu_qa_btn a span{
	position: relative;
}
#menu li.menu_qa .menu_qa_btn a span:after {
    content: '';
    width: 14px;
    width: 2vw;
    height: 14px;
    height: 2vw;
    border: 0px;
    border-top: solid 1px #005C3F;
    border-right: solid 1px #005C3F;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: -13px;
    bottom: 31%;
}

/* menu_service
--------------------------------------------------*/
#menu li.menu_service {
	padding-bottom: 5%;
}
#menu li.menu_service a {
	padding-bottom: 2%;
}
#menu li.menu_service .menu_service_btn:not(:last-of-type) {
	margin-bottom: 2%;
}
#menu li.menu_service .menu_service_btn a {
	font-weight: 400;
	padding: 0;
}
#menu li.menu_service .menu_service_btn a span{
	position: relative;
}
#menu li.menu_service .menu_service_btn a span:after {
    content: '';
    width: 14px;
    width: 2vw;
    height: 14px;
    height: 2vw;
    border: 0px;
    border-top: solid 1px #005C3F;
    border-right: solid 1px #005C3F;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: -13px;
    bottom: 31%;
}


/* -- div#sp-icon -------------------------------------------------------------------------------- */

div#sp-icon {
	width: calc(100% / 2);
    height: 100%;
	position: absolute;
	right: 0px;
	top: 0px;
	z-index: 1100;
	background: #F5F3EC;
	max-height: 73px;
}

div#sp-icon:hover {
	cursor: pointer;
	opacity: 0.7;
}

div#sp-icon span,
div#sp-icon span:before,
div#sp-icon span:after {
	display: inline-block;
	width: 6vw;
	height: 3px;
	background: #005C3F;
	position: absolute;
	transition-property: transform;
	transition-duration: 0.3s;
}

div#sp-icon span {
	left: 50%;
	top: 38%;
	transform: translate( -50%, -50% );
}
div#sp-icon p {
	width: 100%;
    top: 67%;
    font-size: 10px;
    text-align: center;
    position: absolute;
}

div#sp-icon span:before {
	content: "";
	transform: translateY( -8px ) rotate( 0deg );
}

div#sp-icon span:after {
	content: "";
	transform: translateY( 8px ) rotate( 0deg );
}


div.sp-open span {
	background: transparent !important;
}

div.sp-open span:before {
	transform: rotate( 45deg ) !important;
}

div.sp-open span:after {
	transform: rotate( -45deg ) !important;
}








