/*-----------------------------
　　テーブル
------------------------------*/
.table-style01 {
	margin-bottom: 30px;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
}
.table-style01 th, .table-style01 td {
	padding: 15px;
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
}
.table-style01 td {
	background-color: #fff;
}
.table-style01 th {
	background-color: #f2f2f2;
}
.table-style02 {
	margin-bottom: 30px;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
}
.table-style02 th, .table-style02 td {
	padding: 7px;
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
}
.table-style02 td.th {
	background-color: #f5f5f5;
}
.table-style02 th {
	background-color: #f2f2f2;
	text-align:center;
}
@media screen and (max-width:479px) {
	/* 普通のテーブルレスポンシブ */
	table.responsive th, table.responsive td {
		display:block;
		width:auto;
	}
	table.responsive td img {
		width:100%;
		height:auto;
		margin:10px 0;
	}
	table.responsive td img.pdf, table.responsive td img.word {
		width:auto;
	}
	/* 現職員 */
	.current-staff {
		width:100%;
		display:block;
	}
	/* 横長のテーブル */
	.table-scroll {
		width:100%;
		display:block;
		overflow-x:scroll;
	}
	.table-scroll:after {
		content:"⇔左右にスワイプができます";
	}
}


/*-----------------------------
　　パラスタイル
------------------------------*/
.para-style01{
	padding: 15px;
	border-radius: 5px;
	background-color: #f5f5f5;
}

/*-----------------------------
　　リストスタイル
------------------------------*/
.list-style01,
.list-style01 li{
	margin: 0;
	padding: 0;
	list-style: none !important;
}
.list-style01{
	border: 1px solid #ddd;
	border-radius: 5px;
	margin-bottom: 20px;
}
.list-style01 li{
	padding: 10px 15px;
	border-top: 1px solid #ddd;
	margin: 0 !important;
}
.list-style01 li:first-child{
	border-top: 0;
}
.listnone, .listnone li {
	list-style:none !important;
}
.listnone li span {
	font-weight:bold;
	margin-right:5px;
}

/*-----------------------------
　　テキストスタイル
------------------------------*/
.font-style01 {
	font-size:8px; font-size:0.8rem;
}
.font-color01 {
	color:#b20000;
}
.text-marker01 {
	background: linear-gradient(transparent 60%, #ffff66 60%);
}
.txt-gray{
	color: #aaa;
}
.txt-s{
	font-size: 0.8em;
	line-height: 1.6;
}
#content .outer .inner .m50 {
	margin-top:50px !important;
}

/*-----------------------------
　　ボタンスタイル
------------------------------*/
.btn-style01 {
  color: #fff;
  text-align: center;
  text-decoration: none;
  margin:20px 0;
  display:inline-block;
  font-family: "Gothic MB101 DemiBold";
  padding:10px 40px;
  border: 1px solid #ddd;
  background-color:#244b67;
  border-radius: 2px;
}
.btn-style02 {
  text-align: center;
  margin:20px 0;
  display:inline-block;
  font-family: "Gothic MB101 DemiBold";
  padding:10px 20px;
  background-color:#f5f5f5;
  border-radius: 2px;
}
.btn-style03 {
	display:inline-block;
	margin:20px 10px 20px 0;
	padding:10px 25px;
	border: 1px solid #ddd;
	border-radius: 3px;
	background-color:#f2f2f2;
	text-align: center;
	text-decoration: none;
 }


/*-----------------------------
　　ページ内ローカルナビ
------------------------------*/
.page_localnav, .page_localnav li {
	margin:0;
	padding:0;
	list-style:none;
}
.page_localnav li {
	display:inline-block;
	margin-right:5px;
	margin-bottom:5px;
	padding:7px 15px;
	border-radius:2px;
	background-color:#f2f2f2;
	border: 1px solid #ddd;
	border-radius: 3px;
}
.page_localnav li.stay {
	font-weight:bold;
}
/* アンカーリンク */
div.anchor {
	display:block;
}
div.anchor02 {
	display:block;
	height:30px;
}

/*-----------------------------
　　水平線
------------------------------*/
#content .outer .inner hr{
	height:1px;
	margin: 50px 0;
	border: 0;
	border-bottom: 1px dotted #ddd;
	height: 0;
}

/*-----------------------------
　　画像
------------------------------*/
.alignleft {
	float:left;
	margin-right:20px;
}
.alignright {
	float:right;
	margin-left:20px;
}
.aligncenter {
	display:block;
	margin:0 auto;
}
.img100 {
	width:100%;
	height:auto;
	max-width:600px;
	margin:10px auto;
	display:block;
}
@media screen and (max-width:479px) {
	.img_sp {
		width:100%;
		height:auto;
		margin:10px auto;
		display:block;
	}
}


/* 沿革 */
.table-style03 {
	margin-bottom: 30px;
}
.table-style03 th, .table-style03 td {
	padding: 10px 15px;
	border-bottom: 1px dashed #ddd;
}
@media screen and (max-width:479px) {
	.table-style03 th{
		text-align:center;
		background-color:#f5f5f5;
	}
	.table-style03 th, .table-style03 td {
		display:block;
	}
}

/* 各種資料 */
.materials p{
	display: inline-block;
	padding: 0 20px;
	margin-bottom: 30px;
	text-align: center;
}

/* Googleマップ */
.ggmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	border:10px solid #f5f5f5;
}
.ggmap iframe,
.ggmapr object,
.ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.ggmap2 {
	border:10px solid #f5f5f5;
	margin:0 auto;
	width:100%;
	max-width:640px;
}
.ggmap2 img {
	width:100% !important;
	max-width:640px;
}

/* クラブ活動 */
.club_box {
	border:1px solid #ddd;
	padding:20px;
	margin:20px 0;
	display:block;
}
.club_box:hover {
	border:3px solid #ddd;
	padding:18px;
}
.club_box h3 {
	margin-top:0;
}
.club-r {
	float:right;
	margin-left:10px;
	text-align:center;
	width:30%;
}
.club-r img, .club-l img {
	width:100%;
	max-width:245px;
}
.club-r img.hp, .club-l img.hp {
	width:16px;
	height:16px;
}
.club-l {
	float:left;
	width:60%;
}
.club_box .club-r {
	width:60%;
	text-align:left;
}
.club_box .club-l {
	width:30%;
	text-align:center;
}
#content .outer .inner.single h3.club {
	border:1px solid #ddd;
	padding:10px 15px 10px 20px;
	border-left:7px solid #112D55;
}
@media screen and (max-width:479px) {
	.club-r, .club-l {
		float:none;
		width:100%;
		display:block;
		margin:0;
	}
	.club-r img, .club-l img {
		width:100%;
	}
	.club-r {
		margin-bottom:20px;
	}
	.club_box .club-r, .club_box .club-l {
		float:none;
		width:100%;
		display:block;
	}
}

/* サイトマップ */
.sitemap {
	border-collapse: collapse;
	border-spacing: 0;
}
.sitemap td {
	border:1px solid #ddd;
	border-top:1px solid #ddd;
	padding:15px;
}

/* 羽ばたく卒業生 */
.special_obog {
	display: table;
	margin-bottom:40px;
	width:100%;
}
.special_obog .name {
	display:table-cell;
	width:40%;
	padding:75px 50px;
	background-color: #294672;
	color: #fff;
}
.special_obog .name p {
	margin:0 !important;
}
.special_obog .name strong {
	font-size:18px;
	font-size: 1.8rem;
}
#content .outer .inner .special_obog .name hr {
	margin: 10px 0;
}
.special_obog .img {
	display:table-cell;
	background-color:transparent;
	background-repeat:no-repeat;
	background-position:0 0;
	background-size: cover;
	position: relative;
	vertical-align: bottom;
}
.special_obog .img .title {
	background-color:rgba(0,0,0,0.5);
	width:100%;
	color: #fff;
	margin: 0;
}
#content .outer .inner .special_obog .img .title p {
	padding: 20px;
	margin: 0;
}
@media screen and (max-width:479px) {
	.special_obog {
		display:block;
	}
	.special_obog .name {
		display:block;
		width:auto;
		padding:20px;
	}
	.special_obog .img {
		display:block;
		width:100%;
		height:200px;
	}
	.special_obog .img .title {
		position:absolute;
		bottom:0;
	}
	#content .outer .inner .special_obog .img .title p {
		padding:10px;
	}
}
@media screen and (max-width:479px) {
	/* キャンパスマップ */
	table.campus td {
		padding:7px 0;
		display:block;
		width:100%;
	}
	/* 50周年記念事業 */
	table.anniversary td {
		display:block;
		width:100%;
		border-bottom:1px solid #ddd;
		padding:5px 0;
	}
}

/* 授業風景 */
.lesson-style {
	display: inline-block;
	width: 510px;
	line-height: 0;
	text-align:center;
}
.lesson-style .alignleft, .lesson-style .alignright{
	margin:0;
}
@media screen and (max-width:479px) {
	.lesson-style {
		width:100%;
	}
	.lesson-style .alignleft, .lesson-style .alignright {
		float:none;
	}
}



/* サイト内検索 */
#content .search{
	text-align:center;
	margin-bottom:20px;
	font-size:0;
}
#content .search input.keyword{
	text-align:left;
	margin:0;
	padding: 0 20px;
	font-size:12px;font-size:1.2rem;
	background-color:#f2f2f2;
	border: 0;
	height:35px;
	line-height:35px;
}
#content .search input.submit{
	font-size:12px;font-size:1.2rem;
	background-color:#ddd;
	border: 0;
	margin:0;
	cursor: pointer;
	padding: 0 12px;
	height:35px;
	line-height:35px;
}