@charset "utf-8";

/*====================================================================

　common

====================================================================*/

html, body {
	width: 100%;
	word-wrap: break-word;
	word-break: break-word;
	font-size: 16px;
}

body {
	color: #313131;
	font-family: Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	line-height: 1.8;
	padding-top: 5px;
	position: relative;
}
body:after {
	content: "";
	display: block;
	background: #0275a4;
	background: linear-gradient(to right, #34a3d1 0%, #0275a4 100%);
	width: 100%;
	height: 5px;
	position: absolute;
	top: 0;
	left: 0;
}

img {
	max-width: 100%;
	height: auto !important;
}

p {
	margin: 15px 0;
}

b {
	font-weight: bold;
}

.center { text-align: center; }
.right { text-align: right; }
.left { text-align: left; }

h1, h2, h3, h4, h5 {
	line-height: 1.5;
}

input,
button,
select,
textarea {
	font-family: Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	box-sizing: border-box;
	font-size: 16px;
}

/*
link
---------------------------------------------------------*/
a {
	transition: color .3s, opacity .3s;
}
a img {
	transition: opacity .3s;
}
a:link {
	color: #0275a4;
	text-decoration: underline;
}
a:visited {
	color: #0275a4;
}
a:hover {
	color: #34a3d1;
	text-decoration: none;
}
a:hover img {
	opacity: .7;
}

/* link-mark */
a.link-mark {
	padding-right: 20px;
	background-position: right center;
	background-size: 16px 16px;
	background-repeat: no-repeat;
	transition: none;
}
a.link-mark {
	padding: 5px 30px 5px 0;
	background-image: url('/sgu/img/common/icon_link_mark_blue.png');
	background-size: 21px 21px;
}

.btn .link-mark {
	padding-right: 20px;
	background: url('/sgu/img/common/icon_link_mark_white.png') no-repeat right center;
	background-size: 11px 11px;
}

/* more-link */
.more-link {
	display: inline-block;
	margin: 0 0 10px 0;
}
.more-link a {
	display: block;
	font-size: 0.75rem;
	text-decoration: none;
	background-position: right 15px center;
	border: 1px solid #0275a4;
}
.more-link a span {
	display: block;
	padding: 4px 10px 4px 27px;
	background: url('/sgu/img/common/icon_link_mark_blue02.png') no-repeat 10px center / 11px 11px;
}
.more-link a:hover {
	color: #fff;
	background-color: #34a3d1;
}
.more-link a:hover span {
	display: block;
	padding: 4px 10px 4px 27px;
	background: url('/sgu/img/common/icon_link_mark_white.png') no-repeat 10px center / 11px 11px;
}

/*
icon
---------------------------------------------------------*/
/* http */
.details #main a[href^="http"]:not([class*="ico_none"]):not([href*="www.u-aizu.ac.jp/sgu/"]):after,
.news_details a[href^="http"]:not([class*="ico_none"]):not([href*="www.u-aizu.ac.jp/sgu/"]):after {
	background: no-repeat url(/sgu/img/common/ico_blank.svg) center center/cover;
	content: "";
	display: inline-block;
	margin-left: 0.125em;
	width: 16px;
	height: 16px;
	position: relative;
	top: 2px;
}

/* pdf */
.details #main a[href*=".pdf"]:not([class*="ico_none"]):after,
.news_details a[href*=".pdf"]:not([class*="ico_none"]):after {
	background: no-repeat url(/sgu/img/common/ico_pdf.svg) center center/cover;
	content: "";
	display: inline-block;
	margin-left: 0.125em;
	width: 16px;
	height: 16px;
	position: relative;
	top: 2px;
}

/* Excel */
.details #main a[href*=".xls"]:not([class*="ico_none"]):after,
.news_details a[href*=".xls"]:not([class*="ico_none"]):after {
	background: no-repeat url(/sgu/img/common/ico_excel.svg) center center/cover;
	content: "";
	display: inline-block;
	margin-left: 0.125em;
	width: 16px;
	height: 16px;
	position: relative;
	top: 2px;
}

/* word */
.details #main a[href*=".doc"]:not([class*="ico_none"]):after,
.news_details a[href*=".doc"]:not([class*="ico_none"]):after {
	background: no-repeat url(/sgu/img/common/ico_word.svg) center center/cover;
	content: "";
	display: inline-block;
	margin-left: 0.125em;
	width: 16px;
	height: 16px;
	position: relative;
	top: 2px;
}


/*
list
---------------------------------------------------------*/

ul {
	list-style: none;
}

/*
color
---------------------------------------------------------*/
.point_color {
	color: #ee3d23;
}

/*
navskip
---------------------------------------------------------*/
.navskip { display: none; }


/*
container
---------------------------------------------------------*/

@media screen and (max-width: 991px) {
	html { -webkit-text-size-adjust: 100% }
}


/*====================================================================

　container

====================================================================*/

.container {
	width: 1090px;
	margin: 0 auto;
}

@media screen and (max-width: 1120px) {
	.container {
		width: 100%;
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}

/*====================================================================

　header

====================================================================*/

header {
	position: relative;
	padding: 20px 0 30px;
}
header a:link,
header a:visited {
	color: #313131;
	text-decoration: none;
}
header a:hover {
	color: #0275a4;
}
header ul {
	padding: 0;
}

@media screen and (max-width: 991px) {
	header {
		padding: 15px 0 10px;
	}
}

/*
nav-content
---------------------------------------------------------*/

@media screen and (min-width: 991.99999px) , print {
	#nav-content {
		display: flex;
		flex-flow: column-reverse wrap;
	}
	#nav-content > div {
		width: 100%;
	}
}

/*
logo
---------------------------------------------------------*/

#logo {
	width: 295px;
	position: absolute;
	margin: 0;
	top: 35px;
	line-height: 1;
}

#logo a {
	display: inline-block;
	line-height: 1;
}

/* IE用 */
#logo img {
	width: 295px;
}

@media screen and (max-width: 1050px) {
	#logo {
		width: 230px;
		top: 45px;
	}
	
	/* IE用 */
	#logo img {
		width: 230px;
	}
}

@media screen and (max-width: 991px) {
	#logo {
		position: inherit;
		width: 165px;
		top: 0;
	}
	
	/* IE用 */
	#logo img {
		width: 165px;
	}
}

/*
subnav
---------------------------------------------------------*/
@media screen and (min-width: 991.99999px) , print {
	#subnav {
		display: flex;
		flex-flow: column-reverse wrap;
		padding-left: 300px;
	}
	#subnav > div {
		width: 100%;
	}

	/* headernav */
	#headernav ul {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		font-size: 0.875rem;
		margin: 0 -10px;
	}
	#headernav ul li {
		padding: 0 10px;
	}
}

@media screen and (max-width: 991px) {
	#headernav ul {
		margin: 0;
		display: flex;
		flex-wrap: wrap;
	}
	#headernav ul li:not(:last-child) {
		width: 33.333%;
	}
	#headernav ul li:not(:last-child) a {
		background-color: #f8f8f8;
		height: 100%;
		display: flex;
		
	}
	#headernav ul li:nth-child(2),
	#headernav ul li:nth-child(3) {
		border-left: 1px solid #d7e1e2;
	}
	#headernav ul li a {
		display: block;
		text-align: center;
		padding: 20px 0;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	#headernav ul li a img {
		margin: 0 auto;
	}
	#headernav ul li:last-child {
		border-top: 1px solid #d7e1e2;
		padding: 20px;
		width: 100%;
	}
}

/* header-search */
.header-search {
	position: relative;
}
.header-search .input-text {
	border: 1px solid #d7e1e2;
	padding: 0 30px 0 5px;
	width: 170px;
	min-height: 30px; /* IE用 */
}
.header-search .icon-search {
	position: absolute;
	right: 5px;
	top: 50%;
	transform: translateY(-50%);
}

@media screen and (max-width: 991px) {
	.header-search .input-text {
		width: 100%;
		padding: 5px 30px 5px 5px;
	}
}

@media screen and (min-width: 991.99999px) , print {
	/* targetnav */
	#targetnav ul {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		font-size: 0.875rem;
		margin: 15px 0 0 0;
	}
	#targetnav ul li {
		border: 1px solid #0275a4;
		margin-left: -1px;
	}
	#targetnav ul li a {
		padding: 3px 20px;
		display: block;
		min-width: 170px;
		text-align: center;
	}
	
	/* en */
	body:lang(en) #targetnav ul {
		font-size: 0.75rem;
	}
	body:lang(en) #targetnav ul a {
		min-width: inherit;
	}
}

@media screen and (max-width: 991px) {
	#targetnav ul {
		margin: 0;
	}
	#targetnav ul li {
		border-bottom: 1px solid #d7e1e2;
	}
	#targetnav ul li a {
		display: block;
		color: #0275a4;
		padding: 15px 20px;
	}
}

/*
mainnav
---------------------------------------------------------*/
@media screen and (min-width: 991.99999px) , print {
	#mainnav > ul {
		display: flex;
		position: relative;
		border-left: 1px solid #d7e1e2;
		margin: 20px 0 0;
	}
	#mainnav > ul > li {
		width: 100%;
		text-align: center;
		line-height: 1.5;
		border-right: 1px solid #d7e1e2;
	}
	#mainnav > ul > li > a {
		display: flex;
		height: 100%;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		padding: 10px 0;
		position: relative;
	}
	#mainnav > ul > li:hover > a:after{
		width: 0;
		height: 0;
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-bottom: 10px solid #34a3d1;
		content: "";
		display: block;
		position: absolute;
		bottom: 0;
	}
	#mainnav > ul > li a .img {
		width: 30px;
		height: 30px;
		margin-bottom: 5px;
	}
	
	/* en */
	body:lang(en) #mainnav ul {
		font-size: 0.875rem;
	}
	
	/* mainnav_inner */
	#mainnav > ul > li:hover .mainnav_inner {
		max-height: 9999px;
		opacity: 1;
		display: block;
	}
	#mainnav .mainnav_inner {
		max-height: 0;
		opacity: 0;
		position: absolute;
		overflow: hidden;
		left: 0;
		transition: all .3s ease-in;
		z-index: 100;
		width: 100%;
		background: #0275a4;
		background: linear-gradient(to right, #34a3d1 0%, #0275a4 100%);
		color: #fff;
		display: none;
	}
	#mainnav .mainnav_contents {
		padding: 50px;
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
	}
	#mainnav .mainnav_contents .mainnav_inner_title {
		width: 260px;
		text-align: left;
		color: #fff;
		padding-right: 15px;
	}
	#mainnav .mainnav_contents .mainnav_inner_title span {
		display: block;
		font-weight: bold;
		font-size: 1.25rem;
		margin-bottom: 10px;
	}
	#mainnav .mainnav_contents .mainnav_inner_title a {
		display: inline-block;
		color: #fff;
		font-size: 0.75rem;
		border: 1px solid #fff;
		padding: 10px 20px;
		transition: opacity .3s;
	}
	#mainnav .mainnav_contents .mainnav_inner_title a:before {
		content: "→";
		display: inline-block;
		margin-right: 10px;
	}
	#mainnav .mainnav_contents .mainnav_inner_title a:hover {
		opacity: .7;
	}
	#mainnav .mainnav_contents ul {
		display: flex;
		flex-wrap: wrap;
		margin: 0 -10px;
		width: calc(100% - 260px);
	}
	#mainnav .mainnav_contents ul li {
		padding: 0 10px;
		margin-top: -1px;
		width: 33.333%;
	}
	#mainnav .mainnav_contents ul li a {
		color: #fff;
		display: flex;
		text-align: left;
		padding: 10px 0 10px 30px;
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
		flex-direction: column;
		justify-content: center;
		height: 100%;
		position: relative;
		transition: opacity .3s;
	}
	#mainnav .mainnav_contents ul li a:before {
		content: "→";
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
	}
	#mainnav .mainnav_contents ul li a:hover {
		opacity: .7;
	}
}

@media screen and (max-width: 991px) {
	#mainnav ul {
		margin: 0;
		background: #0275a4;
		background: linear-gradient(to right, #34a3d1 0%, #0275a4 100%);
	}
	#mainnav .mainnav_inner {
		display: none;
	}
	#mainnav li {
		border-bottom: 1px solid #5cbee2;
	}
	#mainnav li a {
		display: block;
		color: #fff;
		padding: 15px 20px;
	}
	#mainnav li a br,
	#mainnav li a .img {
		display: none;
	}
	#mainnav li:nth-child(1) a,
	#mainnav li:nth-child(2) a {
		position: relative;
		padding-left: 45px;
	}
	#mainnav li:nth-child(1) a:before,
	#mainnav li:nth-child(2) a:before {
		content: "";
		display: block;
		width: 25px;
		height: 25px;
		position: absolute;
		left: 20px;
		top: 50%;
		transform: translateY(-50%);
	}
	#mainnav li:nth-child(1) a:before {
		background: no-repeat url(/sgu/img/common/ico_philosophy_sp.png) center center / cover;
	}
	#mainnav li:nth-child(2) a:before {
		background: no-repeat url(/sgu/img/common/ico_results_sp.png) center center / cover;
	}
}

/*
gnav
---------------------------------------------------------*/

#nav-open,
.nav-unshown {
	display: none;
}


@media screen and (max-width: 991px) {
	#nav-drawer {
		/*position: relative;*/
	}
	
	body.nav-open {
		overflow: hidden;
	}

	/*アイコンのスペース*/
	#nav-open {
		display: inline-block;
		width: 30px;
		height: 26px;
		position: absolute;
		right: 20px;
		cursor: pointer;
		top: 22px;
		transition: .3s ease-in-out;
		z-index: 999;
	}
	body.nav-open #nav-open {
		right: 270px;
	}
	#nav-open span, #nav-open span:before, #nav-open span:after {
		position: absolute;
		height: 2px;
		width: 30px;
		background: #34a3d1;
		display: block;
		content: '';
	}
	#nav-open span:before {
		bottom: -10px;
	}
	#nav-open span:after {
		bottom: -20px;
	}
	body.nav-open #nav-open span:before {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		background: #fff;
	}
	body.nav-open #nav-open span {
		background-color: transparent;
	}
	body.nav-open #nav-open span:after{
		-webkit-transform: translateY(-10px) rotate(45deg);
		transform: translateY(-10px) rotate(45deg);
		background: #fff;
	}

	/*閉じる用の薄黒カバー*/
	#nav-close {
		display: none;
		position: fixed;
		z-index: 99;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: black;
		opacity: 0;
		transition: .3s ease-in-out;
	}

	/*中身*/
	#nav-content {
		overflow: auto;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 9999;
		width: 90%;
		max-width: 260px;
		height: 100%;
		background: #fff;
		transition: .3s ease-in-out;
		-webkit-transform: translateX(105%);
		transform: translateX(105%);
	}
	#nav-content:before {
		content: "";
		display: inline-block;
		width: 30px;
		height: 2px;
		background-color: #fff;
		position: absolute;
		top: 20px;
		left: -40px;
	}

	/*チェックが入ったらもろもろ表示*/
	#nav-input:checked ~ #nav-close {
		display: block;/*カバーを表示*/
		opacity: .5;
	}

	#nav-input:checked ~ #nav-content {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);/*中身を表示（左へスライド）*/
		box-shadow: 6px 0 25px rgba(0,0,0,.15);
	}
}

/*====================================================================

　contents

====================================================================*/

main {
	padding: 50px 0 100px;
	display: block; /* IE用 */
}

@media screen and (max-width: 768px) {
	main {
		padding: 30px 0 80px;
	}
}

/*
breadcrumb
---------------------------------------------------------*/
#breadcrumb {
	border-top: 1px solid #d7e1e2;
	padding: 12px 0;
}
#breadcrumb ul {
	display: flex;
	flex-wrap: wrap;
	font-size: 0.875rem;
	align-items: center;
}
#breadcrumb ul li {
	line-height: 1.3;
}
#breadcrumb ul li:not(:last-child):after {
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	background: no-repeat url(/sgu/img/common/ico_right.svg) center center / cover;
	margin: 0 0.5em;
}
#breadcrumb ul li.home img {
	width: 13px;
	position: relative;
	top: 2px;
}

@media screen and (max-width: 768px) {
	#breadcrumb ul {
		font-size: 0.75rem;
	}
}

/*
maintitle
---------------------------------------------------------*/
.maintitle .maintitle_pic {
	line-height: 1;
	height: 300px;
	overflow: hidden;
	position: relative;
}
.maintitle .maintitle_pic img {
	width: 100%;
	vertical-align: bottom;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
}
.maintitle .maintitle_tit {
	background: #0275a4;
	background: linear-gradient(to right, #34a3d1 0%, #0275a4 100%);
	padding: 30px 0;
}
.maintitle .maintitle_tit h1 {
	color: #fff;
	font-size: 1.875rem;
	line-height: 1.3;
}

@media screen and (max-width: 1200px) {
	.maintitle .maintitle_pic {
		height: auto;
	}
	.maintitle .maintitle_pic img {
		position: inherit;
		top: auto;
		left: auto;
		transform: none;
	}
}

@media screen and (max-width: 768px) {
	.maintitle .maintitle_pic {
		display: flex;
		flex-direction: column;
		align-items: center;
		overflow: hidden;
	}
	
	.maintitle .maintitle_pic img {
		max-width: 150%;
		width: 150%;
	}
	
	.maintitle .maintitle_tit {
		padding: 25px 0;
	}
	.maintitle .maintitle_tit h1 {
		font-size: 1.625rem;
	}
}

/* IE用 */
@media all and (-ms-high-contrast:none){
	*::-ms-backdrop, .maintitle .maintitle_pic {
		display: block!important;
	} 
	
	*::-ms-backdrop, .maintitle .maintitle_pic img {
		max-width: 100%!important;
		width: 100%!important;
	}
}

/*
index_menu
---------------------------------------------------------*/
.index_menu ul {
	display: flex;
	margin: 0 -10px;
	flex-wrap: wrap;
}
.index_menu ul li {
	width: 33.333%;
	padding: 0 10px;
	margin-bottom: 20px;
}
.index_menu ul li a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-top: 1px solid #0275a4;
	text-decoration: none;
	padding: 20px 20px 20px 0;
	position: relative;
}
.index_menu ul li a:after {
	content: "→";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 1.125rem;
}
.index_menu ul li a[target^="_blank"]:not([class*="ico_none"]):after {
	background: no-repeat url(/sgu/img/common/ico_blank.svg) center center/cover;
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
}

@media screen and (max-width: 768px) {
	.index_menu ul li {
		width: 100%;
		margin-bottom: 20px;
	}
	.index_menu ul li a {
		padding: 10px 20px 10px 0;
	}
}

/* sub_index_menu */
.index_menu.sub_index_menu ul {
	padding-left: 0!important;
	margin: 0!important;
}
.index_menu.sub_index_menu ul li {
	width: 50%;
}
.index_menu.sub_index_menu ul li:before {
	display: none!important;
}

@media screen and (max-width: 768px) {
	.index_menu.sub_index_menu ul li {
		width: 100%;
		margin-bottom: 20px!important;
	}
}

/*
details
---------------------------------------------------------*/
.details {
	display: flex;
	flex-wrap: wrap;
}

/*
main
---------------------------------------------------------*/
#main {
	width: calc(100% - 230px);
	padding-right: 50px;
}

@media screen and (max-width: 768px) {
	#main {
		width: 100%;
		padding: 0;
	}
}

/*
title
---------------------------------------------------------*/
main h2,
.news_details h2 {
	border-top: 3px solid #34a3d1;
	font-size: 1.5rem;
	padding: 25px 0 15px;
	margin: 60px 0 0;
}

main h3,
.news_details h3 {
	font-size: 1.25rem;
	border-top: 1px solid #d7e1e2;
	position: relative;
	padding: 20px 0 5px;
	margin: 40px 0 10px;
}
main h3:before,
.news_details h3:before {
	content: "";
	width: 300px;
	height: 1px;
	background-color: #34a3d1;
	position: absolute;
	top: -1px;
	left: 0;
	z-index: 1;
}

main h4,
.news_details h4 {
	font-size: 1.125rem;
	color: #34a3d1;
	margin: 30px 0 20px;
}

main h5,
.news_details h5 {
	margin: 20px 0;
	font-size: 1rem;
}

main h2:first-child,
main h3:first-child,
main h4:first-child,
main h5:first-child,
.news_details h2:first-child,
.news_details h3:first-child,
.news_details h4:first-child,
.news_details h5:first-child {
	margin-top: 0;
}

@media screen and (max-width: 768px) {
	main h3:before,
	.news_details h3:before {
		width: 30%;
	}
}

/*
list
---------------------------------------------------------*/

/* ul */
main div:not(.information-area):not(.index_menu) ul,
main > ul {
	padding-left: 1.25em;
	margin: 15px 0;
}
main div:not(.information-area):not(.index_menu) ul li,
main > ul li {
	position: relative;
	margin-bottom: 0.25em;
	line-height: 1.6;
}
main div:not(.information-area):not(.index_menu) ul li:before,
main > ul li:before {
	content: "";
	width: 8px;
	height: 8px;
	display: inline-block;
	background-color: #34a3d1;
	border-radius: 50%;
	left: -1em;
	top: 0.55em;
	position: absolute;
}
main div:not(.information-area):not(.index_menu) ul li ul li:before,
main > ul li ul li:before {
	background-color: #90999a;
}

/* ol */
main ol {
	padding-left: 1.25em;
	margin: 15px 0;
}
main ol li {
	margin-bottom: 0.25em;
	line-height: 1.6;
}


/*
float
---------------------------------------------------------*/

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

.img_left {
	float: left;
	margin: 0 20px 20px 0;
	max-width: 50%;
}

.img_right {
	float: right;
	margin: 0 0 20px 20px;
	max-width: 50%;
}

@media screen and (max-width: 768px) {
	.sp_float_none {
		float: none;
		margin: 0 auto 15px;
		display: block;
		max-width: 100%;
	}
}

/*
table
---------------------------------------------------------*/

table {
	width: 100%!important;
}
table th,
table td {
	border: 1px solid #d7e1e2;
	padding: 0.75em;
}
table th {
	background-color: #f8f8f8;
}

main table {
	margin: 15px 0;
}

@media screen and (max-width: 768px) {
	table {
		font-size: 80%;
	}
	table th,
	table td {
		padding: 0.5em;
		width: auto!important;
	}
}

/*
sub
---------------------------------------------------------*/
#sub {
	width: 230px;
}
#sub ul {
	margin: 0;
	padding: 0;
}
#sub ul li {
	border-top: 1px solid #d7e1e2;
	border-bottom: 1px solid #d7e1e2;
	margin-top: -1px;
	margin-bottom: 0;
	line-height: 1.8;
}
#sub ul li:before {
	display: none;
}
#sub ul li a {
	display: block;
	text-decoration: none;
	padding: 0.75em 20px 0.75em 0;
	color: #313131;
	font-size: 0.875rem;
	position: relative;
}
#sub ul li a:after {
	content: "→";
	color: #0275a4;
	font-size: 1.125rem;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
#sub ul li a:hover {
	color: #0275a4;
}
#sub p {
	display: none;
}

@media screen and (max-width: 768px) {
	#sub {
		width: 100%;
		margin-top: 80px;
	}
	#sub ul {
		margin: 0 -20px -81px -20px;
	}
	#sub ul li a {
		padding: 0.75em 40px 0.75em 20px;
	}
	#sub ul li a:after {
		right: 20px;
	}
	#sub p {
		margin: 0 -20px;
		font-size: 0.875rem;
		display: block;
	}
	#sub p a {
		display: block;
		font-weight: bold;
		color: #fff;
		background: #0275a4;
		background: linear-gradient(to right, #34a3d1 0%, #0275a4 100%);
		padding: 15px 20px;
		text-decoration: none;
	}
}

/*	event-unit
--------------------------------------------------*/
main ul.event-unit {
	margin: 0;
	padding: 0;
	font-size: 100%;
}
main ul.event-unit li::after {
	content: '';
	position: static;
	top: .8em;
	left: -1em;
	width: 8px;
	height: 8px;
	background-color: transparent;
	border-radius: 100%;
}

main .event-unit li {
	position: relative;
	margin: 0 0 20px 0;
	padding: 0 0 15px 0;
	width: 100%;
	border-bottom: 1px solid #e3e3e5;
	box-sizing: border-box;
}
main .event-unit li a {
	text-decoration: none;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
	padding-right: 20px;
}
main .event-unit li a:after {
	position: absolute;
	content: "→";
	color: #0275a4;
	font-size: 1.25rem;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	display: inline-block;
}
main .event-unit li .post-title {
	margin: 0; 
	color: #0275a4;
	font-size: 1rem;
	font-weight: normal;
	background-color: transparent;
	border: none;
	text-decoration: underline;
}
main .event-unit li .post-title:before {
	display: none!important;
}
main .event-unit li a:hover .post-title,
main .event-unit li a:focus .post-title {
	color: #34a3d1;
}

main .event-unit li .date-area {
	padding: 7px 0;
	color: #fff;
	font-weight: bold;
	width: 15%;
	background-color: #34a3d1;
}
main .event-unit li .date-area p {
	margin: 0;
	line-height: 1.1;
	text-align: center;
}
main .event-unit li .date-area .month { font-size: 1.125rem; }
main .event-unit li .date-area .day { font-size: 1.875rem; }
main .event-unit li .date-area .year { color: #b8e0f1; font-size: 0.812rem; }

main .event-unit li .date {
	margin: 5px 0 0 0;
	color: #515151;
	font-size: 0.875rem;
}

main .event-unit li .text-area {
	line-height: 1.6;
	width: 82%;
}

/*	pagination
--------------------------------------------------*/
main ul.pagination {
	display: inline-block;
	margin: 15px 0;
	padding: 0;
	border-radius: 4px;
}
main ul.pagination > li {
	display: inline-block;
}
main ul.pagination > li::after {
	content: '';
	position: static;
	top: .8em;
	left: -1em;
	width: 8px;
	height: 8px;
	background-color: transparent;
	border-radius: 100%;
}
main ul.pagination > li:first-child > a, .pagination > li:first-child > span {
	margin-left: 0;
}
main ul.pagination > li > a, .pagination > li > span {
	position: relative;
	margin-left: -1px;
	padding: 6px 12px;
	line-height: 1.42857;
	float: left;
	background-color: #fff;
	border: 1px solid #ddd;
	text-decoration: none;
}
main ul.pagination > li > a,
main ul.pagination > li > span,
main ul.pagination > .active > a,
main ul.pagination > .active > span,
main ul.pagination > .active > a:hover,
main ul.pagination > .active > span:hover,
main ul.pagination > .active > a:focus,
main ul.pagination > .active > span:focus {
	border-color: #cde1e8;
}
main ul.pagination > .disabled > span,
main ul.pagination > .disabled > span:hover,
main ul.pagination > .disabled > span:focus,
main ul.pagination > .disabled > a,
main ul.pagination > .disabled > a:hover,
main ul.pagination > .disabled > a:focus {
	color: #cde1e8;
}
main ul.pagination .current_page { /* for PageBute Plugin */
	color: #fff;
	background-color: #34a3d1;
}
main ul.pagination > li {
	padding: 0;
}

/*	information-unit
--------------------------------------------------*/
main ul.information-unit {
	margin: 0;
	padding: 0;
	font-size: 100%;
}
main ul.information-unit li::after {
	content: '';
	position: static;
	top: .8em;
	left: -1em;
	width: 8px;
	height: 8px;
	background-color: transparent;
	border-radius: 100%;
}

main .information-unit li {
	position: relative;
	margin: 0 0 20px 0;
	padding: 0 0 15px 0;
	width: 100%;
	border-bottom: 1px solid #e3e3e5;
	box-sizing: border-box;
}
main .information-unit li a {
	text-decoration: none;
}
main .information-unit li > a {
	display: flex;
	position: relative;
}
main .information-unit li > a:after {
	position: absolute;
	content: "→";
	color: #0275a4;
	font-size: 1.25rem;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	display: inline-block;
}
main .information-unit li .post-photo {
	width: 220px;
}
main .information-unit li .post-photo img {
	margin-right: 20px;
	width: 190px;
	height: 120px!important;
}
main .information-unit li .post-text {
	width: calc(100% - 220px);
	padding-right: 25px;
}
main .information-unit li .post-title {
	margin: 0;
	color: #0275a4;
	font-size: 1rem;
	font-weight: normal;
	background-color: transparent;
	border: none;
	text-decoration: underline;
	padding: 0;
}
main .information-unit li .post-title:before {
	display: none;
}
main .information-unit li a:hover .post-title,
main .information-unit li a:focus .post-title {
	color: #34a3d1;
}
main .information-unit li .date {
	margin: 0;
	color: #515151;
	font-size: 0.875rem;
}
main .information-unit li .text {
	margin: 5px 0 0 0;
	padding-right: 40px;
	color: #515151;
	font-size: 0.875rem;
}
main .information-unit li .post-comment {
	margin: 8px 0 0 0;
	color: #515151;
	font-size: 0.875rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
main .information-unit li .tag {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	display: inline-block;
	color: #fff;
	font-size: 0.75rem;
	opacity: 0.8;
}
main .information-unit li .tag span {
	display: inline-block;
	padding: 5px 7px 5px 30px;
}
main .information-unit li .tag .tag_news { background: url('/sgu/img/common/icon_tag01.png') no-repeat 5px center #d5213a; }
main .information-unit li .tag .tag_media { background: url('/sgu/img/common/icon_tag02.png') no-repeat 5px center #e0a005; }
main .information-unit li .tag .tag_event { background: url('/sgu/img/common/icon_tag03.png') no-repeat 5px center #09a949; }
main .information-unit li .tag .tag_newspaper { background: url('/sgu/img/common/icon_tag04.png') no-repeat 5px center #00a5b1; }

main .information-unit li .tag a:link, 
main .information-unit li .tag a:visited {
	color: #fff;
}
main .information-unit li .tag a:hover .tag_news {
	background: url('/sgu/img/common/icon_tag01.png') no-repeat 5px center #e9475e;
}
main .information-unit li .tag a:hover .tag_media {
	background: url('/sgu/img/common/icon_tag02.png') no-repeat 5px center #efb833;
}
main .information-unit li .tag a:hover .tag_event {
	background: url('/sgu/img/common/icon_tag03.png') no-repeat 5px center #37c670;
}
main .information-unit li .tag a:hover .tag_newspaper {
	background: url('/sgu/img/common/icon_tag04.png') no-repeat 5px center #00c9d8;
}

@media (max-width: 991px) {
	main .information-unit li .post-photo {
		width: 35%;
		padding-right: 20px;
	}
	main .information-unit li .post-photo img {
		width: 100%;
		height: auto!important;
		margin: 0;
	}
	main .information-unit li .post-text {
		width: calc(100% - 35%);
	}
	main .information-unit li .post-title {
		padding: 0;
		font-size: 0.937rem;
	}
	main .information-unit li .text {
		padding: 0;
	}
	main .information-unit li a {
		background-image: none;
	}
}

/*	news_date
--------------------------------------------------*/
.news_date {
	color: #818181;
	font-size: 0.875rem;
	text-align: right;
}
.news_date p {
	margin-bottom: 0;
}

/*
catch
---------------------------------------------------------*/
.catch01 {
	font-size: 1.5rem;
}

/*
btn_area
--------------------------------------------------*/
.btn_area {
	display: flex;
	flex-wrap: wrap;
	margin: 15px 0;
}

/* btn01 */
.btn01 {
	border: 1px solid #34a3d1;
	color: #34a3d1;
	padding: 10px 20px;
	text-decoration: none!important;
	min-width: 200px;
	text-align: center;
	margin: 0 15px 15px 0;
}
.btn01:after {
	content: "→";
}


/*
row
---------------------------------------------------------*/
.row {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -10px;
}

.col1,.col2,.col3,.col4,.col5,.col6,.col7,.col8,.col9,.col10,.col11,.col12 { padding: 0 10px; }

.col1 {	width: 8.333%; }
.col2 {	width: 16.666%; }
.col3 {	width: 25%; }
.col4 {	width: 33.333%; }
.col5 {	width: 41.666%; }
.col6 {	width: 50%; }
.col7 {	width: 58.333%; }
.col8 {	width: 66.666%; }
.col9 {	width: 74.999%; }
.col10 {	width: 83.333%; }
.col11 {	width: 91.666%; }
.col12 {	width: 100%; }

@media screen and (max-width: 768px) {
	.col1,.col2,.col3,.col4,.col5,.col6,.col7,.col8,.col9,.col10,.col11,.col12 { width: 100%; }
	
	.row > div + div {
		margin-top: 15px;
	}
}

/*
serch
---------------------------------------------------------*/
.gsc-results-wrapper-nooverlay table th,
.gsc-results-wrapper-nooverlay table td {
	border: none;
	padding: 0;
}
.gsc-selected-option-container {
	max-width: 100%!important;
}
.gsc-above-wrapper-area {
	margin-bottom: 10px;
}
.gs-webResult.gs-result a.gs-title,
.gs-webResult.gs-result a.gs-title b,
.gs-imageResult a.gs-title,
.gs-imageResult a.gs-title b,
.styleable-title,
.gcsc-find-more-on-google {
	color: #0275a4!important;
}
.gs-webResult.gs-result a.gs-title:hover,
.gs-webResult.gs-result a.gs-title:hover b,
.gs-imageResult a.gs-title:hover,
.gs-imageResult a.gs-title:hover b,
.styleable-title:hover {
	color: #34a3d1!important;
}
.gcsc-find-more-on-google-magnifier {
	fill: #0275a4!important;
}
.gsc-results .gsc-cursor-box .gsc-cursor-page {
	border: 1px solid #cde1e8!important;
	padding: 7px 13px;
	color: #34a3d1!important;
	margin: 0 5px 2px 0!important;
	text-decoration: none!important;
	display: inline-block!important;
	box-sizing: border-box;
}
.gsc-results .gsc-cursor-box .gsc-cursor-page:hover {
	color: #34a3d1!important;
}
.gsc-results .gsc-cursor-box {
	margin: 15px 0!important;
}
.gsc-results .gsc-cursor-box .gsc-cursor-current-page {
	background-color: #34a3d1!important;
	color: #fff!important;
}
.gsc-results .gsc-cursor {
	display: block!important;
}

/*
anchor_link
---------------------------------------------------------*/
.anchor_link {
	display: flex;
	margin: 30px 0;
}
.anchor_link a {
	padding: 10px;
	border: 1px solid #d7e1e2;
	width: 100%;
	font-size: 0.875rem;
	margin-left: -1px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
}

@media screen and (max-width: 768px) {
	.anchor_link {
		flex-wrap: wrap;
	}
	.anchor_link a {
		width: 50%;
		margin-top: -1px
	}
}

/*	form
--------------------------------------------------*/

/* attention */
main form .attention {
	display: inline-block;
	padding: 1px 5px;
	color: #fff;
	font-weight: normal;
	background-color: #ee3d23;
	text-align: center;
	border-radius: 2px;
	font-size: 0.75rem;
	margin-left: 0.5em;
}
main form table th {
	text-align: left;
	width: 15em;
}

@media screen and (max-width: 768px) {
	
}

/* input */
main form input, 
main form textarea {
	margin-right: 5px;
	padding:6px 12px;
	font-size:16px;
	line-height:1.42857143;
	color:#201d1d;
	background-color:#fff;
	background-image:none;
	border:1px solid #ccc;
	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);
	transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s;
	width: 100%;
}
main form input:focus, 
main form textarea:focus {
	border-color:#34a3d1;
	outline:0;
	-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(0, 163, 209, 0.6);
	box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(0, 163, 209, 0.6);
}

main form .red {
	font-size: 0.875rem;
	color: #ee3d23;
}

@media screen and (max-width: 768px) {
	main form input, 
	main form textarea {
		font-size: 16px;
	}
	
	main form table th,
	main form table td {
		display: block;
		width: 100%;
		margin-top: -1px;
	}
}

/* select */
main form select {
	margin: 3px 0;
	padding: 2px 3px;
	font-size: 16px;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 3px;
}

/* checkbox */
main form input[type="checkbox"] {
	display: none;
}
main form label.checkbox {
	position: relative;
	display: inline-block;
	margin-right: 7px;
	padding: 3px 3px 3px 22px;
	cursor: pointer;
}
main form label.checkbox::before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #fff;
	border: 1px solid #ccc;
}
main form input[type="checkbox"]:checked + label.checkbox::after {
	position: absolute;
	content: '';
	top: 7px;
	left: 3px;
	width: 13px;
	height: 5px;
	border-left: 4px solid #1988b6;
	border-bottom: 4px solid #1988b6;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/* radio */
main form input[type="radio"] {
	display: none;
}
main form label.radiobtn {
	position: relative;
	display: inline-block;
	padding: 3px 3px 3px 23px;
	cursor: pointer;
}
main form label.radiobtn::before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	width: 16px;
	height: 16px;
	margin-top: -10px;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 100%;
}
main form input[type="radio"]:checked + label.radiobtn::after {
	position: absolute;
	content: '';
	top: 50%;
	left: 4px;
	width: 10px;
	height: 10px;
	margin-top: -6px;
	background: #1988b6;
	border-radius: 100%;
}

/* form-btn */
main form .form-btn {
	display: inline-block;
	margin: 30px 0 20px 0;
}
main form .form-btn input {
	display: block;
	margin: 15px auto;
	padding: 12px 0;
	color: #fff;
	font-size: 16px;
	text-decoration: none;
	width: 370px;
	background-color: #2d9dcb;
	border: 0 none;
	text-align: center;
	box-shadow: 0 -2px 0 #0e759f inset;
	cursor: pointer;
}
main form .form-btn input:hover {
	background-color: #34a3d1;
	box-shadow: 0 -2px 0 #0e759f inset;
}
@media screen and (max-width: 768px) {
	main form .form-btn {
		margin: 0;
		width: 100%;
	}
	main form .form-btn input {
		margin: 10px auto;
		font-size: 14px;
		width: 90%;
	}

}

/* back-btn */
main form .back-btn {
	display: inline-block;
	margin: 30px 20px 20px 0;
}
main form .back-btn input {
	display: block;
	margin: 15px auto;
	padding: 11px 0;
	color: #313131;
	font-size: 15px;
	text-decoration: none;
	width: 220px;
	background-color: #fff;
	border: 1px solid #ccc;
	text-align: center;
	box-shadow: 0 -2px 0 #e5e5e5 inset;
	cursor: pointer;
}
main form .back-btn input:hover {
	background-color: #f5f5f5;
	box-shadow: 0 -2px 0 #e5e5e5 inset;
}
@media screen and (max-width: 768px) {
	main form .back-btn {
		margin: 30px 0 0 0;
		width: 100%;
	}
	main form .back-btn input {
		margin: 10px auto;
		font-size: 14px;
		width: 90%;
	}

}

/*====================================================================

　footer

====================================================================*/

/*
goto-top
---------------------------------------------------------*/
#goto-top {
	border-top: 1px solid #d7e1e2;
	border-bottom: 1px solid #d7e1e2;
}
#goto-top a {
	display: block;
	text-align: center;
	padding: 5px 0;
	line-height: 1;
}
#goto-top a span {
	display: inline-block;
	margin: 0;
}

/*
footer-link
---------------------------------------------------------*/
#footer-link {
	display: flex;
	flex-wrap: wrap;
	padding: 50px 0;
}

@media screen and (max-width: 768px) {
	#footer-link {
		padding: 30px 0;
	}
}

/*
footer-logo
---------------------------------------------------------*/
#footer-logo {
	width: 33.333%;
	text-align: center;
}

#footer-logo img {
	width: 80px;
	height: 100px;
}

@media screen and (max-width: 768px) {
	#footer-logo {
		width: 100%;
		margin: 20px 0;
	}
}


/*
footer-nav
---------------------------------------------------------*/
#footer-nav {
	width: 33.333%;
}
#footer-nav li {
	margin-bottom: 10px;
}
#footer-nav a {
	display: block;
	border: 1px solid #0275a4;
	text-align: center;
	font-size: 0.875rem;
	text-decoration: none;
	padding: 10px;
}
#footer-nav li.nav01 a:after {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	background: no-repeat url(/sgu/img/common/ico_blank.svg) center center / cover;
	margin-left: 1em;
	position: relative;
	top: 5px;
}
#footer-nav li.nav02 a:after {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	background: no-repeat url(/sgu/img/common/ico_youtube.svg) center center / cover;
	margin-left: 1em;
	position: relative;
	top: 5px;
}

@media screen and (max-width: 768px) {
	#footer-nav {
		width: 100%;
	}
}

/*
address
---------------------------------------------------------*/
#address {
	width: 33.333%;
}

#address dt {
	font-weight: bold;
	font-size: 0.875rem;
	margin-bottom: 5px;
}
#address dt span + span {
	display: inline-block;
	margin-left: 1em;
}

#address dd {
	font-size: 0.75rem;
}

#address dd a {
	text-decoration: none;
	color: #313131;
}

/* en */
body:lang(en) #address dt {
	font-size: 0.75rem;
}

@media screen and (max-width: 768px) {
	#address {
		width: 100%;
		text-align: center;
	}
	#address dt span + span {
		margin: 0;
		display: block;
	}
}

/*
footer-bottom
---------------------------------------------------------*/
#footer-bottom {
	background: #0275a4;
	background: linear-gradient(to right, #34a3d1 0%, #0275a4 100%);
	padding: 10px 0;
}

#footer-bottom > div {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

@media screen and (max-width: 768px) {
	#footer-bottom {
		padding: 20px 0 10px;
	}
	#footer-bottom > div {
		display: block;
	}
}

/*
footer-sublink
---------------------------------------------------------*/
#footer-sublink ul {
	display: flex;
}
#footer-sublink ul li {
	line-height: 1;
}
#footer-sublink ul li:not(:first-child) {
	padding-left: 1em;
}
#footer-sublink ul li:not(:last-child) {
	border-right: 1px solid #5CBEE2;
	padding-right: 1em;
}
#footer-sublink ul a {
	color: #fff;
	font-size: 0.875rem;
	text-decoration: none;
	line-height: 1;
}
#footer-sublink ul a:hover {
	opacity: .7;
}

@media screen and (max-width: 768px) {
	#footer-sublink ul {
		flex-wrap: wrap;
	}
	#footer-sublink ul li {
		width: 50%;
		padding: 0 0.5px!important;
		border: none!important;
		margin-bottom: 1px;
	}
	#footer-sublink ul li a {
		display: flex;
		background-color: rgba(255, 255, 255, .2);
		text-align: center;
		padding: 15px;
		flex-direction: column;
		height: 100%;
		justify-content: center;
		align-items: center;
	}
}

/*
copylight
---------------------------------------------------------*/
#copylight small {
	color: #fff;
	font-size: 0.75rem;
}

@media screen and (max-width: 768px) {
	#copylight {
		text-align: center;
	}
}

/*====================================================================

　other

====================================================================*/

/*
hr
---------------------------------------------------------*/
.hr {
	margin-top: 30px;
	padding-bottom: 30px;
	border-top: 1px solid #d7e1e2;
}

/*
margin
---------------------------------------------------------*/
.mt0 { margin-top: 0!important; }
.mt5 { margin-top: 5px!important; }
.mt10 { margin-top: 10px!important; }

