﻿@charset "UTF-8";
/* Reset */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent
}
body {
  line-height: 1;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
nav ul {
  list-style: none
}
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0
}
input, select {
  vertical-align: middle
}
strong {
  font-weight:900 ;
}
/* Common */

body {
  color: #000;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  text-align: center;
  font-size: 62.5%;
  background: url(../images/bg.png)  #fff;
}
img {
  max-width: 100%;
  vertical-align: middle;
  height: auto;
}
ul, ol {
  list-style: none;
}
a {
  color: #000;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
.right {
  text-align: right;
}
.center {
  text-align: center;
}
.clear:before, .clear:after {
  content: "";
  display: block;
  overflow: hidden;
}
.clear:after {
  clear: both;
}
#container {
  font-size: 1em;
}
.inner {
  width: 1000px;
  margin: 0 auto;
}
header {
  background-color: #fff;
}

#header {
  display:-webkit-flex;
  display: flex;
  padding: 10px 0;
}

#logo {
  margin-right: auto;
  width: 564px;
  text-align: left;
}

#logo-new {
  width: 200px;
}

#ba-21st {
  width: 250px;
}

.button {
	display: none;
}

nav#global {
  background-color: #1E3C91;
  padding: 8px 0;
  min-width: 1000px;
}

nav#global li {
  display: inline-block;
  width: 16%;
}

nav#global li.wide {
  width: 20%;
}

nav#global li.short {
  width: 12%;
}

nav#global li a {
  display: block;
  text-align: center;
  font-size: 1.8em;
  color: #FFFFFF;
  background-position: top center;
  background-repeat: no-repeat;
  padding: 10px 0;
  text-decoration: none;
  transition: all  0.3s ease;

}

nav#global li a:hover, .wrap ul.wrap-nav li a:hover, nav#global li a.sel {
  color: #b8d8d8;
/*  text-shadow: #fff 2px 2px 2px, #fff -2px 2px 2px, #fff 2px -2px 2px, #fff -2px -2px 2px;
*/}

nav#overlay {
	display:none;
}
nav#pan {
  font-size: 1.4em;
  padding: 20px 0;
  color: #666;
  text-align: left;
}
nav#pan li {
  display: inline-block;
}
nav#pan li:not(:last-child):after {
  content: '\00bb';
  margin: 0 4px 0 8px;
  color: #999;
}

nav#pan li a {
  color: #666;
}

#contents {
  display:-webkit-flex;
  display: flex;
  font-size: 1.4em;
  text-align: left;
  letter-spacing: .1em;
}

#main {
  margin-right: auto;
  width: 720px;
  padding-bottom: 20px;
}

#main-full {
  width: 100%;
  padding-bottom: 20px;
}

#main p, #main-full p {
  line-height: 1.6em;
  padding-bottom: 20px;
}

nav#side {
  width: 250px;
}

nav#side ul {
  padding: 15px 15px 1px;
  background-color: #b8d8d8;
}

nav#side li {
  margin-bottom: 15px;
}

nav#side li a {
  display: block;
  line-height: 1.4em;
  font-size: 1.2em;
  color: #3e92cc;
  border: solid 2px #3e92cc;
  text-align: center;
  background-color: #fff;
  padding: 15px 10px;
  text-decoration: none;
  transition: all  0.2s ease;
}

nav#side li a:hover, nav#side li a.sel {
  border: solid 2px #fff;
  background-color: #3e92cc;
  color: #fff;
}

nav#side li a span {
  display: block;
  padding-top: 3px;
}

h1.title {
  font-size: 1.6em;
  line-height: 1.2em;
  background-color: #3e92cc;
  color: #fff;
  padding: 13px 20px 10px;
}

.pagetop {
  position: fixed;
  bottom: 20px;
  right: 20px;  
}
.pagetop a {
  opacity: 0.6;
}

.pagetop a:hover {
  opacity: 1;
}

aside#bottom {
  text-align: right;
  padding-top: 40px;
}

aside#bottom li {
  display: inline;
  margin-left: 20px;
}

aside#bottom li a {
  display: inline-block;
  font-size: 1.2em;
  color: #666;
  letter-spacing: .1em;
  padding: 4px 0 3px 8px;
}

aside#bottom li a.gakuin {
  border-left: solid 20px #6E1743;
}

aside#bottom li a.jsh {
  border-left: solid 20px #1E3C91;
}

aside#bottom li a.primary {
  border-left: solid 20px #F5E098;
}

aside#bottom li a.kinder {
  border-left: solid 20px #B4E4F2;
}

footer {
  text-align: left;
  background-color: #1E3C91;
  padding: 20px 0;
  font-size: 1.4em;
  color: #FFFFFF;
  letter-spacing: .1em;
  min-width: 1000px;
}

footer a {
  color: #FFFFFF;
}

#address {
  padding-bottom: 40px;
  display:-webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

.schoolname {
  line-height: 1.4em;
  font-size: 1.6em;
}

.schoolname-new {
  line-height: 1.6em;
}

.schoolname-new span {
  font-size: 1.6em;
}


#common-link, #related-link {
  text-align: right;
  padding-bottom: 10px;
}


#common-link li, #related-link li {
  display: inline-block;
}

#common-link li:not(:last-child):after, #related-link li:not(:last-child):after {
  content: " /";
}

#common-link li a, #related-link li a {
  color: #FFFFFF;
}

.copyright {
  text-align: right;
}

.button {
	display:none;
	position:absolute;
	right:0;
	top:0;
	z-index:999;
	font-size:36px;
  background-color: #7C2E55;
  width: 50px;
  padding: 10px 0;
}
.button a {
	text-decoration:none;
  color: #fff;
}
.btn-open:after {
  color: #fff;
	content:"\f0c9";
	font-family:"FontAwesome";
	transition-property:all .2s linear 0s;
	-moz-transition:all .2s linear 0s;
	-webkit-transition:all .2s linear 0s;
	-o-transition:all .2s linear 0s;
}
.btn-open:hover:after {
}
.btn-close:after {
	color:#fff;
	content:"\f00d";
	font-family:"FontAwesome";
	transition-property:all .2s linear 0s;
	-moz-transition:all .2s linear 0s;
	-webkit-transition:all .2s linear 0s;
	-o-transition:all .2s linear 0s;
}
.btn-close:hover:after {
	color:#fff;
}

.block {
  background-color: #fff;
  margin-bottom: 40px;
}
.block h2 {
  padding-bottom: 30px;
}

.block h2.title {
  font-size: 1.6em;
  padding-bottom: 5px;
  padding-left: 2px;
  border-bottom: double 3px #1E3C91;
  color: #1E3C91;
  line-height: 1.4em;
}

.block h3.title2 {
  font-size: 1.6em;
　text-align: center;
  padding: 15px;
  background-color: #3e92cc;
  color: #fff;
  line-height: 1.4em;
 
}

.mt20{
	margin-top: 20px;
}

.block h3.title {
  color: #3E92CC;
  font-size: 1.2em;
  margin-bottom: 20px;
  line-height: 1.4em;
}


.block-inner {
  padding: 40px 20px 20px 20px;
}

.block-inner strong {
  font-weight: normal;
  color: #1E3C91;
}


.box-wrap {
  display:-webkit-flex;
  display: flex;
  padding-bottom: 40px;
}

.deitail {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  padding: 12px 22px;
  font-size: 1.1em;
  min-width: 105px;
  line-height: 1.2em;
}

.deitail a {
  display: block;
  text-decoration: none;
  padding: 15px 30px;
}

.deitail a.blue {
  background: url(../images/bg_detail_b.png) no-repeat #B5E5F2 left center;
  color: #1E3C91;
}

.deitail a:hover.blue {
  color: #fff;
}

.deitail a.green {
  background: url(../images/bg_detail_g.png) no-repeat #C3E3C4 left center;
  color: #4A9259;
}

.deitail a:hover.green {
  color: #fff;
}

a.pdf {
  display: inline-block;
  line-height: 1.2em;
  background: url(../images/pdficon_large.png) no-repeat 0 40%;
  padding: 10px 10px 10px 40px;
  text-align: left;
}
a.link {
  color: #1E3C91;
}

.k_link{
	margin-top: 15px;
	margin-bottom: 45px;
}

.k_link li{
	margin-bottom: 15px;
}

.n_text{
	padding: 0 45px;
}

.n_text a{
	color:#f01b34 !important;
}

@media screen and (max-width: 640px) {
  
.inner {
  width: 100%;
}
#header {
    -webkit-justify-content: flex-start;
  justify-content:flex-start;
  padding-top: 5px;

}
#logo {
  width: 50%;
  text-align: left;
  padding-left: 10px;
  margin-right: 15px;
  padding-top: 5px;

}
#logo-new {
  width: 30%;
  text-align: left;
}

#ba-21st {
  display: none;
}

nav#global {
  display: none;
}
#pan {
  display: none;
}

#contents {
  display: block;
}

#main {
  width: auto;
  padding-bottom: 0;
}
#main-full {
  padding-bottom: 0;
}

.block {
  margin-bottom: 0;
  padding-bottom: 20px;
}

.block h2.title {
  font-size: 1.4em;
  text-align: center;
  padding: 10px 10px;
  margin-bottom: 20px;
  background-size: contain;
}
	
.block h2.title2 {
  font-size: 1.4em;
  text-align: center;
  padding: 10px 10px;
  margin-bottom: 20px;
  background-size: contain;
}
	
.box_wrap_sp {
	display: block !important;
	
}
	
.box_wrap_sp div {
	width: 100% !important;
	padding: 0 !important
}
	
nav#side {
  width: auto;
}

nav#side li a span {
  display: inline;
}

footer {
  min-width: initial;
  min-width: auto;
  width: auto;
}

#address{
  display: block;
  text-align: center;
  font-size: .9em;
  padding-bottom: 20px;
}

.schoolname {
  font-size: 1.4em;
  margin-bottom: 10px;
}

.schoolname-logo {
  margin-bottom: 5px;
}

.schoolname-new span {
  font-size: 1.4em;
  line-height: 1.4em;
}

aside#bottom {
  display: none;
}

#common-link {
  border-top: solid 1px #fff;
  border-bottom: solid 1px #fff;
}

#related-link {
  border-bottom: solid 1px #fff;
}

#common-link, #related-link {
  text-align: center;
  padding: 10px 0;
}

#common-link ul {
  display:-webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-around;
  -webkit-flex-wrap : wrap;
  flex-wrap: wrap;
}

#common-link li {
  width: 50%;
  padding: 10px 0;
}

#related-link li {
  display: block;
  padding: 10px 0;
}

#common-link li:not(:last-child):after, #related-link li:not(:last-child):after {
  content: "";
}

.copyright {
  padding-top: 20px;
  text-align: center;
}


.pagetop {
  bottom: 10px;
  right: 0;  
}

.pagetop img {
  width: 70%;
}

.deitail a {
  padding: 10px 20px;
}

.button {
	display: block;
}
/*overlay*/

nav#overlay {
	position:fixed;
	top:53px;
	height:100%;
	width:100%;
	background-color: #1E3C91;
	overflow:auto;
	z-index:99;
}
.wrap {
	margin: 0 auto;
}
.wrap ul.wrap-nav {
	padding:20px 0px 0;
}
.wrap ul.wrap-nav li {
  margin: 10px 0;
}
.wrap ul.wrap-nav li a {
  display: block;
  font-size: 1.8em;
  text-decoration: none;
  text-align: center;
  margin-bottom: 30px;
  color: #FFFFFF;
}

}
@media screen and (max-width: 480px) {
#logo {
  margin-right: 10px;
}
.button {
	font-size:28px;
  width: 40px;
  padding: 8px 0;
}
nav#overlay {
	top:43px;
}
.block h2 {
  font-size: 1.2em;
  padding: 10px 0;
}
.box-wrap {
  display: block;
}

.box-left {
  width: auto;
  padding-bottom: 10px;
}

.box-right {
  width: auto;
}
	
.n_text{
	font-size: 11px;
	padding: 0 30px;
}

}