@charset "utf-8";
@font-face {
	font-family: 'as';
	src:	url('/2020/fonts/as.eot?e3t9gd');
	src:	url('/2020/fonts/as.eot?e3t9gd#iefix') format('embedded-opentype'),
			url('/2020/fonts/as.ttf?e3t9gd') format('truetype'),
			url('/2020/fonts/as.woff?e3t9gd') format('woff'),
			url('/2020/fonts/as.svg?e3t9gd#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}
/*******************************************
	reset
*******************************************/
*{
	margin: 0;
	padding: 0;
	text-align: left;
}
hr{
	display:none;
	line-height:0;
	font-size:0;
	padding:0;
	margin:0;
	border:none;
}
a{
	color:inherit;
	text-decoration:none;
	-webkit-transition: all 0.4s ease;
	transition: all 0.4s ease;
}
ul,ol{
	list-style:none;
}
address{
	font-style:normal;
}
p{
	line-height:1.4;
}
table,thead,tbody,tr,th,td{
	margin:0;
	padding:0;
	border:none;
	border-collapse:collapse;
}
figure{
	font-size:0;
	line-height:0;
}
img{
	border:none;
	width:auto;
	max-width:100%;
}
/*******************************************
	base
*******************************************/
html,body{
	width:100%;
	height:auto;
}
html{
	font-size:62.5%;
	font-family:"游ゴシック", YuGothic,"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", "MS PGothic", sans-serif;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
body{
	font-size:1.0em;
	line-height:1.4;
	background:#fff;
	color:#333;
	position:relative;
}
#wrap,#main{
	padding:0;
	margin:0;
	min-width:0;
}
.font-mc{
	font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;;
}
.pc{
	display:block;
}
.sp{
	display:none;
}
@media screen and (max-width: 768px) {
	html{
	}
	#wrap{
		min-width:0;
	}
	.pc{
		display:none;
	}
	.sp{
		display:block;
	}
	img{
		width:100%;
	}
}
/*------------------------------------------
	clear
------------------------------------------*/
.clear:after,
.clear:before{
	content:"";
	display:block;
	overflow:hidden;
	height:0;
}
.clear:after{
	clear:both;
}
.clear{
	zoom:1;
}
/*------------------------------------------
	inner-outer
------------------------------------------*/
.outer{
	max-width:100%;
	width:100%;
	min-width:960px;
	margin:0 auto;
}
.inner{
	max-width:1200px;
	min-width:960px;
	width:auto;
	margin:0 auto;
}
.inner-min{
	max-width:960px;
	min-width:960px;
	width:auto;
	margin:0 auto;
}
@media screen and (max-width: 768px) {
	.outer{
		max-width:100%;
		width:100%;
		min-width:100%;
		margin:0 auto;
	}
	.inner,
	.inner-min{
		max-width:100%;
		min-width:100%;
		width:auto;
		margin:0 auto;
	}
}
/*******************************************
 	common-information
*******************************************/
#common-information{padding-bottom: 60px;}
#common-information li:not(:last-child){padding-bottom: 40px;}
#common-information li .contents-tit{margin-bottom: 1em; line-height: 1; text-align: center;}
#common-information li dd{padding-bottom: .8em; font-size: 2.4rem; font-weight: bold; line-height: 1.6; text-align: center;}
#common-information li dd:last-child{padding-bottom: 0;}
#common-information li:last-child dd{padding-bottom: 0;}
#common-information li dd span{font-size: 1.8rem; font-weight: normal;}
@media screen and (max-width: 768px) {
#common-information{padding-bottom: 9.375%;}
#common-information li:not(:last-child){padding-bottom: 9.375%;}
#common-information li .contents-tit{margin-bottom: .8em;}
#common-information li dd{font-size: 2rem;}
#common-information li dd span{font-size: 1.6rem;}
}
/*******************************************
	title
*******************************************/
.pages-tit{
	font-size:3.6rem;
	font-weight: normal;
	margin:0 0 30px;
	letter-spacing:.2rem;
	color:#00afec;
}
.pages-tit:first-letter{
	font-weight:bold;
}
.contents-tit{
	font-size:2.4rem;
	font-weight: bold;
	margin:0 0 30px;
	letter-spacing:.15rem;
}
.contents-tit:first-letter{
	color:#333;
	/*color:#00afec;*/
}
@media screen and (max-width: 768px) {
	.pages-tit,
	.contents-tit{
		margin:0 0 4%;
	}
}
/*******************************************
	header
*******************************************/
header{
	position:relative;
	margin:0;
	overflow: hidden;
}
#header{
	position:relative;
	z-index:2;
	background: #fff;
}
#header div{
	padding:0 40px;
}
#header h1{
	font-size:0;
	line-height:0;
	float:left;
}
#header h1 a:hover{
	opacity:0.5;
}
@media screen and (max-width: 768px) {
	header{
		position:relative;
		margin:0;
	}
	#header div{
		padding:0 3.125%;
	}
	#header h1{
		width:60.5%;
		padding:4.5% 0;
	}
}

/*******************************************
	footer
*******************************************/
footer{
	background:#fff;
	padding:60px 0 40px;
	/*border-top:1px solid #231815;*/
}
footer #fnav{
	margin:0 auto 40px;
}
footer #fnav dt{
	text-align:center;
	margin:0 auto 40px;
}
footer #fnav dd{
	display:none;
}
footer #fnav ul{
	text-align:center;
}
footer #fnav ul li{
	display:inline-block;
	font-size:1.8rem;
	margin: 0 10px 10px;
}
footer #address{
	font-size:1.6rem;
	font-weight:bold;
	color:#000;
}
footer #address dt{
	margin:0 0 1em;
	text-align:center;
}
footer #address dd{
	margin:0 0 1em;
	text-align:center;
}
footer #address p{
	font-size:1.4rem;
	text-align:center;
}
footer #address p.btn{
	text-align:center;
	margin: 0 0 20px;
}
footer #address p.btn a{
	display:inline-block;
	padding:.5em 1em;
	background:#000;
	color:#fff;
	border-radius: 5px;
}
footer #sns ul{
	margin:0 0 40px;
	text-align:center;
}
footer #sns ul li{
	display:inline-block;
	vertical-align: middle;
	margin:0 20px 0 0;
	width:30px;
}
footer #sns ul li:last-child{
	margin:0;
}
footer #sns ul li a{
	font-family:as;
	font-size:3.2rem;
	line-height:1;
	display:block;
}
footer #sns ul li#tw a{
	color:#1da1f3;
}
footer #sns ul li#fb a{
	color:#3b5998;
}
footer #sns ul li#pdf a{
	color:#cc0000;
}
footer #sns ul li#tb a{
	color:#c4302b;
}
footer #sns ul li a:hover{
	transform: rotateZ(360deg);
}
@media screen and (max-width: 768px) {
	footer{
		padding:8% 3.125% 6%;
	}
	footer #fnav{
		margin:0 auto 6%;
	}
	footer #fnav dt{
		margin:0 auto 4%;
	}
	footer #fnav dd{
		display:block;
		display:none;
	}
	footer #fnav ul{
		display:flex;
		display:-webkit-flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	footer #fnav ul li{
		display:block;
		width:49%;
		text-align:center;
		font-size:1.2rem;
		margin: 0;
	}
	footer #fnav ul li a{
		display:block;
		text-align:center;
		border-bottom:1px solid #333;
		padding:1.5rem 0 0.5rem;
	}
	footer #address{
		font-size:1.0rem;
	}
	footer #address dt{
		margin:0 0 1.0em;
	}
	footer #address dd{
		margin:0 0 1.5em;
	}
	footer #address p{
		font-size:1.0rem;
	}
	footer #address p.btn{
		font-size:1.4rem;
	}
	footer #sns ul{
		margin:0 auto 6%;
	}
}
/*******************************************
	gnavi
*******************************************/
#gnavi{
	position:fixed;
	z-index:99;
	width:25%;
	top:0;
	right:-22%;
	-webkit-transition: all 0.4s ease;
	transition: all 0.4s ease;
}
#gnavi.active{
	right:0;
}
#gnavi .clear{
	display:flex;
	display:-webkit-flex;
	align-items: center;
	-webkit-align-items: center;
}
#gnavi p{
	width:12%;;
	font-size:0;
	line-height:0;
}
#gnavi p img{
}
#gnavi dl{
	width:88%;
	box-sizing: border-box;
	padding:10px 0 10px 5%;
	background:#fff;
	border:2px solid #d6462c;
}
#gnavi dt{
	margin:0 auto 2%;
}
#gnavi ul li{
	font-size: 1.8rem;
	font-weight: bold;
	margin:0 0 1.0rem;
}
#gnavi ul li:last-child{
	margin:0;
}
#gnavi ul li.off{color: #bfaeab;}
#gnavi ul li a:hover{text-decoration: underline;}

@media screen and (max-width: 768px) {
	#gnavi{
		position:fixed;
		z-index:99;
		width:85%;
		top:0;
		right:-75%;
	}
	#gnavi.active{
		right:0;
	}
	#gnavi .clear{
		align-items: stretch;
	}
	#gnavi p{
		width:12%;
	}
	#gnavi p img{
		margin:100% 0 0;
	}
	#gnavi dt img{
		width:90%;
	}
	#gnavi ul{
		width:88%;
		box-sizing: border-box;
		padding:10px 0 10px 5%;
	}
	#gnavi ul li{
		font-size: 1.8rem;
	}
}
/*******************************************
	visual
*******************************************/
#visual{
	margin:0 auto 60px;
}
@media screen and (max-width: 768px) {
	#visual{
		margin:0 auto 8%;
	}
}

/*******************************************
	snavi
*******************************************/
#snavi{
	background:#ddd;
	margin:0;
	padding:11px 40px;
	z-index:95;
}
#snavi ul{
	text-align:center;
}
#snavi li{
	display:inline-block;
	font-size:1.8rem;
	font-weight:bold;
	padding:0 1.5rem;
}
#snavi li a:hover{
	color:#00afec;
}
#snavi.is_stuck{
	margin:0;
	box-shadow:0 0 5px rgba(0,0,0,.5);
}
@media screen and (max-width: 768px) {
	#snavi{
		padding:.5em 3.125%;
	}
	#snavi ul{
		text-align:left;
	}
	#snavi li{
		padding:0 1.5rem 0 0;
	}
}
/*******************************************
	blog-list
*******************************************/
.blog-list h3{
	font-size:1.8rem;
	font-weight:bold;
	width:235px;
	float:left;
	padding:30px 0;
	margin:0;
	border-bottom:2px solid #231815;
}
.blog-list > .inner-min{
	padding:0 0 100px;
}
.blog-list.schoolnews h3,
.blog-list.tgrnews h3{
	padding:0 0 30px;
}
.blog-list #bread{
	width:480px;
	float:right;
}
.blog-list #bread ul{
	text-align:right;
	padding:35px 0;
}
.blog-list.tgrnews #bread ul{
	padding:0 0 35px;
}
.blog-list #bread li{
	display:inline-block;
	font-size:1.2rem;
}
.blog-list #bread li:before{
	content:"\e902";
	font-family: as;
}
.blog-list #bread li:first-child:before{
	content:"";
}
.blog-list #bread li a{
    transition: all .2s ease 0s;
    -moz-transition: all .2s ease 0s;
    -webkit-transition: all .2s ease 0s;
    -o-transition: all .2s ease 0s;
    -ms-transition: all .2s ease 0s;
}
.blog-list #bread li a:hover{
	text-decoration:underline;
	color:#C30D23;
}
#wrap.blog-list #main{
	float:right;
	width:680px;
	margin:0;
}
#wrap.blog-list #side{
	float:left;
	width:235px;
	margin:0 45px 0 0;
	padding:20px 0;
}
#wrap.blog-list #side dl{
	margin:40px 0 0;
}
#wrap.blog-list #side dl dt{
	font-size:1.4rem;
	border-left:5px solid #231815;
	padding:0 0 0 5px;
	margin:0 0 10px;
}
#wrap.blog-list #side dl dd li{
	border:none;
	padding:5px 0;
	margin:0;
}
#wrap.blog-list #side ul li{
	padding:10px 0;
	font-size:1.6rem;
	border-bottom:1px solid #231815;
}
#wrap.blog-list #side ul li a{
	display:block;
	transition: all .2s ease 0s;
    -moz-transition: all .2s ease 0s;
    -webkit-transition: all .2s ease 0s;
    -o-transition: all .2s ease 0s;
    -ms-transition: all .2s ease 0s;
}
#wrap.blog-list #side ul li a:hover{
	padding-left:10px;
	color:#C30D23;
}
#wrap.blog-list #main .btn a{
	display: block;
	position: relative;
	width: 200px;
	margin: 0 auto;
	padding: .5em 1em;
	background: #ddd;
	color: #333;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
}
#wrap.blog-list #main .btn a:after{
	content: "\e902";
	display: block;
	position: absolute;
	left: 90%;
	top: 50%;
	margin-top: -.5em;
	font-size: 1rem;
	font-family: as;
	line-height: 1;
}
@media screen and (max-width: 768px) {
	.blog-list h3{
		width:auto;
		padding:3.125%;
		float:none;
	}
	.blog-list > .inner-min{
		padding:0 0 10%;
	}
	.blog-list #bread{
		width:auto;
		float:none;
	}
	.blog-list #bread ul{
		padding:2% 3.125%;
	}
	#wrap.blog-list #main{
		float:none;
		width:auto;
		padding:0 3.125%;
	}
	#wrap.blog-list #side{
		float:none;
		width:auto;
		padding:0 3.125%;
		margin:0 auto 5%;
	}
	#wrap.blog-list #main .btn{
		margin:0 auto 6%;
	}
	#wrap.blog-list #main .btn a{
		width: 50%;
	}
}
/*******************************************
	blog
*******************************************/
.blog {
	border: 1px solid #ddd;
	padding:20px;
	margin:0 0 45px;
	transition: all .2s ease 0s;
	-moz-transition: all .2s ease 0s;
	-webkit-transition: all .2s ease 0s;
	-o-transition: all .2s ease 0s;
	-ms-transition: all .2s ease 0s;
}
.blog:hover{
	border: 1px solid #C30D23;
	box-shadow: inset 0px 0px 5px #C30D23;
}
.blog .contents time{
	font-size:1.2rem;
	margin:0 0 10px;
	display:block;
	letter-spacing:1px;
}
.blog .contents h4{
	font-size:2.4rem;
	color:#cc0000;
	font-weight:bold;
	margin:0 0 25px;
}
.blog .contents h4 a{
	text-decoration:none;
}
.blog .contents h4:hover{
	text-decoration: underline;
}
.blog .contents p{
	font-size:1.6rem;
	line-height:1.8;
	letter-spacing:1px;
	margin:0 0 20px;
}
.blog .contents img{
	max-width:100%;
}
.blog .contents a{
	text-decoration:underline;
}
.blog .contents a:hover{
	text-decoration:none;
	color:#C30D23;
}
.blog .cat{
	text-align:right;
	font-size:1.2rem;
	padding:20px 0 0;
}
.blog .cat span{
	vertical-align:middle;
	display:inline-block;
}
.blog .sns-btn{
	height:20px;
	overflow:hidden;
}
@media screen and (max-width: 768px) {
	.blog{
		margin: 0 auto 6%;
	}
}
/*******************************************
	sns
*******************************************/
#sns-btn{
	/*background:#fff;*/
}
#sns-btn ul{
	padding:5px 5px 2px;
	list-style:none;
	text-align:right;
}
#sns-btn li{
	height:20px;
	overflow:hidden;
	display:inline-block;
}
#sns-btn li:first-child{
	margin:0 3px 0 0;
}
.fb_iframe_widget > span {
	vertical-align: baseline !important;
}
@media screen and (max-width: 768px) {
	#sns-btn ul{
		padding:1% 3.125%;
	}
}
/*******************************************
 	news
*******************************************/
#news{
	margin:0 0 60px;
}
#news li{
	margin:0 auto 20px;
}
#news li .des{
	display:flex;
	display:-webkit-flex;
	align-items: flex-start;
	-webkit-align-items: flex-start;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}
#news li .des > div{
	margin-right:3%;
	width:20%;
}
#news li .des div time{
	font-size:1.6rem;
	display:block;
	margin:0 0 .5rem;
	color:#333;
}
#news li .des div span{
	font-size:1.2rem;
	display:block;
}
#news li p{
	text-decoration: underline;
	color:#333;
	font-size:1.6rem;
	width:77%;
}
#news li a:hover p{
	text-decoration: none;
}
@media screen and (max-width: 768px) {
	#news{
		margin:0 0 10%;
		padding:0 3.125%;
	}
	#news li{
		margin:0 auto 7%;
	}
	#news li .des{
		display:block;
	}
	#news li .des > div{
		margin:0 auto 2%;
		width:auto;
		display:flex;
		display:-webkit-flex;
		align-items: center;
		-webkit-align-items: center;
	}
	#news li .des div time{
		font-size:1.6rem;
		margin:0 1.5rem 0 0;
		width:35%;
	}
	#news li .des div span{
		text-align:right;
		font-size:1.2rem;
		display:block;
		padding:0.5rem 1.0rem;
		width:65%;
	}
	#news li p{
		font-size:1.6rem;
		width:auto;
	}
	#news li a:hover p{
		text-decoration: none;
	}
}
