@charset "UTF-8";

/*コンテンツ背景*/

#main-bg-top {
    background: url("../images/main-bg-top.gif") 0 0 repeat;
}

#main-bg {
    background: url("../images/main-bg.gif") 0 0 repeat;
}


/*キラーコンテンツ*/

.top-pickup {
    background: #fff url("../../images/index/top-pickup-bg.jpg") top center;
    border-top: 3px solid #00afcc;
    width: 100%;
    margin-top: -2px;
	padding-bottom: 60px;
}


.top-pickup ul {
	width: 1000px; 
	margin: 45px auto 0 auto;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する。 */
	text-align: justify;
	text-justify: distribute-all-lines;
}
.top-pickup ul:after {
	content:"";
	display: inline-block;
	width: 100%;
	line-height:0;
	height: 0;
} 
.top-pickup ul li {
	letter-spacing:normal;
	display: inline-block;/*ブロックレベル要素に横並びにする*/
	width: 470px;
	vertical-align: top;
}

.top-pickup-btn {
	padding-top: 1.5rem;
	margin-bottom: -2rem;
}

/*ブロック*/

.exam-news,
.news {
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border: 2px solid #bebebe;
    position: relative;
}

img.news-icon {
    position: absolute;
    top: -10px;
    left: 10px;
    z-index: 9999;
}


/*detail-link*/

.detail-link {
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    background: #fff;
    color: #00afcc;
}

.detail-link a:link,
.detail-link a:visied,
.detail-link a:hover {
    color: #00afcc !important;
}

/*パンくず*/

#pan-kuzu {
	background: #fff;
	border-bottom: 2px solid #41c3d9;
}

#pan-kuzu ul {
	width: 1000px;
	margin: 0 auto;
	line-height: 7rem;
	text-align: left;
	background: url("../images/icon-home.png") center left no-repeat;
	padding-left: 2rem;
}

#pan-kuzu a {
	color: #00afcc;
}

#pan-kuzu li {
	display: inline-block;
	padding: 0 1rem;
}

#pan-kuzu li:last-child {
	border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
	color: #fff;
	background: #00afcc;
	line-height: 4rem;
	font-weight: bold;
}


.section-title {
	text-align: center;
	margin-bottom: 60px;
}


.section-title h3 {
	font-size: 3rem;
	font-weight: bold;
	padding-bottom: 1rem;
	border-bottom: 2px solid #00afcc;
	display: inline;
}

.section-title h3 > span {
	font-size: 2rem;
	font-weight: bold;
}

#back-top {
    position: fixed;
    right: 3%;
    bottom: 3%;
    z-index: 9999;
}



/*写真と文言*/

.textL {
	width: 680px;
	float: left;

}

.photoR {
	width: 280px;
	float: right;
	text-align: center;
}

.photoL {
	width: 280px;
	float: left;
	text-align: center;
}

.textR {
	width: 680px;
	float: right;
	text-align: left !important;
}

.photoR > span.caption,
.photoL > span.caption {
	font-size: small;
	color: lightslategray;	
}

.photoC {
	text-align: center;
	padding: 2rem 0 6rem 0;
}

ul.photo-raw {
	width: 80%; 
	margin: 2rem auto 4rem auto;
	letter-spacing: -.40em;
	text-align: justify;
	text-justify: distribute-all-lines; 
}

ul.photo-raw:after {
	content:"";
	display: inline-block;
	width: 100%;
	line-height:0;
	height: 0;
}

ul.photo-raw li {
	letter-spacing:normal;
	display: inline-block;
	width: 350px; 
	height: 250px;
	text-align: center;
	font-size: small;
	color: lightslategrey;
}

ul.photo-raw li img {
	margin-bottom: 0.5rem;
}

/* お弁当 写真3枚横並び */
ul.photo-raw.col3 {
	width: 100%; 
}
ul.photo-raw.col3 li {
	width: 300px; 
	height: 250px;
	text-align: center;
	font-size: small;
	color: lightslategrey;
}

.height-fix {
	height: 230px;
}


/*コンテンツ半分分割*/

.section-half-left {
	width: 47%;
	float: left;
}
.section-half-right {
	width: 47%;
	float: right;
}

/*こどもたちの声*/

.voice-block {
	clear: both;
	width: 90%;
	margin: 0 auto 8rem auto;
}

.voice-block p {
	position: relative;
	padding: 2% 2% 2% 10%;
	background: #fff;
	border-bottom: 1px dotted #aaa;
	min-height: 6rem;
} 

.voice-block img {
	position: absolute;
	top: 1.7rem;
	left: 0;
	width: 8%;
}

.voice-block h6 {
	color:#1D50A2;
	line-height: 1.5rem;
	text-align: center;
	padding: 1%;
	font-size: 1.5rem;
	font-weight: bold;
	margin: 0 auto;
	background: #BED5ED;
}

/*ボタン*/

.general-button  {
  border-radius: 5px;
  background-color: #00afcc;
}

.general-button a {
	color: #fff;
}

.general-button:before  {
  border-radius: 5px;
  border-bottom: 0px solid rgba(0,109,127, 0);
  background-color: rgba(0,109,127, 0);
}

.button-content  {
  border-radius: 0px 0px 5px 5px;
  padding: 6px 7.5px;
  box-shadow: 0px 0px 0px 0px rgba(0,109,127, 0);
  color: #f8f8f8;
}

.button-text  {
  padding: 0px 7.5px;
  line-height: 1.5em;
  font-size: 1.8rem;
}

.icon-font  {
  padding: 0px 7.5px;
  font-size: 27px;
}

.general-button:hover  {
  top: -3px;
  transition: all 30ms;
  -moz-transition: all 30ms;
  -webkit-transition: all 30ms;
  -o-transition: all 30ms;
  background-color: #00bcdb;
}

.general-button:hover:before  {
  border-bottom: 3px solid rgba(0,109,127, 0);
  transition: all 30ms;
  -moz-transition: all 30ms;
  -webkit-transition: all 30ms;
  -o-transition: all 30ms;
}

.general-button:hover .button-content  {
  box-shadow: 0px 3px 0px 0px rgba(0,109,127, 1);
  transition: all 30ms;
  -moz-transition: all 30ms;
  -webkit-transition: all 30ms;
  -o-transition: all 30ms;
}


.general-button:active  {
  background-color: #0099b2;
  box-shadow: 0px 1.6px 0px 0px rgba(0,87,102, 1) inset;
}

.general-button:active:before  {
  top: -3px;
  padding-bottom: 3px;
  border-bottom: 0px solid rgba(0,109,127, 0);
}

.general-button:active .button-content  {
  box-shadow: 0px 0px 0px 0px rgba(0,109,127, 0);
}

.general-button  {
  display: -moz-inline-box;
  display: inline-block;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;transition: all 0ms;
  -moz-transition: all 0ms;
  -webkit-transition: all 0ms;
  -o-transition: all 0ms;position: relative;
  top: 0px;
  cursor: pointer;
  text-decoration: none;
  line-height: 1;
}

.general-button:before  {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.button-content  {
  display: table;
  transition: all 0ms;
  -moz-transition: all 0ms;
  -webkit-transition: all 0ms;
  -o-transition: all 0ms;
}

.button-text  {
  display: table-cell;
  vertical-align: middle;
  text-decoration: none;
}

.icon-font  {
  display: table-cell;
  vertical-align: middle;
}


.general-button:hover  {
  transition-timing-function: ease-in-out;
}

.general-button:hover:before  {
  transition-timing-function: ease-in-out;
}

.general-button:hover .button-content  {
  transition-timing-function: ease-in-out;
}


.general-button:active  {
  top: 0px;
  transition: all 0ms;
  -moz-transition: all 0ms;
  -webkit-transition: all 0ms;
  -o-transition: all 0ms;
}

.general-button:active:before  {
  transition: all 0ms;
  -moz-transition: all 0ms;
  -webkit-transition: all 0ms;
  -o-transition: all 0ms;
}

.general-button:active .button-content  {
  transition: all 0ms;
  -moz-transition: all 0ms;
  -webkit-transition: all 0ms;
  -o-transition: all 0ms;
}

.touch .general-button:hover  {
  top: 0px;
  background-color: #00afcc;
}

.touch .general-button:hover:before  {
  border-bottom: 0px solid rgba(0,109,127, 0);
}

.touch .general-button:hover .button-content  {
  box-shadow: 0px 0px 0px 0px rgba(0,109,127, 1);

}

.touch .general-button:active  {
  background-color: #0099b2;
  box-shadow: 0px 1.6px 0px 0px rgba(0,87,102, 1) inset;
}

.touch .general-button:active:before  {
  top: -3px;
  padding-bottom: 3px;
  border-bottom: 0px solid rgba(0,109,127, 0);
}

.touch .general-button:active .button-content  {
  box-shadow: 0px 0px 0px 0px rgba(0,109,127, 0);
}

.btn-right {
	float: right;
}
/*section*/

.section-clear {
	clear: both;
}

.section-last {
	margin-bottom: 10rem;
}

/*text*/

.textBlock {
	clear: both;
}

.lead-text {
	padding-bottom: 5rem;
}

.textBlockL {
	width: 48%;
	float: left;
}

.textBlockR {
	width: 48%;
	float: right;
}

.textBlock-photo {
	text-align: center;
}

.textBlock-text {
	padding-top: 2rem;
	padding-bottom: 7rem;
}

.textBlock-text > span {
	font-size: small;
	color: lightslategray;
}

/*title*/

.basic-tlL {
	color: #fff;
	width: 98%;
	line-height: 2rem;
	text-align: center;
	padding: 1%;
	font-size: 2rem;
	font-weight: bold;
	border-radius: 7px;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
	margin-bottom: 3%;
	background: #00AFCC;
}

.basic-tlL .fa {
	margin-right: 1rem;
}

.basic-tlL span {
	font-size: 1.5rem;
}

.basic-tlM {
	color: #00AFCC;
	font-size: 2rem;
	border-bottom: 1px dotted lightsteelblue;
	margin-bottom: 2rem;
}

.basic-tlM .fa {
	margin-right: 1rem;
}

.basic-tlS {
	color: #1D50A2;
	font-size: 1.5rem;
	padding: 0.3%;
	margin-bottom: 2rem;
	font-weight: bold;
	text-align: center;
	background: #BED5ED;
	border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}


/*table*/

table.basic-table1 {
	width: 100%;
	margin: 0 auto 5rem auto;
	border-top: 1px solid lightsteelblue;
	border-left: 1px solid lightsteelblue;
}

table.basic-table1 th {
	text-align: center;
	padding: 1%;
	border-right: 1px solid lightsteelblue;
	border-bottom: 1px solid lightsteelblue;
	background: #cef2f9;
	color: #00AFCC;
	font-weight: bold;
	vertical-align: middle;
}

table.basic-table1 td {
	text-align: left;
	padding: 1%;
	background: #fff;
	border-right: 1px solid lightsteelblue;
	border-bottom: 1px solid lightsteelblue;
}

table.basic-table1 caption {
    caption-side: bottom;
}

/*リスト*/

.basic-ul
,.basic-ul li{
    padding:0px;
    margin:0px;
}

.basic-ul li{
    list-style-type:none !important;
    list-style-image:none !important;
    margin: 0px 0px 5px 0px !important;
}
     
.basic-ul-dot li{
    position:relative;
    padding-left:20px;
}
.basic-ul-dot li:before{
    content:''; 
    height:0px; 
    width: 90%;
    display:block; 
    position:absolute; 
    top:18px; 
    left:0px;
}
.basic-ul-dot li:after{
    content:'';
    display:block; 
    position:absolute; 
    background:#aaa;
    width:5px;
    height:5px; 
    top:7px; 
    left:5px; 
    border-radius: 5px;
}
/*relation*/

#relation {
	background: #fff;
	border-radius: 7px;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
	padding: 4rem 0 2rem 2rem;
	position: relative;
	clear: both;
}

#relation dt {
	position: absolute;
	top: 0;
	left: 0;
	color: #fff;
	width: 100%;
	text-align: center;
	padding: 0.5% 0;
	font-weight: bold;
	border-radius: 7px;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
	margin-bottom: 0.5%;
	background: #00AFCC;
}

#relation dd {
	display: inline-block;
	padding:  1rem 2rem 0 2rem;
	min-width: 20%;
	white-space: nowrap;
}

#relation dd a {
	color: #00AFCC;
	text-align: center;
	padding: 1.5%;
	border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
	margin-bottom: 1%;
	border: 2px solid #00AFCC;
	display: block;
	background: #ECF7F9;
}

#relation dd a span {
	font-size: 90%;
}

#relation dd a:hover {
	background: #00AFCC;
	color: #fff;
}

#relation-bg {
    background: url("../images/main-bg.gif") 0 0 repeat;
	padding: 2rem 0;
	overflow: hidden;
}

#relation-bg dl#relation {
	width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}

#relation-bg dl#relation dd {
	float: left;
}

#catchslide {
	z-index:9998;
	position: absolute;
	left: 0;
	right: 0;
	top: 500px;
	margin:0 auto;
	width: 1000px;
	height: 140px;
	cursor: default;
}

/*検索*/

dl.search1{
	position:relative;
	background-color:#fff;
	border:1px solid #aaa;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	-o-border-radius:3px;
	-ms-border-radius:3px;
	border-radius:3px;
	width:160px;
}
dl.search1 dt{
	margin-right:0px;
	padding:0;
}
dl.search1 dt input{
	width:100%;
	height:16px;
	line-height:16px;
	background:none;
	border:none;
	outline: 0;
}
dl.search1 dd{
	position:absolute;
	top:0;
	right:0;
}
dl.search1 dd button{
	display:block;
	padding:3px 0px 3px 3px;
	background:none;
	border:none;
	cursor: pointer;
	margin-left: 5px;
}
dl.search1 dd button span{
	display:block;
	width:16px;
	height:16px;
	background: url(../images/h-icon-search.png)no-repeat scroll 0 0;
}

/* === SP ====================== */
@media screen and (max-width: 748px) {
    #main .main-content .title span {
    	display: inline;
    }
    #main .main-content .title h2 img {
    	display: none;
    }
    img.news-icon {
    	display: none;
    }
    .header-ui {
        display: none !important;
    }
    
	/*キラーコンテンツ*/

	.top-pickup {
		background: #fff url("../../images/index/top-pickup-bg.jpg") top center;
		border-top: 3px solid #00afcc;
		width: 100%;
		margin-top: -2px;
		padding-bottom: 2rem;
	}
	.top-pickup ul {
		width: 100%; 
		margin: 2rem auto;
		letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する。 */
		text-align: justify;
		text-justify: distribute-all-lines;
	}
	.top-pickup ul:after {
		content:"";
		display: block;
		width: 100%;
		line-height:0;
		height: 0;
	} 
	.top-pickup ul li {
		letter-spacing:normal;
		display: block;/*ブロックレベル要素に横並びにする*/
		width: 90%;
		margin: 0 auto;
		text-align: center;
	}
	.top-pickup img {
		width: 85%;
		margin-bottom: 1rem;
	}
	.top-pickup-btn {
		padding-top: 0rem;
		margin-bottom: 0rem;
	}
	#pan-kuzu {
		display: none;
	}
	.section-title h3 {
	font-size: 2rem;
	}
	.section-title {
	text-align: center;
	margin-bottom: 2rem;
	}
	#back-top {
    display: none;
	}
	.textL {
	width: 100%;
	float: static;
	}
	.photoR {
	width: 100%;
	float: static;
	text-align: center;
	padding-top: 2rem;
	}
	.photoL {
	width: 100%;
	float: static;
	text-align: center;
	padding-top: 2rem;
	}
	.textR {
	width: 100%;
	float: static;
	}
	.section-last {
	margin-bottom: 4rem;
	}
	.button-text  {
	  font-size: 1.5rem;
	}
	.section-title h3 > span {
	font-size: 1.5rem;
	}
	.basic-tlL {
	padding-top: 2%;
	padding-bottom: 2%;
	}
	.textBlockL {
	width: 100%;
	float: static;
	}
	.textBlockR {
	width: 100%;
	float: static;
	}
	.basic-tlL {
	font-size: 1.8rem;
	}
	#relation {
	padding: 3.5rem 2rem 2rem 2rem;
	}
	#relation dd {
	display: block;
	width: 100%;
	}
	#relation dd a span {
		font-size: 100%;
	}
	#relation-bg dl#relation {
		width: 90%;
		margin: 0 auto;
	}
	#relation-bg dl#relation dd {
	float: none;
	}

	ul.photo-raw li {
	width: 100%; 
	height: auto;
	}
	ul.photo-raw.col3 {
	width: 80%; 
	}
	ul.photo-raw.col3 li {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
	}
	.voice-block {
	clear: both;
	width: 90%;
	margin: 0 auto 6rem auto;
	}

	.voice-block p {
	position: relative;
	padding: 2% 2% 2% 20%;
	background: #fff;
	border-bottom: 1px dotted #aaa;
	} 

	.voice-block img {
	position: absolute;
	top: 1.7rem;
	left: 0;
	width: 18%;
	}

	/*コンテンツ半分分割*/
	.section-half-left {
		width: 100%;
		float: none;
	}
	.section-half-right {
		width: 100%;
		float: none;
	}
	#catchslide {
	z-index:9997;
	position: absolute;
	left: 0;
	right: 0;
	top: 180px;
	margin:0 auto;
	width: 100%;
	height: 30%;
	}
}