@charset "utf-8";
/* CSS Document */

.txt-c-red{
	color:#d13434;
}
.txt-center{
	text-align: center;
}
.mb-3em{
	margin-bottom: 3em !important;
}
.fs_s{
	font-size: 0.8em;
}
.mincho{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.pc{
	display: block;
}
.sp{
	display: none;
}

.clearBoth {
	clear: both;
}

#wrapper{
	max-width: 850px;
	margin: 0 auto;
}
header{
	position: relative;
	width:100%;
	margin-bottom: 1em;
}
header h1 img{
	width:100%;
}
#to_top {
	position: absolute;
	top: 20px;
	right: 20px;
	transition: opacity .2s;
}
#to_top:hover {
	opacity: 0.6;
}
#to_top div{
	padding: 2px 2px 4px 4px;
	position: relative;
}
#to_top div a{
	position: absolute;
	top:0;
	right: 0;
	bottom: 0;
	left: 0;
}
#nav1_ul{
	list-style: none;
	display: flex;
	position: absolute;
	right: 0;
	bottom: 0;
}
#nav1_ul li{
	margin-right: 10px;
}

#nav1_ul li a:hover{
	opacity: 0.8;
}

/* 学校詳細 */
#school-area {
	margin-bottom: 4em;
}
#school-head-1{
	display: flex;
	justify-content: space-between;
	margin-bottom: 16px;
}
.school-sch_name{
	font-size: 1.6em;
	line-height: 1.5em;
	color: #222;
}
.school-sch_kyogaku::before {
	content: "共学";
	color: #fff;
	background: #8dc21f;
	border-radius: 5px;
	padding: 6px;
	margin-right: 5px;
	font-size: 1.0rem;
	vertical-align: bottom;
}
.school-sch_joshi::before{
	content:"女子";
	color:#fff;
	background: #dc4fb9;
	border-radius: 5px;
	padding:6px;
	margin-right: 5px;
	font-size: 1.0rem;
	vertical-align: bottom;
}
#school-head-2{
	display: flex;
	justify-content:flex-end;
	align-items: flex-end;
}
#school-map{
	margin-right: 16px;
	padding: 0.25em;
}
#school-map a img{
	max-width: 100%;
	transition: opacity .2s;
}
#school-map a img:hover{
	opacity: 0.6;
}
#school-hp{
	padding: 0 20px 0 0;
	line-height: 1;
}
#school-hp a img{
	max-width: 100%;
	transition: opacity .2s;
}
#school-hp a img:hover{
	opacity: 0.6;
}
#school-h3_article {
	position: relative;
	margin-bottom: 20px;
	padding: 0.4em 0.4em 0.4em 2.2em;
	background-color: #f96e86;
	box-shadow: 2px 2px #ccc;
	border-radius: 5px 20px 20px 5px;
	font-weight: normal;
	font-size: 1.25em;
	color: #ffffff;
}
#school-h3_article::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0.6em;
	display: block;
	width: 1.2em;
	height: 1.8em;
	background: url(../img/icon_h3.svg) center center no-repeat;
	background-size: contain;
}
#school-img_r{
	float:right;
	margin: 0 0 1em 1em;
}
#school-img_l{
	float:left;
	margin: 0 1em 1em 0;
}
#school-img_r img,
#school-img_l img {
	border-radius: 5px;
}
#school-p_article p{
	text-indent: 1em;
	margin-bottom: 1em;
	line-height: 1.5em;
	letter-spacing: 0.07em;
}
#school-p_article h4{
	line-height: 1.6em;
}
.school-p_q{
	font-weight: bold;
	color: #004093;
	text-indent: 0em !important;
	
}
.school-p_a{
	text-indent: 0em !important;
}
#school-h3_event {
	display: inline-block;
	min-width: 10em;
	margin-top: 2em;
	margin-bottom: 1em;
	padding: 0.6em 1.5em 0.4em 0.8em;
	background: #f4f4f4;
	border-left: solid 5px #7db4e6;
	box-shadow: 2px 2px #cccccc;
}
#school-p_event p{
	margin-bottom: 1em;
}
#school-h3_adm {
	display: inline-block;
	min-width: 10em;
	margin-top: 2em;
	margin-bottom: 1em;
	padding: 0.6em 1.5em 0.4em 0.8em;
	background: #f4f4f4;
	border-left: solid 5px #7db4e6;
	box-shadow: 2px 2px #cccccc;
}
#school-p_adm p{
	margin-bottom: 1em;
}
#school-adress{
	margin-top: 3em;
	font-size: 0.8em;
	margin-bottom: 0;
}

.strong-msg {
	padding: 0.6em 1.0em 0.6em 1.0em;
	background-color: #1d2087;
	border-radius: 5px;
	color: #ffffff;
	display: block;
}

.strong-msg p {
	text-align: initial;
}

.strong-msg strong {
	font-size: 1.1em;
}

.strong-msg span {
	display: inline-block;
}

.strong-msg a {
	color: #ffffff;
}

/* トップ：インタビュー・コラム */
.columnBox {
}
/*
.columnBox h2 {
	margin-bottom: 20px;
	padding: 5px 14px;
	background-color: #ff0000;
	font-weight: normal;
	font-size: 1.4em;
	color: #ffffff;
}
*/
.columnBox h2{
	position: relative;
	margin-bottom: 20px;
	padding: 0.4em 0.4em 0.4em 2.2em;
	background-color: #fe9801;
	box-shadow: 2px 2px #ccc;
	border-radius: 5px 20px 20px 5px;
	font-weight: normal;
	font-size: 1.25em;
	color: #ffffff;
}
.columnBox h2::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0.6em;
	display: block;
	width: 1.1em;
	height: 1.8em;
	background: url(../img/icon_h2_column.svg) center center no-repeat;
	background-size: contain;
}
.columnInr {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	margin-bottom: 2.5em;
}
.columnInr > figure {
	width: 208px;
}
.columnInr figcaption {
	font-size: 0.875em;
	margin-top: 0.2em;
	line-height: 1.2;
}
.columnInr > div {
	width: calc(100% - 250px);
	display: flex;
	flex-flow: column wrap;
	justify-content: space-between;
}
.columnInr:nth-of-type(2n+1) {
	flex-flow: row-reverse nowrap;
}
.columnInr.column2img > div {
	width: calc(100% - 250px);
}
.columnInr.column2img .column2item {
	display: flex;
	flex-flow: row nowrap;
	width: 208px;
}
.columnInr.column2img .column2item figure {
	margin-left: 10px;
}
.columnInr.column2img .column2item figure:first-of-type {
	margin-left: 0;
}
.columnInr img {
	width: 100%;
	border-radius: 5px;
}
.columnInr small {
	font-size: 0.8em;
}
.columnInr dt h3,
.columnInr dt h4 {
	margin-bottom: 0.3em;
	line-height: 1.3;
	font-weight: bold;
	font-size: 1.8em;
	color: #1D2087;
}
.columnInr dt h4 {
	color: #333;
}
.columnInr dt h4 span {
	display: inline-block;
} 
.columnInr dt div {
	margin-bottom: 0.9em;
	font-weight: bold;
	font-size: 1.375em;
}
.columnInr dd {
	line-height: 1.6;
	text-align: justify;
}
.columnInr .moreBtn {
	align-self: end;
	margin-top: 1em;
}
.columnInr .moreBtn a {
	display: inline-block;
	padding: 10px 25px;
	background-color: #fe9801;
	border-radius: 2em;
	text-decoration: none;
	color: #fff;
	transition: .2s;
}
.columnInr .moreBtn a:hover {
	opacity: 0.6;
}

/* 旧トップ：インタビュー・コラム */
/*
#column-area{
}

#column-area div{
	border-radius: 10px;
}
#column-nav_a{
	padding: 10px;
	border: #da3852 2px solid;
	box-shadow: #f9a8a8 1px 1px 3px 0px;
	margin-bottom: 2em;
}
#column-nav_a a{
	color: inherit;
	text-decoration: none;
}
#column-nav_a img{
	max-width: 300px;
	float: right;
	margin: 0 0 1em 1em;
}
#column-nav_a1{
	display: inline-block;
	background: #fa94a4;
	text-shadow: #24080b 1px 1px 2px;
	color: #fff;
	padding: 3px 9px;
	border-radius: 5px;
	border: #ed3751 5px double;
	vertical-align: bottom;
	margin-bottom: 1em;
}
#column-nav_a2{
	font-size: 1.75em;
	font-weight: bold;
	margin-bottom: 0.5em;
}
#column-nav_a3{
	font-size: 1.5em;
	font-weight: bold;
	color: #D42D30;
	display: inline-block;
}
#column-nav_a4{
	font-size: 1.5em;
	font-weight: bold;
	display: inline-block;
}
#column-nav_a5{
	margin-bottom: 1em;
}
#column-nav_a6{
	background: #ff6981;
	text-align: center;
	text-shadow: #24080b 1px 1px 2px;
	color: #fff;
	padding: 5px 5px;
	border-radius: 5px;
	border-bottom: #cb001d 3px solid;
	vertical-align: bottom;
	position: relative;
	transition: background 0.2s , border 0.2s;
}
#column-nav_a6:hover{
	background: #ffa2b1;
	border-bottom: #ffa2b1 3px solid;
}

#column-nav_a6 a{
	position: absolute;
	top:0;
	right:0;
	bottom: 0;
	left: 0;
}

#column-nav_b{
	padding: 10px;
	border: #1d449a 2px solid;
	box-shadow: #618ef0 1px 1px 3px 0px;
	margin-bottom: 2em;
}
#column-nav_b a{
	color: inherit;
	text-decoration: none;
}
#column-nav_b img{
	max-width: 300px;
	float: left;
	margin: 0 1em 1em 0;
}
#column-nav_b1{
	display: inline-block;
	background: #5686f2;
	text-shadow: #08132e 1px 1px 2px;
	color: #fff;
	padding: 3px 9px;
	border-radius: 5px;
	border: #1b15b9 5px double;
	vertical-align: bottom;
	margin-bottom: 1em;
}
#column-nav_b6{
	background: #4b7dea;
	text-align: center;
	text-shadow: #08132e 1px 1px 2px;
	color: #fff;
	padding: 5px 5px;
	border-radius: 5px;
	border-bottom: #1d449a 3px solid;
	vertical-align: bottom;
	position: relative;
	transition: background 0.2s , border 0.2s;
}
#column-nav_b6:hover{
	background: #88a7ea;
	border-bottom: #88a7ea 3px solid;
}

#column-nav_b6 a{
	position: absolute;
	top:0;
	right:0;
	bottom: 0;
	left: 0;
}
*/

/* コラム詳細 */
#columnarticle-area{
	margin-bottom: 3em;
}
#columnarticle-area h1 {
	margin: 5px 0 1.5em 0;
	line-height: 1.2;
	font-weight: bold;
	font-size: 1.4em;
}
#columnarticle-area h1 strong {
	display: inline-block;
	margin-right: 0.5em;
	padding: 5px 20px;
	background-color: #fe9801;
	border-radius: 1em;
	font-weight: normal;
	font-size: 0.85em;
	color: #ffffff;
}
#columnarticle-lead{
	margin-top: 1em;
	margin-bottom: 1em;
	color: #030e26;
	margin-right: 0.5em;
	margin-left: 0.5em;
	text-justify: inter-character;
}
#columnarticle-main h2 {
	position: relative;
	margin-top: 3em;
	margin-bottom: 20px;
	padding: 0.4em 0.4em 0.4em 2.2em;
	background-color: #fe9801;
	box-shadow: 2px 2px #ccc;
	border-radius: 5px 20px 20px 5px;
	font-weight: normal;
	font-size: 1.25em;
	color: #ffffff;
}
#columnarticle-main h2::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0.6em;
	display: block;
	width: 1.1em;
	height: 1.8em;
	background: url(../img/icon_h2_column.svg) center center no-repeat;
	background-size: contain;
}

.column02 #columnarticle-main h2 {
	background-color: #7bc3ad;
}
#columnarticle-main h2:first-child{
	margin-top: 1em;
}
#columnarticle-main h2 span{
	display: inline-block;
}
#columnarticle-main p {
	margin: 1em 0.5em 1em 0.5em;
	text-justify: inter-character;
}
.columnarticle-img_l{
	float:left;
	max-width: calc(100% / 3);
	margin: 0 1em 1em 0;
}
.columnarticle-img_l img,.columnarticle-img_r img{
	max-width: 100%;
	margin: 0 auto;
}
.columnarticle-img_l figcaption,.columnarticle-img_r figcaption{
	font-size: 0.8em;
	color: #666;
	line-height: 1.3;
}
.columnarticle-img_r{
	float:right;
	max-width: calc(100% / 3);
	margin: 0 0 1em 1em;
}
.columnarticle-img_c{
	text-align: center;
}
.columnarticle-img_c img{
	max-width: 66.7%;
}
#columnarticle-main .columnarticle-q {
	margin-top: 2em;
	color: #006cd1;
}
.columnarticle-name1{
	font-weight: bold;
}
#columnarticle-main #columnarticle-totop {
	text-align: center;
	margin: 3em 0;
}
#columnarticle-totop a{
	color: #2761ce;
	text-decoration: none;
	transition: background 0.2s;
}
#columnarticle-totop a:hover{
	color: #6092EF;
}

/* コラム詳細：下部リンク */
#columnarticle-nav {
	display: flex;
	justify-content: space-around;
}
#columnarticle-nav li {
	width: 28%;
	list-style-type: none;
}
#columnarticle-nav li a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	padding: 1em 1em;
	box-sizing: border-box;
	background-color: #70a30a;
	border-radius: 2em;
	text-decoration: none;
	color: #ffffff;
}
#columnarticle-nav li a:hover {
	background-color: #8db53b;
}
/*
#columnarticle-nav{
	display: flex;
	justify-content: center;
}
#columnarticle-nav p{
	width: 33%;
	background: #006cff;
	text-align: center;
	padding: 1em;
	border-radius: 1em;
	font-weight: bold;
	color: #fff;
	position: relative;
	transition: background 0.2s;
}
#columnarticle-nav p:hover{
	background: #6caafe;
}
#columnarticle-nav p a{
	position: absolute;
	top:0;
	right:0;
	bottom: 0;
	left: 0;
}

.columnarticle-nav_a{
	border: #ddd solid 2px;
	border-radius: 0.5em;
	position: relative;
	flex: 1;
	margin: 0.5em;
	background: #f0f6ff;
	color: #061058;
	transition: background 0.2s,border 0.2s;
	text-shadow: #fff 0px 0px 3px;
	box-shadow: #fff 0px 0px 5px 0px inset;
}
.columnarticle-nav_a:hover{
	background: #9ec7ff;
	border: #7eb6ff solid 2px;
}
.columnarticle-nav_b{
	display: flex;
	align-items:center;
	height: 100%;
}
.columnarticle-nav_c{
	flex:1;
	padding: 0.5em 0.5em 0.5em 0.5em;
}
.columnarticle-nav_c img{
	max-width: 100%;
}
.columnarticle-nav_d{
	flex:3;
	padding: 0.5em 0.5em 0.5em 0;
	vertical-align: middle;
}
.columnarticle-nav_a a{
	position: absolute;
	top:0;
	right:0;
	bottom: 0;
	left: 0;
}
*/
/* 私立小学校一覧 */
#kana-area {
	margin-bottom: 2em;
}
#kana-area h2{
	position: relative;
	margin-bottom: 20px;
	padding: 0.4em 0.4em 0.4em 2.2em;
	background-color: #2e87d9;
	box-shadow: 2px 2px #ccc;
	border-radius: 5px 20px 20px 5px;
	font-weight: normal;
	font-size: 1.25em;
	color: #ffffff;
}
#kana-area h2::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0.5em;
	display: block;
	width: 1.3em;
	height: 1.8em;
	background: url(../img/icon_h2_school.svg) center center no-repeat;
	background-size: contain;
}
#kana-sch_area{
	display: flex;
	flex-wrap: wrap;
}
.kana-sch_box {
	width: calc((100% - 80px)/3);
	margin-right: 40px;
	margin-bottom: 36px;
	padding: 0 15px 15px 0;
	position: relative;
	box-shadow: #979797 1px 1px 0px;
	border-radius: 0 0 5px 0;
	transition: background 0.2s;
	box-sizing: border-box;
}
/* IEのみ */
@media all and (-ms-high-contrast: none) {
	.kana-sch_box {
		width: calc((100% - 81px)/3);
	}
}
.kana-sch_box:hover{
	background: #dff7ff;
}
.kana-sch_box:nth-child(3n){
	margin-right: 0px;
}
.kana-sch_name{
	padding-bottom: 6px;
	line-height: 1.5em;
	font-weight: bold;
}
.kana-sch_kyogaku::before{
	content:"共学";
	color:#fff;
	background: #8dc21f;
	padding:3px;
	border-radius: 3px;
	margin-right: 5px;
	font-size: 0.8rem;
}
.kana-sch_joshi::before{
	content:"女子";
	color:#fff;
	background: #dc4fb9;
	padding:3px;
	border-radius: 3px;
	margin-right: 5px;
	font-size: 0.8rem;
}
.kana-sch_box p{
	margin-top: 0.2em;
	font-size: 0.9em;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
	overflow: hidden;
}

.kana-sch_box p.line-clamp-4 {
	-webkit-line-clamp: 4;
}

.kana-sch_box p strong {
	font-weight:bold;
	color: #1d2087;
}
.kana-sch_box a{
	position: absolute;
	top:0;
	right:0;
	bottom: 0;
	left: 0;
}

#link-area{
	padding: 1em;
	border-radius: 10px;;
	margin-bottom: 2em;
}
#link-area h2{
	margin-bottom: 16px;
	line-height: 1.5;
	text-align: center;
	color: #ff0000;
}
#link-area h2 span{
	display: inline-block;
}
#link-area ul {
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: center;
	padding: 0;
	list-style: none;
}
#link-area ul li {
	width: 100%;
	max-width: 240px;
	margin: 0 32px 0 0;
}
#link-area ul li:last-child{
	margin-right:0;
}

#link-area ul li a img{
	max-width: 100%;
	transition: opacity .2s;
}
#link-area ul li a img:hover{
	opacity:0.6;
}

footer ul{
	list-style: none;
	display: flex;
	justify-content: center;
	margin: 0 auto 1em;
	padding: 0;
}
footer ul li{
	padding-right: 8px;
	padding-left: 8px;
	border-right:#ddd 1px solid;
}
footer ul li:last-child{
	border-right:none;
}
footer ul li a{
	text-decoration: none;
	color: #333;
}
footer ul li a:hover{
	color: #888;
}
footer p {
	text-align: center;
	font-size: 0.8em;
	background-color: #ff0000;
	color: #fff;
	padding: 10px;
}

@media screen and (max-width:850px){
	article {
		padding-right: 20px;
		padding-left: 20px;
	}
	#school-hp {
		padding-right: 0;
	}
}

@media screen and (max-width:680px){
	.pc{
		display: none;
	}
	.sp{
		display: block;
	}
	header{
		margin-bottom: 1em;
	}
	#to_top {
		font-size: 12px;
		top: 10px;
		right: 20px;
	}
	#nav1_ul{
		position: inherit;
		justify-content: center;
	}

	/* 学校詳細 */
	#school-area {
/*
		width: 90%;
*/
		margin: 0 auto 4em auto;
	}
	#school-head-1{
		display: block;
	}
/*
	#school-h3_article {
		width: 100vw;
		transform: translate(calc(95vw - 100vw),0);
		box-sizing: border-box;
		line-height: 1.2;
	}
*/
	#school-head-2{
	}
	#school-img_r{
		float:none;
		margin: 0 0 1em 0;
		text-align: center;
	}

	/* トップ：インタビュー・コラム */
	.columnInr {
		flex-flow: column !important;
		align-items: center;
	}
	.columnInr > figure {
		width: 90%;
		max-width: 230px;
		margin-bottom: 20px;
	}
	.columnInr > div {
		width: 90%;
	}
	.columnInr.column2img > div {
		width: 90%;
	}
	.columnInr.column2img .column2item {
		width: 90%;
		max-width: 360px;
		margin-bottom: 20px;
	}
	.columnInr dt h3,
	.columnInr dt h4 {
		font-size: 1.5em;
	}
	.columnInr dt div {
		font-size: 1.2em;
	}
/*
	#column-area{
		display: block;
	}
	#column-area div{
		width:inherit;
	}
	#column-nav_a{
		margin-right: 0px;
		margin-bottom: 1em;
	}
	#column-nav_a img{
		max-width: 100%;
		float: none;
		margin: 0 0 0.5em 0;
	}
	#column-nav_b img{
		max-width: 100%;
		text-align: center;
		float: none;
		margin: 0 auto 0.5em auto;
	}
	#columnarticle-h1{
		font-size: 7vw;
	}
*/
	/* コラム詳細 */
	#columnarticle-area h1 {
		padding: 0 0.5em;
	}
	#columnarticle-area h1 strong {
		display: block;
		margin: 0 0 0.5em 0;
		text-align: center;
	}
	.columnarticle-img_l, .columnarticle-img_r {
		float: none;
		width: 90%;
		max-width: none;
		margin: 0 auto 1em auto;
	}
	.columnarticle-img_c img{
		max-width:  calc(100% - 1em);
	}

	/* コラム詳細：下部リンク */
	#columnarticle-nav {
		flex-flow: column wrap;
	}
	#columnarticle-nav li {
		width: 90%;
		align-self: center;
		margin-bottom: 1em;
	}

	/* 私立小学校一覧 */
	#kana-sch_area {
		justify-content: center;
	}
	.kana-sch_box{
		width: 90%;
		margin-right: 0px;
		margin-bottom: 16px;
		box-sizing: border-box;
	}
	.kana-sch_box:nth-child(3n){
		margin-right: 0px;
	}
	#link-area ul{
		flex-flow: column wrap;
	}
	#link-area ul li{
		width: inherit;
		margin: 0 0 16px 0;
		text-align: center;
	}
	footer ul{
		flex-wrap: wrap;
	}
	footer ul li{
		border-right:none;
		margin: 8px;
	}
}