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


/****************************************

          General Setting

*****************************************/

html, body {
	margin:0;
	padding:0;
}

body {
 color: #333;
	/*font-size: 14px;*/
 font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height:2em;
}

h1,h2,h3,h4,ul,ol,p,dl{
	margin:0;
	padding:0;
}

img{
	max-width:100%;
}



/****************************************

          common

*****************************************/


/* テキスト、フォント関連 */

.txt_center{
	text-align:center !important;
}

.txt_left{
	text-align:left !important;
}

.txt_right{
	text-align:right !important;
}

.txt_center_and_left{
	text-align:center;
}

.bold{
  font-weight: bold;
}

.blue{
  color: #688BC5;
}

.size_1-2{
  font-size: 1.2em;
}

.size_1-3{
  font-size: 1.3em;
}

sup,sub{
	font-size:0.75em;
}

.font_serif{
  font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

.underline{
  text-decoration: underline;
}

/* リンク関連 */

a img{
	border:none;
}

a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

a{
	color: #4065a1;
	text-decoration:none;
}

a:hover {
	color: #4065a1;
	text-decoration:underline;
	cursor: pointer;
}

.new_win{
	background: url(../images/ico_new_win_blue.png) no-repeat right top;
	padding-right: 20px;
}

.link_btn{
  border: 1px solid #688BC5;
  padding: 5px 10px 5px 25px;
  background: url("../images/link_right.png") no-repeat left 10px center #fff;
  background-size: 6px;
  color: #688BC5;
  border-radius: 5px;
}

.link_btn:hover{
  background: url("../images/link_right_white.png") no-repeat left 10px center #688BC5;
  background-size: 6px;
  text-decoration: none;
  color: #fff;
}

.link_btn_left{
 border: 1px solid #688BC5;
 background: url("../images/link_left.png") no-repeat left 10px center;
 background-size: 6px;
 color: #688BC5;
 padding: 5px 10px 5px 25px;
 border-radius: 5px;  
}

.link_btn_left:hover{
  background: url("../images/link_left_white.png") no-repeat left 10px center #688BC5;
  background-size: 6px;
  text-decoration: none;
  color: #fff;
}

.link_btn_down{
 border: double #fff;
 background: url("../images/link_dwn_white.png") no-repeat left 10px center #688BC5;
 background-size: 10px;
 color: #fff;
 padding: 5px 10px 5px 25px;
 border-radius: 5px;  
}

.link_btn_down:hover{
 border: double #688BC5;
  background: url("../images/link_dwn.png") no-repeat left 10px center;
  background-size: 10px;
  text-decoration: none;
  color: #688BC5;
}

/* レイアウト関連 */

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

.paddingL40{
  padding-left: 40px;
}

.marginT60{
	margin-top:60px !important;
}

.marginT40{
	margin-top:40px !important;
}

.marginT30{
	margin-top:30px !important;
}

.marginT20{
	margin-top:20px !important;
}

.marginT10{
	margin-top:10px !important;
}

.marginT5{
	margin-top:5px !important;
}

.marginB40{
	margin-bottom:20px !important;
}

.marginB20{
	margin-bottom:20px !important;
}

.marginB15{
	margin-bottom:15px !important;
}
.marginB10{
	margin-bottom:10px !important;
}

.Hide_pc{
	display:none !important;
}

.col_area{
	display: table;
	width: calc(100% + 80px);
	border-spacing: 40px 0;
	margin-left: -40px;
}

.col_item{
	display: table-cell;
	vertical-align:top;
}

.col_fixed{
  table-layout: fixed;
}


/* リスト、ボックスなどのパーツ */

ul.disc{
	list-style:none;
	padding-left: 1.3em;
  text-indent: -1.3em;
}

ul.disc li:before{
  content: "● ";
  color: #688BC5;
}

ol.decimal{
  list-style: decimal;
  margin-left:1.5em;
}

ul.disc li,
ol.decimal li{
	margin-bottom: 10px;
}

ul.disc_nomal{
	list-style:disc;
	margin-left:1.5em;
}

.box{
	border:2px solid #ccc;
	padding:10px;
}

.box20{
	border:2px solid #ccc;
	padding:20px;
}


hr{
	border: 0;
	height: 3px;
    background: #ccc;
	clear:both;
}


/* テーブル */

table.gray{
	border-collapse:collapse;
}	

table.gray th,
table.gray td{
	border-top:1px solid #ccc;
	border-bottom:1px solid #ccc;
	padding:10px;
	text-align:left;
	font-weight:normal;
}

table.gray td.center,
table.gray th.center{
	text-align:center;
}

table.gray th{
	background:#eee;
	white-space: nowrap;
}

table.w100{
  width: 100%;
}


/* 見出し */

h2.h2_line{
  font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  background: #F1F6FE;
  border-top: 5px solid #688BC5;
  text-align: center;
  font-size: 18pt;
  padding: 10px 0;
  letter-spacing: 1px;
  font-weight: normal;
  width: 600px;
  margin: 0 auto;
	
}

h3.h3_title{
 font-size: 20pt;
	background: url("../images/ico_h3_title.png") no-repeat left top;
	background-size: 25px;
	padding-left: 35px;
}

@media (max-width: 834px) {
	
	h3.h3_title{
		font-size: 18pt;
background: url("../images/ico_h3_title.png") no-repeat left top 8px;
		background-size: 23px;
		padding-left: 30px;
		line-height: 1.6em;
		margin-top: 40px;
}
	
}

h3.h3_line{
  border-bottom: 3px solid #688BC5;
  font-size: 16pt;
  padding: 7px 0;
}

h4.h4_line{
  border-left: 7px solid #688BC5;
  font-size: 14pt;
  font-weight: bold;
  padding: 0 0 0 10px;
}

/* インデント */

.indent-40{
  padding-left: 40px;
  text-indent: -40px;
}


/* TOPへ */

#page-top {
    position: fixed;
    bottom: 20px;
    right: 50px;
}


/****************************************

        ヘッダ
		  
*****************************************/	

.contents_titleArea{
  width: 94%;
	max-width:1100px;
	margin:0 auto;
	clear:both;
}

header .titleArea{
  position: absolute;
  background: #fff;
  padding: 0 35px;
  text-align: center;
  width: 17%;
  max-width: 200px;
}

header .titleArea a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-indent:-999px;
  z-index: 2; 
}

header .titleArea .h1_mark{
  width: 70px;
  margin: 15px auto 0;
}

header .titleArea .h1_title{
  margin: 15px auto 0;
}

header .titleArea .h1_montessori{
  width: 180px;
  max-width: 100%;
  border-top: 1px solid #aaa;
  margin: 15px auto;
  padding: 20px 0 0 0;
}

/*グローバルメニュー*/

header .header_tel{
	text-align: right;	
	margin-top: 10px;
}

#G_Menu_btn{
	display: none;
}

header nav ul{
  float: right;
  height: 40px;
  line-height: 40px;
}

header nav ul li{
list-style: none;
display: inline-block;
vertical-align: middle;
}

header nav ul li a{
  display: block;  
}

header .G_Menu_list nav.G_Menu_list_1 li{
  margin-left: 10px;
}

header .G_Menu_list nav.G_Menu_list_1 li img{
 height: 22px;
}

header nav.G_Menu_list_2{
	font-size:16px;
  background: #688bc5;  
}

.menu {
    position: relative;
    width: auto;
    height: 50px;
    max-width: calc(100% - 220px);
    margin: 0 auto;
  float: right;
}

.menu > li {
    float: left;
    height: 50px;
    line-height: 50px;
    background:　#688BC5;
  padding: 0 13px;
}

.menu > li a {
    display: block;
    color: #fff;
}

.menu > li a:hover {
  color: #fff;
  text-decoration: none;
}

ul.menu__second-level {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
}

.menu > li:hover {
    background: #4065a1;
    -webkit-transition: all .5s;
    transition: all .5s;
}


/* 下矢印 */
.init-bottom:after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 0 10px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.init-bottom-close:after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 0 10px;
 border-right: none;
    border-bottom: none;
    border-left: 1px solid #fff;
    border-top: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(-5deg);
    transform: rotate(45deg);
}

/* floatクリア */
.menu:before,
.menu:after,
li.menu__mega ul.menu__second-level{
    content: " ";
    display: table;
}

.menu:after {
    clear: both;
}

.menu {
    *zoom: 1;
}

/* プルダウン後 */

li.menu__mega ul.menu__second-level {
    position: absolute;
    top: 40px;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    padding: 20px 4%;
    background: #4065a1;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

li.menu__mega:hover ul.menu__second-level {
    top: 50px;
    visibility: visible;
    opacity: 1;
}

li.menu__mega ul.menu__second-level > li {
    float: left;
    width: calc(49% - 40px);
    border: none;
  padding: 0 20px;
}

li.menu__mega ul.menu__second-level > li:hover{
  background: #688BC5;
}

li.menu__mega ul.menu__second-level > li:nth-child(2n+1) {
    margin: 0 2% 0 0;
}

li.menu__mega span.sp_link{
 display: none;
}


/****************************************

         フッタ
		  
*****************************************/	

footer{
	margin-top: 40px;
	background: #f1f6fe;
	height: 45px;
}

footer .h1_area{
	background: #688bc5;
	line-height: 45px;
}

footer h1 img{
	width: 94%;
	max-width:320px;
	float: left;
	margin-top: 10px;
}

footer .h1_area .h1_area_right{
	float: right;
	display: table;	
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

footer .h1_area .h1_area_right p{	
	color: #fff;
	font-size: 16px;
	display: table-cell;
	padding-right: 20px;
	vertical-align: middle;
}

footer .h1_area .h1_area_right a{
	display: table-cell;
	font-size: 26px;	
	letter-spacing: 2px;
	color: #fff;		
	vertical-align: middle;
}

footer .h1_area .h1_area_right a span{
	background: url("../images/ico_tel_white.svg") no-repeat left center;
	padding: 0 0 0 30px;
	background-size: 26px;		
}


@media (min-width: 834px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}

@media only screen and (max-width: 834px){
		
	footer{
	height: auto;
}
	
	footer  .h1_area{
		text-align: center;
		line-height: 1em;
		padding: 15px 0;
	}
	footer h1 img{
	float: none;
		margin-top: 0;
}
	
footer .h1_area .h1_area_right{
	float: none;
	display: block;
	line-height: 1em;
}

footer .h1_area .h1_area_right p{	
	display: block;
	padding-right: 0;
	margin-top: 15px;
}

footer .h1_area .h1_area_right a{
	display: block;
	margin-top: 20px;
}
	

}

/* フッタメニュー */

a.footer_tit{
	display: none;
}

footer #footer_Menu{
	width:94%;
  max-width: 1100px;
	margin:0 auto;
	padding:30px 0;
	
}

footer .footerMenuList{
	width:calc(20% - 12px);
	float:left;
	margin-right:20px;
}

footer .footerMenuBtn{
	width:calc(20% - 40px);
	float:left;
}

footer .footerMenuBtn .footerBtn{
  display: block;
  padding: 10px 0;
  background: #fff;
  border: 1px solid #688BC5;
  text-align: center;
  margin-bottom: 10px;
}

footer .footerMenuBtn .footerBtn:hover{
  background: #FFFED7;
  text-decoration: none;
}

footer .footerMenuBtn .facebook{
  display: block;
  background: url("../images/ico_facebook.png") no-repeat left 22px center #405890;
  background-size: 15px 29px ;
  padding: 10px 0 10px 20px;
  text-align: center;
  color: #fff;
	margin-bottom: 10px;
}

footer .footerMenuBtn .facebook:hover{
  background: url("../images/ico_facebook.png") no-repeat left 22px center #5B73A9;
  background-size: 15px 29px;
  text-decoration: none;
}

footer .footerMenuBtn .instagram{
  display: block;
  background: url("../images/ico_instagram.png") no-repeat left 15px center #fff;
  background-size: 30px;
  padding: 10px 0 10px 20px;
  text-align: center;
	border: 1px solid #E94870;
	color: #E94870;
}

footer .footerMenuBtn .instagram:hover{
  background: url("../images/ico_instagram.png") no-repeat left 15px center #FFECEE;
  background-size: 30px;
  text-decoration: none;
}

footer #footer_Menu .footer_tit a{  	
	border-bottom:2px solid #688bc5;
 font-weight:bold;
	font-size:16px;
	letter-spacing: 1px;
 padding-bottom:10px;
 display: block;
}

footer #footer_Menu ul li{
	border-bottom:1px dotted #688bc5;
	list-style:none;
}

footer #footer_Menu ul li a{
	font-size: 14.5px;
	font-weight: normal;
	padding: 5px 0;
	display: block;
}

footer #copyright{
	clear:both;
	padding: 10px 30px;
	margin: 0 auto;
  background: #fff;
}

footer #copyright p{
	font-size:9px;
	float: right;
}

footer #copyright a{
}

footer #copyright ul{
	font-size:11px;
	float: left;
	list-style: none;
}

footer #copyright ul li{
	float: left;
	margin-right: 20px;
}


/****************************************

         LocalNavi
		  
*****************************************/	

.LocalNavi{
  border-top: 1px solid #aaa;
  margin-top: 40px;
}

.LocalNavi li{
  list-style: none;
  border-bottom: 1px solid #aaa;
  padding: 5px;
}

.LocalNavi li a{
  padding: 5px 5px 5px 10px;
  display: block;
  border-left: 7px solid #688BC5;
  color: #000;
}

.LocalNavi li a:hover{
  text-decoration: none;
  background: #efefef;
}

.LocalNavi li.current a{
  background: #F1F6FE;
}



/****************************************

          Layout
		  
*****************************************/

.wrapper{
	width:100%;
	overflow:hidden;
}

header{
	width:100%;
	margin:0 auto;
}
.contents{
  width: 94%;
	max-width:1100px;
	margin:0 auto;
	clear:both;
}

.innner{
  width: 90%;
  margin:0 auto;
}

.LocalNavi{
  width: 240px;
  float: left;
}

.main{
  width: calc(100% - 270px);
  max-width: 960px;
  float: right;
  margin-top: 40px;
}




/* ==========================================
	mediaQuery
========================================== */

@media only screen and (max-width: 834px){
  
/****************************************

          common

*****************************************/
  
.txt_center_and_left{
	text-align:left;
}

.Hide_sp{
	display:none !important;
}

.Hide_pc{
	display:block !important;
}
  
/* レイアウト関連 */
  
.col_area{
	display: block;
	width: 100%;
	margin-left: 0;
}

.col_item{
	display: block;
	margin: 20px auto;
}
	
/*　テーブル　*/	
	
.scroll{
	box-sizing: border-box;
	border-right: 2px solid #aaa;
	padding:3% 5px 1px 0;
	background:url("../images/sp_right_scroll.png") right top no-repeat;
	background-size:3%;
	overflow-x: scroll;
	-webkit-overflow-scrolling: touch;
}
  
.scroll table{
  min-width: 800px;
}

	
/*　見出し　*/

h2.h2_line{
  width: 100%;
  margin: 20px 0 0 0;
} 


/*TOPへ*/
		  

#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
}
  
/****************************************

        ヘッダ
		  
*****************************************/	

header .titleArea{
  position: relative;
  padding: 0;
  width: 100%;
 max-width: 100%;
  margin: 15px 0;	
}

header .titleArea .h1_mark{
  width: 12%;
  max-width: 70px;
  margin: 0 10px 0 0;
  float: left;
}

header .titleArea .h1_title{
  margin: 0 auto;
  width: 38%;
  max-width: 200px;
  float: left;
}

header .titleArea .h1_montessori{
  width: 38%;
  max-width: 180px;
  border-top: none;
  margin: 5px 10px 0 10px;
  padding: 0;
  float: right;
}		
	
/*　グローバルメニュー　*/
	
	header .header_tel a:hover{
		text-decoration: none;
	}
	
header .G_Menu_list{
  background: #688bc5;
}
  
header .G_Menu_list a{
  color: #fff;
}
	
  
header .G_Menu_list nav ul{
	float: none;
	height: auto;
}

header .G_Menu_list nav ul li{
display: block;
margin-left: 0;
}
	
header .G_Menu_list nav.G_Menu_list_1{
	padding: 0 10px;
	margin-bottom: 2px;
 position: relative;
}
 
header .G_Menu_list nav.G_Menu_list_1 ul{
 line-height: 30px;
}

header .G_Menu_list nav.G_Menu_list_1 li{
 margin: 0 10px 0 0;
	line-height: 40px;
}
  
header .G_Menu_list nav.G_Menu_list_1 li a{
  background: url("../images/ico_right_white.png") no-repeat right center;
  background-size: 15px;
 display: inline-block;
 height: 100%;
 padding-right: 20px;
}
  
header #G_Menu_btn{
 position: absolute;
 right: 0;
 top: 0;
 display: block;
 background: url(../images/btn_G_Menu.png) no-repeat;
 background-size: contain;
 height: 40px;
 width:40px;
}
	
header #G_Menu_btn.MenuActive{
	background: url(../images/btn_G_Menu_close.png) no-repeat;
	background-size: contain;
}
  
header nav.G_Menu_list_2{
position: relative;
width: 100%;
}
 
header nav.G_Menu_list_2 .contents{
 display: none;
 position: absolute;
 right:0;
 top: 0;
	float:none;
	clear: both;
 font-size:14px;
 background: #7C9BCF;
 padding: 0;
 border-top: 2px solid #fff;  
 width: 50%;
}


.menu {
 max-width: 100%;
 float: none;
 height: auto;
}

.menu > li {
 float: none;
 display: block;
 height: auto;
}
 
.menu > li:hover {
    background: none;
}

/* プルダウン後 */

li.menu__mega ul.menu__second-level {
 position: relative;
 top: 0;
 left: 0;
 padding: 0;
 visibility: visible;
 opacity: 1;
 display: none;
 height: auto;
 transition: unset;
 background: none;
 width: calc(100% + 26px);
 background: #688BC5;
 margin-left: -13px;
 float: none;
}

li.menu__mega:hover ul.menu__second-level {
 top: 0; 
}

li.menu__mega ul.menu__second-level > li {
 float: none;
 width: auto;
 display: block;
 line-height: 1.6em; 
 margin: 0 !important;
 padding: 0 !important;
}
 
 li.menu__mega ul.menu__second-level > li a{
  padding: 10px 15px;
 }

 li.menu__mega{
  position: relative;
 }
 li.menu__mega span.sp_link{
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 50px;
  width: 100%;
 }
 
 .G_Menu_list_2 .sns_link{
  padding: 0 13px 20px;
 }
 
.G_Menu_list_2 .facebook{
  display: block;
  background: url("../images/ico_facebook.png") no-repeat left 22px center #405890;
  background-size: 15px 29px ;
  padding: 10px 0 10px 20px;
  text-align: center;
  color: #fff;
	margin-bottom: 10px;
}

.G_Menu_list_2 .facebook:hover{
  background: url("../images/ico_facebook.png") no-repeat left 22px center #5B73A9;
  background-size: 15px 29px;
  text-decoration: none;
}

.G_Menu_list_2 .instagram{
  display: block;
  background: url("../images/ico_instagram.png") no-repeat left 15px center #fff;
  background-size: 30px;
  padding: 10px 0 10px 20px;
  text-align: center;
	border: 1px solid #E94870;
	color: #E94870;
}

.G_Menu_list_2 .instagram:hover{
  background: url("../images/ico_instagram.png") no-repeat left 15px center #FFECEE;
  background-size: 30px;
  text-decoration: none;
}


/****************************************

         フッタ
		  
*****************************************/	

footer h1 span{
	width:90%;
}

footer #copyright{
	clear:both;
	font-size:12px;
	background: #fff;
	padding: 10px 5%;
}

footer #copyright p{
	float: none;
}

footer #copyright a{
}

footer #copyright ul{
	float: none;
}

footer #copyright ul li{
	float: left;
}

/* フッタメニュー */


footer #footer_Menu{
	width:90%;
	margin:0 auto 10px auto;
}
	
footer .footerMenuList{
	width:100%;
	float:none;
	margin-right:0;
	margin-bottom:20px;
}
  
footer .footerMenuList,
footer .footerMenuBtn{
	width:100%;
	float:none;
}

footer .footerMenuList ul{
	display:none;
	margin-left:20px;
}
	
footer #footer_Menu ul li ul.level2{
	display: block;
	}

footer #footer_Menu a.footer_tit{
	background:url(../images/link_dwn.png) no-repeat right 10px center;
	border-bottom:1px solid #688BC5;
	font-size: 13px;
	display: block;
	
}

footer #footer_Menu a.MenuActive{
	background:url(../images/link_close.png) no-repeat right 10px center;
}
  
/****************************************

          Layout
		  
*****************************************/
.innner{
  width: 100%;
}


.main{
  width: auto;
  float: none;
  margin-top: 20px;
}

}


