@charset "UTF-8";

@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

/* !Reseting
---------------------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,img,figure{
    margin:0;
    padding:0;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}
fieldset,img {
    border:0;
}
address,caption,cite,code,dfn,em,th,var {
    font-style:normal;
    font-weight:normal;
}
ol,ul {
    list-style:none;
}
caption,th {
    text-align:left;
}
h1,h2,h3,h4,h5,h6 {
    font-size:100%;
    font-weight:normal;
}
q:before,q:after {
    content:'';
}
abbr,acronym {
    border:0;
}

a{
    text-decoration:none;
    transition: ease .3s all;
}
 
a:hover,a.selected{
    text-decoration:none;
}
 
a {
/*\*/
    overflow: hidden;
/**/
}
.internal_link {
  background: none !important;
}
a img:hover {
	opacity: 0.7 ;
}

input, button, textarea, /*select*/ {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

button {
    width: auto;
    padding:0;
    margin:0;
    background:none;
    border:0;
    font-size:0;
    line-height:0;
    overflow:visible;
    cursor:pointer;
	vertical-align:middle;
}

input {
vertical-align:middle;
}

input[type="search"] {
	border:0;
	padding:5px;
	border:solid 1px #DDD; 
	background:#FFF;
}

section {
    counter-reset:number; /* 要素ごとに数字をリセットする */
}

img {
	vertical-align:bottom;
	width: 100%;
	height: auto;
}

.imageL {
	margin-right: 30px;
	float: left;
}

.imageR {
	margin-left: 30px;
	float: right;
}


.imageL img,
.imageR img {
    display: block;
    height: auto;
    width: 100%;
}


.original {
	width: auto;
}

.sp {
  display: none;
}


@media print, screen and (max-width: 567px) {
	.imageL,
	.imageR {
		margin:0 0 15px;
		float: none;
	}
	.imageL img,
	.imageR img {
    	width: auto;
		margin: auto;
	}
	/*.pure-u-1 img {
		width: auto;
		margin: 5px auto;
		display: block;
	}*/
  .sp {
    display: block;
  }
}

@media print {
  body {
    width: 1024px;
  }
}




/* !Clearfix
---------------------------------------------------------- */
.clearfix,
#header,
#contents,
section
{
	display: block;
	min-height: 1%;
}
.clearfix:after,
#header:after,
#contents:after,
section:after
{
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}

/* !Layout
---------------------------------------------------------- */
body {
	 font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
     font-size: 14px;
	 -webkit-text-size-adjust: none;
	 line-height: 1.5;
	 color:#333;
}

.inner {
	width: 1000px;
	margin: 0 auto;
	padding: 0 15px;
}

/* !Header
---------------------------------------------------------- */
#header {
	background:#FFF;
	width: 100%;
	/*overflow: hidden;
	z-index: 100;
	position: fixed;
	top: 0;
	left: 0;*/
	text-align: left;
	padding:10px 0 0;
	box-shadow: 0 6px 10px -6px rgba(0,0,0,.3);
	position: relative;
}

#headerIn {
	max-width: 1000px;
	margin:0 auto;
	padding: 0 15px;
	position: relative;
	height: 75px;
}
	
#header h1#logo,
  #header p#logo {
		position: absolute;
		left: 15px;
		top: 10px;
		width: 340px;
	}
	
	#header nav.visit {
		position: absolute;
		right: 15px;
		top: 5px;
		clear: both;
	}
	
	#header nav.visit ul li {
		float: left;
	}
	
	#header nav.visit ul li a {
		display: block;
		background: #FFDF81;
		font-weight: 500;
		padding: 2px 7px;
		border-radius: 3px;
		margin-left: 7px;
		font-size: 95%;
		color: #333;
		text-decoration: none;
	}
	
	#header nav.visit ul li a:hover {
		opacity: 0.7;
	}
	
	#header .subNavi {
		position: absolute;
		right: 235px;
		top: 35px;
		clear: both;
		text-align: right;
	}
  #header .subNavi.header-navi {
    right: 0;
  }

  #header .subNavi.header-navi a {
    background: none !important;
    padding-left: 0;
    color: #333;
  }

  #header .subNavi.header-navi a:hover {
    text-decoration: none;
    opacity: .7;
  }

  #header .subNavi.header-navi [class^="icon-"], 
  #header .subNavi.header-navi [class*=" icon-"] {
    margin-right: 10px;
    font-size: 20px;
    vertical-align: middle;
    color: #ea5402;
    position: relative;
    top: -2px;
  }

  #header .subNavi.header-navi .header-navi-ttl {
    vertical-align: middle;
  }
	
	#header .subNavi ul:first-child {
		margin-bottom: 0px;
	}
	
	#header .subNavi ul li {
		display: inline-block;
		font-size: 85%;
		border-right: 1px solid #666;
		padding: 1px 10px;
		line-height: 100%;
	}
	
	#header .subNavi ul li:first-child {
		border-left: 1px solid #666;
	}
	
	#gsc{
    width:200px;
    margin:0 auto;
	position: absolute;
	top: 45px;
	right: 15px;
	}
		#gsc .gsc-control-cse, 
		#gsc .gsc-control-cse-ja,
		#gsc .gsib_a{
		    margin:0 !important;
		    padding:0 !important;
		}
		/* テキスト入力フォームとボタンの位置 */
		#gsc table.gsc-search-box td,
		#gsc table.gsc-search-box input {
		    vertical-align: top !important;
		}
		/* テキスト入力フォーム */
		#gsc input[type="text"]{
		    border: 1px solid #dddddd !important;
		    height:25px !important;
		}
		/* テキスト入力フォームの影を消す */
		#gsc #gsc-iw-id1{
		    border:none !important;
		}
		/* テキスト入力フォームの背景画像位置調整 */
		#gsc #gs_tti0 input{
		    background-position:5px 5px !important;
		}
		/* ボタンの位置調整と角丸消し */
		#gsc .gsc-search-button{
		    margin:0 0 0 -16px !important;
		    border-radius:0;
		}
		/* 入力時に出る「×」ボタンの位置調整 */
		#gsc .gsib_b a{
		    position:absolute;
		    top:3px;
		    left:185px;
		}
		/* 入力時に出る×ボタン -- Firefox位置調整 -- */
		#gsc .gsib_b span{
		    box-sizing: border-box;
			-moz-box-sizing: border-box;
			padding:2px 0 0 0;
		}

	#header nav#gNavi {
		background: #EA5403;
		margin-top: 15px;
		overflow: hidden;
	}
	
	#header #gNavi ul {
		width: 100%;
		max-width: 1000px;
		margin: 0 auto;
		display: table;
		table-layout: fixed;
	}
	
	#header #gNavi ul li {
		text-align: center;
		font-weight: 500;
		display: table-cell;
		position:relative;
	}
	#header #gNavi ul li:before {
		content: "";
      	display: block;
      	position: absolute;
      	top: 9px;
      	left: -6px;
      	width: 6px;
      	height: 28px;
      	border-right: 1px solid #FFF;
      	-webkit-transform: rotate(-45deg);
      	transform: rotate(30deg);
	}
	
	#header #gNavi ul li:last-child:after {
		content: "";
      	display: block;
      	position: absolute;
      	top: 9px;
      	right: -6px;
      	width: 6px;
      	height: 28px;
      	border-right: 1px solid #FFF;
      	-webkit-transform: rotate(-45deg);
      	transform: rotate(30deg);
	}
	
	#header #gNavi a {
		text-decoration: none;
		color:#FFF;
		padding: 15px;
		display: block;
	}
	
	#header #gNavi a:hover {
		opacity: 0.7;
	}
	
	#spMenuBtn {
		position: absolute;
		top: 0;
		right: 10px;
	}
	
	#spMenuBtn a
	{
		display: block;
		width: 28px;
		height: 18px;
		padding: 11px;
		position: absolute;
		top: 0;
		right: 0;
	}
	#spMenuBtn a:before,
	#spMenuBtn a:after
	{
		content: '';
		display: block;
		background: #999;
		height: 2px;
	}
	#spMenuBtn a span
	{
		background: #999;
		display: block;
		height: 2px;
		margin: 6px 0;
	}

@media print, screen and (min-width: 1024px) {
	#spMenuBtn {
		display: none;
	}
	nav#spMenu {
		display: none;
	}
}

@media print, screen and (max-width: 1023px) {
	#header {
		padding: 5px 0 10px;
	}

	#header h1#logo,
  #header p#logo {
		width: 280px;
		top: 10px;
	}
	
	#header nav.visit ul li a {
		font-size: 85%;
	}
	
	#header .subNavi {
		right: 15px;
	}
	.visit,.subNavi,#gNavi,#gsc {
		display: none;
	}
}

@media print, screen and (max-width: 320px) {
  #header h1#logo,
  #header p#logo {
    width: 240px;
    top: 10px;
  }
}

/* !Wrapper
---------------------------------------------------------- */
#wrapper {
	width: 100%;
	background: #FFF;
}

/* !Container
---------------------------------------------------------- */
.Container {
	position: relative;
	z-index: 100;
	max-width: 1000px;
	margin: 0 auto;
}

@media print, screen and (max-width: 1023px) {
	.Container {
		max-width: none;
		width: 100%;
	}
}

/* !Main
---------------------------------------------------------- */
#main {
	margin-left: 40px;
	padding-bottom: 30px;
}

.categoryTop a.titlebox  {
  color: #EA5403;
  display: block;
  margin: 10px;
  border: 3px solid #EA5403;
  /*background: #EEE;*/
  padding: 40px 15px;
  text-align: center;
  font-size: 105%;
  font-weight: 500;
}

.categoryTop a.titlebox:hover {
  background: #FBDDCD;
  text-decoration: none;
}
.cat_cts .cat_wrap {
  position: relative;
  margin-bottom: 30px;
}
.cat_cts .cat_wrap.cat_international {
  margin-bottom: 100px;
}
.cat_cts .cat_info_img {
  position: relative;
}
.cat_cts .cat_info_ttl {
  font-size: 20px;
  font-weight: normal;
  text-align: left;
  padding: 5px 10px;
  position: relative;
  box-sizing: border-box;
  color: #fff;
  letter-spacing: 1px;
}
.cat_cts .cat_info_link {
  position: absolute;
  bottom: 0;
  right: 0;
}
.cat_cts .cat_info_link .cat_link {
  position: relative;
  display: inline-block;
  color: #fff;
  border-radius: 3px;
  padding: 5px 25px 5px 15px;
  box-shadow: 2px 2px 0px 1px #ddd;
}
.cat_cts .cat_info_link .cat_link:hover {
  text-decoration: none;
  box-shadow: none;
  position: relative;
  top: 2px;
  left: 2px;
}
.cat_cts .cat_info_link .cat_link:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  width: 6px;
  height: 6px;
  margin-top: -4px;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.cat_creation .cat_info_ttl {
  background: #3BB5E8;
}
.cat_creation .cat_link {
  background: #3BB5E8;
}

.cat_formation .cat_info_ttl {
  background: #abcd03;
}
.cat_formation .cat_link {
  background: #abcd03;
}
.cat_international .cat_info_ttl {
  background: #EE86A1;
}
.cat_international .cat_link {
  background: #EE86A1;
}

.cat_cts .cat_center .cat_info_ttl {
  background: #EA5403;
}
.cat_cts .cat_center .cat_link {
  background: #EA5403 !important;
}
.cat_cts .cat_center .cat_link [class^="icon-"],
.cat_cts .cat_center .cat_link [class*=" icon-"] {
  margin-left: 5px;
}
.cat_cts .cat_center .cat_link:after {
  display: none;
}
.cat_cts .cat_info_box .cat_info_ttl_sub {
  margin-bottom: 10px;
  font-size: 18px;
  color: #666;
  border-bottom: 1px solid #d2d2d2;
}
.cat_cts .cat_info_box {
  padding-left: 15px;
  text-align: left;
}

.cat_cts .cat_info_box .cat_info_txt {
  color: #000;
}
.cat_cts a:hover {
  opacity: .7;
}
.cat_cts a img:hover {
  opacity: 1;
}

@media print, screen and (max-width: 1023px) {
	#main {
		margin: 0 1em 2em;
	}
}
@media print, screen and (max-width: 567px) {
  .cat_cts .cat_wrap {
    margin-bottom: 60px;
  }
  .cat_cts .cat_info_box {
    padding-left: 0;
    margin: 20px 0 60px;
  }
}

.cat_panel_list {

}
.cat_panel_list .cat_panel_list_item {
  width: 49%;
  margin-bottom: 30px;
}

.cat_panel_list .cat_panel_list_item {
  margin-right: 2%;
}
.cat_panel_list .cat_panel_list_item:nth-child(2n) {
  margin-right: 0;
}
.cat_panel_list .cat_panel_list_item .cat_panel_ttl {
  font-size: 21px;
  color: #333;
  padding: 10px 10px 10px 35px;
  position: absolute;
  z-index: 33;
  bottom: 0;
  left: 0;
  width: 100%;
  box-sizing: border-box;
  background: #f3f3f3;
  border-top: 2px solid #EA5403;
}
.cat_panel_list .cat_panel_list_item .cat_panel_ttl:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 10px;
  height: 10px;
  border-right: 3px solid #EA5403;
  border-bottom: 3px solid #EA5403;
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  bottom: 19px;
  left: 10px;
}
.cat_panel_list .cat_panel_list_item .cat_panel_txt {
  margin-top: 10px;
}
.cat_panel_list .cat_panel_list_item .cat_panel_wrap {
  position: relative;
  display: block;
}
.cat_panel_list .cat_panel_list_item .thumb {

}
.cat_panel_list .cat_panel_list_item .thumb_inner {
  overflow: hidden;
}
.cat_panel_list .cat_panel_list_item .thumb_img {
  position: relative;
  background-size: 100% auto;
  width: 100%;
  height: auto;
  padding-top: 66.67%;
  background-color: #ddd;
  background-size: cover;
  background-position: center;
  -webkit-transition: -webkit-all .5s ease;
  transition: all .5s ease;
  transition: all .5s ease,-webkit-all .5s ease;
}
.cat_panel_list .cat_panel_list_item .cat_panel_wrap:hover {
  text-decoration: none;
}
.cat_panel_list .cat_panel_list_item .cat_panel_wrap:hover .thumb_img {
  transform: scale(1.1);
  opacity: .7;
}
#main .cat_panel_list .cat_panel_list_item a[target="_blank"] {
  padding-right: 0;
}
/** 2021/03 added for graduation page **/
.cat_panel_list2 .cat_panel_list_item2 {
  width: 100%;
  margin-bottom: 30px;
}

.cat_panel_list2 .cat_panel_list_item2 {
  margin-right: 2%;
}
.cat_panel_list2 .cat_panel_list_item2:nth-child(2n) {
  margin-right: 0;
}
.cat_panel_list2 .cat_panel_list_item2 .cat_panel_ttl2 {
  font-size: 21px;
  color: #333;
  padding: 10px 10px 10px 35px;
  position: absolute;
  z-index: 33;
  bottom: 0;
  left: 0;
  width: 100%;
  box-sizing: border-box;
  background: #f3f3f3;
  border-top: 2px solid #EA5403;
}
.cat_panel_list2 .cat_panel_list_item2 .cat_panel_ttl2:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 10px;
  height: 10px;
  border-right: 3px solid #EA5403;
  border-bottom: 3px solid #EA5403;
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  bottom: 19px;
  left: 10px;
}
.cat_panel_list2 .cat_panel_list_item2 .cat_panel_txt2 {
  margin-top: 10px;
}
.cat_panel_list2 .cat_panel_list_item2 .cat_panel_wrap2 {
  position: relative;
  display: block;
}
.cat_panel_list2 .cat_panel_list_item2 .thumb2 {

}
.cat_panel_list2 .cat_panel_list_item2 .thumb_inner2 {
  overflow: hidden;
}
.cat_panel_list2 .cat_panel_list_item2 .thumb_img2 {
  position: relative;
  background-size: 100% auto;
  width: 100%;
  height: auto;
  padding-top: 66.67%;
  background-color: #ddd;
  background-size: cover;
  background-position: center;
  -webkit-transition: -webkit-all .5s ease;
  transition: all .5s ease;
  transition: all .5s ease,-webkit-all .5s ease;
}
.cat_panel_list2 .cat_panel_list_item2 .cat_panel_wrap2:hover {
  text-decoration: none;
}
.cat_panel_list2 .cat_panel_list_item2 .cat_panel_wrap2:hover .thumb_img2 {
  transform: scale(1.1);
  opacity: .7;
}
.guraduate_page .cat_panel_list2 .cat_panel_list_item2:first-child .thumb_img2 {
  background-image: url("../../img/graduation/placeholder.gif");
}
.guraduate_page .cat_panel_list2 .cat_panel_list_item2:nth-child(2) .thumb_img2 {
  background-image: url("../../img/graduation/placeholder.gif");
}
/** 2021/03 added for graduation page **/

/*学部紹介*/
.factulty_page .cat_panel_list .cat_panel_list_item:first-child .thumb_img {
  background-image: url("../../img/factulty/bnr_01.jpg");
}
.factulty_page .cat_panel_list .cat_panel_list_item:nth-child(2) .thumb_img {
  background-image: url("../../img/factulty/bnr_02.jpg");
}
.factulty_page .cat_panel_list .cat_panel_list_item:nth-child(3) .thumb_img {
  background-image: url("../../img/factulty/bnr_03.jpg");
}
.factulty_page .cat_panel_list .cat_panel_list_item:nth-child(4) .thumb_img {
  background-image: url("../../img/factulty/bnr_04.jpg");
  background-position: bottom 20px left 0;
}
.factulty_page .cat_panel_list .cat_panel_list_item:nth-child(5) .thumb_img {
  background-image: url("../../img/factulty/bnr_05.jpg");
}
.factulty_page .cat_panel_list .cat_panel_list_item:nth-child(6) .thumb_img {
  background-image: url("../../img/factulty/bnr_06.jpg");
}
.factulty_page .cat_panel_list .cat_panel_list_item:nth-child(7) .thumb_img {
  background-image: url("../../img/factulty/bnr_07.jpg");
}

/*地域学研究*/
.research_page .cat_panel_list .cat_panel_list_item:first-child .thumb_img {
  background-image: url("../../img/research/bnr_01.jpg");
}
.research_page .cat_panel_list .cat_panel_list_item:nth-child(2) .thumb_img {
  background-image: url("../../img/research/bnr_02.jpg");
  background-position: center bottom 50px;
}
.research_page .cat_panel_list .cat_panel_list_item:nth-child(3) .thumb_img {
  background-image: url("../../img/research/bnr_03.jpg");
}
.research_page .cat_panel_list .cat_panel_list_item:nth-child(4) .thumb_img {
  background-image: url("../../img/research/bnr_04.jpg");
}

/*地域・社会貢献*/
.contribution_page .cat_panel_list .cat_panel_list_item:first-child .thumb_img {
  background-image: url("../../img/contribution/bnr_01.jpg");
}
.contribution_page .cat_panel_list .cat_panel_list_item:nth-child(2) .thumb_img {
  background-image: url("../../img/contribution/bnr_02.jpg");
  background-position: center bottom 50px;
}
.contribution_page .cat_panel_list .cat_panel_list_item:nth-child(3) .thumb_img {
  background-image: url("../../img/contribution/bnr_03.jpg");
}
.contribution_page .cat_panel_list .cat_panel_list_item:nth-child(4) .thumb_img {
  background-image: url("../../img/contribution/bnr_04.jpg");
}

/*国際交流*/
.international_page .cat_panel_list .cat_panel_list_item:first-child .thumb_img {
  background-image: url("../../img/international/bnr_01.jpg");
}
.international_page .cat_panel_list .cat_panel_list_item:nth-child(2) .thumb_img {
  background-image: url("../../img/international/bnr_02.jpg");
}
.international_page .cat_panel_list .cat_panel_list_item:nth-child(3) .thumb_img {
  background-image: url("../../img/international/bnr_03.jpg");
}
.international_page .cat_panel_list .cat_panel_list_item:nth-child(4) .thumb_img {
  background-image: url("../../img/international/bnr_04.jpg");
}
.international_page .cat_panel_list .cat_panel_list_item:nth-child(5) .thumb_img {
  background-image: url("../../img/international/bnr_05.jpg");
}


@media print, screen and (max-width: 567px) {
  .cat_panel_list .cat_panel_list_item .cat_panel_ttl {
    font-size: 12px;
    padding: 5px 5px 5px 22px;
    letter-spacing: -1px;
  }
  .cat_panel_list .cat_panel_list_item .cat_panel_txt {
    font-size: 12px;
    margin-top: 5px;
  }
  .cat_panel_list .cat_panel_list_item .cat_panel_ttl:before {
    width: 6px;
    height: 6px;
    border-right-width: 2px;
    border-bottom-width: 2px;
    bottom: 10px;
    left: 6px;
  }
}


/* !Side
---------------------------------------------------------- */

#side {
}

#side .side-menu .side-menu-inner {
  background: #fff;
}

#side .side-menu .side-menu-ttl {
  box-shadow: inset 0 -1px #FFF;
  font-size: 1em;
  font-weight: 700;
}

#side .side-menu .side-menu-ttl a {
  background: #FBDDCD;
  color: #EA5403;
  display: block;
  padding: 10px;
  letter-spacing: 1px;
}
#side .side-menu .side-menu-ttl a:hover {
  text-decoration: none;
  opacity: .7;
}

#side .side-menu .side-menu-inner-item {
  padding-right: 0;
  padding-left: 0;
  border: 1px solid #ddd;
  box-sizing: border-box;
  border-bottom: none;
}
#side .side-menu .side-menu-inner-item:first-child {
  border-top: none;
}

#side .side-menu .side-menu-inner-item a {
  padding: 6px 10px;
  display: block;
}

#side .side-menu .side-menu-ttl-sub {
  background: #EEE;
  box-shadow: inset 0 -1px #FFF;
  padding-left: 2em;
  color: #333;
  font-weight: normal;
}

.catTit {
	color: #FFF;
	font-size: 130%;
	font-weight: 700;
	padding: 25px;
	text-align: center;
	overflow: hidden;
	position: relative;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-top-right-radius: 10px;
	-moz-border-radius-topleft: 10px;
	-moz-border-radius-topright: 10px; 
}

.catTit:before {
	content: "";
	position: absolute;
	left:-5%;
	top:-25%;
	height: 150%;
	width: 110%;
	background: #fff;
	z-index: -1;
	background: #262626;
	background: -moz-linear-gradient(top, #333333 0%, #333333 50%, #000000 51%, #000000 100%);
	background: -webkit-linear-gradient(top, #333333 0%,#333333 50%,#000000 51%,#000000 100%);
	background: linear-gradient(to bottom, #333333 0%,#333333 50%,#000000 51%,#000000 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#333333', endColorstr='#000000',GradientType=0 );
	-webkit-transform: rotate(-7deg) skew(-7deg);
	-moz-transform: rotate(-7deg) skew(-7deg);
	-o-transform: rotate(-7deg) skew(-7deg);
	-ms-transform: rotate(-7deg) skew(-7deg);
}

.side-menu .side-menu_list {
  border: 1px solid #ddd;
  border-top: none;
}
.side-menu .side-menu_list a {
  display: block;
  padding: 7px 10px 7px 25px;
  position: relative;
  color: #333;
}
.side-menu .side-menu_list a:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 6px;
  width: 7px;
  height: 7px;
  border-top: 2px solid #EA5403;
  border-right: 2px solid #EA5403;
  transform: rotate(45deg);
  margin-top: -5px;
}
.side-menu .side-menu_list a:hover {
  text-decoration: none;
  background: #fff1e0;
}
#side .side-menu .side-menu-primary .side-menu-ttl a {
  background: #EA5403;
  color: #fff;
  font-weight: normal;
}
.side-menu .side-menu-primary .accordion_btn {
   background: #f2793e;
}
.side-menu .side-menu-primary .accordion_btn:hover {
  background: #f38d5d;
}
#side .side-menu .side-menu-primary .side-menu-inner-item a {
  padding: 6px 5px;
  padding-left: 30px;
}
#side .side-menu .side-menu-primary .side-menu-inner-item a:before {
  left: 12px;
}
#side .side-menu .side-menu-primary .side-menu-inner-item a:hover {
  background: #eee;
}
#side .side-menu .side-menu-primary .side-menu-inner-item:last-child {
  border-bottom: 1px solid #aaa;
}
.outline_page #side .side-menu .side-menu-primary .side-menu-inner,
.project_page #side .side-menu .side-menu-primary .side-menu-inner {
  display: block;
}
#side .side-menu.side-menu-contribution .side-menu-primary .side-menu-ttl a {
  padding-right: 50px;
}
#side .side-menu.side-menu-contribution .accordion_btn {
  height: 62px;
}
#side .side-menu.side-menu-contribution .accordion_btn .first,
#side .side-menu.side-menu-contribution .accordion_btn .second {
  top: 30px;
}
/* -- accordion-menu -- */
.cd-accordion-menu {
	margin-bottom: 20px;
}
.cd-accordion-menu ul {
  /* by default hide all sub menus */
  display: none;
}
.cd-accordion-menu li {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.cd-accordion-menu input[type=checkbox] {
  /* hide native checkbox */
  position: absolute;
  opacity: 0;
}
.cd-accordion-menu label, .cd-accordion-menu a {
  position: relative;
  display: block;
  padding: 10px 3em 10px 1em;
  background: #FBDDCD;
  box-shadow: inset 0 -1px #FFF;
  color: #EA5403;
  font-size: 1em;
  font-weight: 700;
}

.cd-accordion-menu a.noStyle_link {
	padding: 0;
	background: none;
	box-shadow: none;
}

.cd-accordion-menu a {
	padding-right: 1em;
}

.no-touch .cd-accordion-menu label:hover, .no-touch .cd-accordion-menu a:hover {
  background: #F7BB9A;
}
.cd-accordion-menu label::after, .cd-accordion-menu a::after {
  /* icons */
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}
.cd-accordion-menu label {
  cursor: pointer;
}
.cd-accordion-menu label::after {
  background-image: url(../img/cd-icons.svg);
  background-repeat: no-repeat;
}
.cd-accordion-menu label::before {
  /* arrow icon */
  /*left: 18px;
  background-position: 0 0;
  -webkit-transform: translateY(-50%) rotate(-90deg);
  -moz-transform: translateY(-50%) rotate(-90deg);
  -ms-transform: translateY(-50%) rotate(-90deg);
  -o-transform: translateY(-50%) rotate(-90deg);
  transform: translateY(-50%) rotate(-90deg);*/
}
.cd-accordion-menu label::after {
  /* folder icons */
  right: 1em;
  background-position: -16px 0;
}
.cd-accordion-menu a::after {
  /* image icon */
  /*left: 36px;
  background: url(../img/cd-icons.svg) no-repeat -48px 0;*/
}
.cd-accordion-menu input[type=checkbox]:checked + label::before {
  /* rotate arrow */
  /*-webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);*/
}
.cd-accordion-menu input[type=checkbox]:checked + label::after {
  /* show open folder icon if item is checked */
  background-position: -32px 0;
}
.cd-accordion-menu input[type=checkbox]:checked + label + ul,
.cd-accordion-menu input[type=checkbox]:checked + label:nth-of-type(n) + ul {
  /* use label:nth-of-type(n) to fix a bug on safari (<= 8.0.8) with multiple adjacent-sibling selectors*/
  /* show children when item is checked */
  display: block;
}
.cd-accordion-menu ul label,
.cd-accordion-menu ul a {
  background: #EEE;
  box-shadow: inset 0 -1px #FFF;
  padding-left: 2em;
  color: #333;
  font-weight: normal;
}
.no-touch .cd-accordion-menu ul label:hover, .no-touch
.cd-accordion-menu ul a:hover {
  background: #CCC;
}
.cd-accordion-menu > li:last-of-type > label,
.cd-accordion-menu > li:last-of-type > a,
.cd-accordion-menu > li > ul > li:last-of-type label,
.cd-accordion-menu > li > ul > li:last-of-type a {
  box-shadow: none;
}
.cd-accordion-menu ul label::before {
  left: 36px;
}
.cd-accordion-menu ul label::after,
.cd-accordion-menu ul a::after {
  right: 1em;
}
.cd-accordion-menu ul ul label,
.cd-accordion-menu ul ul a {
  padding-left: 3.5em;
  background: #FFF;
  box-shadow: inset 0 -1px #EEE;
}
.cd-accordion-menu ul ul label::before {
  left: 54px;
}
.cd-accordion-menu ul ul label::after,
.cd-accordion-menu ul ul a::after {
  left: 2em;
  background: url(../img/cd-icons.svg) no-repeat -48px 0;
}
.cd-accordion-menu ul ul ul label,
.cd-accordion-menu ul ul ul a {
  padding-left: 118px;
}
.cd-accordion-menu ul ul ul label::before {
  left: 72px;
}
.cd-accordion-menu ul ul ul label::after,
.cd-accordion-menu ul ul ul a::after {
  left: 95px;
}

.cd-accordion-menu.animated label::before {
  /* this class is used if you're using jquery to animate the accordion */
  -webkit-transition: -webkit-transform 0.3s;
  -moz-transition: -moz-transform 0.3s;
  transition: transform 0.3s;
}



#banner {
	background: url(../../img/bg01.gif);
	padding: 15px 20px;
	margin-bottom: 20px;
}

ul#banner li {
	margin-bottom: 10px;
}

ul#txtLink li {
	border-bottom: 1px solid #DDD;
	font-size: 110%;
}

ul#txtLink li:first-child {
	border-top: 1px solid #DDD;
}
	
ul#txtLink li a {
	display: block;
	padding: 7px 10px 7px 25px;
	position: relative;
  color: #333;
}

ul#txtLink li a:before{
	content: "";
	position: absolute;
	top: 50%;
	left: 6px;
	width: 7px;
	height: 7px;
	border-top: 2px solid #EA5403;
	border-right: 2px solid #EA5403;
	transform: rotate(45deg);
	margin-top: -5px;
}

ul#txtLink li a:hover {
	text-decoration: none;
	background: #EEE;
}

/* !Footer
---------------------------------------------------------- */
#footer {
	clear:both;
	font-size:88%;
}

#footerBg01 {
	background: #F2F2F2;
	clear: both;
}

#footerBg02 {
	background: #000;
	clear: both;
	color: #FFF;
}

.footerIn {
	max-width: 1000px;
	margin:0 auto;
	padding: 1.5em 15px;
}

.footerIn #siteMap {
	margin: 0 -10px;
}

.footerIn #siteMap h6 {
	font-size: 120%;
	font-weight: 700;
	border-bottom: 1px solid #999;
	padding: 5px 0;
	margin-bottom: 8px;
	position: relative;
}

.footerIn #siteMap h6:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 7px;
	height: 7px;
	border-top: 2px solid #EA5403;
	border-right: 2px solid #EA5403;
	transform: rotate(45deg);
	margin-top: -5px;
}

.footerIn #siteMap h6 a {
	color: #333;
	display: block;
	padding-left: 15px;
}

.footerIn nav.siteMap_box {
	padding: 0 10px;
	margin-bottom: 1.5em;
}

.footerIn nav.siteMap_box ul li {
	margin-left: 1em;
}

.footerIn nav.siteMap_box ul li:before {
	content: "・";
	margin-left: -1em;
}

.footerIn a.footerBtn {
	display: block;
	border: 1px solid #EA5302;
	color: #EA5302;
	padding: 7px 10px;
	background-color: #FFF!important;
	background-image: none!important;
	font-weight: 700;
	font-size: 120%;
	text-align: center;
	margin-bottom: 5px;
}

.footerIn .footerVisit ul li {
	float: left;
	margin-right: 1.5em;
	padding-left: 20px;
	background: url(../img/li_footer01.png) no-repeat left 2pt;
}

.footerIn .footerNav {
	text-align: right;
}

.footerIn .footerNav a {
	color: #FFF;
}

.footerIn .footerNav ul {
	line-height: 120%;
	margin-bottom: 7px;
}

.footerIn .footerNav ul li {
	display: inline-block;
	border-right: 1px solid #FFF;
	padding:0 10px;
}

.footerIn .footerNav ul li:first-child {
	border-left: 1px solid #FFF;
}

@media print, screen and (max-width: 1024px) {
	.footerIn a.footerBtn {
		font-size: 1.5vw;
	}
}

@media print, screen and (max-width: 767px) {
	#footerBg01 {
		display: none;
	}
	
	/*.footerIn #siteMap {
		display: none;
	}
	
	.footerIn .footerVisit {
		display: none;
	}*/
	
	.footerIn .footerNav {
		margin-top: 10px;
		text-align: left;
	}
}

@media print, screen and (max-width: 567px) {
	
}

/* !foote-navi
---------------------------------------------------------- */
.foote-navi {
  padding: 30px 0 40px;
}
.foote-navi .gsc-box {
  width: 50%;
  margin: 0 auto;
  padding-bottom: 10px;
}
.foote-navi .gsc-box .gsc-input {
  padding-right: 0 !important;
}
.foote-navi .gsc-box .gsc-input div#gsc-iw-id1 {
  padding: 5px;
}
.foote-navi .gsc-box button.gsc-search-button.gsc-search-button-v2 {
  margin: 0;
  padding: 8px 27px;
}
.foote-navi .gsc-box button.gsc-search-button.gsc-search-button-v2 svg {
  width: 20px;
  height: 20px;
}
.foote-navi .gsc-box .gsc-control-cse {
  border-color: transparent;
  background-color: transparent;
}
.foote-navi .visit-list {
  font-size: 0;
  letter-spacing: 0;
  padding: 15px 0;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.foote-navi .visit-list .visit-list-item {
  display: inline-block;
  font-size: 14px;
  width: 25%;
  text-align: center;
}
.foote-navi .visit-list .visit-list-item a {
  position: relative;
}
.foote-navi .visit-list .visit-list-item a:before {
  content: "";
  position: absolute;
  top: 12px;
  left: -15px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  transform: rotate(45deg);
  margin-top: -5px;
}

/* !表示・非表示
---------------------------------------------------------- */
@media print, screen and (max-width: 1024px) {
	.hidden-md {
			display: none !important;
	}
}

/* !switch
---------------------------------------------------------- */
.switch a {
	display: none; /*非表示*/
}

/* !pageTop
---------------------------------------------------------- */
#pageTop {
    display: none;
    position: fixed;
    bottom: 25px;
    right: 25px;
	line-height:100%;
	z-index:100;
}

#pageTop a {
    display: block;
	background-color: rgba(234,84,3,0.5);
    text-align: center;
    color: #FFF;
    font-size: 85%;
    text-decoration: none;
    padding: 18px 15px;
	border-radius: 300px;
}
 
#pageTop a:hover {
	background-color: rgba(234,84,3,0.7);
    text-decoration: none;
}

@media print, screen and (max-width: 1024px) {
	#pageTop {
		display: block;
		position: static;
	}
	
	#pageTop a {
		background-color: #999;
		border-radius: 0;
		/*padding: 8px;*/
	}
	
	#pageTop a:hover {
		background-color: #CCC;
	}
}

/* !breadcrumb
---------------------------------------------------------- */

.breadcrumbList {
	background: #EEE;
	padding: 5px 0;
	margin-bottom: 30px;
}

.breadcrumbList ul {
	font-size:80%;
	text-align:left;
	margin: 0 1em;
}

.breadcrumbList ul li {
	display:inline-block;
}

.breadcrumbList ul li:before {
	content:' ＞ ';
}

.breadcrumbList ul li:first-child:before {
	content: none;
}

/* !h(n)eading
---------------------------------------------------------- */
.tit_basic01 {
	font-size: 250%;
	margin-bottom:30px;
	font-weight: bold;
	font-family:"ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "HGS明朝E", serif;
}

.tit_basic02 {
	font-weight: 500;
	margin-bottom:20px;
	font-size:130%;
	padding: 3px 10px;
	border: 1px solid #E95C06;
	color: #E95C06;
	background: #FFEAD8;
}

.tit_basic03 {
	font-size: 160%;
	font-weight: 500;
	margin-bottom:20px;
}

.tit_basic03:before {
	content:'● ';
	color: #E95C06;
}

.tit_basic04 {
	color: #E95C06;
	font-size: 100%;
	font-weight: 500;
}

.tit_basic04:before {
	content:'■ ';
	color: #E95C06;
}

.titNum01 {
    position:relative;
    margin-left:40px;
	color: #E95C06;
	font-weight: 500;
	font-size: 160%;
	margin-bottom: 15px;
}

.titNum01:before {
    counter-increment:number;
    content:counter(number);
    position:absolute;
    top: 0;
    left: -40px;
    padding: 5px 10px;
    background: #E95C06;
	color: #FFF;
    font-weight: bold;
	line-height: 100%;
	border-radius: 30px;
}

@media print, screen and (max-width: 567px) {
	.tit_basic01 {
		font-size: 180%;
		line-height: 1.3em;
	}
}

/* !Listing
---------------------------------------------------------- */
.list_basic01 {
	list-style: disc;
	margin-left: 20px;
}

.list_basic02 {
	list-style: decimal;
	margin-left: 20px;
}

.imageList {
	margin-top:2em;
}

.imageList li {
	float:left;
	margin-left: 1em;
}

.imageList li:first-child {
	margin-left: 0;
}

@media print, screen and (max-width: 567px) {
	.imageList li {
		float:none;
		margin: 0 0 1em 0;
		text-align: center;
	}
}

/* !Link
---------------------------------------------------------- */
/*a.link {
	background:url(../img/ico_link01.png) no-repeat right 1pt;
	padding-right:15px;
}*/


/* !Table
---------------------------------------------------------- */
.table_basic01 {
	border-collapse: separate;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
	.table_basic01 th,
	.table_basic01 td {
		border-right: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
		padding: 10px 15px;
	}
	.table_basic01 th {
		background-color: #f3f3f3;
	}
	.table_basic01 td {
	}

/* !Section
---------------------------------------------------------- */
.sectionLv01 { margin-bottom: 10px;}
.sectionLv02 { margin-bottom: 20px;}
.sectionLv03 { margin-bottom: 30px;}
.sectionLv04 { margin-bottom: 40px;}
.sectionLv05 { margin-bottom: 50px;}

.section_l_Lv01 { margin-bottom: 10px; padding-bottom: 10px; border-bottom: 1px dotted #CCCCCC; }
.section_l_Lv02 { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px dotted #CCCCCC;}
.section_l_Lv03 { margin-bottom: 30px; padding-bottom: 30px; border-bottom: 1px dotted #CCCCCC;}
.section_l_Lv04 { margin-bottom: 40px; padding-bottom: 40px; border-bottom: 1px dotted #CCCCCC;}
.section_l_Lv05 { margin-bottom: 50px; padding-bottom: 50px; border-bottom: 1px dotted #CCCCCC;}

div[class^="section"]:last-child,
section[class^="section"]:last-child {margin-bottom: 0; padding-bottom: 0; border-bottom: none;}

/* !Btn
---------------------------------------------------------- */
.btn_basic01 {
	display:block;
	width: 160px;
	margin:0 auto;
	padding: 6px 10px;
    color: #fff;
	border-radius: 30px;
	text-align: center;
	background-color: #20B024;
	line-height: 1;
	font-weight: 500;
}

.btn_basic01:hover {
	opacity: 0.7;
	text-decoration: none;
}

.btn_basic02 {
	display:block;
	width: 400px;
	margin:0 auto;
	padding: 15px 10px;
    color: #fff;
	border-radius: 30px;
	text-align: center;
	background-color: #20B024;
	line-height: 1;
	font-size: 150%;
	font-weight: 500;
}

.btn_basic02:hover {
	opacity: 0.7;
	text-decoration: none;
}

/* !contentsLink
---------------------------------------------------------- */
.contentsLink {
	background: #F2F2F2;
	padding: 15px;
	font-size: 90%;
}

.arrow{
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	vertical-align: middle;
	text-decoration: none;
}
.arrow::before,
.arrow::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.contentsLink a::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 25%;
	border-radius: 25%;
	background: #333;
}
.contentsLink a::after{
	left: 5px;
	box-sizing: border-box;
	width: 3px;
	height: 3px;
	border: 3px solid transparent;
	border-left: 3px solid #fff;
}


/* !blockquote
---------------------------------------------------------- */
blockquote.blockquote_basic01 {
  background: #f9f9f9;
  border-left: 10px solid #ccc;
  margin: 1.5em 0;
  padding: 1em 10px;
  quotes: "\201C""\201D""\2018""\2019";
}
blockquote.blockquote_basic01:before {
  color: #ccc;
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
}

/* !collegeNavi
---------------------------------------------------------- */

#collegeNavi {
  background: url(../../img/bg01.gif);
  text-align: center;
  padding: 60px 0 10px;
}

#collegeNavi h2,
.ttl_sub {
  margin-bottom: 25px;
  font-weight: 500;
  text-align: center;
}

#collegeNavi h2 span,
.ttl_sub span {
  font-size: 180%;
  border-bottom: 3px solid #E95C06;
  padding: 0 15px;
}
.ttl_sub span {
  line-height: 1.7;
}

#collegeNavi .course {
    margin: 1px -2px 0;
}

.college-navi-table {
  margin: 2px 2px;
  position: relative;
}

.college-navi-table a:hover {
  opacity: 0.8; 
}

.college-navi-table p {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: center;
  color: #FFF;
  padding: 3px 0;
  font-size: 180%;
  font-weight: 300;
}

#collegeNavi .course01 p {
  background-color: rgba(59,181,232,0.8);
}

#collegeNavi .course02 p {
  background-color: rgba(169,207,45,0.8);
}

#collegeNavi .course03 p {
  background-color: rgba(240,133,160,0.8);
}

#collegeNavi .center_list p {
  background-color: rgba(255,147,38,0.8);
  font-size: 125%;
  letter-spacing: .2px;
}

#collegeNavi .course a img:hover {
  opacity: 1;
}

@media print, screen and (max-width: 1023px) {
  #collegeNavi .course,
  #collegeNavi .center {
    margin: 0 5px;
  }
}

@media print, screen and (max-width: 767px) {
  #collegeNavi .college-navi-table p {
    font-size: 3vw;
  }
  
  #collegeNavi .course04 p {
    font-size: 2vw;
  }
}
@media print, screen and (max-width: 567px) {
  #feature {
    margin-bottom: 30px;
  }
  .ttl_sub {
    margin-bottom: 15px !important;
  }
  .ttl_sub span {
    padding: 0;
  }
}

/*スマホメニュー*/
.sp_nav_wrap .nav-button {
  display: none;
}
.sp_nav_wrap .sp_nav_menu.open {
  display: block;
}
.sp_nav_wrap .sp_nav_menu {
  display: none;
}
.scroll-prevent {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
}

.content {
  padding: 20px;
}
@media screen and (max-width: 1023px) {
  .sp_nav_wrap {
    position: relative;
  }
  .sp_nav_wrap .nav-button {
    display: block;
    cursor: pointer;
  }
  .sp_nav_wrap .sp_nav_menu {
    padding-top: 58px;
    position: fixed;
    right: 0;
    top: 0;
    display: none;
    z-index: 666;
    background-color: rgba(0, 0, 0, 0.8);
    height: calc(100% - 56px);
    width: 300px;
  }
  .sp_nav_wrap .sp_nav_menu .sp_nav_menu_list {
    height: 100%;
    position: relative;
    overflow-x: hidden;
    overflow-y: auto;
    border-top: 1px solid #fff;
  }
  .sp_nav_wrap .sp_nav_menu .sp_nav_menu_list a {
    position: relative;
    padding-left: 27px;
  }
  .sp_nav_wrap .sp_nav_menu .sp_nav_menu_list a:before {
    content: "";
    display: block;
    position: absolute;
    width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    left: 9px;
    top: 16px;
  }
  .sp_nav_wrap .sp_nav_menu .sp_nav_menu_list > li:not(.accordion_menu),
  .sp_nav_wrap .sp_nav_menu .sp_nav_menu_list > li ul > li:not(.accordion_menu) {
    border-bottom: 1px solid #fff;
  }
  .sp_nav_wrap .sp_nav_menu li a {
    display: block;
    padding: 10px 15px;
    color: #fff;
  }
  /*¥á¥Ë¥å¡¼¥Ü¥¿¥ó¤Î¥¨¥Õ¥§¥¯¥È*/
  .sp_nav_wrap .nav-button,
  .sp_nav_wrap .nav-button span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
  }
  .sp_nav_wrap .nav-button {
    z-index: 999;
    position: absolute;
    width: 30px;
    height: 26px;
    right: 0;
    top: 10px;
  }
  .sp_nav_wrap .nav-button span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #ddd;
    border-radius: 4px;
  }
  .sp_nav_wrap .nav-button span:nth-of-type(1) {
    top: 0;
  }
  .sp_nav_wrap .nav-button span:nth-of-type(2) {
    top: 11px;
  }
  .sp_nav_wrap .nav-button span:nth-of-type(3) {
    bottom: 0;
  }
  .sp_nav_wrap .nav-button.active span:nth-of-type(1) {
    -webkit-transform: translateY(13px) rotate(-45deg);
    transform: translateY(13px) rotate(-45deg);
  }
  .sp_nav_wrap .nav-button.active span:nth-of-type(2) {
    opacity: 0;
  }
  .sp_nav_wrap .nav-button.active span:nth-of-type(3) {
    -webkit-transform: translateY(-9px) rotate(45deg);
    transform: translateY(-9px) rotate(45deg);
  }
}

/*アコーディオン*/

.accordion_cts .accordion_menu {
  position: relative;
}
.accordion_cts .accordion_menu .accordion_ttl {
  padding-right: 51px;
  border-bottom: 1px solid #fff;
}
.accordion_cts .accordion_menu .accordion_ttl.double + .accordion_btn {
  height: 62px;
}
.accordion_cts .accordion_ttl.double + .accordion_btn .first,
.accordion_cts .accordion_ttl.double + .accordion_btn .second {
  top: 30px;
}
.accordion_cts .accordion_menu .accordion_close {
  display: none;
}
.accordion_cts .accordion_menu .accordion_close li {
  background: rgba(0, 0, 0, 0.3);
}
.accordion_cts .accordion_menu .accordion_close li:first-child {
  border-top: 1px solid #fff;
}

.accordion_cts .accordion_menu_sub li {
  padding-left: 10px;
}

.accordion_cts .accordion_menu_deep .accordion_ttl a {
  padding-left: 40px;
}
.accordion_cts .accordion_menu_deep .accordion_ttl a:before {
  left: 19px;
}
.accordion_cts .accordion_menu_deep li:not(.accordion_menu) {
  padding-left: 10px;
}
.accordion_cts .accordion_menu_deep .accordion_close li {
  padding-left: 20px;
}

.accordion_cts .accordion_btn,
.side-menu .accordion_btn {
  position: absolute;
  display: block;
  width: 50px;
  height: 41px;
  top: 0;
  right: 0;
  background: #000;
  border-left: 1px solid #fff;
  transition: ease all .3s;
}
.accordion_cts .accordion_btn:hover,
.side-menu .accordion_btn:hover {
  cursor: pointer;
}
.accordion_cts .accordion_btn .first,
.accordion_cts .accordion_btn .second,
.side-menu .accordion_btn .first,
.side-menu .accordion_btn .second {
  display: block;
  width: 20px;
  height: 2px;
  background: #fff;
  position: absolute;
  right: 15px;
  top: 18px;
  transition: ease all .3s;
}
.accordion_cts .accordion_btn .first,
.side-menu .accordion_btn .first {
  transform: rotate(90deg);
}
.accordion_cts .accordion_btn.active .first,
.side-menu .accordion_btn.active .first {
  transform: rotate(0);
}

.course_nav ul.upper {
        column-count: 3;
        column-gap: 0px;
        display: flex;
}
.course_nav ul.lower {
        column-count: 3;
        column-gap: 0px;
        display: flex;
}