@charset "shift_jis";

/* =====================================================
Base
===================================================== */

/* reset */
body,div,ul,ol,li,dl,dt,dd,form,th,td,h1,h2,h3,h4,h5,p{ margin:0; padding:0; font-style:normal; }
ul{list-style-type:none;}
table,img{border:0;}
table,th,td{ font-size:1em; }
textarea{ font-size:1em; }

/* set */
body{ background:#FFF; color:#333; font-size:62.5%; font-family:"Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;}
a{ color: #09C; text-decoration: underline; }
a:hover{ color: #999; }

/* layout */
body {text-align:center;}
body.style-page{ background:#FFF url(../images/bg-page.png) repeat-x 0 130px; }
#header,
#contents,
.container{width:950px;margin:0 auto;text-align:left;}
#contents #main{float:right;width:660px;}
#contents #side{float:left;width:250px;}

/* clear */
.clear{clear:both;}
.clear0{clear:both; height:1px; line-height:1px; }

/* mouseover */
a:hover img.btn{ filter:alpha(opacity=70); -ms-filter:"alpha(opacity=70)"; opacity:0.7;  }

/* =====================================================
Common Parts : header
===================================================== */

#header{
	padding:25px 0 0;
	height:75px;
}
#header img{
	vertical-align:top;
}
.logo{
	overflow:hidden;
	float:left;
	width:340px;
	height:50px;
	margin-right:20px;
}
.h-tel{
	overflow:hidden;
	float:left;
	width:240px;
	height:50px;
}
.h-tel img{ margin-left:-360px; }
.h-btn{
	float:right;
	width:330px;
}
.h-btn li{
	overflow:hidden;
	float:left;
	width:160px;
	height:50px;
}
.h-btn1{
	margin-right:10px;
}
.h-btn1 img{ margin-left:-620px; }
.h-btn2 img{ margin-left:-790px; }

/* =====================================================

Common Parts : gnavi

===================================================== */

#gnavi{
	clear:both;
	width:956px;
	margin:0 auto;
}
#gnavi ul{
	overflow:hidden;
}
#gnavi li{ float:left; }
/* a size */
#gnavi li a{ display:block; height:76px; overflow:hidden; }
#gnavi li.gnavi1 a{ width:241px; }
#gnavi li.gnavi2 a{ width:237px; }
#gnavi li.gnavi3 a{ width:237px; }
#gnavi li.gnavi6 a{ width:241px; }
/* img ichi */
#gnavi li img{ margin-top:0; }
#gnavi li.gnavi1 img{ margin-left:0; }
#gnavi li.gnavi2 img{ margin-left:-241px; }
#gnavi li.gnavi3 img{ margin-left:-478px; }
#gnavi li.gnavi6 img{ margin-left:-715px; }
/* img ichi mouseover */
#gnavi li a:hover img{ margin-top:-76px; }

/* =====================================================

Common Parts : footer

===================================================== */

#footer{
	clear:both;
}
#footer a{ color:#333; text-decoration:none; }
#footer a:hover{ color:#999; }

/* footer-info */
.footer-info{
	padding:40px 0 30px;
	border-top:1px solid #CCC;
	border-bottom:1px solid #CCC;
	background:url(../images/bg2.png);
}
/* f-address */
.f-address{
	float:left;
	width:460px;
	font-size:1.4em;
}
.f-address-logo{
	padding:0 0 8px;
}
.f-address-logo img{
 	vertical-align:bottom;
}
.f-address-contact{
	padding:5px 0 0;
}
.f-website{
	margin:10px 0 0;
}
.f-website li{
	display:inline-block;
	padding:3px 20px;
	background:url(../images/icon-website.png) no-repeat 0 50%;
	line-height:1;
}
.f-btn{
	margin:0 0 0 470px;
}
.f-btn li{
	float:left;
	width:240px;
}
/* fnavi */
.fnavi{
	width:950px;
	margin:0 auto;
	padding:40px 0 30px;
	text-align:left;
}
.fnavi ul{
	float:left;
	width:25%;
	font-size:1.4em;
}
.fnavi li{
	padding:3px 0;
	background:url(../images/icon2.png) no-repeat 0 8px;
}
.fnavi li a{
	padding:0 0 0 15px;
}
.fnavi li ul{
	float:none;
	width:auto;
	padding:5px 0 5px 15px;
	font-size:0.85em;
}
.fnavi li li{
	padding:1px 0;
	background-image:none;
}
.fnavi li li a{
	padding:0;
}

/* footer-copyright */
.f-copyright{
	clear:both;
	min-width:950px;
	padding:17px 0;
	background:#FB7597;
	color:#FFF;
	text-align:center;
	font-size:1.4em;
	line-height:1;
}
.f-copyright a{
	color:#FFF;
	text-decoration:none;
}

/* =====================================================

Common Parts : contents

===================================================== */

#contents{
	padding:0 0 45px;
}
#topicpath{
	padding:15px 0 0;
	font-size:1.2em;
	text-align:left;
}
#gopagetop{
	position:fixed;
	bottom:30px;
	right:30px;
}

/* =====================================================

Common Parts : contents - main

===================================================== */

#main{
	padding:12px 0 0;
}

/* topimg */
#topimg{
	clear:both;
	background:#FFF;
	padding:6px 0;
	-moz-box-shadow: 0px 0px 5px #CCC;
	-webkit-box-shadow: 0px 0px 5px #CCC;
	box-shadow: 0px 0px 5px #CCC;
	text-align:center;
}
#topimg img{
	vertical-align:top;
}


/* base-style -------------------------------------- */
.base-style{
}
.base-style p{
	font-size:1.4em;
	line-height:1.8;
	margin:20px 0 0 0;
}

/* layout -------------------------------------- */
.layout-center{ text-align:center; }
.layout-center20{ margin:20px 0; text-align:center; }
.layout-right{ text-align:right; }

/* title -------------------------------------- */
.title1{
	clear:both;
	margin:0 0 20px;
	padding:35px 5px 10px;
	background:url(../images/title1.png) no-repeat left bottom;
	color:#F23F6C;
	font-size:2.8em;
	font-weight:normal;
	line-height:1.3;
}
.title2{
	clear:both;
	margin:30px 0 0;
	padding:10px;
	background:#61C1D6;
	color:#FFF;
	font-size:2em;
	font-weight:bold;
	line-height:1.5;
}
.title2 span{
	display:block;
	padding:5px 0 3px 10px;
	border-left:3px solid #FFF;
}
.title3{
	clear:both;
	margin:30px 0 0;
	padding:11px 10px 6px 15px;
	background:url(../images/title3.png);
	font-size:2em;
	font-weight:normal;
	line-height:1.5;
}
.title4{
	clear:both;
	margin:25px 0 0;
	padding:0 0 7px 10px;
	background:url(../images/title4.png) repeat-x left bottom;
	font-size:1.8em;
	font-weight:normal;
}
.title5{
	clear:both;
	margin:25px 0 -5px;
	padding:3px 0 0 20px;
	background:url(../images/title5.png) no-repeat 0 50%;
	color:#F2406C;
	font-size:1.6em;
	font-weight:bold;
}

/* text -------------------------------------- */

.text-red{ color:#C00; }
.text-bold{ font-weight:bold; }
.text-large{ font-size:1.2em; }

/* textlink -------------------------------- */

.textlink1{
	padding:3px 10px 3px 22px;
	background:url(../images/icon1.png) no-repeat 0 5px;
}
.textlink2{
	padding:3px 10px 3px 22px;
	background:url(../images/icon1-bottom.png) no-repeat 0 5px;
}

/* list-style01 -------------------------------------- */
.list-style01{
	list-style-type:disc;
	margin:15px 0 0 0;
	font-size:1.4em;
	line-height:1.5;
}
.list-style01 li{
	margin:0 0 0 20px;
	padding:5px 0;
}
.list-style01 ul{
	list-style-type:circle;
	padding:5px 0 0;
}
.list-style01 ul li{
	margin:0 0 0 40px;
}

/* list-num-style01 -------------------------------------- */
.list-num-style01{
	margin:15px 0 0 0;
	font-size:1.4em;
	line-height:1.5;
}
.list-num-style01 li{
	margin:0 0 0 25px;
	padding:5px 0;
}

/* table01 -------------------------------------- */
div.table-style01{
	margin:20px 0 30px;
	font-size:1.4em;
	line-height:1.5;
	text-align:left;
}
.table-style01 table{
	margin:0 auto;
	border-left:1px solid #CCC;
	border-top:1px solid #CCC;
}
.table-style01 th,
.table-style01 td{
	padding:10px;
	border-right:1px solid #CCC;
	border-bottom:1px solid #CCC;
	font-size:1em;
}
.table-style01 th{
	font-weight:bold;
}
.table-style01 td{
}
/* table in table リセット */
.table-style01 table th table,
.table-style01 table td table{
	margin:0;
	border:none;
	font-size:1em;
}
.table-style01 table th table td,
.table-style01 table td table td{
	padding:0px;
	border:none;
}

/* img ----------------------------------- */
.img-style-left { float:left; margin:0 20px 5px 0;}
.img-style-right { float:right; margin:0 0 5px 20px;}
.img-style-middle { vertical-align:middle; margin-right:5px; }
.img-style-waku{
	border:4px solid #FFF;
	-moz-box-shadow: 0px 0px 5px #999;
	-webkit-box-shadow: 0px 0px 5px #999;
	box-shadow: 0px 0px 5px #999;
}
.img-style-tape1,
.img-style-tape2{
	position:relative;
	display:inline-block;
	padding-top:20px;
}
.img-style-tape1::before,
.img-style-tape2::before{
	position:absolute;
	top:-5px;
	left:50%;
	margin-left:-70px;
	content: url(../images/tape1.png);
	z-index:2;
}
.img-style-tape2::before{ content: url(../images/tape2.png); }

/* faq -------------------------------------- */
.faq{
	margin:30px 0;
}
.faq-q{
	border-radius:2px;
	background:#FEDCE5 url(../images/bg4.png);
	font-size:1.8em;
	font-weight:bold;
	cursor:pointer;
}
.faq-q p{
	margin:0;
	padding:10px 50px 10px 20px;
	background:url(../images/icon3-bottom.png) no-repeat 97% 18px;
	font-size:1em;
	line-height:1.5;
}
.faq-q-open p{
	background:url(../images/icon3-top.png) no-repeat 97% 18px;
}
.faq-a{
	padding:0 10px;
	font-size:1.4em;
}
.faq-a-close{ display:none; }
.faq-a p{
	margin:15px 0 0;
	font-size:1em;
	line-height:1.7;
}
/* mail-form -------------------------------------- */

#mail-form{
	margin:20px 0 100px;
	text-align:center;
	font-size:1.4em;
	line-height:1.5;
}
#mail-form table{
	width:650px;
	margin:0 auto;
	border-left:1px solid #CCCCCC;
	border-top:1px solid #CCCCCC;
	line-height:1.5;
}
#mail-form th,
#mail-form td{
	padding:10px;
	border-right:1px solid #CCCCCC;
	border-bottom:1px solid #CCCCCC;
	font-size:1em;
	text-align:left;
}
#mail-form th{
	width:150px;
	background: #FEEBF0;
	color:#666666;
	font-weight:bold;
}
#mail-form .mail-form-kengaku th{
	width:130px;
}
.necessary{
	padding:2px 5px 1px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	background:#fb7597;
	font-size:0.8em;
	font-weight:normal;
	color:#FFF;
}
#mail-form td{
	background: #FFF;
}
#mail-form td.mail-form-kengaku-div{
	padding:0;
}
#mail-form td.mail-form-kengaku-div table{
	width:100%;
	border:none;
	border-collapse:collapse;
}
#mail-form td.mail-form-kengaku-div table table{
	width:100%;
	border-collapse:collapse;
}
#mail-form td.mail-form-kengaku-div td{
	margin:0 0 -1px;
	padding:0;
	border:none;
}
#mail-form td.mail-form-kengaku-div td td{
	padding:10px 0 10px 10px;
	white-space: nowrap;
}
#mail-form td span{
	font-size:0.84em;
	color:#999999;
}

.mail-form-btn{
	margin:20px 0 0 0;
	text-align:center;
}
.mail-form-btn input{
	padding:5px 20px;
	font-size:1.2em;
}
/* complete */
#mail-form-complete{
	margin:50px 0 0 0;
	height:150px;
	text-align:center;
}
/* error */
#mail-form-error{
	margin:20px 0 100px 0;
}
#mail-form-error p{
	padding:10px;
	border:1px solid #FF0000;
	color:#FF0000;
	font-size:1.4em;
	line-height:1.5;
}

input[type="text"],
select{
	padding:5px;
	font-size:14px;
}
.textfield-s { width:40%; }
.textfield-m { width:70%; }
.textfield-l { box-sizing:border-box; width:100%; }
#mail-form textarea{ box-sizing:border-box; width:100%; }


/* =====================================================

Common Parts : contents - side

===================================================== */

#side{
}

/* s-bn ------------------------------------ */
.side-bn{
	margin:10px 0 0;
}
.side-bn-kengaku{
	margin:12px 0 20px -21px;
}

/* snavi ------------------------------------ */
#snavi{
	margin:0 0 30px;
}
#snavi dt{
	display:table;
	width:100%;
	height:210px;
	background:url(../images/snavi-title.png) no-repeat left top;
	color:#FFF;
	font-size:2.4em;
	font-weight:normal;
	line-height:1.3;
	text-align:center;
}
#snavi dt a{
	display:table-cell;
	height:204px;
	vertical-align:middle;
	color:#FFF;
	text-decoration:none;
}
#snavi dt span{
	font-size:0.45em;
	line-height:2;
}
#snavi dd{
	padding:10px 10px 20px;
	background:#FEE9EF;
}
/* 1段目 */
#snavi dd ul{
	border-bottom:1px solid #CCC;
}
#snavi dd ul li{
	width:100%;
	border-top:1px solid #CCC;
	font-size:1.4em;
	line-height:1.5;
}
#snavi dd ul li:first-child{
	border-top:none;
}
#snavi dd ul li a{
	display:block;
	padding:13px 5px 12px 25px;
	background:url(../images/icon1.png) no-repeat 3px 15px;
	color:#333333;
	text-decoration:none;
}
/* 2段目 */
#snavi dd ul li.snavi-mnsub{
	width:100%;
	border-top:1px dotted #CCC;
	font-size:1.4em;
	line-height:1.5;
}
#snavi dd ul li.snavi-mnsub a{
	display:block;
	padding:8px 5px 7px 35px;
	background:#FFF url(../images/icon2.png) no-repeat 20px 13px;
	color:#333;
	text-decoration:none;
}
/* マウスオーバー */
#snavi dd ul li a:hover{ background:#FDC8D5 url(../images/icon1.png) no-repeat 3px 15px; }
#snavi dd ul li.snavi-mnsub a:hover{ background:#FDC8D5 url(../images/icon2.png) no-repeat 20px 13px; }

/* =====================================================

Index

===================================================== */

/* index-topimg */
#index-topimg{
	position:relative;
	min-width:950px;
	height:500px;
	background:#5EBAEA;
}
.index-topimg-container{
	position:absolute;
	top:0;
	left:50%;
	width:1150px;
	margin-left:-575px;
}
.index-topimg-kosei{
	position:absolute;
	top:-14px;
	left:28px;
}
.index-topimg-clover1{
	position:absolute;
	bottom:-17px;
	left:-10px;
}
.index-topimg-clover2{
	position:absolute;
	bottom:-15px;
	right:-10px;
}
.index-topimg-school{
	position:absolute;
	bottom:-30px;
	left:724px;
}
/* index-bg */
.index-bg{
	padding:27px 0 100px;
	background:#FEE1E9 url(../images/bg1.png);
}
/* index-new */
.index-new{
	width:950px;
	margin:40px auto 0;
	padding:5px 0 35px;
	background:#FFF;
	-moz-box-shadow: 0px 0px 5px #999;
	-webkit-box-shadow: 0px 0px 5px #999;
	box-shadow: 0px 0px 5px #999;
	text-align:left;
}
.index-new-txt{
	margin:0 35px;
}
.index-new-txt h2{
	margin:34px 0 10px;
	padding:0 0 0 50px;
	background:#FB7597 url(../images/index-new-title.png) no-repeat;
	color:#FFF;
	font-size:1.8em;
	line-height:44px;
}
.index-new-txt-list{
	overflow-y:auto;
	height:216px;
}
.index-new-txt-list dl{
	font-size:1.4em;
	line-height:1.5;
}
.index-new-txt-list dt{
	float:left;
	width:7em;
	padding:4px 0;
	color:#F3416D;
}
.index-new-txt-list dd{
	margin:0 0 0 7.5em;
	padding:4px 0;
}
/* index-info */
.index-info{
	box-sizing:border-box;
	width:950px;
	margin:40px auto 0;
	padding:25px 35px;
	border:3px solid #F60;
	background:#FFF5E5;
	-moz-box-shadow: 0px 0px 5px #999;
	-webkit-box-shadow: 0px 0px 5px #999;
	box-shadow: 0px 0px 5px #999;
	font-size:1.4em;
	line-height:1.7;
	text-align:left;
}
.index-info p:not(:first-child){
	margin-top:10px;
}
.index-info-title{
	margin-bottom:15px;
	padding:5px 0 0;
	border-bottom:2px solid #F60;
	color:#F60;
	font-size:1.5em;
	font-weight:bold;
	text-align:center;
}
/* index-school */
.index-school{
	padding:1px 0 30px;
	background:#F2E3C9 url(../images/bg3.jpg);
}
.index-school h2{
	width:950px;
	margin:-30px auto 0;
	padding:130px 0 30px;
	background:url(../images/index-school-title.png) no-repeat center top;
	font-size:3em;
	font-weight:normal;
	text-align:center;
}
.index-school-list{
	width:970px;
	margin:0 auto;
	text-align:left;
}
.index-school-box{
	position:relative;
	float:left;
	width:320px;
	height:430px;
	background:url(../images/index-school-bg.png) no-repeat 0 30px;
}
.index-school-box:nth-child(3n+2){
	margin:0 5px;
}
.index-school-tape1,
.index-school-tape2,
.index-school-tape3,
.index-school-tape4,
.index-school-tape5,
.index-school-tape6{
	position:absolute;
	top:0;
	left:0;
	width:320px;
	text-align:center;
	z-index:2;
}
.index-school-tape2,
.index-school-tape6{ top:5px; }
.index-school-tape3,
.index-school-tape4{ top:5px; }
.index-school-header{
	padding:46px 24px 0 16px;
	font-size:2em;
	line-height:1.5;
	text-align:center;
}
.index-school-header a{
	color:#F23F6C;
	text-decoration:none;
}
.index-school-header img{
	margin:0 0 10px;
}
.index-school-header span{
	display:inline-block;
	padding:0 0 0 22px;
	background:url(../images/icon1.png) no-repeat 0 6px;
}
.index-school-body{
	margin:5px 24px 0 16px;
	padding:10px 5px 0;
	border-top:1px dotted #999;
	font-size:1.4em;
	line-height:1.7;
}
/* index-bn */
.index-bn{
	padding:100px 0 70px;
}
.index-bn li{
	float:left;
	margin:0 0 30px;
}
.index-bn li:nth-child(2n+2){ margin:0 0 30px 30px; }
/* index-admissions */
.index-admissions{
	padding:1px 0 0;
	background:url(../images/line1.png) repeat-x left top;
}
.index-admissions h2{
	width:950px;
	margin:-30px auto 0;
	padding:105px 0 30px;
	background:url(../images/index-admissions-title1.png) no-repeat center top;
	font-size:3em;
	font-weight:normal;
	text-align:center;
}
.index-admissions h2 span{
	display:block;
	height:88px;
	background:url(../images/index-admissions-title2.png) no-repeat center top;
	color:#FFF;
	line-height:80px;
}
.index-admissions li{
	float:left;
	width:224px;
}
.index-admissions li:not(:first-child){
	margin-left:18px;
}
.index-admissions-bottom{
	min-width:950px;
	padding:50px 0 0;
	text-align:center;
}
.index-admissions-bottom img{
	max-width:100%;
	height:auto;
	vertical-align:top;
}